Use the Data Destinations Availability API to check if the data in your data destinations is up to date. The API checks if the data for a given date on your end (your S3, etc.) is identical to the most updated data in Singular's database.
For each data destination you have configured, the API returns is_all_sources_updated (true or false). It also returns is_updated for each data connector included in the data destination export.
Note that if data_date is omitted, the API checks data for yesterday.
Data Destinations Availability Endpoint
| Method | Endpoint |
|---|---|
| GET | https://api.singular.net/api/v2.0/data_destinations_availability_status |
Sample Query (Python)
import requests
url = "https://api.singular.net/api/v2.0/data_destinations_availability_status"
queryparams = {"api_key": "<API_KEY>", "data_date": "2026-08-20"}
response = requests.get(url=url, params=queryparams)You can also call the endpoint directly in a browser or with curl:
curl "https://api.singular.net/api/v2.0/data_destinations_availability_status?api_key=<API_KEY>&data_date=2026-08-20"Query Parameters
| Parameter | Format | Description |
|---|---|---|
| api_key | String | Your Singular API key (can be retrieved in the Singular web app under Developer Tools > Reporting API Key). |
| data_date | String (YYYY-MM-DD) | The date for which to check data availability. If omitted, defaults to yesterday. The endpoint accepts a single day only — to check a date range, send one request per day. |
Sample Output
The following sample shows the result for one data destination, which contains two data connectors. In this sample, is_updated is false for all of the data connectors and therefore is_all_sources_updated is false.
{
"status": 0,
"substatus": 0,
"value": {
"data_destinations": [
{
"data_destination_info": {
"data_destination_id": "cx7tpn21",
"data_destination_source_name": "S3 Destination",
"data_destination_schema": "Example Creatives_Only v5",
"data_destination_preset": "example-app",
"is_all_sources_updated": false
},
"data_connectors": [
{
"data_connector_id": "rk3mwq85",
"data_connector_username": "user1@example-app.com",
"data_connector_source_name": "AdColony",
"is_updated": false,
"is_updating_in_progress": false
},
{
"data_connector_id": "4tnzlp09",
"data_connector_username": "user2@example-app.com",
"data_connector_source_name": "Aarki",
"is_updated": false,
"is_updating_in_progress": false
}
]
}
],
"query_date": "2026-08-20"
}
}Output Parameters
| Parameter | Format | Description |
|---|---|---|
| status | Integer | Top-level response status. 0 = success; 1 = error. This is not an availability status — for data availability, use is_all_sources_updated, is_updated, and is_updating_in_progress. |
| substatus | Integer | Additional status detail. 0 = default. 1 may be returned for authentication errors, such as a missing, invalid, or deactivated API key. |
| query_date | String (YYYY-MM-DD) | The date for which availability was checked. |
Parameters in data_destination_info object | ||
| data_destination_id | String | The unique identifier of the data destination. |
| data_destination_source_name | String | The data destination name as displayed in the Singular web app. |
| data_destination_schema | String | The destination preset/schema name as configured in the Singular web app — for example, Example Creatives_Only v5. This helps you distinguish between two exports configured to the same data destination. |
| data_destination_preset | String | The app selected in the destination's app filter — for example, example-app. |
| is_all_sources_updated | Boolean | True if data from all relevant data connectors has been updated in the data destination. |
Parameters per Data Connector (in data_connectors array) | ||
| data_connector_id | String | The unique identifier of the data connector. |
| data_connector_source_name | String | The name of the data connector source (e.g. ad network name) as it appears in the Singular web app. |
| data_connector_username | String | The user name for the data connector, as configured in the Singular web app. This helps you identify the right data connector if you have multiple connectors for the same ad network with different credentials, pulling different data. |
| is_updated | Boolean | True if the data from this data connector has been updated in the data destination (your BI platform, S3 bucket, etc.) |
| is_updating_in_progress | Boolean | True if the data from this data connector is still being processed. If is_updating_in_progress is true, it explains why is_updated is false. Give the update time to finish before checking again. |