# API Publicação de vagas OpenAPI file: https://vaas.vag.as/doc/publicacao-vagas-pt.yaml ## Description This is version `1.0.0` of this API documentation. Last update on Sep 22, 2026. A API de publicação de vagas permite aos clientes do Vagas for Business publicarem vagas por meio de uma chamada HTTP no formato JSON. ## Autenticação A autenticação para utilização desta API pode ser feita de 02 maneiras: - Client Credencials - A vaga será criada com o usuário de identificação _Admin_ como responsável - Autorization Code (3-legged) - A vaga será criada com o usuário informado na autorização como responsável ### Client Credencials Esse processo consiste em uma chamada POST direto ao gateway indicando as credencias para obter o token de acesso. Considerando que as credencias foram criadas no gateway, basta realizar uma chamada conforme o exemplo: ``` curl -X POST -k -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://apigateway.vagas.com.br/oauth/token' --data 'grant_type=client_credentials' -u 'client_id:client_secret' ``` O retorno dessa execução será: ```json { "access_token": "asd23sde12e123sd", "expires_in": 2591999, "token_type": "Bearer" } ``` Para todas as demais requisições abaixo, o __access\_token__ deve ser incluído na requisição como um atributo do HEADER em formato BEARER Lembrando que o __access\_token__ tem um limite de tempo para uso, a informação retornada na chave __expires\_in__ indica a quantidades de segundos que o token será expirado a partir de sua data de geração. __Exemplo de chamada usando o __access\_token__:__ ```shell # Valor exemplo que deve ser incluido no HEADER da requisição: # Authorization: Bearer asd23sde12e123sd CURL example: curl -XGET --header “Authorization: Bearer asd23sde12e123sd” ``` ### Autorization Code (3-legged) Esse processo implementa a especificação OAuth 2.0 para autenticação e autorização. Esta autenticação segue o padrão de "three leg": - O __serviço remoto__ requisita ao __usuário__ (funcionário do Vagas For Business) para que faça a autenticação em um servidor do __VAGAS API__ #### Como obter o token O serviço remoto inicia o processo chamando uma URL para /oauth/authorize do servidor do VAGAS API, enviando como parametros: - __client_id__: Identificador da aplicação (Fornecido pela VAGAS) - __login_type__: Identificador do tipo de login (deve ser enviado o valor "empresa") - __response_type__: Identificador do tipo de resposta (deve ser enviado o valor "code") - __redirect_uri__: URI que será redirecionado quando a ação de login for sucesso ou não __Exemplo:__ ``` https://apigateway.vagas.com.br/oauth/authorize?response_type=code&client_id=some_application_id&login_type=empresa&redirect_uri=http%3A%2F%2Flocalhost%2Foauth%2Fcode_callback ``` O usuário irá autenticar com suas credencias e autorizará o uso de suas informações pelo serviço remoto. Quando o usuário aceitar a autorização, o servidor VAGAS API irá redirecionar de volta ao serviço remoto usando o endereço indicado pelo parametro redirect_uri com um código de autorização. __Exemplo:__ ``` http://localhost/oauth/code_callback?code=AixUbVTop239876 ``` No caso de requisição não autorizada, a chamada será para o mesmo URI informado no parametro redirect_uri com o parametro de erro. __Exemplo:__ ``` http://localhost/oauth/code_callback?error=unauthorized-request ``` Usando o código retornado acima, o serviço remoto deve requisitar um token de acesso que será usado para todas as demais requisições. Fazendo uma nova requisição através de um HTTP POST para a rota /oauth/token usando o formato "application/x-www-form-urlencoded" com os seguintes parametros: - __code__: O código de autorização (recebido na chamada anterior) - __grant_type__: Com o valor "authorization_code" Também deve ser incluido no cabeçalho da requisição (HEADER) um atributo com as informações de client\_id e client\_secret concatenados por dois pontos (:) e codificado em Base64 __Exemplo:__ - Tendo o client\_id igual a __"exemplo"__ e um client\_secret igual a __"emi40QrBjUiPaVC2eGK5"__ - Devem ser concatenados: __exemplo:emi40QrBjUiPaVC2eGK5__ - Aplicado Base64 no valor acima: __ZXhlbXBsbzplbWk0MFFyQmpVaVBhVkMyZUdLNQ==__ - Incluído no HEADER da requisição: __Authorization: Basic ZXhlbXBsbzplbWk0MFFyQmpVaVBhVkMyZUdLNQ==__ __Curl Exemplo:__ ```shell curl -XPOST https://apigateway.vagas.com.br/oauth/token \ --header “Authorization: Basic ZXhlbXBsbzplbWk0MFFyQmpVaVBhVkMyZUdLNQ==” \ --data “code=AixUbVTop239876&grant_type=authorization_code” ``` __O retorno da requisição, se bem sucedida será:__ ```json { "access_token": "asd23sde12e123sd", "expired_in": 2591999 } ``` Para todas as demais requisições abaixo, o __access\_token__ deve ser incluído na requisição como um atributo do HEADER em formato BEARER Lembrando que o __access\_token__ tem um limite de tempo para uso, a informação retornada na chave __expires\_in__ indica a quantidades de segundos que o token será expirado a partir de sua data de geração. __Exemplo de chamada usando o __access\_token__:__ ```shell # Valor exemplo que deve ser incluido no HEADER da requisição: # Authorization: Bearer asd23sde12e123sd CURL example: curl -XGET --header “Authorization: Bearer asd23sde12e123sd” ``` ## Servers - https://apigateway.vagas.com.br/v1: https://apigateway.vagas.com.br/v1 () ## Topics ### [Authentications](https://vaas.vag.as/doc/publicacao-vagas-pt/authentication.md) ## Endpoints ### [Listas](https://vaas.vag.as/doc/publicacao-vagas-pt/group/endpoint-listas.md) - [Listar Apresentações](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarapresentacoes.md) - [Listar Áreas de Atuação](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarareasdeatuacao.md) - [Listar Beneficíos](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarbeneficios.md) - [Listar Canais de publicação](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarcanaisdepublicacao.md) - [Listar Cidades](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarcidades.md) - [Listar Divisões da Empresa](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listardivisoes.md) - [Listar Estados](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarestados.md) - [Listar Fases](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarfases.md) - [Listar Fichas](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarfichas.md) - [Listar Idiomas](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listaridiomas.md) - [Listar Locais de Trabalho](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarlocaisdetrabalho.md) - [Listar Níveis de Escolaridade](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarniveisdeescolaridade.md) - [Listar Níveis Hierárquicos](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarniveishierarquicos.md) - [Listar Vagas Modelo](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarvagasmodelo.md) - [Listar Paises](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listarpaises.md) - [Listar Tipo de contratação](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-listartiposdecontratacao.md) ### [Vagas](https://vaas.vag.as/doc/publicacao-vagas-pt/group/endpoint-vagas.md) - [Publicar Vaga](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-publicarvaga.md) - [Editar Vaga](https://vaas.vag.as/doc/publicacao-vagas-pt/operation/operation-editarvaga.md) [Powered by Bump.sh](https://bump.sh)