Errors
The PromptDeploy API uses conventional HTTP status codes and returns a consistent error format.
Error response format
All errors return a JSON object with an error key:
{
"error": {
"code": "error_type",
"message": "A human-readable description of what went wrong"
}
}
Some errors include additional fields with context:
{
"error": {
"code": "rate_limited",
"message": "Monthly signal limit reached",
"limit": 10000,
"used": 10000,
"resets_at": "2026-02-28T23:59:59Z"
}
}
Error codes
| HTTP Status | Code | Description |
|---|---|---|
401 |
unauthorized |
API key is missing, invalid, or revoked |
404 |
not_found |
The requested resource doesn't exist in your organisation |
422 |
validation_error |
The request body is invalid (e.g. missing required fields) |
429 |
rate_limited |
You've hit a rate limit — see the response for reset details |
500 |
internal_error |
Something went wrong on our end |
Handling errors
401 Unauthorized
Check that your API key is correct and hasn't been revoked. Keys are scoped to a single organisation — make sure you're using the right key.
# Verify your key works
curl -H "Authorization: Bearer pd_live_abc123..." \
https://promptdeploy.com/api/v1/prompts/pmt_abc123/history
404 Not Found
The prompt ID may be wrong, or the prompt may belong to a different organisation. Double-check the public ID (format: pmt_...) on the prompt's detail page.
422 Validation Error
The request body didn't pass validation. For signals, check that value is either positive or negative.
429 Rate Limited
You've hit your monthly signal limit. The response includes:
limit— your plan's monthly limitused— how many signals you've sent this monthresets_at— when the counter resets (start of next calendar month, UTC)
Consider upgrading your plan or reducing signal volume.