Esta é a documentação da Utilização da API BeTheHero.
Para a utilização dessa api é necessario utilizar o /api
como endpoint da aplicação.
Essa API Utiliza um tipo de Token que é :
- Autenticação - Utilizado para autenticar a ONG para a utilização e criação de alguns recursos.
- Ong´s
- Incident´s
- Session
Login - Logar ONG
Rota: POST /session
Autenticação: Não
Body:
{
"email": "usuario@email.com",
"senha": "senha"
}
Response:
{
"ong": true,
"msg": "usuario encontrado",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySUQiOiI1ZjBmNTJhN2I2NjcxYzNkMGNkYTM2NWUiLCJ1c2VyTmFtZSI6ImpvYW8gdml0b3IgIiwidXNlck1haWwiOiJqb2FvdW5vQHlvcG1haWwuY29tIiwiaWF0IjoxNTk0ODQxNjI2LCJleHAiOjE1OTQ4NDQ2MjZ9.0gNgelp1ZuPNIp67kBx1CXxTA_K2CBrmtlM7NNmmB84"
}
Post - Criar ONG
Rota: `/ongs`
Autenticação: Não
Body:
{
"name":"teste",
"email":"test@test.com",
"password":"senha",
"whatsapp":"numero",
"city":"cidade",
"uf":"sigla"
}
Response:
{
"ong": true,
"msg": "usuario encontrado",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySUQiOiI1ZjBmNTJhN2I2NjcxYzNkMGNkYTM2NWUiLCJ1c2VyTmFtZSI6ImpvYW8gdml0b3IgIiwidXNlck1haWwiOiJqb2FvdW5vQHlvcG1haWwuY29tIiwiaWF0IjoxNTk0ODQxNjI2LCJleHAiOjE1OTQ4NDQ2MjZ9.0gNgelp1ZuPNIp67kBx1CXxTA_K2CBrmtlM7NNmmB84"
}
Get - Listar ONG
Rota: `GET /ongs`
Autenticação: Não Body:
{
"name":"teste",
"email":"test@test.com",
"password":"senha",
"whatsapp":"numero",
"city":"cidade",
"uf":"sigla"
}
Response:
{
"results": [
{
"_id": "5f0f52a7b6671c3d0cda365e",
"name": "joao vitor ",
"email": "joaouno@yopmail.com",
"whatsapp": 123456784,
"city": "Itanhaém",
"__v": 0
}
],
"count": 1
}
Get ONG - Mostrar ONG Especifica
Rota: `GET /ongs/:id`
Autenticação: Não
Body: Não
Response:
{
"results": {
"_id": "5f0dddde9fd05c3978d11b8d",
"name": "joao vitor 2",
"email": "joaouno@yopmail.com.br",
"whatsapp": 123456784,
"city": "Itanhaém",
"uf": "SPP",
"__v": 0
}
}
Put - Atualizar ONG
Rota: `PUT /ongs/:id`
Autenticação: Sim
Response:
{
"msg": "Dados Atualizados Com Sucesso",
"update": {
"n": 1,
"nModified": 1,
"ok": 1
}
}
Delete - Deletar ONG
Rota: `DELETE /ongs/:id`
Autenticação: Sim
Body: No
Response:
{
"msg": "usuario deletado com sucesso"
}
Post - Criar Incident
Rota: `/incidents`
Autenticação: Não
Body:
{
"title": "titulo 2",
"description": "aqui vai uma descrição de teste",
"value": "120.00",
"url": "naotem",
"ongId": "5f0dddde9fd05c3978d11b8d" //id da ONG
}
Response:
{
"msg": "Cadastro de Novo Incident concluido !",
"title": "titulo 2"
}
Get - Listar Incidents
Rota: `GET /incidents`
Autenticação: Não
Body: Não Response:
{
"results": [
{
"_id": "5f0f5337b6671c3d0cda365f",
"title": "titulo 2",
"description": "aqui vai uma descrição de teste",
"value": 120,
"url": "naotem",
"ongId": "5f0dddde9fd05c3978d11b8d",
"__v": 0
}
]
}
Get Incident - Mostrar Incident Especifico
Rota: `GET /incidents/:id`
Autenticação: Não
Body: Não
Response:
{
"results": {
"_id": "5f0f1a7092b34c46904fb194",
"title": "titulo 2",
"description": "aqui vai uma descrição de teste",
"value": 120,
"url": "naotem",
"ongId": "5f0dddde9fd05c3978d11b8d",
"__v": 0
}
}
Put - Atualizar Incident
Rota: ` PUT /incidents/:id `
Autenticação: Sim
Body:
{
"title": "titulo 2",
"description": "aqui vai uma descrição de teste",
"value": "120.00",
"url": "naotem",
"ongId": "5f0dddde9fd05c3978d11b8d"
}
Response:
{
"msg": "Dados Atualizados Com Sucesso",
"update":
}
Delete - Deletar Incident
Rota: `DELETE /incidents/:id`
Autenticação: Sim
Body: No
Response:
{
"msg": "incident deletado com sucesso"
}