Skip to main content
DMLY uses conventional HTTP status codes. Anything in the 2xx range succeeded; 4xx means the request was wrong; 5xx means something broke on our side. Every error returns the same envelope:
Validation errors add a per-field breakdown:

Status codes

A note on 404

The API is workspace-scoped by the key. A resource that exists but belongs to a different workspace returns 404, not 403 — from your key’s point of view it genuinely does not exist. If you are certain an id is valid and still get 404, you are almost always using a key from the wrong workspace.

Retrying safely

GET and DELETE are idempotent — retry freely. POST is not. A create that times out may still have succeeded, so a blind retry can produce a duplicate. When retrying a POST, search for the record first, or key off something unique (a contact’s phone number) to check before recreating.
Retry 429 and 5xx with exponential backoff. Never retry 401, 403, or 422 — the same request will fail identically every time.