---
title: Composite Searching
slug: api/Z4H8-composite-searching
icon: {"faIcon":"fa-brands fa-buffer"}
createdAt: 2025-03-04T04:58:12.758Z
---

**Composite search in Ireland enables clients to automate the selection of multiple services, processing verification inputs through successive data sources and returning responses from each selected service.**



<u>**Example&#x20;**</u>- API Requests and Responses with following services configured:

Ireland Citizens
Ireland Credit Bureau
Ireland Residential
Ireland Utility
Ireland Voter Registration


:::ApiMethodV2
```json
{
  "name": "Ireland Composite Search",
  "method": "POST",
  "url": "https://idu-test.datazoo.com/api/v2/verify",
  "description": "* Verification Outcome – KYC verification from sequenced searching and returns single or duel (where possible) source matches\n* Consumer Consent – N/A\n* Mandatory Input – Name\n* Verifies – Name, DOB, Address, Phone and Tax ID number\n* Returned Data - N/A",
  "tab": "examples",
  "examples": {
    "languages": [
      {
        "id": "f2jMy98sIuBrop0Bgc788",
        "language": "curl",
        "code": "curl --location 'https://idu-test.datazoo.com/api/v2/verify' \\\n--data '{\n    \"countryCode\": \"IE\",\n    \"service\": [\n        \"Ireland Citizens\",\n        \"Ireland Credit Bureau\",\n        \"Ireland Residential\",\n        \"Ireland Utility\",\n        \"Ireland Voter Registration\"\n    ],\n    \"clientReference\": \"Test_0001\",\n    \"firstName\": \"CLFNAME\",\n    \"middleName\": \"CLMNAME\",\n    \"lastName\": \"CLLNAME\",\n    \"gender\": \"FEMALE\",\n    \"dateOfBirth\": \"1985-01-05\",\n    \"addressElement1\": \"CLADDRESS 1\",\n    \"addressElement3\": \"CLCITY\",\n    \"addressElement4\": \"CLSTATE\",\n     \"identityVariables\": {\n \t\t\"phoneNo\": \"9897456132\",\n        \"nationalIDNo\": \"12345678\"               \n    }\n}'",
        "customLabel": ""
      }
    ],
    "selectedLanguageId": "f2jMy98sIuBrop0Bgc788"
  },
  "results": {
    "languages": [
      {
        "id": "-KLLvb-_jXQIuU-WuWQAF",
        "language": "200",
        "customLabel": "",
        "code": "curl --location 'https://idu-test.datazoo.com/api/v2/verify' \\\n--data '{\n    \"countryCode\": \"IE\",\n    \"service\": [\n        \"Ireland Citizens\",\n        \"Ireland Credit Bureau\",\n        \"Ireland Residential\",\n        \"Ireland Utility\",\n        \"Ireland Voter Registration\"\n    ],\n    \"clientReference\": \"Test_0001\",\n    \"firstName\": \"CLFNAME\",\n    \"middleName\": \"CLMNAME\",\n    \"lastName\": \"CLLNAME\",\n    \"gender\": \"FEMALE\",\n    \"dateOfBirth\": \"1985-01-05\",\n    \"addressElement1\": \"CLADDRESS 1\",\n    \"addressElement3\": \"CLCITY\",\n    \"addressElement4\": \"CLSTATE\",\n     \"identityVariables\": {\n \t\t\"phoneNo\": \"9897456132\",\n        \"nationalIDNo\": \"12345678\"               \n    }\n}'"
      },
      {
        "id": "AS5tJ4glQVhlG7b69Q21J",
        "language": "404",
        "customLabel": "",
        "code": "{\n  \"message\": \"Ain't no cake like that.\"\n}"
      }
    ],
    "selectedLanguageId": "-KLLvb-_jXQIuU-WuWQAF"
  },
  "request": {
    "pathParameters": [],
    "queryParameters": [],
    "headerParameters": [
      {
        "name": "Authorization",
        "kind": "required",
        "type": "string",
        "description": "sessionToken obtained via the Authentication call",
        "": "sessionToken obtained via the Authentication call"
      }
    ],
    "bodyDataParameters": [
      {
        "name": "data",
        "kind": "required",
        "type": "object",
        "description": "request body sent to the API",
        "": "object",
        "children": [
          {
            "name": "countryCode",
            "kind": "required",
            "type": "string",
            "description": "IE"
          },
          {
            "name": "service",
            "kind": "required",
            "type": "array",
            "description": "\"Ireland Citizens\", \"Ireland Credit Bureau\", \"Ireland Residential\", \"Ireland Utility\",  \"Ireland Voter Registration\""
          },
          {
            "name": "clientReference",
            "kind": "optional",
            "type": "string",
            "description": "a client reference field"
          },
          {
            "name": "firstName",
            "kind": "required",
            "type": "string",
            "description": "first name of the identity owner"
          },
          {
            "name": "middleName",
            "kind": "optional",
            "type": "string",
            "description": "the middle name(s) of the identity owner"
          },
          {
            "name": "lastName",
            "kind": "required",
            "type": "string",
            "description": "the last name of the identity owner"
          },
          {
            "name": "gender",
            "kind": "optional",
            "type": "string",
            "description": "Male or Female"
          },
          {
            "name": "dateOfBirth",
            "kind": "optional",
            "type": "string",
            "description": "in YYYY-MM-DD (preferred) or DD-MM-YYYY format",
            "children": []
          },
          {
            "name": "addressElement1",
            "kind": "optional",
            "type": "string",
            "description": "the street level address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement3",
            "kind": "optional",
            "type": "string",
            "description": "the suburb address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement4",
            "kind": "optional",
            "type": "string",
            "description": "the state address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement5",
            "kind": "optional",
            "type": "string",
            "description": "the Eircode address of the identity owner",
            "children": []
          },
          {
            "name": "identityVariables",
            "kind": "optional",
            "type": "object",
            "description": "other elements for verification",
            "children": [
              {
                "name": "phoneNo",
                "kind": "optional",
                "type": "string",
                "description": "phone number of the identity owner"
              },
              {
                "name": "nationalIDNo",
                "kind": "optional",
                "type": "string",
                "description": "Identity number of the identity owner"
              }
            ]
          }
        ],
        "schema": [
          {
            "name": "countryCode",
            "kind": "required",
            "type": "string",
            "description": "IE"
          },
          {
            "name": "service",
            "kind": "required",
            "type": "array",
            "description": "\"Ireland Citizens\", \"Ireland Credit Bureau\", \"Ireland Residential\", \"Ireland Utility\",  \"Ireland Voter Registration\""
          },
          {
            "name": "clientReference",
            "kind": "optional",
            "type": "string",
            "description": "a client reference field"
          },
          {
            "name": "firstName",
            "kind": "required",
            "type": "string",
            "description": "first name of the identity owner"
          },
          {
            "name": "middleName",
            "kind": "optional",
            "type": "string",
            "description": "the middle name(s) of the identity owner"
          },
          {
            "name": "lastName",
            "kind": "required",
            "type": "string",
            "description": "the last name of the identity owner"
          },
          {
            "name": "gender",
            "kind": "optional",
            "type": "string",
            "description": "Male or Female"
          },
          {
            "name": "dateOfBirth",
            "kind": "optional",
            "type": "string",
            "description": "in YYYY-MM-DD (preferred) or DD-MM-YYYY format",
            "children": []
          },
          {
            "name": "addressElement1",
            "kind": "optional",
            "type": "string",
            "description": "the street level address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement3",
            "kind": "optional",
            "type": "string",
            "description": "the suburb address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement4",
            "kind": "optional",
            "type": "string",
            "description": "the state address of the identity owner",
            "children": []
          },
          {
            "name": "addressElement5",
            "kind": "optional",
            "type": "string",
            "description": "the Eircode address of the identity owner",
            "children": []
          },
          {
            "name": "identityVariables",
            "kind": "optional",
            "type": "object",
            "description": "other elements for verification",
            "children": [
              {
                "name": "phoneNo",
                "kind": "optional",
                "type": "string",
                "description": "phone number of the identity owner"
              },
              {
                "name": "nationalIDNo",
                "kind": "optional",
                "type": "string",
                "description": "Identity number of the identity owner"
              }
            ]
          }
        ]
      }
    ],
    "formDataParameters": []
  },
  "currentNewParameter": {
    "label": "Body Parameter",
    "value": "bodyDataParameters"
  },
  "hasTryItOut": false,
  "response": [
    {
      "name": "countryCode",
      "kind": "optional",
      "type": "string",
      "description": "Ireland",
      "children": []
    },
    {
      "name": "clientReference",
      "kind": "optional",
      "type": "string",
      "description": "the client reference (if given as input) ",
      "children": []
    },
    {
      "name": "reportingReference",
      "kind": "optional",
      "type": "string",
      "description": "a reference number generated which is unique to each transaction. ",
      "children": []
    },
    {
      "name": "validationErrors",
      "kind": "optional",
      "type": "string",
      "description": "Returned with HTTP status code 400 when the request contains invalid or improperly formatted input data.",
      "children": []
    },
    {
      "name": "matchStatus",
      "kind": "optional",
      "type": "string",
      "description": "\"Full Match 1+1 Verification\" \n\"Full Match 2+2 Verification\" \n\"No Match\""
    },
    {
      "name": "searchErrorMessage",
      "kind": "optional",
      "type": "string",
      "description": "error message returned querying the data source",
      "children": []
    },
    {
      "name": "safeHarbour",
      "kind": "optional",
      "type": "boolean",
      "description": "true or false",
      "children": []
    },
    {
      "name": "searchStatus",
      "kind": "optional",
      "type": "string",
      "description": "\"Successful\" \n\"Not Successful\"",
      "children": []
    },
    {
      "name": "serviceResponses",
      "kind": "optional",
      "type": "object",
      "description": "* refer to the section at the bottom of the page titled \"Service Responses Overview\"",
      "children": [
        {
          "name": "status",
          "kind": "optional",
          "type": "integer",
          "description": "0 - identityVerified TRUE - element verifications all TRUE\n1 - identityVerified TRUE - element verifications not all TRUE\n2 - identityVerified FALSE - sourceStatus SUCCESSFUL\n3 - identityVerified FALSE - sourceStatus NOT SUCCESSFUL"
        },
        {
          "name": "sourceStatus",
          "kind": "optional",
          "type": "string",
          "description": "\"Successful\"\n\"Unsuccessful\""
        },
        {
          "name": "errorMessage",
          "kind": "optional",
          "type": "string",
          "description": "error message(s) from the data source.  Example, \"Error querying data source\"."
        },
        {
          "name": "identityVerified",
          "kind": "optional",
          "type": "boolean",
          "description": "true or false"
        },
        {
          "name": "safeHarbourScore",
          "kind": "optional",
          "type": "string",
          "description": "* refer to the section at the bottom of the page titled \"Service Responses Overview\"\n* For more information, refer to Safe Harbour Scores page"
        },
        {
          "name": "nameMatchScore",
          "kind": "optional",
          "type": "string",
          "description": "* refer to the section at the bottom of the page titled \"Service Responses Overview\""
        },
        {
          "name": "addressMatchScore",
          "kind": "optional",
          "type": "string",
          "description": "* refer to the section at the bottom of the page titled \"Service Responses Overview\""
        },
        {
          "name": "verifications",
          "kind": "optional",
          "type": "object",
          "description": "* refer to the section at the bottom of the page titled \"Service Responses Overview\"",
          "children": [
            {
              "name": "addressElement1",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "addressElement3",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "addressElement4",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "addressElement5",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "dateOfBirth",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "firstName",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "gender",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "lastName",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "middleName",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "nationalIDNo",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            },
            {
              "name": "phoneNo",
              "kind": "optional",
              "type": "boolean",
              "description": ""
            }
          ]
        },
        {
          "name": "returnedData",
          "kind": "optional",
          "type": "object",
          "description": "Null",
          "children": []
        }
      ]
    },
    {
      "name": "remarks",
      "kind": "optional",
      "type": "array",
      "description": "Null",
      "children": []
    }
  ],
  "autoGeneratedAnchorSlug": "ireland-composite-search",
  "legacyHash": "ubXISaPD1cDib1_yU6l2u"
}
```
:::

***

:::hint{type="info"}
# Service Responses Overview&#x20;

Each service returns its own self-contained response block, ensuring modular and source-specific verification results. Consumers of this API should handle varying response structures dynamically based on the requested services.&#x20;

## Service Responses Element

The **serviceResponses** object in the API response contains verification results from one or more data sources, structured under their respective service names. Each service returns a distinct response block with service-specific data.

### Structure and Behavior:&#x20;

- Each key within **serviceResponses** corresponds to a **service name**, representing an individual verification source.
- Services may return data from **a single source or multiple sources** in a sequenced API call.
- The structure of each service response varies, with fields such as **status**, **identityVerified**, and **safeHarbourScore** differing between services.
- The **verifications** block contains service-specific boolean indicators for individual verification checks (e.g., **addressElement1**, **dateOfBirth**, **firstName**).
- The **returnedData** block provides metadata (if applicable).
:::

***

:::Changelog{title="Change History"}
::ChangelogItem{type="added" description="Last updated - 1 April, 2025"}
:::

