Pular para o conteúdo

Endpoints de Fazendas

Todos os endpoints de fazendas requerem autenticação.

Authorization: Bearer <token>

Cria uma nova fazenda para um usuário específico.

ParâmetroTipoDescrição
user_idUUIDID do usuário para criar a fazenda
POST /api/v1/farms/{user_id}
Authorization: Bearer <token>
Content-Type: application/json
{
"name": "Fazenda Beta",
"description": "Fazenda secundária",
"address": {
"street": "Rodovia CE-040",
"number": 1500,
"city": "Aquiraz",
"state": "CE",
"zip_code": "61700-000",
"country": "Brazil",
"lat": "-3.897610",
"lng": "-38.387821"
}
}
CampoTipoObrigatórioDescrição
namestringNome da fazenda
descriptionstringDescrição da fazenda
addressobjectEndereço da fazenda com lat/lng
{
"id": "farm-uuid",
"name": "Fazenda Beta",
"description": "Fazenda secundária",
"owner_id": "user-uuid",
"address_id": "address-uuid",
"created_at": "2025-11-21T10:30:00Z",
"updated_at": null
}
StatusDetalhe
403Não autorizado a criar fazenda para outro usuário

Lista todas as fazendas do usuário atual.

GET /api/v1/farms/
Authorization: Bearer <token>
[
{
"id": "farm-uuid-1",
"name": "Fazenda Alpha",
"owner_id": "user-uuid",
"created_at": "2025-11-21T10:30:00Z"
},
{
"id": "farm-uuid-2",
"name": "Fazenda Beta",
"owner_id": "user-uuid",
"created_at": "2025-11-21T12:00:00Z"
}
]

Obtém detalhes de uma fazenda específica.

GET /api/v1/farms/farm-uuid
Authorization: Bearer <token>
ParâmetroTipoDescrição
farm_idUUIDID da fazenda
{
"id": "farm-uuid",
"name": "Fazenda Alpha",
"description": "Fazenda principal de produção",
"lat": "-23.550520",
"lng": "-46.633308",
"owner_id": "user-uuid",
"ponds": [
{
"id": "pond-uuid",
"cod": "POND-001",
"pond_type": "fattening"
}
],
"created_at": "2025-11-21T10:30:00Z"
}

Atualiza os detalhes de uma fazenda.

PUT /api/v1/farms/farm-uuid
Authorization: Bearer <token>
Content-Type: application/json
{
"name": "Fazenda Alpha Atualizada",
"description": "Descrição atualizada",
"lat": "-23.550520",
"lng": "-46.633308"
}
CampoTipoObrigatórioDescrição
namestringNovo nome da fazenda
descriptionstringNova descrição
latstringNova latitude
lngstringNova longitude
{
"id": "farm-uuid",
"name": "Fazenda Alpha Atualizada",
"description": "Descrição atualizada",
"lat": "-23.550520",
"lng": "-46.633308",
"owner_id": "user-uuid"
}

Exclui uma fazenda e todos os recursos relacionados.

DELETE /api/v1/farms/farm-uuid
Authorization: Bearer <token>

Sem corpo de resposta.

StatusDetalhe
404Fazenda não encontrada ou sem permissão