Jobs API
A API de vagas do Codante.io é uma API que simula uma lista de vagas de emprego. A API responde com um código de status 200 para solicitações bem-sucedidas, fornecendo recursos de vagas no formato JSON, cada um contendo informações detalhadas como ID da vaga, título, empresa, localização, salário e requisitos.
Para solicitações inválidas, a API retorna um código de status 422, garantindo um feedback claro sobre erros nos parâmetros fornecidos.
Vale lembrar que a base de dados é resetada a cada quatro horas - então os dados não serão persistentes por muito tempo.
Autenticação
A API de vagas do Codante.io não requer autenticação para acessar as vagas.
Rate Limit
A API de vagas do Codante.io possui um limite de taxa de 100 solicitações por minuto. Se você exceder esse limite, receberá um código de status 429. O uso indiscriminado também poderá levar ao bloqueio do seu IP.
Base URL
A URL base para a API de vagas do Codante.io é https://apis.codante.io/api/job-board
.
O model Job (Vaga)
O model Job
contém todas as informações sobre uma vaga de emprego.
Propriedades
- Name
id
- Type
- integer
- Description
Identificador único da vaga.
- Name
title
- Type
- string
- Description
Título da vaga.
- Name
company
- Type
- string
- Description
Nome da empresa que está contratando.
- Name
company_website
- Type
- string
- Description
URL do site da empresa.
- Name
city
- Type
- string
- Description
Cidade onde a vaga está localizada.
- Name
schedule
- Type
- string
- Description
Tipo de contrato. Pode ser 'full-time', 'part-time', 'contract' ou 'internship'.
- Name
salary
- Type
- integer
- Description
Salário mensal da vaga em reais.
- Name
description
- Type
- string
- Description
Descrição detalhada da vaga.
- Name
requirements
- Type
- string
- Description
Requisitos necessários para a vaga.
- Name
created_at
- Type
- timestamp
- Description
Data e hora de criação do registro da vaga.
- Name
updated_at
- Type
- timestamp
- Description
Data e hora da última atualização do registro.
Listagem de vagas
Este endpoint retorna uma lista paginada de todas as vagas disponíveis. Por padrão, retorna 10 vagas por página, ordenadas por data de criação (mais recentes primeiro). Você pode passar o parâmetro slow=true
para simular um atraso na resposta, e search
para filtrar os resultados.
Atributos opcionais
- Name
search
- Type
- string
- Description
Filtra as vagas por um termo de busca textual (título, empresa ou cidade).
- Name
slow
- Type
- boolean
- Description
Simula um atraso na resposta da API.
- Name
page
- Type
- integer
- Description
Número da página desejada (padrão: 1).
Request
curl -G https://apis.codante.io/api/job-board/jobs
Response
{
"data": [
{
"id": 3,
"title": "Desenvolvedor Backend",
"company": "Amazon",
"company_website": "https://amazon.com",
"city": "Seattle",
"schedule": "full-time",
"salary": 8000,
"description": "Estamos procurando um desenvolvedor backend para se juntar à nossa equipe.",
"requirements": "Experiência com PHP, Laravel",
"created_at": "2025-01-14T21:14:11.000000Z",
"updated_at": "2025-01-14T21:14:11.000000Z"
}
// ... mais vagas ...
],
"links": {
"first": "https://apis.codante.io/api/job-board/jobs?page=1",
"last": "https://apis.codante.io/api/job-board/jobs?page=5",
"prev": null,
"next": "https://apis.codante.io/api/job-board/jobs?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 5,
"path": "https://apis.codante.io/api/job-board/jobs",
"per_page": 10,
"to": 10,
"total": 50
}
}
Vaga Individual
Este endpoint retorna uma vaga específica. Você pode passar o parâmetro de consulta slow=true
para simular um atraso na resposta.
Request
curl -G https://apis.codante.io/api/job-board/jobs/3
Response
{
"data": {
"id": 3,
"title": "Desenvolvedor Backend",
"company": "Amazon",
"company_website": "https://amazon.com",
"city": "Seattle",
"schedule": "full-time",
"salary": 8000,
"description": "Estamos procurando um desenvolvedor backend para se juntar à nossa equipe.",
"requirements": "Experiência com PHP, Laravel",
"created_at": "2025-01-14T21:14:11.000000Z",
"updated_at": "2025-01-14T21:14:11.000000Z"
}
}
Criar Vaga
Este endpoint cria uma nova vaga. Retorna código de status 201 para sucesso e 422 para falha.
Request
curl -X "POST" https://apis.codante.io/api/job-board/jobs \
-d "title=Desenvolvedor Backend" \
-d "company=Amazon" \
-d "company_website=https://amazon.com" \
-d "city=Seattle" \
-d "schedule=full-time" \
-d "salary=8000" \
-d "description=Estamos procurando..." \
-d "requirements=Experiência com PHP, Laravel"
Response
{
"data": {
"id": 3,
"title": "Desenvolvedor Backend",
"company": "Amazon",
"company_website": "https://amazon.com",
"city": "Seattle",
"schedule": "full-time",
"salary": 8000,
"description": "Estamos procurando um desenvolvedor backend para se juntar à nossa equipe.",
"requirements": "Experiência com PHP, Laravel",
"created_at": "2025-01-14T21:14:11.000000Z",
"updated_at": "2025-01-14T21:14:11.000000Z"
}
}
Apagar Vaga
Este endpoint apaga uma vaga específica. Retorna código de status 204 para sucesso e 404 caso a vaga não seja encontrada.
Request
curl -X DELETE https://apis.codante.io/api/job-board/jobs/3
Response
// Retorna 204 No Content
Comentários da Vaga
Este endpoint retorna uma lista de comentários para uma vaga específica.
Request
curl -G https://apis.codante.io/api/job-board/jobs/3/comments
Response
{
"data": [
{
"id": 1,
"job_id": 3,
"author": "John Doe",
"content": "Interessante vaga, estou interessado.",
"created_at": "2025-01-15T10:00:00.000000Z"
},
{
"id": 2,
"job_id": 3,
"author": "Jane Smith",
"content": "Gostaria de saber mais detalhes sobre a vaga.",
"created_at": "2025-01-15T11:00:00.000000Z"
},
{
"id": 3,
"job_id": 3,
"author": "Alice Johnson",
"content": "Qual é o prazo para se candidatar?",
"created_at": "2025-01-15T12:00:00.000000Z"
}
]
}