# Create a check

{% hint style="info" %}
Please refer to the check type respective pages for a more detailed breakdown of request and response structures:

* [Standard AML Screening](https://docs.complycube.com/documentation/api-reference/check-types/aml-screening-check)
* [Extensive AML Screening](https://docs.complycube.com/documentation/api-reference/check-types/aml-screening-check)
* [Document Check](https://docs.complycube.com/documentation/api-reference/check-types/document-check)
* [Identity Check](https://docs.complycube.com/documentation/api-reference/check-types/identity-check)
* [Enhanced Identity Check](https://docs.complycube.com/documentation/api-reference/check-types/enhanced-identity-check)
* [Proof of Address Check](https://docs.complycube.com/documentation/api-reference/check-types/proof-of-address-check)
* [Multi-Bureau Check](https://docs.complycube.com/documentation/api-reference/check-types/multi-bureau-check)
* [eID Check](https://docs.complycube.com/documentation/api-reference/check-types/eid-check)
* [SSN Check](https://docs.complycube.com/documentation/api-reference/check-types/ssn-check)
* [Age Estimation Check](https://docs.complycube.com/documentation/api-reference/check-types/age-estimation-check)
* [Identity Fraud Check](https://docs.complycube.com/documentation/api-reference/check-types/identity-fraud-check)
* [Driving License Check](https://docs.complycube.com/documentation/api-reference/check-types/driving-license-check)
* [Device Intelligence Check](https://docs.complycube.com/documentation/api-reference/check-types/device-intelligence-check)
* [Email Intelligence Check](https://docs.complycube.com/documentation/api-reference/check-types/email-intelligence-check)
* [Mobile Intelligence Check](https://docs.complycube.com/documentation/api-reference/check-types/mobile-intelligence-check)
* [Face Authentication Check](https://docs.complycube.com/documentation/api-reference/check-types/face-authentication-check)
  {% endhint %}

### URL

<mark style="color:green;">**POST**</mark> `https://api.complycube.com/v1/checks`

Creates a new check.

### Headers

<table><thead><tr><th width="309">Name</th><th width="117">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>Content-Type</code><mark style="color:red;">*</mark></td><td>string</td><td>The content-type must always be set to <code>application/json</code>.</td></tr><tr><td><code>Authorization</code><mark style="color:red;">*</mark></td><td>string</td><td>The API <strong><code>live</code></strong> or <strong><code>test</code></strong> key</td></tr></tbody></table>

### Body

<table><thead><tr><th width="313">Name</th><th width="115">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>clientId</code><mark style="color:red;">*</mark></td><td>string</td><td>The ID of the client.</td></tr><tr><td><code>type</code><mark style="color:red;">*</mark></td><td>string</td><td><p>The type of check. Valid values include: </p><ol><li><code>standard_screening_check</code></li><li><code>extensive_screening_check</code></li><li><code>document_check</code></li><li><code>identity_check</code></li><li><code>enhanced_identity_check</code></li><li><code>proof_of_address_check</code></li><li><code>multi_bureau_check</code> </li><li><code>eid_check</code> </li><li><code>ssn_check</code></li><li><code>age_estimation_check</code></li><li><code>identity_fraud_check</code></li><li><code>driving_license_check</code></li><li><code>device_intelligence_check</code></li><li><code>email_intelligence_check</code></li><li><code>mobile_intelligence_check</code></li><li><code>face_authentication_check</code></li></ol></td></tr><tr><td><code>enableMonitoring</code></td><td>boolean</td><td>Determines whether continuous monitoring is enabled. When not provided, it defaults to <strong>false</strong>.</td></tr><tr><td><code>documentId</code></td><td>string</td><td>The ID of the document. This is expected when the type of check is <code>document_check</code>, <code>identity_check</code>, <code>enhanced_identity_check</code>,  <code>proof_of_address_check</code>, or <code>driving_license_check</code>.</td></tr><tr><td><code>addressId</code></td><td>string</td><td>The ID of the address. This is expected when the check type is <code>multi_bureau_check</code> or <code>identity_fraud_check</code>.</td></tr><tr><td><code>livePhotoId</code></td><td>string</td><td>The ID of the live photo. This is expected when the type of check is <code>identity_check</code>, <code>age_estimation_check</code>, or <code>face_authentication_check</code>.</td></tr><tr><td><code>liveVideoId</code></td><td>string</td><td>The ID of the live video. This is required when the type of check is <code>enhanced_identity_check</code>.</td></tr><tr><td><code>options</code></td><td>object</td><td>The advanced optional configuration associated with the check. Also, see the <strong>options</strong> object defined under each <code>type</code> of check.</td></tr><tr><td><code>clientConsent</code></td><td>boolean</td><td>Where required, you must collect the client's consent before creating a check. </td></tr></tbody></table>

### Example request

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X POST https://api.complycube.com/v1/checks \
     -H 'Authorization: <YOUR_API_KEY>' \
     -H 'Content-Type: application/json' \
     -d '{
          	"clientId":"CLIENT_ID",
          	"type": "extensive_screening_check"
        }'
```

{% endtab %}

{% tab title="Node.js" %}

```javascript
const { ComplyCube } = require("@complycube/api");

const complycube = new ComplyCube({ apiKey: "<YOUR_API_KEY>" });

const check = await complycube.check.create("CLIENT_ID", {
    type: "extensive_screening_check"
});
```

{% endtab %}

{% tab title="Python" %}

```python
from complycube import ComplyCubeClient

cc_api = ComplyCubeClient(api_key='<YOUR_API_KEY>')

check = cc_api.checks.create('CLIENT_ID',type='extensive_screening_check')
```

{% endtab %}

{% tab title="PHP" %}

```php
use ComplyCube\ComplyCubeClient;

$ccapi = new ComplyCubeClient('<YOUR_API_KEY>');

$result = $ccapi->checks()->create('CLIENT_ID', [
    'type' => 'extensive_screening_check'
]);
```

{% endtab %}

{% tab title=".NET" %}

```csharp
using ComplyCube.Net;
using ComplyCube.Net.Resources.Checks;

var checkApi = new CheckApi(new ComplyCubeClient("<YOUR_API_KEY>"));

var checkRequest = new CheckRequest {
  clientId = "CLIENT_ID",
  type = "extensive_screening_check"
};

var check = await checkApi.CreateAsync(checkRequest);
```

{% endtab %}
{% endtabs %}

### Example response

{% tabs %}
{% tab title="Success (200)" %}

```javascript
{
    "id": "5eb2b61e02df0a0008f1cf2a",
    "clientId": "5eb1276d96be4a0008713af5",
    "entityName": "John Doe",
    "type": "extensive_screening_check",
    "status": "pending",
    "enableMonitoring": false,
    "createdAt": "2020-01-01T14:06:44.756Z",
    "updatedAt": "2020-01-01T14:06:44.756Z"
}
```

{% endtab %}
{% endtabs %}
