Skip to main content
The Sparqle API uses conventional HTTP status codes. 2xx means success, 4xx means the request was rejected (usually something you can fix), and 5xx means a problem on Sparqle’s side.

Status codes

CodeMeaning
200 / 201Success.
400Validation error — a field is missing, malformed, or out of range.
401Missing or invalid API key.
403The key isn’t allowed to act on this locationId or order.
404The order, label, or resource doesn’t exist.
429Too many requests — you’ve hit the rate limit.
500Unexpected error on Sparqle’s side.

Validation errors

Request bodies are validated field by field. A 400 response lists what failed, so you can surface the specific problem:
{
  "statusCode": 400,
  "message": [
    "deliveryName should not be empty",
    "deliveryAddress.postalCode must be a string"
  ],
  "error": "Bad Request"
}
Common causes:
  • Missing a required field (locationId)

Rate limits

Public tracking endpoints are throttled. If you exceed the limit you’ll get a 429 — back off and retry with exponential delay. If you expect sustained high volume on the order endpoints, coordinate limits with your Sparqle contact.
Build retries with exponential backoff for 429 and 5xx responses, and treat 4xx (except 429) as permanent — retrying won’t help until you fix the request.