Include your API key in the X-API-Key header:
curl -H "X-API-Key: YOUR_API_KEY_HERE" \
https://basel-api-free-production.up.railway.app/api/v1/ca/TTcurl -H "X-API-Key: YOUR_API_KEY_HERE" \
https://basel-api-free-production.up.railway.app/api/v1/caCode examples in popular languages:
const response = await fetch(
'https://basel-api-free-production.up.railway.app/api/v1/ca/BR',
{
headers: {
'X-API-Key': 'YOUR_API_KEY_HERE'
}
}
)
const data = await response.json()
console.log(data)import requests
headers = {'X-API-Key': 'YOUR_API_KEY_HERE'}
response = requests.get(
'https://basel-api-free-production.up.railway.app/api/v1/ca/BR',
headers=headers
)
data = response.json()
print(data)$ch = curl_init('https://basel-api-free-production.up.railway.app/api/v1/ca/BR');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-API-Key: YOUR_API_KEY_HERE']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($data);All API requests require a free API key. Get yours instantly at /register (no credit card required).
Include your API key in the X-API-Key header with every request:
X-API-Key: bca_1234567890abcdef...If your API key is missing or invalid, you'll receive a 401 error:
{
"error": "API key required",
"message": "Include your API key in the X-API-Key header",
"help": "Get your free key at /register"
}/api/v1/caList all competent authorities (41 countries)
curl -H "X-API-Key: YOUR_KEY" \
https://basel-api-free-production.up.railway.app/api/v1/ca{
"page": 1,
"perPage": 50,
"totalItems": 41,
"totalPages": 1,
"items": [
{
"country_code": "TT",
"country_name": "Trinidad and Tobago",
"ca_name": "Environmental Management Authority"
}
]
}/api/v1/ca/{country_code}Get specific country by ISO 3166-1 alpha-2 code
curl -H "X-API-Key: YOUR_KEY" \
https://basel-api-free-production.up.railway.app/api/v1/ca/BR{
"country_code": "BR",
"country_name": "Brazil",
"ca_name": "Ministério do Meio Ambiente",
"email": "qualidade.ambiental@mma.gov.br",
"phone": "+55-61-2028-1057",
"address": "Esplanada dos Ministérios, Bloco B, 5º andar",
"verified": true,
"last_checked": "2026-01-17"
}All responses are JSON with these fields:
Unlimited requests - Use responsibly for legitimate Basel Convention compliance purposes.
Currently supporting 41 countries with verified Competent Authority data:
Yes! 100% free with unlimited requests. No credit card, no trial period, no hidden fees. We only ask for your email for API key delivery.
We use email to deliver your API key and occasionally send important updates about the service (new countries added, API changes, etc.). We never spam or share your email.
No rate limits! Use the API as much as you need for legitimate Basel Convention compliance purposes. All keys have unlimited access.
We verify all competent authority contact information regularly. Currently supporting 41 countries with verified data. New countries are added weekly.
Yes! The API is free for both personal and commercial use. Integrate it into your logistics software, compliance tools, or internal systems.
Just register again with the same email - we'll return your existing key immediately.
Contact our support team: support@dexmetal.com
Back to DexMetal.com