Skip to main content
All Gcore API errors share a consistent JSON structure — every response includes an exception_class, a human-readable message, and a request_id.

Error response structure

Every error response has the same shape:

Common error types

ValidationError

The request body is missing required fields or contains invalid values.
invalid_fields lists each problematic field and why it failed. Fix the request body and retry. A ValidationError also appears when a reseller account requires specific name templates:

NotFoundError

The requested resource does not exist, or exists in a different project or region.
Check that the resource ID is correct and that project_id and region_id in the path match the region where the resource was created.

QuotaLimitExceed

The request would exceed a project or account quota.
info shows the exact numbers: current usage, requested total, and the limit. To resolve:

ForbiddenError

The request is structurally valid but cannot be fulfilled — typically because a flavor has reached regional capacity.
ForbiddenError is not a permissions error — it means the physical resource is temporarily unavailable. Try a different region or a different flavor.

HTTPError — Method Not Allowed

The HTTP method used is not supported by this endpoint. Most often caused by sending a GET to an endpoint that only accepts POST, or vice versa.
Check the API reference for the correct HTTP method for the endpoint.

Authentication errors

All authentication errors return HTTP 401. The message text identifies the specific cause:

HTTP status codes

Every error response includes an HTTP status code that identifies the error category:

Retry strategy

Not every error is worth retrying — the table below distinguishes fixable request problems from transient server conditions. Every response contains a request_id; include it when contacting Gcore support to identify the request in the infrastructure logs.