Pular para o conteúdo

Erros

Quando a API recusa um pedido, o SDK lança OwbaseException com:

  • code: o status HTTP (400, 401, 404, 409, 429…);
  • type: o motivo, em texto estável (user_invalid_credentials). Decida pelo type, não pela mensagem;
  • message: a explicação em inglês, para log;
  • response: o corpo cru da resposta.
erros.ts
import { Account, OwbaseException } from '@owbase/web';
import { client } from './client';
const account = new Account(client);
try {
await account.createEmailPasswordSession({ email: '[email protected]', password: 'senha-errada' });
} catch (e) {
if (!(e instanceof OwbaseException)) throw e;
// code: status HTTP. type: motivo estável, bom para decidir o que mostrar.
if (e.type === 'user_invalid_credentials') console.log('E-mail ou senha incorretos.');
else if (e.code === 429) console.log('Muitas tentativas. Espere um pouco e tente de novo.');
else console.log(`Erro ${e.code} (${e.type}): ${e.message}`);
}
type code Quando
general_argument_invalid 400 Parâmetro faltando ou fora do formato.
user_invalid_credentials 401 E-mail ou senha errados.
user_unauthorized 401 Há sessão, mas o usuário não tem permissão no recurso.
general_unauthorized_scope 401 A chave de API não tem o escopo do método, ou não há sessão e o método exige usuário logado (por exemplo, account.get()).
general_unknown_origin 403 O domínio do app não está em Plataformas.
project_not_found 404 ID de projeto errado.
row_not_found 404 A linha não existe (ou o usuário não pode lê-la).
user_already_exists 409 Já há conta com esse e-mail ou ID.
row_already_exists 409 Já há linha com esse ID.
general_rate_limit_exceeded 429 Tentativas demais: espere e tente de novo.