> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Lista de erros do STA

> O Lerian STA retorna respostas de erro estruturadas. Consulte cada código de erro do STA, o que ele significa e o status HTTP que carrega.

**Formato de erro**

O Lerian STA retorna erros como problem details da RFC 9457, com o media type `application/problem+json`:

<CodeGroup>
  ```json JSON theme={null}
  {
    "code": "STA-0016",
    "detail": "The requested route does not exist on this service.",
    "status": 404,
    "title": "Not Found",
    "type": "https://errors.lerian.studio/v1/STA-0016"
  }
  ```
</CodeGroup>

**Definições de campo**

* **`type`** – Um URI que identifica o erro no catálogo de erros da Lerian, construído como `https://errors.lerian.studio/v1/<code>`. Uma resposta sem `code` carrega o padrão da RFC `about:blank`.
* **`title`** – O texto do status HTTP (por exemplo, `Not Found`).
* **`status`** – O código de status HTTP.
* **`detail`** – Uma explicação legível dessa ocorrência. Para respostas `5xx`, o STA substitui o detail por `internal error`. Uma causa interna fica fora do corpo da resposta. Decida com base em `code`.
* **`code`** – Um identificador estável para o erro (`STA-NNNN`). Decida com base nesse campo. Uma requisição que falha na validação de schema da requisição não carrega `code`, e `errors` nomeia os campos responsáveis. Dois erros podem compartilhar um `title` e um status e ainda assim diferir aqui. `STA-0005` e `STA-0016` respondem `404` com o título `Not Found`. O `code` diz qual dos dois você recebeu.
* **`errors`** – Lista opcional de detalhes de erro individuais, cada um com uma `location`, uma `message` e um `value`.

## Erros de requisição e roteamento

***

Esses erros se aplicam à própria requisição. Cobrem sua sintaxe, seus campos, sua rota e o estado do serviço que a recebeu.

| `code`   | Descrição                                                                                                                                                                                  | Status |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------ |
| STA-0001 | Bad Request. O serviço não conseguiu ler a sintaxe da requisição.                                                                                                                          | 400    |
| STA-0002 | Internal Server Error. Uma falha inesperada. O `detail` traz `internal error`.                                                                                                             | 500    |
| STA-0003 | Unauthorized. O recurso exige autenticação.                                                                                                                                                | 401    |
| STA-0004 | Forbidden. O solicitante não tem permissão para esse recurso.                                                                                                                              | 403    |
| STA-0005 | Not Found. A rota existe, e o recurso solicitado não.                                                                                                                                      | 404    |
| STA-0006 | Unprocessable Entity. O serviço leu a requisição e não consegue processá-la na forma atual.                                                                                                | 422    |
| STA-0007 | Conflict. A requisição conflita com o estado atual do recurso.                                                                                                                             | 409    |
| STA-0008 | Service Unavailable. Uma dependência de que a requisição precisa está indisponível. Tente novamente mais tarde.                                                                            | 503    |
| STA-0009 | Too Many Requests. Muitas requisições chegaram em um determinado período.                                                                                                                  | 429    |
| STA-0010 | Request Entity Too Large. O payload da requisição é maior do que o endpoint aceita.                                                                                                        | 413    |
| STA-0011 | Bad Request. O código de fallback para uma recusa do lado do cliente sem uma entrada dedicada.                                                                                             | 400    |
| STA-0012 | Missing Fields in Request. A requisição omite um ou mais campos obrigatórios.                                                                                                              | 400    |
| STA-0013 | Unknown Fields in Request. O corpo da requisição carrega um ou mais campos que o endpoint não aceita.                                                                                      | 400    |
| STA-0014 | Invalid Request Fields. Um ou mais campos fornecidos falham na validação.                                                                                                                  | 400    |
| STA-0015 | Unmarshalling Error. Um campo carrega o tipo JSON errado, então o corpo não pode ser decodificado. A mensagem nomeia o campo, o tipo esperado e o tipo recebido.                           | 400    |
| STA-0016 | Route Not Found. O path da requisição não corresponde a nenhuma rota montada. Corrija a URL, porque uma nova tentativa dá o mesmo resultado.                                               | 404    |
| STA-0017 | Method Not Allowed. O path corresponde a uma rota montada, e o método não. Quando o roteador recusa o método, a resposta carrega um header `Allow` que lista os métodos que a rota aceita. | 405    |

## Erros de credencial e transferência

***

Esses erros se aplicam a credenciais do BACEN, à configuração de fonte de entrada e à credencial sob a qual uma transferência é enviada.

| `code`   | Descrição                                                                                                                                                    | Status |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------ |
| STA-0102 | Conflict. Uma requisição de rotação tem como alvo uma credencial que não está ativa.                                                                         | 409    |
| STA-0103 | Institution Code Conflict. Já existe uma credencial ativa para o mesmo código de instituição.                                                                | 409    |
| STA-0104 | Polling Budget Exceeded. A configuração de fonte de entrada levaria a reserva de descoberta de entrada da credencial além do limite de consultas por minuto. | 422    |
| STA-0105 | Default Credential Not Resolvable. A requisição omite `credentialId`, e o tenant não tem uma credencial elegível para a qual resolver.                       | 422    |
| STA-0106 | Default Credential Ambiguous. Mais de uma credencial elegível corresponde, então o serviço recusa em vez de escolher uma. Nomeie a credencial que você quer. | 422    |
| STA-0107 | Institution Credential Not Found. O `institutionCode` fornecido não corresponde a nenhuma credencial elegível.                                               | 422    |
