Closed beta · run Worlds on your machineBrowse worlds →
Docs menu · Duck Creek API

Worlds / Healthcare and insurance

Duck Creek API

A local Duck Creek Policy with quotes, policies, endorsements, coverages and rating tables for commercial and personal lines. Test the underwriting agent that quotes, binds and endorses policies.

Base path
/api/v1
Auth
OAuth 2.0 bearer token, the world key
Endpoints
17
Status
Active today

This reference previews the surface the Duck Creek world serves in the closed beta. Paths mirror the public Duck Creek API; the exact subset is confirmed when your workflow is scoped.

Connect

The run gives your agent these bindings. Keep your SDK; change only where it sends requests.

bindingmeaning
WORLDS_DUCK_CREEK_URLThis world's origin followed by /api/v1
WORLDS_API_KEYThe world key, accepted wherever Duck Creek expects a credential
WORLDS_WORLD_IDThe isolated world's identity
js · fetch
const base = process.env.WORLDS_DUCK_CREEK_URL + "/api/v1";

const res = await fetch(base + "/policies/POL-100234", {
  headers: {
    Authorization: "Bearer " + process.env.WORLDS_API_KEY,
    Accept: "application/json",
  },
});

const policy = await res.json();
console.log(policy.status);

API reference

Quotes

Rated quotes for new business.

  • POST/api/v1/quotesCreate a quote
  • GET/api/v1/quotes/{quoteNumber}Get a quote
  • PUT/api/v1/quotes/{quoteNumber}Update a quote
  • POST/api/v1/quotes/{quoteNumber}/rateRate a quote
  • POST/api/v1/quotes/{quoteNumber}/bindBind a quote
Fields · 5
quoteNumberstringQuote number
productCodestringLine of business product
effectiveDatedateRequested effective date
premiumnumberTotal premium
statusstringDraft, rated or bound

Policies

Issued policies and their transactions.

  • GET/api/v1/policiesList policies
  • GET/api/v1/policies/{policyNumber}Get a policy
  • POST/api/v1/policies/{policyNumber}/endorsementsCreate an endorsement
  • POST/api/v1/policies/{policyNumber}/cancelCancel a policy
  • POST/api/v1/policies/{policyNumber}/renewRenew a policy
Fields · 6
policyNumberstringPolicy number
statusstringActive, cancelled or expired
effectiveDatedateTerm start
expirationDatedateTerm end
insuredobjectNamed insured
premiumnumberWritten premium

Parties

People and organizations tied to policies and claims.

  • GET/api/v1/partiesSearch parties
  • GET/api/v1/parties/{partyId}Get a party
  • POST/api/v1/partiesCreate a party
Fields · 5
partyIdstringParty id
typestringPerson or organization
namestringDisplay name
addressobjectMailing address
emailstringEmail

Claims

Claims filed against policies.

  • GET/api/v1/claimsList claims
  • GET/api/v1/claims/{claimNumber}Get a claim
  • POST/api/v1/claimsReport a claim
  • PUT/api/v1/claims/{claimNumber}Update a claim
Fields · 5
claimNumberstringClaim number
policyNumberstringPolicy number
lossDatedateDate of loss
statusstringOpen, closed or reopened
reservenumberCurrent reserve

Test workflow

  1. Prepare. Select the Duck Creek setup for your workflow and review its starting records, including quotes, policies, parties.
  2. Connect. Configure your agent with this world's URL and key using the SDK example. Check that it reaches the intended API before running a test.
  3. Define. Describe the task, expected final changes and records that must stay untouched. Keep expected outcomes separate from the agent's instructions.
  4. Run and inspect. Use the dashboard or your workflow's generated CLI setup. Review final records and changes, then rerun from the same starting setup with the relevant failure conditions. Use Deployment and CI to automate the same workflow.

What to verify

  • Q-30418 is bound with premium unchanged from the quote
  • Q-30422 is still quoted with its referral open
  • P-77120 endorsement issued with the requested effective date
  • No endorsement effective before its policy term
  • No quote bound past its expiration date

Test file

A task file names the jobs, the policy your agent is given and what the grader reads back from the world's final state. The agent never sees the expected outcomes.

yaml · worlds/tasks.yaml
# worlds/tasks.yaml · Duck Creek
version: 2
connector: duck-creek
seed: duck-creek-starter
mode: isolated
policy: >
  Clear the policy queue. Bind quoted submissions that have no open referrals,
  issue pending endorsements effective on the requested date, and leave
  referred quotes for an underwriter.
tasks:
  - id: rate-and-quote-new-submissions
    prompt: Rate and quote new submissions
  - id: bind-quotes-that-pass-underwriting-rules
    prompt: Bind quotes that pass underwriting rules
  - id: endorse-in-force-policies-such-as-adding-a-vehicle-or-rider
    prompt: "Endorse in force policies, such as adding a vehicle or rider"
expected:
  - Q-30418 is bound with premium unchanged from the quote
  - Q-30422 is still quoted with its referral open
  - P-77120 endorsement issued with the requested effective date
  - No endorsement effective before its policy term
  - No quote bound past its expiration date
scenarios:
  - rating-error
  - quote-expired
  - referral-required

See Tasks and outcomes for every field, and Deployment and CI to run the file on every pull request.

Failure conditions

Each one fires before the handler, at the same step on every run.

conditionwhat the agent sees
rating-errorThe rate call fails because a required class code is missing
quote-expiredBinding a quote past its expiration date is rejected
referral-requiredAn underwriting rule moves the quote to referred
session-times-outThe API session expires during a long endorsement

Starting data

Start each run from the same records and relationships. The overview below describes the Duck Creek starter; use the setup supplied for your workflow when preparing your own snapshot.

RecordsStarting setup
quotes25 across in progress, quoted, declined and expired
policies40 in force, with term dates and premiums
endorsements12 pending mid term changes
rating tablesBase rates, territory and deductible factors
underwriting rulesReferral rules on high TIV and prior losses

The record shapes below reuse this world's API field definitions. They show illustrative values and placeholders, not an importable seed. API responses and seed input can differ; include all required records and references in the accepted import format for your workflow.

Quotes records

Quotes

Rated quotes for new business.

FieldTypeMeaning / relationship
quoteNumberstringQuote number
productCodestringLine of business product
effectiveDatedateRequested effective date
premiumnumberTotal premium
statusstringDraft, rated or bound
json · illustrative record shape
{
  "quoteNumber": "<Quote number>",
  "productCode": "<Line of business product>",
  "effectiveDate": "<Requested effective date>",
  "premium": 1,
  "status": "<Draft, rated or bound>"
}

See quotes operations

Policies records

Policies

Issued policies and their transactions.

FieldTypeMeaning / relationship
policyNumberstringPolicy number
statusstringActive, cancelled or expired
effectiveDatedateTerm start
expirationDatedateTerm end
insuredobjectNamed insured
premiumnumberWritten premium
json · illustrative record shape
{
  "policyNumber": "<Policy number>",
  "status": "<Active, cancelled or expired>",
  "effectiveDate": "<Term start>",
  "expirationDate": "<Term end>",
  "insured": {},
  "premium": 1
}

See policies operations

Parties records

Parties

People and organizations tied to policies and claims.

FieldTypeMeaning / relationship
partyIdstringParty id
typestringPerson or organization
namestringDisplay name
addressobjectMailing address
emailstringEmail
json · illustrative record shape
{
  "partyId": "<Party id>",
  "type": "<Person or organization>",
  "name": "<Display name>",
  "address": {},
  "email": "person@example.test"
}

See parties operations

Claims records

Claims

Claims filed against policies.

FieldTypeMeaning / relationship
claimNumberstringClaim number
policyNumberstringPolicy number
lossDatedateDate of loss
statusstringOpen, closed or reopened
reservenumberCurrent reserve
json · illustrative record shape
{
  "claimNumber": "<Claim number>",
  "policyNumber": "<Policy number>",
  "lossDate": "<Date of loss>",
  "status": "<Open, closed or reopened>",
  "reserve": 1
}

See claims operations

See the Duck Creek world in the catalog