Códigos de Status HTTP
Em poucas palavras, existem apenas 3 resultados na interação entre seu aplicativo e nossa API:
- Tudo funcionou
- O aplicativo fez algo errado
- A API fez algo errado
Em geral, os códigos no intervalo 2xx indicam sucesso, os códigos no intervalo 4xx indicam um erro resultante das informações fornecidas (por exemplo, um parâmetro necessário faltou, uma transação falhou, etc.) e os códigos no intervalo 5xx indicam um erro com os servidores da Click2Pay
A tabela a seguir contém os valores mais comuns para os códigos de status HTTP retornados pela API:
HTTP STATUS CODE | Texto | Descrição |
---|---|---|
200 | OK | Tudo funcionou conforme o esperado. |
201 | Created | A requisição foi bem sucedida e um novo recurso foi criado. |
202 | Accepted | A requisição foi recebida, mas não pode atuar ainda. |
304 | Not Modified | Não havia dados novos para retornar. |
400 | Bad Request | A requisição foi invalida ou não atingiu o servidor. Muitas vezes, falta um parâmetro obrigatório. |
401 | Unauthorized | As credenciais de autenticação estavam faltando ou foram incorretas. |
402 | Request Failed | Os parâmetros foram válidos mas a requisição falhou. |
403 | Forbidden | A requisição foi ok, mas foi recusado ou o acesso não foi permitido. Uma mensagem de erro que acompanha a mensagem explica o porquê. |
404 | Not Found | A URI solicitada é inválida ou o recurso solicitado, como por exemplo, um vendedor não existe ou foi excluído. |
500 | Internal Server Error | Algo está quebrado. Por favor, assegure-se de que a equipe Zoop esteja investigando. |
502 | Bad Gateway | A Click2Paycaiu ou está sendo atualizada. |
Mensagens de erro
Quando uma requisição de API falha, a Click2Pay retornará um código de resposta HTTP 4xx ou 5xx que identifica genericamente a falha, bem como uma resposta JSON que fornece informações mais específicas sobre o erro (ou os erros) que causou a falha.
A resposta conterá:
- O status (boleano) error ou success.
- A mensagem de erro
- Um código de erro errorCode (usado internamente e variante)
- Uma descrição errorDescription legível para humanos que explica por que o erro ocorreu.
Obs.: Em respostas 2xx, cada resposta Http pode conter um payload alternativo
{
"error": true,
"errorMessage": "400 Bad Request",
"errorCode": "C2P4000001",
"errorDescription": "the \"id\" entered has already been used before"
}
{
"success":true,
"data":{
//payload
}
}
{
"error": true,
"errorMessage": "Internal Server Error",
"errorCode": "C2P5000001",
"errorDescription": "Rate not configured for user"
}