Documentação

Exceções

Trate erros da API do TypeSafe, limites de taxa, falhas de conexão e tempos limite.

Exceção base

typesafe_sdk.TypeSafeError

Bases: Exception

Exceção base para falhas do SDK.

Erros HTTP

typesafe_sdk.TypeSafeAPIError

Bases: TypeSafeError

Uma resposta HTTP malsucedida com seu corpo e metadados da requisição.

status

instance-attribute

status = status

Código de status da resposta HTTP.

body

instance-attribute

body = body

O corpo de erro JSON do servidor, o texto simples da resposta ou None para um corpo vazio.

headers

instance-attribute

headers = headers

Cabeçalhos da resposta HTTP.

endpoint

instance-attribute

endpoint = endpoint

O método e a URL da requisição, sem credenciais, parâmetros de consulta ou fragmento, quando disponíveis.

request_id

property

request_id: str | None

O cabeçalho de resposta x-typesafe-request-id, ou None se estiver ausente.

typesafe_sdk.TypeSafeBadRequestError

Bases: TypeSafeAPIError

A requisição era inválida (400).

typesafe_sdk.TypeSafeAuthenticationError

Bases: TypeSafeAPIError

A autenticação falhou (401).

typesafe_sdk.TypeSafePermissionDeniedError

Bases: TypeSafeAPIError

O acesso foi negado (403).

typesafe_sdk.TypeSafeNotFoundError

Bases: TypeSafeAPIError

O recurso não foi encontrado (404).

typesafe_sdk.TypeSafeUnprocessableEntityError

Bases: TypeSafeAPIError

A requisição falhou na validação do servidor (422).

typesafe_sdk.TypeSafeRateLimitError

Bases: TypeSafeAPIError

O limite de taxa foi excedido (429).

retry_after_ms

instance-attribute

retry_after_ms = parse_retry_after(headers)

A espera solicitada pelo servidor em milissegundos, ou None se indisponível.

typesafe_sdk.TypeSafeInternalServerError

Bases: TypeSafeAPIError

O servidor não conseguiu processar a requisição (5xx).

Erros de conexão

typesafe_sdk.TypeSafeAPIConnectionError

Bases: TypeSafeError, ConnectionError

Uma requisição falhou sem uma resposta HTTP.

typesafe_sdk.TypeSafeAPITimeoutError

Bases: TypeSafeAPIConnectionError, TimeoutError

Uma requisição excedeu seu tempo limite configurado.

timeout

instance-attribute

timeout = timeout

A configuração de tempo limite usada para a requisição, em segundos ou como um httpx2.Timeout.

Validação de resposta

typesafe_sdk.TypeSafeAPIResponseValidationError

Bases: TypeSafeAPIError

Uma resposta HTTP bem-sucedida cujo corpo não tinha os dados necessários ou os tinha de forma estruturalmente inválida.

field_path

instance-attribute

field_path = field_path

Caminho com pontos até o campo problemático, como answers.tone.confidence.

args

instance-attribute

args = (
    status,
    body,
    headers,
    field_path,
    endpoint,
)