policyKey returned by POST /policies/submission/full
Example:21748
policyActivityKey returned by POST /policies/submission/full
Example:33159
Create quotes and manage quote outcomes (decline, not-taken-up).
Adds quote (pricing and section) data to an existing policy activity — Step 2 of the submission lifecycle.
Pass the policyKey and policyActivityKey returned by POST /policies/submission/full as query parameters.
sections array (at least one section with a valid agreement).
All id-based reference fields accept id only (e.g. summaryCurrency, solvencyIIClass). Currency fields (currency, limitCurrency, premiumCurrency, settlementCcy) accept code only.
The call typically completes within 20-40 seconds.
policyKey returned by POST /policies/submission/full
Example:21748
policyActivityKey returned by POST /policies/submission/full
Example:33159
Identifies the calling system or channel that originated this request. Used for traceability and auditing across the platform.
Example:S01x
Identifier of the end user on whose behalf this request is made, recorded for audit trail purposes.
Example:jsmith
Quote submission payload. Required: sections array. Reference fields use IdReference (id only) except currency fields which use CodeReference (code only).
Request body for POST /policies/quote — Step 3 of the submission lifecycle.
Required. Summary (reporting) currency — code only (e.g. { "code": "USD" }).
Required. Type of Cyber clause status — id only. Enter Cyber clause details per the quote document. Leave blank if not available at quote stage.
Required. US classification — id only. Source: fiscal and regulatory section of the slip. Select ‘Regulated’ or ‘Non-Regulated’ when risk originates from the United States. Select ‘Non-Regulated’ when the risk does not originate from the United States. Leave blank if details are not yet available at quote stage (do not query).
Unique Market Reference. Required. Source: risk details section of the UK slip. Leave blank if not yet available.
Example:B1234CYB2026001
Number of employees. Required for CY, FI and PL LOBs. Source: submission documentation or rater.
Example:250
Number of Personally Identifiable Information (PII) records held by the insured. Required for CY LOB. Source: submission documentation.
Example:100000
This is section description as configured in XFI. Required to create section in XFI. Non-business field managed by orchestration layer.
Example:Directors and Officers
Bind probability expressed as a percentage string (e.g. ‘100%’). Indicates the likelihood the risk will proceed to bind. Supplied by the underwriter or front-end.
Example:100%
Major peril description (e.g. ‘Cyber Property’). Server-derived from the risk’s class; supply if known, otherwise leave blank for automatic derivation.
Example:Cyber Property
A single section within a quote submission. The front end sends at most two section objects: one for the main Agency policy (MSSL/MAIS etc.), and one for the Mosaic Asta Europe (MAE) policy when the risk has an EEA component. Each section carries a division.id that identifies which agency line it belongs to. Trident uses this to determine which syndicate lines (1609/2610 for the agency section; 5399/5431 for the MAE section).
A single agency policy line within a quote submission. Supply one element per underwriting agency line (one for the main Agency line; an additional one for the Mosaic Asta Europe agency line when the risk has an EEA component).
Front end supplies agency-line data only. Trident retrieves all XFI-created lines (agency + syndicate) via Get All Lines, identifies each by Division ID (Agency = front-end division.id; MAE = 7; 1609 = 3; 2610 = 12; 5399 = 6; 5431 = 13), and propagates most agency-line values to the syndicate lines (“Same as Agency Line”). Derived-only fields (originatingDivision, originatingOffice, global-risk cross-reference, inclusive-line) are computed by Trident and are not part of this payload.
Fields are grouped by stage: Submission → Quote → FON → Bind.
Quote created or updated successfully.
Response object containing cyber submission details including policy information, status, and reference keys
Current status of the policy
Allowed values:Quote PreparationPolicy UpdatedBoundDeclinedReferredQuote NTU
Example:Quote Preparation
Policy number assigned to the submission. Starts with ‘Q’ for quotes, ‘P’ for policies
Match pattern:^[QP]\d{7}$
Example:Q0038456
Business reference number for tracking purposes
Example:CYB-2026-001
Internal policy key identifier used for database references
Example:20894
Internal policy activity key identifier for tracking specific policy activities
Example:45632
Status of the current policy activity
Allowed values:ActiveCompletedPendingCancelledQuote NTU
Example:Active
Quote number assigned when the submission reaches quote stage.
Example:Q0021748
Marks a quoted policy as Not Taken Up (NTU). Moves the policy from Quote to Quote NTU status, indicating the insured or broker chose not to proceed with the quoted terms.
Unique identifier of the policy to be marked as NTU
Example:20793
Unique identifier of the policy activity associated with the quote
Example:45632
Optional reason explaining why the quote was not taken up
Example:Insured found a more competitive quote elsewhere
Identifies the calling system or channel that originated this request. Used for traceability and auditing across the platform.
Example:S01x
Identifier of the end user on whose behalf this request is made, recorded for audit trail purposes.
Example:jsmith
Policy successfully marked as Quote NTU
Response object containing cyber submission details including policy information, status, and reference keys
Current status of the policy
Allowed values:Quote PreparationPolicy UpdatedBoundDeclinedReferredQuote NTU
Example:Quote Preparation
Policy number assigned to the submission. Starts with ‘Q’ for quotes, ‘P’ for policies
Match pattern:^[QP]\d{7}$
Example:Q0038456
Business reference number for tracking purposes
Example:CYB-2026-001
Internal policy key identifier used for database references
Example:20894
Internal policy activity key identifier for tracking specific policy activities
Example:45632
Status of the current policy activity
Allowed values:ActiveCompletedPendingCancelledQuote NTU
Example:Active
Quote number assigned when the submission reaches quote stage.
Example:Q0021748
Create, retrieve, and search policies across the lifecycle.
Runs the complete Mosaic submission pipeline (Shell → Full → Quote → Bind) in a single request, orchestrated by an internal state machine.
You send one payload — the platform handles all lifecycle stages internally. There is no need to make separate calls for shell, full, quote, or bind.
The shell step runs synchronously and returns policyNo, policyKey, and policyActivityKey in the response. The full, quote, and bind steps continue asynchronously — poll GET /policies/orchestrate/{policyNo}/stepStatus to track progress.
| Block | Purpose | Required? |
|---|---|---|
fullRequest |
Shell (account / policy / producer) + Full (underwriting) data | Yes |
quoteRequest |
Pricing, sections, coverages, lines (includes bind-time & FON attributes per section/line) | Recommended |
bindRequest |
Policy-level bind data (insured enrichment, sanction check, surplus broker, FON activity) | Recommended |
The shell step typically completes within 35–40 seconds. Full, quote, and bind steps complete asynchronously.
Identifies the calling system or channel that originated this request. Used for traceability and auditing across the platform.
Example:S01x
Identifier of the end user on whose behalf this request is made, recorded for audit trail purposes.
Example:jsmith
Container carrying the submission bodies for the TridentGlobalSubmission state machine: fullRequest (required; includes shell+full data), quoteRequest (quote + merged section-level bind attributes, optional), and bindRequest (policy-level bind, no sections, optional). Each object is forwarded verbatim to its matching step — use the same JSON the standalone endpoints accept.
Single-call submission payload. Combines Shell + Full + Quote + Bind data so external consumers send everything once — the platform executes each stage internally in sequence.
fullRequest is required and carries the insured/policy/producer identifiers (shell) plus underwriting enrichment (full). quoteRequest carries all pricing, section, and line data, including bind-time attributes for each section and line. bindRequest carries the policy-level bind attributes that are not tied to a specific section or line.
Required. Shell (Step 1) and Full (Step 2) data combined.
Required fields: underWriter (id), revTurnover.
Required shell fields (first submission): insured, producer, policy (effectiveDate, expiryDate, currency, product, territory), directAssumed, typeOfBilling, division, writtenLine, sectionIdentifier, referenceType, typeOfPlacementBespoke.
Optional fields: producingUnderwriter (id), producingCompany (id), lloydsIndustrialSector (id).
Per-line fields (ourRole, signedLinePercentage) belong in quoteRequest.lines[].
Quote, FON, and bind attributes at the section and line level.
Required quote fields: sections (array, at least one), summaryCurrency (code), typeOfCyberClauseStatus (id), uSClassification (id).
Each entry in sections[] carries coverage lines, deductions, deductibles, reinstatements, regulatory coding, and bind-time attributes (instalmentbasis, paymentDays, premiumBasis, typeofClaimBasis).
Each entry in lines[] represents an agency line and carries submission fields (underWriter, typeOfBilling, division, writtenLine, producingCompany, sBFClass), quote fields (ourRole, signedLinePercentage, producingUnderwriter, lloydsPlatform, bureauLead, isThirdPartyCapacityDeployed), FON fields (brokerOrderPercent, signedOrderPercent, policyLineReference), and bind fields (claimsAgreementParty, defenseCostsCovered, leaderPercent, leaderReference, actualDateWritten, dateSigned, policyLineReferenceOverride). Syndicate lines and derived fields (originating division/office, global-risk cross-reference, inclusive line) are handled by Trident.
Policy-level bind attributes —
Key required fields: prebindSanctionCheckComplete.
Supply insured for bind-time enrichment (occupation, mailing address, TINs). Supply surplusBroker when risk premium originates from the United States. Supply fon for FON activity attributes (CY LOB only).
claimsAgreementParty is a per-line attribute — supply it on each entry in quoteRequest.lines[], not here.
Section/line attributes (premiumBasis, typeofClaimBasis, instalmentbasis, leaderPercent, etc.) are carried in quoteRequest — not repeated here.
Base step succeeded; the full step is running asynchronously.
Minimal response returned after the base Step Function completes.
Correlation id for tracing the background full + quote executions in logs
Example:9b3f7c1c-1f0a-4e2d-9d7c-2e3a8b4c6d2e
Policy number produced by the base submission step
Example:Q0038456
Policy key produced by the base submission step, propagated to the async steps
Example:20894
Policy activity key produced by the base submission step
Example:45632
ACCEPTED means the full step is running in background; FAILED means the base step failed
Allowed values:ACCEPTEDFAILED
Example:ACCEPTED
Human-readable message
Example:Base submission succeeded. The full step is running asynchronously.