Jumploon

Limits & errors

Limits

LimitValue
API requests600 per minute per API key (or per dashboard user)
Daily recipientsSet per account, counted over a rolling 24 hours. Ask us to raise it as your volume grows.
to addresses per email (/emails)50
Recipients per request (/v3/mail/send)1,000
Emails per batch100
Schedule ahead30 days (scheduled_at), 72 hours (send_at)
Categories per message10
Idempotency key lifetime24 hours
Event data32 KB
Automation steps50

Over the rate limit, you get 429 with a Retry-After header in seconds. Over the daily quota, you get 429 with daily_quota_exceeded. The quota counts recipients over the last 24 hours, so capacity frees up gradually rather than at a fixed time.

Error formats

Each API has its own error format.

REST API

{ "statusCode": 422, "name": "validation_error", "message": "The `to` field must contain at least one address." }
nameStatusMeaning
missing_api_key401No Authorization header
invalid_api_key403The key doesn't exist or was revoked
restricted_api_key401A send-only key tried to do something else
validation_error422 / 403The request is invalid, or the sender's domain isn't verified
missing_required_field422A required field is missing
not_found404No such resource in your account
invalid_idempotent_request409The idempotency key was used with a different request
concurrent_idempotent_requests409The same idempotency key is still being processed
rate_limit_exceeded429Too many requests
daily_quota_exceeded429Daily recipient quota reached
internal_server_error500Something went wrong on our side. Retry with the same idempotency key.

v3 API

{ "errors": [{ "field": "from.email", "message": "The from email does not contain a valid address." }] }

field is null for errors that aren't about one field.

Retrying

Retry 429 (after Retry-After) and 5xx responses with exponential backoff. Don't retry other 4xx responses: fix the request. Use an idempotency key so retries never send twice.