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 limit
  • used — how many signals you've sent this month
  • resets_at — when the counter resets (start of next calendar month, UTC)

Consider upgrading your plan or reducing signal volume.