-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
remove conflicts and adjust reviews api
- Loading branch information
1 parent
5e5c481
commit 8280045
Showing
6 changed files
with
257 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,9 @@ | ||
# Codante APIs Docs | ||
|
||
[Documentação](https://docs.apis.codante.io) | ||
[Documentação](https://docs.apis.codante.io) | ||
|
||
## Adicionando / Alterando uma documentação | ||
|
||
1. Crie a pasta com a página `page.mdx` dentro de `src/app`. | ||
2. Adicione o respectivo *card* no componente `src/components/Resources.tsx`. Escolha um ícone bonito 😋 | ||
3. Adicione a página na sidebar alterando o componente `src/components/Navigation.tsx`. Escolha um emoji bonito! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,206 @@ | ||
export const metadata = { | ||
title: 'Jobs API', | ||
description: 'API de vagas do Codante.io', | ||
} | ||
|
||
# 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.{{ className: 'lead' }} | ||
|
||
Para solicitações inválidas, a API retorna um código de status 422, garantindo um feedback claro sobre erros nos parâmetros fornecidos.{{ className: 'lead' }} | ||
|
||
## 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 | ||
|
||
<Properties> | ||
<Property name="id" type="integer"> | ||
Identificador único da vaga. | ||
</Property> | ||
<Property name="title" type="string"> | ||
Título da vaga. | ||
</Property> | ||
<Property name="company" type="string"> | ||
Nome da empresa que está contratando. | ||
</Property> | ||
<Property name="company_website" type="string"> | ||
URL do site da empresa. | ||
</Property> | ||
<Property name="city" type="string"> | ||
Cidade onde a vaga está localizada. | ||
</Property> | ||
<Property name="schedule" type="string"> | ||
Tipo de contrato. Pode ser 'full-time', 'part-time', 'contract' ou 'internship'. | ||
</Property> | ||
<Property name="salary" type="integer"> | ||
Salário mensal da vaga em reais. | ||
</Property> | ||
<Property name="description" type="string"> | ||
Descrição detalhada da vaga. | ||
</Property> | ||
<Property name="requirements" type="string"> | ||
Requisitos necessários para a vaga. | ||
</Property> | ||
<Property name="created_at" type="timestamp"> | ||
Data e hora de criação do registro da vaga. | ||
</Property> | ||
<Property name="updated_at" type="timestamp"> | ||
Data e hora da última atualização do registro. | ||
</Property> | ||
</Properties> | ||
|
||
--- | ||
|
||
## Listagem de vagas {{ tag: 'GET', label: '/job-board/jobs' }} | ||
|
||
<Row> | ||
<Col> | ||
Este endpoint retorna uma lista de todas as vagas disponíveis. | ||
</Col> | ||
<Col sticky> | ||
<CodeGroup title="Request" tag="GET" label="/job-board/jobs"> | ||
```bash {{ title: 'cURL' }} | ||
curl -G https://apis.codante.io/api/job-board/jobs | ||
``` | ||
|
||
```js | ||
const response = await fetch('https://apis.codante.io/api/job-board/jobs') | ||
const jobs = await response.json() | ||
``` | ||
</CodeGroup> | ||
|
||
```json {{ title: '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" | ||
} | ||
] | ||
} | ||
``` | ||
</Col> | ||
</Row> | ||
|
||
--- | ||
|
||
## Vaga Individual {{ tag: 'GET', label: '/job-board/jobs/{id}' }} | ||
|
||
<Row> | ||
<Col> | ||
Este endpoint retorna uma vaga específica. | ||
</Col> | ||
<Col sticky> | ||
<CodeGroup title="Request" tag="GET" label="/job-board/jobs/{id}"> | ||
```bash {{ title: 'cURL' }} | ||
curl -G https://apis.codante.io/api/job-board/jobs/3 | ||
``` | ||
|
||
```js | ||
const response = await fetch('https://apis.codante.io/api/job-board/jobs/3') | ||
const job = await response.json() | ||
``` | ||
</CodeGroup> | ||
|
||
```json {{ title: '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" | ||
} | ||
} | ||
``` | ||
</Col> | ||
</Row> | ||
|
||
--- | ||
|
||
## Criar Vaga {{ tag: 'POST', label: '/job-board/jobs' }} | ||
|
||
<Row> | ||
<Col> | ||
Este endpoint cria uma nova vaga. Retorna código de status 201 para sucesso e 422 para falha. | ||
</Col> | ||
<Col sticky> | ||
<CodeGroup title="Request" tag="POST" label="/job-board/jobs"> | ||
```bash {{ title: 'cURL' }} | ||
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" | ||
``` | ||
|
||
```js | ||
const response = await fetch('https://apis.codante.io/api/job-board/jobs', { | ||
method: 'POST', | ||
body: JSON.stringify({ | ||
title: 'Desenvolvedor Backend', | ||
company: 'Amazon', | ||
company_website: 'https://amazon.com', | ||
city: 'Seattle', | ||
schedule: 'full-time', | ||
salary: 8000, | ||
description: 'Estamos procurando...', | ||
requirements: 'Experiência com PHP, Laravel' | ||
}) | ||
}) | ||
const job = await response.json() | ||
``` | ||
</CodeGroup> | ||
|
||
```json {{ title: '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" | ||
} | ||
} | ||
``` | ||
</Col> | ||
</Row> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
export function BriefcaseIcon(props: React.ComponentPropsWithoutRef<'svg'>) { | ||
return ( | ||
<svg viewBox="0 0 256 256" fill="currentColor" aria-hidden="true" {...props}> | ||
<path d="M224,72v32H32V72a8,8,0,0,1,8-8H216A8,8,0,0,1,224,72ZM32,200a8,8,0,0,0,8,8H216a8,8,0,0,0,8-8V168H32Z" opacity="0.2"/> | ||
<path d="M216,56H176V48a24,24,0,0,0-24-24H104A24,24,0,0,0,80,48v8H40A16,16,0,0,0,24,72V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V72A16,16,0,0,0,216,56ZM40,112H216v48H40ZM96,48a8,8,0,0,1,8-8h48a8,8,0,0,1,8,8v8H96ZM216,72V96H40V72Zm0,128H40V176H216v24Z"/> | ||
</svg> | ||
) | ||
} |