Skip to main content

Whautomate REST API Error Messages

When a request fails, the API returns an HTTP status code and a JSON body, usually {"error": "..."} (or {"message": "..."} from the API gateway). Successful requests return 200.

Status codes​

StatusExample bodyWhat it means and how to fix it
400 Bad Request{"message": "Invalid request body"}The JSON is malformed, or a field has the wrong type or format. Check commas, brackets and quotes, and the field types on the endpoint page.
400 Bad Request{"error": "Invalid parameters"}A required field is missing or has an invalid value. Some endpoints say exactly what is wrong, for example Invalid time format. Please provide the time in the format 'hh:mm AM/PM'.
401 Unauthorized{"message": "Unauthorized"}The x-api-key header is missing, or the key is wrong or was deleted. Copy the key again from Settings > Integrations > REST API.
403 Forbidden{"message": "Forbidden"}The request was blocked before reaching your account, usually because the x-api-key header is missing or the path does not exist. Check the header and the URL, including /v1.
403 Forbidden{"error": "This feature is not included in your plan.", "code": "MODULE_NOT_ENABLED", "module": "bookings"}Your plan does not include the add-on this action needs (crm, bookings or sales). Reading data and handling existing bookings still work. See Plan add-ons.
404 Not Found{"error": "Invalid locationId"} or {"error": "Location not found in the account."}The location ID is missing, wrong, from another account, or the workspace is deactivated. Get IDs from GET /v1/locations, or from the end of the URL when you edit the location in Settings.
404 Not Found{"error": "Client not found"}The record ID (client, contact, class and so on) does not exist in your account.
409 Conflict{"error": "No slots available ..."}Booking only: the time is no longer free or no staff member is available. Get fresh times from available slots.
429 Too Many Requests{"message": "Too Many Requests"}You went over your rate limit (60 requests a minute on trial accounts, 300 on subscribed accounts). Slow down and retry after a short wait.
500 Internal Server Error{"error": "Could not create Client"}Something went wrong on our side. Retry later; if it keeps happening, contact support with the request and the time it was sent.

Tips​

  • Log the status code and body of failed requests; the message usually says what to fix.
  • Retry 429 and 500 responses with a growing delay; do not retry 400, 401, 403 or 404 without changing the request.