Skip to content

Exceptions

All exceptions subclass ThreeSpreadError. See the errors guide for the status-to-class mapping and retry behavior.

py3spread.exceptions

ThreeSpreadError

Bases: Exception

Base class for all py3spread errors.

APIConnectionError

Bases: ThreeSpreadError

Could not reach the API (network failure, timeout, etc.).

APIError

APIError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: ThreeSpreadError

An HTTP error response from the API.

AuthenticationError

AuthenticationError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

401: missing or invalid API key.

RateLimitError

RateLimitError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

429: rate limit exceeded for your API key.

BadRequestError

BadRequestError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

400: bad request.

MissingParameterError

MissingParameterError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: BadRequestError

400 MISSING_PARAMETER: a required filter is missing.

WindowTooWideError

WindowTooWideError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: BadRequestError

400 WINDOW_TOO_WIDE: date window exceeds the endpoint maximum.

NotFoundError

NotFoundError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

404: the requested filing, entity, or section does not exist.

ValidationError

ValidationError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

422: a query or path parameter failed validation.

ServerError

ServerError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: APIError

500/502: server-side failure.

ServiceUnavailableError

ServiceUnavailableError(message: str, *, status_code: int, code: str | None = None, request_id: str | None = None, details: Any = None)

Bases: ServerError

503: database or query timeout, retry with backoff.