Solicitação de Access Token

Visão Geral

A Solicitação de access token é uma funcionalidade fornecida por uma nova API para facilitar a integração de uma ATS com nossos sistemas internos que exigem um token para cada cliente, anteriormente a solicitação do token era feita manual por intermédio das empresas com a Catho, agora essa solicitação pode ser feita por essa API. Você também pode conferir toda documentação através do Swagger.


Modelagem das APIs

Todos os serviços disponibilizados por meio da API usam a tecnologia REST (Representational State Transfer), uma arquitetura para a disponibilização de recursos por meio de sistemas distribuídos, popularmente usado sobre HTTP. Abaixo podemos ver exemplos de como os serviços são formados:

Ilustração modelagem das APIs

Sendo que:

  • • Hostname: endereço principal dos serviços.
  • • Versão da API: versão do serviço que está sendo consumido.
  • • Recurso Raiz: nome do serviço.

A partir do Recurso Raiz, podemos realizar nosso POST, para solicitação do access token, conforme exemplo abaixo:

curl -X POST 'http://api.catho.com.br/ats/v1/access-token/' \
-H 'Content-Type: application/json' \
-H 'Content-Type: text/plain' \
-H 'client: client id - gerado através do portal dev.catho' \
-H 'secret: secret - gerado através do portal dev.catho'' \
-d '{
	"email":"xxxxxx@email.com",
	"cnpj":"00.000.000/0000-00",
	"callback":"http://callback",
	"ats_name":"nome ats"
}'

Exemplo de sucesso:

code: 201

Após realizar a solicitação do token, o recrutador será solicitado através de seu e-mail o pedido para ATS (Integrador) publicar vagas em seu nome. O recrutador precisa "Autorizar" para que o processo de geração de token prossiga.


Ilustração email do access token


ATENÇÃO: Somente após o pedido ser "AUTORIZADO", a ATS (Integrador) poderá cadastrar vagas em nome do recrutador.


Erros de validação

Esses erros impedem a efetivação da ação enviada, para reenviar a requisição é necessário alterar o dados do corpo, cabeçalho ou parâmetros da url, conforme instruções dos erros retornados.

Veja um exemplo em que os campos não foram informados no corpo do POST:

{
    "message": "Parâmetros email, cnpj, callback, ats_name inválidos",
    "code": "RAT0001"
}

Confira abaixo a lista de todos os erros que podem ser retornados:

Código Mensagem
RAT0001 Parâmetros email, cnpj, callback, ats_name inválidos.
RAT0002 Parâmetro email, cnpj e callback são obrigatórios.
RAT0003 Usuário não cadastrado.
RAT0004 Empresa não cadastrada.
RAT0005 Falha ao registrar ATS.
RAT0006 Recrutador não está vinculado ao CNPJ fornecido.
RAT0007 Empresa não tem os status ATIVA ou INSPEÇÃO.
RAT0008 Header client é obrigatório.
RAT0010 Client não encontrado.
RAT0011 Erro ao vincular ATS a empresa.
REC000 Erro ao validar JSON. A estrutura está correta?
REC001 Campo CNPJ é obrigatório.
REC002 Nome do usuário é obrigatório.
REC003 E-mail é obrigatório.
REC004 CPF é obrigatório.
REC005 Cargo é obrigatório.
REC006 Telefone é obrigatório.
REC008 Valor pra o campo sexo deve ser 'FEMALE' ou 'MALE'.
ATG0001 Criação do access token falhou!
ATG0002 Criação do access token falhou!
ATG0003 Criação do access token falhou!
PB0001 Falha durante o processo de envio do access token!
RAM001 Campo 'permission_granted' aceita somente um dos seguintes valores: 0 ou 1.
RAM002 O pedido de aprovação expirou ou identificador do pedido não é válido.
EA0001 Parâmetro inválido.
EA0002 Falha ao buscar recrutador.
EA0003 Falha ao buscar ATS.
EA0004 ATS não encontrada.
EA0005 Erro ao gerar link do email.
EA0006 Erro ao enviar email.

Fluxo da solicitação do token

Logo abaixo é possível entender como é realizado a solicitação do token na Catho.

Ilustração fluxo de access token