Policy Transactions API

Endpoint Index

ActionEndpoint
Fetch a TransactionGET /policy/{tenantLocator}/transactions/{locator}
Fetch Policy Transaction with Updated ChangesGET /policy/{tenantLocator}/transactions/{locator}/elements/changes
Fetch Policy Segment for a TransactionGET /policy/{tenantLocator}/transactions/{locator}/segment
Fetch a Policy SegmentGET /policy/{tenantLocator}/transactions/segments/{segmentLocator}
Fetch Issued TransactionsGET /policy/{tenantLocator}/policies/{locator}/issuedTransactions/list
Create a TransactionPATCH /policy/{tenantLocator}/policies/{locator}/{transactionType}
Create a Policy Change TransactionPATCH /policy/{tenantLocator}/policies/{locator}/change
Create a Renewal TransactionPATCH /policy/{tenantLocator}/policies/{locator}/renew
Create a Cancellation TransactionPATCH /policy/{tenantLocator}/policies/{locator}/cancel
Create a Reinstatement TransactionPATCH /policy/{tenantLocator}/policies/{locator}/reinstate
Create a Reversal TransactionPATCH /policy/{tenantLocator}/policies/{locator}/reversal
Initialize TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/initialize
Add Elements To Policy with TransactionPUT /policy/{tenantLocator}/transactions/{locator}/elements
Update Elements In Policy with TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/elements
Remove Elements From Policy with TransactionDELETE /policy/{tenantLocator}/transactions/{locator}/elements
Add a Change Instruction to a TransactionPUT /policy/{tenantLocator}/transactions/{locator}/changeInstructions
Update One of a Transaction's Change InstructionsPATCH /policy/{tenantLocator}/transactions/{locator}/changeInstructions/{instructionLocator}
Delete a Change Instruction from a TransactionDELETE /policy/{tenantLocator}/transactions/{locator}/changeInstructions/{instructionLocator}
Validate a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/validate
Price a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/price
Fetch Pricing for a TransactionGET /policy/{tenantLocator}/transactions/{locator}/price
Underwrite a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/underwrite
Update a Transaction's Underwriting FlagsPATCH /policy/{tenantLocator}/transactions/{locator}/underwritingFlags
Fetch Underwriting FlagsGET /policy/{tenantLocator}/transactions/{locator}/underwritingFlags
Accept a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/accept
Issue a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/issue
Fetch Preferences for a TransactionGET /policy/{tenantLocator}/transactions/{locator}/preferences
Fetch Affected TransactionsGET /policy/{tenantLocator}/transactions/{locator}/affectedTransactions
Reset a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/reset
Refuse a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/refuse
Discard a TransactionPATCH /policy/{tenantLocator}/transactions/{locator}/discard
Fetch Transaction SegmentsGET /policy/{tenantLocator}/transactions/{locator}/segments/list
Fetch Policy Segment ExGET /policy/{tenantLocator}/transactions/{locator}/segments/{segmentLocator}

Main Flow

Note

For unissued transactions that are elible for issuance, you can attempt to advance to any subsequent state. If the transaction fails to validate, the response will be HTTP 200, but the transaction itself will not be in the requested new state. The actual state of the transaction will be included in the payload.

Fetch

Fetch a Transaction
fetchTransaction
GET /policy/{tenantLocator}/transactions/{locator}
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
PolicyTransactionResponse
required
locator locator
policyLocator locator
termLocator locator
effectiveTime datetime
transactionState Enum draft | initialized | validated | earlyUnderwritten | priced | underwritten | accepted | issued | underwrittenBlocked | declined | rejected | refused | discarded | invalidated | reversed
transactionCategory Enum issuance | change | renewal | cancellation | reinstatement | reversal | aggregate
transactionType string
createdAt datetime
createdBy uuid

optional
aggregateTransactionLocator locator?
baseTransactionLocator locator?
issuedTime datetime?
acceptedTime datetime?
preferences PreferencesResponse?
underwritingStatus string?
validationResult ValidationResult?
aggregatedTransactions PolicyTransactionResponse[]?
billingTrigger Enum? accept | issue (deprecated)
PreferencesResponse
optional
billingPreferences BillingPreferences?
installmentPreferences InstallmentPreferences?
BillingPreferences
optional
billingPlanName string?
billingLevel Enum? account | inherit | policy
InstallmentPreferences
required
installmentWeights number[]

optional
installmentPlanName string?
anchorMode Enum? generateDay | termStartDay | dueDay
anchorTime datetime?
anchorType Enum? none | dayOfMonth | anchorTime | dayOfWeek | weekOfMonth
cadence Enum? none | fullPay | weekly | everyOtherWeek | monthly | quarterly | semiannually | annually | thirtyDays | everyNDays
dayOfMonth int?
dayOfWeek Enum? monday | tuesday | wednesday | thursday | friday | saturday | sunday
dueLeadDays int?
generateLeadDays int?
maxInstallmentsPerTerm int?
weekOfMonth Enum? none | first | second | third | fourth | fifth
Fetch Policy Transaction with Updated Changes
fetchPolicyTransactionWithUpdatedChanges
GET /policy/{tenantLocator}/transactions/{locator}/elements/changes
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
Fetch Policy Segment for a Transaction
fetchTransactionSegment
GET /policy/{tenantLocator}/transactions/{locator}/segment
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
Fetch a Policy Segment
fetchPolicySegment
GET /policy/{tenantLocator}/transactions/segments/{segmentLocator}
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    segmentLocatorpathlocatorrequired
    Security Group:transactions   Permission:read
SegmentResponse
required
locator locator
transactionLocator locator
startTime datetime
endTime datetime
duration number
element ElementResponse
The root element in the hierarchy
segmentType Enum coverage | gap

optional
basedOn locator?
ChangeInstructionResponse
required
action string
AddChangeInstructionResponse
required
locator locator
action Enum add
ModifyChangeInstructionResponse
required
locator locator
staticLocator locator
action Enum modify
removeCoverageTerms map<string,object>
removeData map<string,object>
setCoverageTerms map<string,string>
setData map<string,object>
ParamsChangeInstructionResponse
required
locator locator
effectiveTime datetime
action Enum params

optional
newPolicyEndTime datetime?
preferences PreferencesResponse?
triggerBillingChange boolean?
billingModeChange boolean? (deprecated)
Use triggerBillingChange instead.
inheritSettings boolean? (deprecated)
DeleteChangeInstructionResponse
required
locator locator
action Enum delete
staticElementLocators locator[]
Fetch Issued Transactions
fetchIssuedTransactions
Fetches the 'local stack' of issued transactions, excluding those that have been reversed or reapplied
GET /policy/{tenantLocator}/policies/{locator}/issuedTransactions/list
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    offsetqueryint?optional
    countqueryint?optional
    extendedqueryboolean?optional
    Security Group:policies   Permission:read
PolicyTransactionListResponse
required
listCompleted boolean

Transaction Creation

Create a Transaction
createPolicyTransaction
PATCH /policy/{tenantLocator}/policies/{locator}/{transactionType}
Create a Policy Change Transaction
changePolicy
PATCH /policy/{tenantLocator}/policies/{locator}/change
Create a Renewal Transaction
renewPolicy
PATCH /policy/{tenantLocator}/policies/{locator}/renew
Create a Cancellation Transaction
cancelPolicy
PATCH /policy/{tenantLocator}/policies/{locator}/cancel
Create a Reinstatement Transaction
reinstatePolicy
PATCH /policy/{tenantLocator}/policies/{locator}/reinstate
AddChangeInstructionCreateRequest
required
action Enum add
ParamsChangeInstructionCreateRequest
required
effectiveTime datetime
action Enum params

optional
newPolicyEndTime datetime?
preferences PreferencesResponse?
triggerBillingChange boolean?
billingModeChange boolean? (deprecated)
Use triggerBillingChange instead.
inheritSettings boolean? (deprecated)
ModifyChangeInstructionCreateRequest
required
staticLocator locator
action Enum modify
removeCoverageTerms map<string,object>
removeData map<string,object>
setCoverageTerms map<string,string>
setData map<string,object>
DeleteChangeInstructionCreateRequest
required
action Enum delete
staticElementLocators locator[]
Create a Reversal Transaction
reversePolicyChange
PATCH /policy/{tenantLocator}/policies/{locator}/reversal
PolicyTransactionReversalRequest
required
baseLocator locator
toTransaction locator
reverseTransactions locator[]

Updating

Initialize Transaction
initializeTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/initialize
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:write
Add Elements To Policy with Transaction
addElementsToPolicyWithTransaction
PUT /policy/{tenantLocator}/transactions/{locator}/elements
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Response:SegmentResponse[]
    Security Group:transactions   Permission:write
Update Elements In Policy with Transaction
updateElementsInPolicyWithTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/elements
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Response:SegmentResponse[]
    Security Group:transactions   Permission:write
Remove Elements From Policy with Transaction
removeElementsFromPolicyWithTransaction
DELETE /policy/{tenantLocator}/transactions/{locator}/elements
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Request:locator[]
    Response:SegmentResponse[]
    Security Group:transactions   Permission:write
Add a Change Instruction to a Transaction
createPolicyChangeInstruction
PUT /policy/{tenantLocator}/transactions/{locator}/changeInstructions
Update One of a Transaction's Change Instructions
updateChangeInstruction
PATCH /policy/{tenantLocator}/transactions/{locator}/changeInstructions/{instructionLocator}
Delete a Change Instruction from a Transaction
deleteChangeInstructionFromTransaction
DELETE /policy/{tenantLocator}/transactions/{locator}/changeInstructions/{instructionLocator}
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    instructionLocatorpathlocatorrequired
    Security Group:transactions   Permission:write

Note

Transactions can only be updated when they are in draft state.

Validation

Validate a Transaction
validateTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/validate
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    statelessqueryboolean?optional
    Security Group:transactions   Permission:write
ValidationResult
required
success boolean

optional
validationItems ValidationItemResponse[]?
ValidationItemResponse
required
locator locator
elementType string
errors string[]

Pricing

Price a Transaction
priceTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/price
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    statelessqueryboolean?optional
    Security Group:transactions   Permission:write
Fetch Pricing for a Transaction
fetchTransactionPricing
GET /policy/{tenantLocator}/transactions/{locator}/price
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
TransactionPriceResponse
required
locator locator
policyLocator locator
effectiveTime datetime
transactionState Enum draft | initialized | validated | earlyUnderwritten | priced | underwritten | accepted | issued | underwrittenBlocked | declined | rejected | refused | discarded | invalidated | reversed
transactionCategory Enum issuance | change | renewal | cancellation | reinstatement | reversal | aggregate
charges ChargeResponse[]

optional
aggregatedTransactions TransactionPriceResponse[]?

Underwriting

Underwrite a Transaction
underwriteTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/underwrite
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    statelessqueryboolean?optional
    Security Group:transactions   Permission:write
TransactionUnderwritingResponse
required
locator locator
policyLocator locator
effectiveTime datetime
transactionState Enum draft | initialized | validated | earlyUnderwritten | priced | underwritten | accepted | issued | underwrittenBlocked | declined | rejected | refused | discarded | invalidated | reversed
transactionCategory Enum issuance | change | renewal | cancellation | reinstatement | reversal | aggregate
underwritingStatus string
aggregatedTransactions TransactionUnderwritingResponse[]
underwritingFlags UnderwritingFlagResponse[]
Update a Transaction's Underwriting Flags
updateUnderwritingFlagsForPolicyTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/underwritingFlags
Fetch Underwriting Flags
fetchUnderwritingFlagsForTransaction
GET /policy/{tenantLocator}/transactions/{locator}/underwritingFlags
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
TransactionUnderwritingFlagsResponse
required
transactionLocator locator
clearedFlags UnderwritingFlagResponse[]
UnderwritingFlagResponse
required
locator locator
referenceLocator locator
clearedBy uuid
clearedTime datetime
createdTime datetime
level Enum info | block | decline | reject | approve
note string
referenceType Enum quote | transaction
createdBy uuid

optional
elementLocator locator?

Acceptance

Accept a Transaction
acceptTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/accept
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:write

Issuance

Issue a Transaction
issueTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/issue
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    autoRebasequeryboolean?optional
    Security Group:transactions   Permission:write

Documents

Fetch Documents for Transaction
fetchDocumentsForTransaction
GET /document/{tenantLocator}/documents/transaction/{locator}/list
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    offsetqueryint?optional
    countqueryint?optional
    extendedqueryboolean?optional
    Security Group:documents   Permission:read
Fetch Documents for Segment
fetchDocumentsForSegment
GET /document/{tenantLocator}/documents/segment/{locator}/list
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    offsetqueryint?optional
    countqueryint?optional
    extendedqueryboolean?optional
    Security Group:documents   Permission:read
DocumentInstanceResponse
required
locator locator
referenceLocator locator
documentInstanceState Enum draft | dataReady | ready | dataError | renderError | conversionError
external boolean
referenceType Enum quote | policy | invoice | transaction | segment | term
createdAt datetime
metadata map<string,object>
renderingData map<string,object>

optional
policyLocator locator?
termLocator locator?
transactionLocator locator?
segmentLocator locator?
referenceDocumentLocator locator?
staticName string?
name string?
category string?
documentFormat Enum? text | html | pdf | jpg | jpeg | doc | docx | xls | xlsx | csv | txt | zip
processingErrors string?
readyAt datetime?
createdBy uuid?

Transaction Details

Fetch Preferences for a Transaction
fetchPreferencesForATransaction
GET /policy/{tenantLocator}/transactions/{locator}/preferences
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
Fetch Affected Transactions
fetchAffectedTransactions
GET /policy/{tenantLocator}/transactions/{locator}/affectedTransactions
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:read
AffectedTransaction
required
locator locator
action Enum reversed | reapplied | invalidated

Atypical States and Operations

Reset a Transaction
resetTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/reset
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    resetToDraftqueryboolean?optional
    Request:ResetOptions
    Security Group:transactions   Permission:write
ResetOptions
required
deleteAllAutomaticDocuments boolean
resetAllUnderwritingFlags boolean
resetFlagsAction Enum clear | delete
deleteDocuments locator[]
resetFlags locator[]

Note

If the query parameter resetToDraft is true, then the transaction will revert to draft state and the generated segment data, including elements and data, will be discarded. If false (the default), then the transaction will revert to initialized state and the segment data will be retained. This is useful to preserve the locator data for generated elements.

Refuse a Transaction
refuseTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/refuse
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:write
Discard a Transaction
discardTransaction
PATCH /policy/{tenantLocator}/transactions/{locator}/discard
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Security Group:transactions   Permission:write

Deprecated Items

Fetch Transaction Segments
Deprecated
fetchTransactionSegments
This endpoint will be removed in a future release.
GET /policy/{tenantLocator}/transactions/{locator}/segments/list
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    Response:SegmentResponse[]
    Security Group:transactions   Permission:read
Fetch Policy Segment Ex
Deprecated
fetchPolicySegmentEx
This endpoint will be removed in a future release.
GET /policy/{tenantLocator}/transactions/{locator}/segments/{segmentLocator}
    Request Parameters:
    NamePositionTypeRequired
    tenantLocatorpathuuidrequired
    locatorpathlocatorrequired
    segmentLocatorpathlocatorrequired
    Security Group:transactions   Permission:read