Diet Bloxy ColaAPI
Sections

Get started

Errors

One error shape: a message, a code, the request id and a link here. The keyless tier still answers only 404 and 503.

The shape

An error answer is a JSON object: error is a short reason in words (the two the keyless tier has always answered, not found and unavailable, keep their exact text), code is the machine value to match on, requestId is what to quote when you write to us, param names the offending field when there is one, and docUrl points at the code's row below. A 429 also carries Retry-After; a used-up quota carries resetsAt.

404 Not FoundJSON
{ "error": "not found", "code": "not_found", "requestId": "req_01J9X4Q2M7V8K3B5N6P7R8S9T0", "docUrl": "https://api.dietbloxycola.com/docs/errors#not_found" }
400 Bad RequestJSON
{ "error": "universeId: expected a positive integer", "code": "invalid_request", "requestId": "req_01J9X4Q2M7V8K3B5N6P7R8S9T1", "param": "universeId", "docUrl": "https://api.dietbloxycola.com/docs/errors#invalid_request" }

Every code

StatusCodeWhenWhat to do
400invalid_requestThe body or the query fails its schema; param names the field.Fix the field and send again.
401unauthorizedNo key, a key nobody issued, or one that was revoked or has expired.Send Authorization: Bearer <key> with a live key from your account.
403insufficient_scopeThe key is real and was issued without this product's scope.Issue a key with the scope the page names, or add it to this one.
403tenant_pendingThe account exists and has not been approved yet.Wait for the approval mail; nothing to change on your side.
403tenant_suspendedThe account was suspended, or asked for its own deletion.Write to us if you did not expect it.
403product_disabledThis product is off for your account, or off for everyone during an incident.Read the status page; write to us if it is only you.
404not_foundThe path, or the thing the id names, does not exist.Check the id against the list endpoint.
409idempotency_conflictThe same Idempotency-Key arrived with a different body or path within a day.Use a fresh key for a different request.
409idempotency_in_progressA repeat arrived while the first request with the key was still running.Wait a moment and repeat; the first answer will replay.
409lease_expiredA report arrived for a request this caller no longer holds.Fetch the pending list again.
413payload_too_largeThe body is over the cap the page states.Send less.
429rate_limitedThe token bucket is empty; Retry-After says how long, and the RateLimit-* headers say how much.Wait it out; poll no faster than the window.
429quota_exceededThis month's quota for the product is spent; resetsAt is the first of next month, UTC.Wait for the reset, or ask about a bigger plan.
502upstream_errorRoblox or Discord answered with something the API could not use.Try again in a minute.
503unavailableThe API could not do this now: Roblox could not be read, or a store is not configured.Try again in a minute; the CDN keeps serving the last good keyless answer for a while.
503upstream_unavailableRoblox or Discord did not answer in time.Try again in a minute; a Retry-After may say when.
500internalSomething on our side broke.Send us the requestId.

On the keyless tier only not_found and unavailable can happen. A cached keyless answer replays the request id of the read that produced it.