Se precisar de ajuda, entre em contato pelo canal de suporte.
A API segue 100% a especificação JSON:API. Algumas informações rápidas para facilitar:
- Todas as requisições devem ser feitas para
https://web.monde.com.br/api/v2
- Atualmente a autenticação é realizada por token (JWT), seguindo a RFC 7591.
- Toda requisição deve ser HTTPS e ter
Content-Type: application/vnd.api+json
adicionado ao Header.
O processo se dá em dois passos: Autenticação e Requisição. Sendo que a Autenticação não precisa ser realizada todo momento, e pode ser realizado apenas quando o token expirar(a cada 1 hora).
Já que o endpoint da autenticação é POST
api/v2/tokens Em cURL (para você tentar na sua shell), podemos fazer assim:
curl "https://web.monde.com.br/api/v2/tokens" -d '{ "data": {"type": "tokens", "attributes": {"login": "[email protected]","password": "u4K2EJwGFL" } } }' -X POST \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiI4MzJkMjFmMS02ZDU0LTQzMjItYWUyNS05M2NkNGJhNzQ5ZmYiLCJpc3N1ZXIiOiJNb25kZSIsInNjaGVtYSI6Im1vbmRlc2lzdGVtYXMiLCJleHAiOjE2MzU0NTM0MzR9.HVW91M7lSA07syCxPPdVJOSi8M7Z9nGQ5ZxPz-JyriA" \
-H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json"
A resposta da requisição vai parecer com o que está abaixo:
{
"data": {
"id": "832d21f1-6d54-4322-ae25-93cd4ba749ff",
"type": "tokens",
"links": {
"self": "http://web.monde.com.br/api/v2/tokens/832d21f1-6d54-4322-ae25-93cd4ba749ff"
},
"attributes": {
"login": "admin",
"token": "TOKEN_DE_ACESSO"
}
}
}
PS: Tome nota da chave que está em TOKEN_DE_ACESSO
No nosso exemplo vamos listar todas as pessoas da nossa base.
Sabemos que o endpoint da API para fazer isso é o GET
api/v2/people (ver todos os endpoints) e já temos nosso TOKEN_DE_ACESSO
export TOKEN_DE_ACESSO="SEU_TOKEN_DE_ACESSO"
curl -g "https://web.monde.com.br/api/v2/people" -X GET \
-H "Authorization: Bearer $TOKEN_DE_ACESSO" \
-H "Accept: application/vnd.api+json" \
-H "Content-Type: application/vnd.api+json"
A resposta da requisição vai parecer com o que está abaixo:
{
"data": [
{
"id": "ac4a4562-b7be-460d-b92e-5edb3aec9408",
"type": "people",
"links": {
"self": "http://web.monde.com.br/api/v2/people/ac4a4562-b7be-460d-b92e-5edb3aec9408"
},
"attributes": {
"name": "Ordonhes e Associados",
"company-name": "Lima S.A.",
"address": "1st Street",
"number": "899",
"complement": "Casa",
"district": "St. John",
"zip": "89999000",
"birth-date": "1986-11-22",
"cpf": "40414847318",
"rg": "1234456",
"passport-number": "86761376254815494020",
"passport-expiration": "2031-10-28",
"gender": null,
"cnpj": null,
"city-inscription": "1234567890",
"state-inscription": "1234567890",
"observations": "nothing to note",
"registered-at": "2021-10-28T16:37:16.683-03:00",
"business-phone": "",
"mobile-phone": "",
"phone": "4991782812",
"email": "[email protected]",
"website": "https://www.site.com.br",
"code": 118048,
"kind": "individual"
},
"relationships": {
"city": {
"links": {
"self": "http://web.monde.com.br/api/v2/people/ac4a4562-b7be-460d-b92e-5edb3aec9408/relationships/city",
"related": "http://web.monde.com.br/api/v2/people/ac4a4562-b7be-460d-b92e-5edb3aec9408/city"
}
},
"creator": {
"links": {
"self": "http://web.monde.com.br/api/v2/people/ac4a4562-b7be-460d-b92e-5edb3aec9408/relationships/creator",
"related": "http://web.monde.com.br/api/v2/people/ac4a4562-b7be-460d-b92e-5edb3aec9408/creator"
}
}
}
}
],
"links": {
"first": "http://web.monde.com.br/api/v2/people?page%5Bnumber%5D=1&page%5Bsize%5D=50",
"last": "http://web.monde.com.br/api/v2/people?page%5Bnumber%5D=1&page%5Bsize%5D=50"
}
}
Para análise dos erros da API veja o código de resposta HTTP
, abaixo alguns códigos mais comuns e possíveis soluções:
- 200: Tudo está correto.
- 201: Registro criado com sucesso
- 301: Redirecionamento (veja se o caminho está correto ou analise a documentação para saber se o seu endpoint não foi alterado)
- 401: Não autorizado (seu usuário ou senha estão errados ou seu token pode ter expirado)
- 403: Não permitida essa ação
- 404: Não encontrado (possivelmente você errou o endpoint, ou algum header do endpoit, ou o registro no eciste)
- 422: Erro na validação dos dados
- 500: Algum problema pode estar acontecendo nos nossos servidores, nos avise que tentaremos resolver o mais rápido possível.
Autenticação
Pessoas
GET
people - Lista as pessoasGET
people/:id - Visualiza os dados da pessoa com o ID:id
POST
people - Cria um novo cadastro de pessoaPATCH
people/:id - Altera o cadastro da pessoa com ID:id
DELETE
people/:id - Deleta a pessoa de ID:id
Tarefas
GET
tasks - Lista as tarefasGET
tasks/:id - Visualiza os dados da tarefa com o ID:id
POST
tasks - Cria um novo cadastro de tarefaPATCH
tasks/:id - Altera o cadastro da tarefa com ID:id
DELETE
tasks/:id - Deleta a tarefa de ID:id
Categorias de Tarefa
GET
task-categories - Lista as categorias de tarefasGET
task-categories/:id - Visualiza os dados da categoria com o ID:id
Histórico de Tarefas
GET
task-historics - Lista o histórico da tarefaGET
task-historics/:id - Visualiza os dados de um histórico da tarefa com o ID:id
POST
task-historics - Cria um novo cadastro de histórico da tarefaPATCH
task-historics/:id - Altera o cadastro do histórico da tarefa com ID:id
DELETE
task-historics/:id - Deleta o histórico da tarefa de ID:id
Cidades
GET
cities - Lista as CidadesGET
cities/:id - Visualiza os dados da cidade com o ID:id