Searching Policies#
To search policies, use this endpoint:
POST https://api.{ENV}.dais.com/ioi/v3/policy/search
Request 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:
{
"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#
| Property | Required | Description |
|---|---|---|
page | No | Zero-based page number. Default 0; minimum 0. |
size | No | Results per page. Default 20; minimum 1. |
effectiveDateFrom | No | The earliest effective date of the policy |
effectiveDateTo | No | The latest effective date of the policy |
expirationDateFrom | No | The earliest expiration date of the policy |
expirationDateTo | No | The latest expiration date of the policy |
policyNumber | No | The policy number to search for |
insuredName | No | The name of the insured to search for |
insuredDbaName | No | The DBA name of the insured to search for |
insuredContactFirstName | No | The first name of the insured contact to search for |
insuredContactLastName | No | The last name of the insured contact to search for |
insuredContactEmail | No | The email of the insured contact to search for |
insuredContactPhone | No | The phone number of the insured contact to search for |
agencyId | No | Agency identifier string; supports partial matching. |
agencyName | No | The name of the agency to search for |
producerId | No | Producer identifier string; supports partial matching. |
producerFirstName | No | The first name of the producer to search for |
producerLastName | No | The last name of the producer to search for |
producerEmail | No | The email of the producer to search for |
producerPhone | No | The phone number of the producer to search for |
carrierId | No | Carrier identifier string; supports partial matching. |
carrierName | No | The name of the carrier to search for |
anyMatch | No | Search 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:
{
"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:
{
"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:
GET https://api.{ENV}.dais.com/ioi/v3/policy/{policyId}
Where {policyId} is the UUID of the policy to retrieve.
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#
| Property | Required | Description |
|---|---|---|
policyId | Yes | UUID 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.