Endpoint
Errors
Calculator validation failures use a stable snake_case error code, a human-readable message, and a request_id. Authentication and quota failures retain their human-readable error strings.
401
{
"error": "Missing API key",
"message": "Provide API key in x-api-key header"
}
429
{
"error": "Rate limit exceeded",
"message": "Too many requests. Please slow down and try again in a minute."
}
Status codes
| Field | Required | Notes |
|---|---|---|
| 400 | — | Validation or missing body fields |
| 401 | — | Missing or invalid API key |
| 403 | — | Suspended, revoked, expired, no plan, or invalid status |
| 404 | — | Unknown asteroid, star, timezone, eclipse, or PDF |
| 422 | — | Well-formed input failed semantic validation |
| 429 | — | Per-minute, daily, or monthly quota |
| 500 | — | Unexpected server error |