O que você precisa
- Uma chave de API de empresa. Chaves de organização são somente leitura e não criam colaboradores nem linhas. Veja Chaves de API.
- Os dados da admissão vindos do seu sistema de RH: nome, e-mail profissional ou CPF e, se quiser, cargo, área e data de admissão.
- O nome do plano da linha e, se usar, o centro de custo (nome ou código).
- O DDD da linha e o ICCID do chip físico que a pessoa vai usar (o ICCID completo ou os últimos 7 a 10 dígitos).
Passo a passo
1
Encontre o centro de custo
Liste os centros de custo ativos e procure pelo nome ou pelo código que o seu RH usa.Guarde o
id. Se o centro de custo informado pelo RH não existir, pare aqui: seguir sem ele deixa o colaborador e a linha fora do rateio.2
Encontre o plano
Liste os planos disponíveis para a sua empresa. Este endpoint não é paginado.Escolha o plano pelo nome exato e guarde o
id. O plano define o valor mensal da linha (priceCents), então não escolha um plano automaticamente se o nome não bater.3
Cadastre o colaborador
Crie o colaborador com status A resposta (
active e o centro de custo da etapa 1. Envie uma chave de idempotência montada a partir do evento de admissão, para que um reenvio do RH não crie o colaborador duas vezes.201) traz o colaborador criado. Guarde o id.4
Peça a linha
Peça uma linha móvel com chip físico, vinculada ao colaborador e no mesmo centro de custo. Neste endpoint a chave de idempotência é obrigatória.A resposta (
202) traz a linha com status pending. A linha nasce pendente de ativação, e a cobrança começa depois da ativação. Para saber quando ela pode ser usada, assine o webhook phone-account.activated.Sem código: workflow do n8n
Se você usa o n8n, baixe o workflow pronto com as quatro etapas. Ele tem dois gatilhos: um manual, para testar, e um webhook, para o seu sistema de RH chamar a cada admissão.Baixar workflow do n8n
admission-create-line.json: importe no n8n e siga as notas dentro do
workflow.- No n8n, crie um workflow e importe o arquivo (menu ⋯ > Import from File, ou cole o conteúdo do arquivo no editor).
- Crie uma credencial Bearer Auth com a sua chave de API e selecione-a nos quatro nós HTTP.
- Preencha o nó Dados de teste e execute. O workflow começa em modo simulação (
dryRun = trueno nó Configuração): ele consulta centros de custo e planos e mostra o colaborador e a linha que seriam criados, com o valor do plano, sem criar nada. - Quando o resultado estiver certo, troque
dryRunparafalse. Para rodar automaticamente, ative o workflow e faça o seu sistema de RH chamar a URL do nó Webhook do RH com os dados da admissão. O formato do corpo está nas notas do workflow.
Como implementar
- Gatilho: um webhook do sistema de RH a cada admissão, uma rotina diária que busca as admissões do dia ou um botão no seu sistema interno.
- Modo simulação primeiro. Comece com uma versão que só consulta e mostra o colaborador e a linha que seriam criados, com o plano e o valor, sem fazer as chamadas de escrita. Confira o resultado e só depois ative as escritas.
- Chaves de idempotência: monte as chaves a partir do evento de admissão (e-mail ou CPF e data de admissão), nunca de algo que muda a cada execução.
Cuidados
Teste no sandbox antes de usar em produção
Teste no sandbox antes de usar em produção
Em produção, a linha é criada de verdade e passa a ser cobrada depois de ativada. Valide o fluxo com uma chave de sandbox (
salvy_test_) antes de trocar para a chave de produção. Veja Ambientes.Reenvios do RH não duplicam nada
Reenvios do RH não duplicam nada
As duas criações usam uma chave de idempotência montada com o e-mail (ou o CPF) e a data de admissão. Se o RH reenviar a mesma admissão, a API devolve o colaborador e a linha já criados em vez de criar outros.
- Por quanto tempo: a chave do colaborador vale por 24 horas; a da linha não expira. Depois de 24 horas, quem impede um colaborador duplicado é o e-mail profissional, que é único (veja abaixo).
- Depois de um erro: a API só guarda as respostas de sucesso. Se uma chamada falhar, corrija o problema e reenvie com a mesma chave: a criação é feita de novo.
- Mesmos dados: com a mesma chave e dados diferentes, a API recusa o pedido se a primeira chamada já tiver dado certo. Envie sempre
admittedAt; sem ela, a chave muda de um dia para o outro.
E-mail profissional já cadastrado
E-mail profissional já cadastrado
Se já existir um colaborador com o mesmo e-mail profissional,
POST /employees retorna 409 com o código employee-with-email-already-exists e a linha não é pedida. Em uma readmissão, por exemplo, reative o colaborador existente com PATCH /api/v3/employees/{id} e peça a linha para ele.Se o pedido da linha falhar
Se o pedido da linha falhar
Quando
POST /phone-accounts/mobile retorna um erro, o colaborador já foi cadastrado. Corrija a causa e reenvie o mesmo evento: dentro de 24 horas, POST /employees devolve o colaborador já criado, e a linha é pedida de novo com a mesma chave.Uma resposta de sucesso significa que a linha foi criada como pending, não que já está ativa. A ativação acontece depois; assine o webhook phone-account.activated para saber quando a linha pode ser usada.Variações
- eSIM em vez de chip físico. Envie
simType: "esim"semiccid. Assinephone-account.esim-readypara saber quando o código de ativação está pronto e busque-o em Dados do eSIM para enviar à pessoa. - Avisar o gestor. Ao final, envie para o Slack, Teams ou e-mail do gestor um resumo com o nome do colaborador, o plano e o status da linha.
- Desligamento. Para o caminho inverso, quando a pessoa sai da empresa, veja Desligamento → bloqueio de linhas.