API do Nexius Empregos
Uma porta: você manda a vaga, o portal normaliza, revisa e publica. É o mesmo caminho de um feed XML ou de uma planilha, só que sob o seu controle.
1. A chave
A chave é criada na área do anunciante, em Integração por API. Ela aparece uma vez só. Comece pela chave de teste: as vagas entram, passam pela revisão e não aparecem na vitrine — é onde você experimenta sem que a primeira vaga de teste apareça para um candidato de verdade.
Mande a chave no cabeçalho, de um destes dois jeitos:
Authorization: Bearer nx_live_...
X-Nexius-Key: nx_live_...
2. A primeira vaga
curl -X POST https://empregos.nexius.com.br/api/v1/jobs \
-H "Authorization: Bearer $NEXIUS_KEY" \
-H "Content-Type: application/json" \
-d @vaga.json
Com vaga.json assim:
{
"external_id": "VAGA-1001",
"title": "Auxiliar Administrativo",
"description": "Rotinas administrativas da unidade, atendimento ao público e organização dos documentos do setor.",
"location": "Cascavel/PR",
"employment_type": "CLT",
"salary_min": 2200,
"salary_max": 2800
}
O external_id é a sua chave. Mande a mesma vaga de novo
com o mesmo código e ela é atualizada — você não
precisa saber se ela já existe aqui, nem gastar uma requisição para
descobrir.
3. O que volta
{
"data": {
"external_id": "VAGA-1001",
"title": "Auxiliar Administrativo",
"status": "published",
"review": {
"state": "pending",
"reason": "Enviada para conferência."
},
"sandbox": false,
"public_url": "https://empregos.nexius.com.br/sua-empresa/vagas/auxiliar-administrativo",
"city": "Cascavel",
"state": "PR",
"area": "administrativo"
}
}
Toda vaga passa por revisão.
O review.state diz em que pé ela está:
approved já está na vitrine, pending
está na fila, rejected traz o motivo em
review.reason. Mostre esse estado no seu painel, em
vez de dizer ao seu cliente que publicou algo que ainda não está
no ar.
4. Tirar do ar
curl -X DELETE https://empregos.nexius.com.br/api/v1/jobs/VAGA-1001 \
-H "Authorization: Bearer $NEXIUS_KEY"
A vaga é encerrada, não apagada: as candidaturas continuam
existindo, e o endereço público passa a responder 410
em vez de 404 — que é a diferença, para quem indexou a
página, entre “acabou” e “nunca existiu”.
Campos
| Campo | Obrigatório | Observação |
|---|---|---|
external_id |
sim | Seu código da vaga. É por ele que a atualização encontra a vaga aqui. |
title |
sim | Até 255 caracteres. |
description |
sim | HTML simples é aceito; link e imagem são removidos. |
requirements |
não | Mesmo tratamento da descrição. |
location |
não | “Cascavel/PR”, “Remoto”, “São Paulo / Híbrido”. O portal separa cidade, UF e modalidade. |
employment_type |
não | CLT, PJ, Estágio… texto livre, traduzido pelo dicionário do portal. |
salary_min |
não | Número. Faixa invertida é recusada. |
salary_max |
não | Número. |
apply_url |
não | Com ele, o botão leva ao seu site. Sem ele, a candidatura acontece aqui. |
published_at |
não | ISO 8601. Ausente, vale agora. |
expires_at |
não | ISO 8601. A vaga sai do ar sozinha. |
Limites e erros
- 300 requisições por minuto por chave.
401— chave ausente, inválida ou revogada.422— a vaga não passou na validação. Os motivos vêm emerrors.vaga, em português, prontos para mostrar a quem cadastrou.404noDELETE— nenhuma vaga sua com aqueleexternal_id.
Dúvida que a página não responde? Escreva para o suporte.