Criando uma vaga padrão com código de posição
Gerando o token
Para utilizar este fluxo, é necessário utilizar o Bearer Token gerado nas configurações avançadas da plataforma. Acesse nossa seção de autenticação para saber como gerar o token de autenticação.
No momento de gerar o token habilite os seguintes endpoints da V1:
- Company Branches
 - Company Departments
 - Jobs
 - Job Roles
 
Também é necessário entrar em contato com o time de suporte da Gupy através do site https://suporte.gupy.io/s/suporte/ para solicitar a ativação da feature flag de vacancyCode em sua plataforma. Após habilitado será possível visualizar o campo para inserir o código de posição conforme mostra a imagem abaixo:
Fluxo de Integração
1. Fazendo a requisição e criando a vaga
Faça a requisição para o endpoint POST Jobs, passando os campos que deseja, estamos utilizando a vaga padrão como exemplo:
| Parâmetro | Descrição | 
|---|---|
| code | Refere-se ao código interno da vaga atribuído pelo sistema terceiro | 
| name | Título dado para a vaga | 
| type | Modo de contratação | 
| publicationType | Se a vaga será interna ou externa | 
| numVacancies | Número de pessoas que serão contratadas para uma mesma vaga. | 
| departmentId | Código da área gerado automaticamente pela Gupy (campo Id) que a vaga está atrelada. | 
| roleId | Código do cargo gerado automaticamente pela Gupy (campo Id) que a vaga está atrelada. | 
| branchId | Código da filial gerado automaticamente pela Gupy (campo Id) | 
Exemplo de requisição:
curl --request POST \
     --url https://api.gupy.io/api/v1/jobs \
     --header 'accept: application/json' \
     --header 'authorization: Bearer xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx' \
     --header 'content-type: application/json' \
     --data '
{
  "type": "vacancy_type_effective",
  "publicationType": "external",
  "name": "Desenvolvedor Backend",
  "numVacancies": 2,
  "departmentId": 5962,
  "roleId": 7872,
  "branchId": 2743,  
  "code": "1974"
}
'Exemplo de resposta:
{
  "id": 7168372,
  "code": "1974",
  "name": "Desenvolvedor Backend",
  "status": "draft",
  "type": "vacancy_type_effective",
  "publicationType": "external",
  "numVacancies": 2,
  "departmentId": 5962,
  "departmentName": "Administrativo (ML)",
  "roleId": 7872,
  "roleName": "Analista Teste Z",
  "subsidiaryId": 2743,
  "subsidiaryName": "DEMO > MATRIZ",
  "createdAt": "2024-05-15T01:55:29.088Z",
  "updatedAt": "2024-05-15T01:55:29.211Z",
  "hiringDeadline": null,
  "description": null,
  "responsibilities": null,
  "prerequisites": null,
  "additionalInformation": null,
  "notes": null,
  "disabilities": false,
  "addressStreet": null,
  "addressNumber": null,
  "addressCity": null,
  "addressState": null,
  "addressStateShortName": null,
  "addressCountry": null,
  "addressCountryShortName": null,
  "addressComplements": null,
  "addressDistrict": null,
  "addressZipCode": null,
  "addressLatitude": null,
  "addressLongitude": null,
  "remoteWorking": false,
  "workplaceType": "on-site",
  "reason": null,
  "image": null,
  "socialMediaImage": null,
  "applicationDeadline": null,
  "careerPageId": null,
  "careerPageName": null,
  "vacancyCodes": [],
  "managerId": null,
  "managerName": null,
  "managerEmail": null,
  "recruiterId": null,
  "recruiterName": null,
  "recruiterEmail": null,
  "salary": {
    "currency": null,
    "startsAt": null,
    "endsAt": null
  }, 
  "jobRatingCriterias": [],
  "cancelReason": null,
  "cancelReasonNotes": null,
  "canceledByEmail": null,
  "cancelAt": null,
  "publishedAt": null,
  "closedAt": null,
  "approvedAt": null,
  "disapprovedAt": null,
  "lastFreezeDate": null,
  "lastUnfreezeDate": null,
  "creatorId": 22011,
  "creatorName": "Public API",
  "creatorEmail": "[email protected]",
  "videoUrl": null,
  "approvers": null,
  "workflowRequestMethod": null,
  "branchId": 2743,
  "branchName": "DEMO > MATRIZ"
}Salve o id para utilizar no passo 2
2. Criando um código de posição
Faça a requisição para o endpoint Creating a vacancy code informando todos os campos conforme detalhamento abaixo:
| Parâmetro | Descrição | 
|---|---|
| jobId | Código da vaga gerado automaticamente pela Gupy (id retornado na resposta da criação da vaga) | 
| code | Código que será atribuído à posição | 
| status | Status da posição (valid ou waiting) | 
Exemplo de requisição:
curl --request POST \
     --url https://api.gupy.io/api/v1/jobs/7168372/vacancies \
     --header 'accept: application/json' \
     --header 'authorization: Bearer xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx' \
     --header 'content-type: application/json' \
     --data '
{
  "status": "valid",
  "code": "4564"
}
'Exemplo de resposta:
{
  "id": 1273363,
  "jobId": 7168372,
  "code": "4564",
  "status": "valid",
  "errorMessage": null,
  "createdAt": "2024-05-11T02:02:47.519Z",
  "updatedAt": "2024-05-11T02:02:47.519Z"
}Dúvidas frequentes
- A vaga possui 5 posições abertas, para preencher todas com o código de posição é necessário chamar a API cinco vezes ou posso passar um array?
 
Resposta: Será necessário chamar 5 vezes para cadastrar todos os códigos de posição.
- O que acontece ao chamar a API passando mais códigos de posição do que o número de posições abertas?
 
Resposta: A API criará mais uma posição e associará ao número passado na requisição
Updated 5 months ago
