Skip to content

Policies

Searching Policies#

To search policies, use this endpoint:

HTTPPOST
POST https://api.{ENV}.dais.com/ioi/v3/policy/search

Request JSON:

JSON
{
  "page": 0,
  "size": 20,
  "effectiveDateFrom": "2024-05-01",
  "effectiveDateTo": "2024-05-01",
  "expirationDateFrom": "2024-05-01",
  "expirationDateTo": "2024-06-01",
  "policyNumber": "<Policy number>",
  "insuredName": "<Insured name>",
  "insuredDbaName": "<Insured DBA name>",
  "insuredContactFirstName": "<Insured contact first name>",
  "insuredContactLastName": "<Insured contact last name>",
  "insuredContactEmail": "<Insured contact email address>",
  "insuredContactPhone": "<Insured contact phone number>",
  "agencyId": "<Agency identifier>",
  "agencyName": "<Agency name>",
  "producerId": "<Producer identifier>",
  "producerFirstName": "<Producer first name>",
  "producerLastName": "<Producer last name>",
  "producerEmail": "<Producer email address>",
  "producerPhone": "<Producer phone number>",
  "carrierId": "<Carrier identifier>",
  "carrierName": "<Carrier name>"
}

Example response JSON:

JSON
{
  "content": [
    {
      "id": "<UUID of the policy ID>",
      "policyNumber": "<Policy number>",
      "premium": 5250.0,
      "effectiveDate": "2024-05-01",
      "expirationDate": "2024-06-01",
      "policyMeta": {
        "insuredName": "<Insured name>"
      }
    }
  ],
  "number": 0,
  "size": 20,
  "totalElements": 1,
  "last": true,
  "totalPages": 1,
  "sort": {
    "unsorted": true,
    "sorted": false,
    "empty": true
  },
  "first": true,
  "numberOfElements": 1,
  "empty": false
}

Request Fields#

PropertyRequiredDescription
pageNoZero-based page number. Default 0; minimum 0.
sizeNoResults per page. Default 20; minimum 1.
effectiveDateFromNoThe earliest effective date of the policy
effectiveDateToNoThe latest effective date of the policy
expirationDateFromNoThe earliest expiration date of the policy
expirationDateToNoThe latest expiration date of the policy
policyNumberNoThe policy number to search for
insuredNameNoThe name of the insured to search for
insuredDbaNameNoThe DBA name of the insured to search for
insuredContactFirstNameNoThe first name of the insured contact to search for
insuredContactLastNameNoThe last name of the insured contact to search for
insuredContactEmailNoThe email of the insured contact to search for
insuredContactPhoneNoThe phone number of the insured contact to search for
agencyIdNoAgency identifier string; supports partial matching.
agencyNameNoThe name of the agency to search for
producerIdNoProducer identifier string; supports partial matching.
producerFirstNameNoThe first name of the producer to search for
producerLastNameNoThe last name of the producer to search for
producerEmailNoThe email of the producer to search for
producerPhoneNoThe phone number of the producer to search for
carrierIdNoCarrier identifier string; supports partial matching.
carrierNameNoThe name of the carrier to search for
anyMatchNoSearch text across policyMeta and policyNumber; overrides other text filters when nonblank.

Note: text filters support case-insensitive partial matching. Date filters are inclusive date boundaries; pagination and date fields do not support wildcard search. For example, this request:

JSON
{
  "page": 0,
  "size": 20,
  "policyNumber": "<Policy number>"
}

Returns policies whose number contains the text supplied in <Policy number>.

A nonblank anyMatch ignores the named text filters, such as policyNumber and insuredName. Organization scoping and date filters still apply. anyMatch is the text to search for, not a boolean switch:

JSON
{
  "anyMatch": "<Search text>",
  "effectiveDateFrom": "2024-05-01"
}

See Policy Search for the complete policy-summary response fields. Premium is a number, and insured details are nested under policyMeta.

Getting Policy Detail#

To retrieve a complete policy, use this endpoint:

HTTPGET
GET https://api.{ENV}.dais.com/ioi/v3/policy/{policyId}

Where {policyId} is the UUID of the policy to retrieve.

cURL
curl --location --request GET 'https://api.{ENV}.dais.com/ioi/v3/policy/<UUID of the policy ID>' \
--header 'Authorization: Basic <Base64-encoded API key and secret>'

Request Fields#

PropertyRequiredDescription
policyIdYesUUID of the policy to retrieve

The response is a full-policy object, with policy fields nested under policy (for example, policy.policyNumber). See Policy Retrieval for its structure and the related endpoints.