Version: Current – v2.x

On this page

This endpoint can be used to obtain the applicable customer due diligence (CDD) requirements for a given jurisdiction and investor type. Use it to determine which documents and information must be collected for an individual or business before they can be onboarded.

### HTTP Request

```http
GET https://api.parallelmarkets.com/v2/cdd-requirements
```

### Query Parameters

| Parameter | Description |
| --- | --- |
| `jurisdiction_country_code` _(string)_ | **Required.** ISO 3166-1 alpha-2 country code identifying the jurisdiction (e.g. `US`, `GB`). |
| `investor_type` _(string)_ | **Required.** One of `individual` or `business`. |
| `business_type` _(string)_ | **Required when `investor_type=business`.** The shortname of a valid business type. See [Business Profile](https://developer.parallelmarkets.com/docs/server/data-structures#business-profile) for supported values. |

### Response Parameters

| Parameter | Description |
| --- | --- |
| `data` | An object describing the CDD requirements for the requested jurisdiction and investor type. |
| `data.jurisdiction_country_code` | The ISO country code echoed from the request. |
| `data.investor_type` | The investor type echoed from the request. |
| `data.business_type` | The business type echoed from the request, or `null` when `investor_type=individual`. |
| `data.requirements` | An array of requirement objects (see below). |

Each requirement has the following fields:

| Parameter | Description |
| --- | --- |
| `shortname` | A stable identifier for the requirement (e.g. `id`, `proof-of-address`, `tax-forms`). |
| `name` | A human-readable name for the requirement. |
| `description` | A description of what the requirement covers. May be `null`. |
| `level` | The scope at which the requirement applies. One of: <br>- `record` — applies once per investor identity record.<br>- `subscription` — applies once per fund subscription. |
| `acceptable_documents` | An array of `{ shortname, name }` objects describing the documents that satisfy the requirement. |

### Example Response

```json
{
  "data": {
    "jurisdiction_country_code": "US",
    "investor_type": "individual",
    "business_type": null,
    "requirements": [
      {
        "shortname": "id",
        "name": "Identity Document",
        "description": "Government-issued photo identification document",
        "level": "record",
        "acceptable_documents": [
          { "shortname": "drivers-license", "name": "Driver's License" },
          { "shortname": "state-id-card", "name": "State ID card" },
          { "shortname": "passport", "name": "Passport" }
        ]
      }
    ]
  }
}
```

### Caching

Responses include a `Cache-Control: private, max-age=3600` header. Clients may cache results for up to one hour for a given combination of `jurisdiction_country_code`, `investor_type`, and `business_type`.

### Error Responses

In addition to the [standard error responses](https://developer.parallelmarkets.com/docs/server/errors), this endpoint may return:

| Status | Condition |
| --- | --- |
| 400 | `jurisdiction_country_code` is missing. |
| 400 | `investor_type` is missing or not one of `individual` or `business`. |
| 400 | `business_type` is missing when `investor_type=business`. |
| 401 | The API key is missing or invalid. |
| 404 | The provided `jurisdiction_country_code` is not recognized. |
| 404 | The provided `business_type` shortname is not recognized.
