How Authentication Works
Clodura authenticates API requests using theX-API-KEY header. You send your API key with every HTTP request, and the API checks it before processing anything else. Requests with a missing or invalid key are rejected immediately with a 401 Unauthorized response.
All API requests must be made over HTTPS. Calls made over plain HTTP will fail. Your API key is a secret credential — treat it like a password.
Getting Your API Key
You can find and manage your API key inside the Clodura application.Log in to Clodura
Go to app.clodura.ai and sign in with your account credentials.
Open Settings
Click your name or initials in the upper-right corner of the dashboard to open the account menu, then select Settings.
Navigate to the Developer Dashboard
Inside Settings, find the Developer or API section. Your API key is displayed here. If no key exists yet, use the Generate Key button to create one.
Adding Your Key to Requests
Set theX-API-KEY header on every API call. The examples below show how to do this in both curl and Python.
curl
Python (requests)
Security Best Practices
Following these practices protects your account and prevents unexpected credit consumption.Use Environment Variables
Load your key from an environment variable or a secrets manager (AWS Secrets Manager, HashiCorp Vault, etc.) at runtime. Never hard-code it in source files.
Keep It Out of Source Control
Add
.env files and any config file containing your key to your .gitignore. Scan your commit history with tools like git-secrets before making a repository public.Restrict Server-Side Use
Only call the Clodura API from your backend server or serverless functions — never from browser-side JavaScript, mobile apps, or any environment where the key could be inspected by an end user.
Rotate Keys Regularly
Regenerate your API key periodically or immediately if you suspect it has been exposed. Update all services that use the old key before invalidating it.
Authentication Error Responses
When a request fails for an authentication or authorisation reason, the API returns a JSON body with amessage field describing the problem.
401 Unauthorized
Returned when theX-API-KEY header is missing entirely, contains a malformed value, or the key does not exist in Clodura’s system.
X-API-KEY header and that the key value matches exactly what is shown in your Developer Dashboard — including case sensitivity.
403 Forbidden
Returned when your API key is valid but your subscription plan does not permit the requested operation. For example, accessing an endpoint that requires an Enterprise plan when you are on a Starter plan.429 Too Many Requests
Returned when your account exceeds the per-second or per-minute rate limit for your plan. See the rate limit table below.Rate Limits by Plan
Rate limits are enforced per API key. Exceeding your daily limit returns409 Conflict instead of 429.
| Plan | Per Second | Per Minute | Per Day |
|---|---|---|---|
| MAX | 10 | 100 | 2,000 |
| PayG | 10 | 100 | 2,000 |
| Professional | 10 | 100 | 2,000 |
| Enterprise | 10 | 100 | 2,000 |
| Prospect Pro | 10 | 100 | 2,000 |
| Prospect | 10 | 100 | 2,000 |
| Starter | 1 | 10 | 600 |
| Lifetime | 1 | 10 | 300 |
| Basic | 1 | 10 | 600 |
| Default / Free Forever | 1 | 10 | 300 |
Your current plan and remaining daily quota are visible in the Clodura dashboard under Settings → Usage Report. You can also query remaining credits programmatically via
GET https://api.clodura.ai/api/v1/credits.