# Check phone DNC status

`GET /phone_dnc`

- Live: `GET https://gdapi.globaldata.net.au/api/v2/phone_dnc`
- Sandbox: `GET https://sandbox-gdapi.globaldata.net.au/api/v2/phone_dnc`

Tests the DNC status of one or more supplied phone numbers against the Australian DNC register.
This DNC check will return a Y/N result indicating if the phone number is on the DNC register or not.

## Sandbox environment

When simulating queries in the sandbox environment, the DNC response will be determined by the phone number ending:

| Number Type | Response | Description |
|:------------|:---------|:------------|
| Any number ending in 9999 | U | Simulate a long timeout |
| Any number ending in 999 | Y | Simulate a slow result, takes 20 seconds but returns phone number on the DNC register |
| Any number ending in 998 | N | Simulate a slow result, takes 20 seconds but returns phone number not on the DNC register |
| Any number ending in 997 | U | Simulate a slow result, takes 20 seconds but returns as undetermined |
| Any number ending in 99 | I | Phone number Not Supported / Invalid |
| Any number ending in 9, 8, 7, 6, 5, 4 | N | Phone number not on the DNC register |
| Any number ending in 3, 2, 1, 0 | Y | Phone number on the DNC register |

> Note: Phone numbers must start with a valid Australian prefix, ie 02, 03, 04, 07, 08. Any other number will return as Invalid.

## Request body

The details of the record to enhance

| Field | Type | Description |
|-------|------|-------------|
| `phones` | string | One or more (comma separated) 10 digit Australian phone number to be checked (0NSN format) Example: `0417034325` |

**Sample request**

```json
{
    "phones": "0417034325"
}
```

## Responses

### 200 Result of phone DNC check

Content type: `application/json`

| Field | Type | Description |
|-------|------|-------------|
| `message` | string | A message indicating the result of the request. This will be `Ok` if the request was successful. Example: `Ok` |
| `api_reference` | string (uuid) | Example: `738d9a89-b6fe-4fc1-96be-1389b2a506a2` |
| `records` | array of objects | The checked phone numbers and their DNC status |
| `records[].phone` | string | The checked phone number in 0NSN format Example: `0417034325` |
| `records[].dnc_result` | string | The result of the DNC check for the phone number * `Y` - The phone number is on the DNC register * `N` - The phone number is not on the DNC register * `I` - The phone number is invalid * `U` - The state of the phone number cannot be checked Enum: `Y`, `N`, `I`, `U` Example: `Y` |
| `records[].dnc_reference` | string | The reference number for the DNC check Example: `1234567890` |
| `records[].info` | string | Human readable information about the result Example: `Phone is on the DNC register` |

**Sample response**

```json
{
    "message": "Ok",
    "api_reference": "738d9a89-b6fe-4fc1-96be-1389b2a506a2"
}
```

Standard error responses: 400, 401, 402, 403, 429, 5XX (see [Common error responses](/docs/reference/general/common-error-responses.md))

