Usage and Quotas
We apply usage limits ("quotas") to protect you from unexpected costs. Every API call counts towards one of the quotas below. Once a quota is reached, further calls return a 429 HTTP error code (see Errors). The usage endpoint shows where you stand.
1. Quotas
Screening calls
The screening calls of the AML Screening API and the Adverse Media Screening API share one monthly quota of billed requests.
After registration on https://dilisense.com/en/register you can find your API key with 100 free API calls per month in your dashboard. If you add your credit card, this quota limit will be increased automatically to 10,000 API calls per month. You can also contact our sales team (sales@dilisense.com) to increase your quota limit in case you want to pay via bank transfer or in case you need more than 10,000 API calls per month.
AML Database
You can download the consolidated file up to 50 times a day. Calls to getConsolidatedFile and getConsolidatedDelta count towards the same limit.
Ongoing Monitoring
The registerIndividual, registerEntity and removeSearchProfile calls are free of charge and do not count towards the billed requests. Ongoing Monitoring is billed based on the average number of active search profiles during a month. The number of search profiles you can register at the same time is limited by your search profile quota.
Free calls
Calls such as getSourceList, keys, testWebhookDelivery and usage are free of charge and do not count towards the billed requests.
You can update your quotas anytime by sending an email to sales@dilisense.com.
2. usage (GET)
The usage endpoint returns how many API calls your API key made in a month, broken down by endpoint and day, together with your quotas and the number of registered Ongoing Monitoring search profiles. Use it to track your consumption against your quota, to reconcile your invoice or to reconcile the search profiles tracked in your own system. The endpoint is available for every API key and covers all dilisense APIs.
Endpoint
https://api.dilisense.com/v1/usage
Like all other API calls, the request has to be authenticated with the x-api-key header. The call is free of charge and does not count towards your billed requests.
Request parameters
monthoptional
The month for which the usage is returned, in the format yyyy-mm (e.g. 2026-08). Defaults to the current month. Months are calendar months in UTC.
If the value is not in the format yyyy-mm, the API call will return a 400 HTTP error code. Any other parameter is rejected with a 400 HTTP error code as well.
Response
The response provided back is formatted as JSON.
monthstring
The month of the usage, in the format yyyy-mm.
timezonestring
The time zone that months and days are counted in, always UTC.
summaryobject
The totals of the month and your quotas.
billed_requests_monthly_used (number)
The number of billed API calls in the month. Billed are the screening calls of the AML Screening API (checkIndividual, checkEntity, checkName, generateIndividualReport and generateEntityReport) and of the Adverse Media Screening API (media/checkIndividual, media/checkEntity and media/search).
billed_requests_quota (number)
The number of billed API calls your API key may make per month. Absent if your API key has no monthly limit.
ongoing_monitoring_profiles_registered (number)
The number of Ongoing Monitoring search profiles that are currently registered for your API key. Absent if no search profiles are registered.
This value is always the current number of search profiles, also when you request an earlier month.
ongoing_monitoring_profiles_quota (number)
The number of search profiles your API key may register at the same time. Absent if your API key has no limit.
endpointsobject array
The usage per endpoint. Every endpoint that was called at least once in the month is listed, free endpoints such as getSourceList and usage itself included. Endpoints without calls are not present.
Each object contains the following attributes:
path (string)
The path of the endpoint, e.g. /v1/checkIndividual.
monthly_used (number)
The number of calls of this endpoint in the month.
daily (object array)
The calls per day, sorted by date. Days without calls are not present. Each object contains date (string, format yyyy-mm-dd) and used (number), the number of calls on that day.
Calls are counted almost in real time, a call shows up in the usage after a few seconds.
Example
- curl
- Python
- Java
- Javascript
curl --location --request GET 'https://api.dilisense.com/v1/usage?month=2026-09' \
--header 'x-api-key: <api_key>'
import requests
url = "https://api.dilisense.com/v1/usage"
headers = {
'x-api-key': '<api_key>'
}
response = requests.get(url, headers=headers, params={'month': '2026-09'})
print(response.text)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.dilisense.com/v1/usage?month=2026-09"))
.header("x-api-key", "<api_key>")
.build();
client.sendAsync(request, BodyHandlers.ofString())
.thenApply(HttpResponse::body)
.thenAccept(System.out::println)
.join();
var myHeaders = new Headers();
myHeaders.append("x-api-key", "<api_key>");
var requestOptions = {
method: 'GET',
headers: myHeaders,
redirect: 'follow'
};
fetch("https://api.dilisense.com/v1/usage?month=2026-09", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
{
"month": "2026-09",
"timezone": "UTC",
"summary": {
"billed_requests_monthly_used": 132,
"billed_requests_quota": 10000,
"ongoing_monitoring_profiles_registered": 250,
"ongoing_monitoring_profiles_quota": 1000
},
"endpoints": [
{
"path": "/v1/checkIndividual",
"monthly_used": 120,
"daily": [
{ "date": "2026-09-01", "used": 45 },
{ "date": "2026-09-02", "used": 75 }
]
},
{
"path": "/v1/media/checkEntity",
"monthly_used": 12,
"daily": [
{ "date": "2026-09-02", "used": 12 }
]
},
{
"path": "/v1/getSourceList",
"monthly_used": 3,
"daily": [
{ "date": "2026-09-01", "used": 3 }
]
},
{
"path": "/v1/usage",
"monthly_used": 2,
"daily": [
{ "date": "2026-09-02", "used": 2 }
]
}
]
}
Next to the regular error codes the usage endpoint returns a 400 HTTP error code for an invalid month value or an unsupported parameter, for example:
{
"error_message": "The 'month' parameter must use the yyyy-MM format."
}