Municípios
Os municípios são o terceiro nível da hierarquia geográfica, ligados a um departamento.
Hierarquia geográfica
Região → Setor → Município → Localidade
^^^^^^^^^
GET /api/communes
Obtém a lista dos municípios.
Endpoint
GET /api/communes
Headers
| Header | Valor | Obrigatório |
|---|---|---|
| Authorization | Bearer {token} | Sim |
Resposta de sucesso
Código: 200 OK
{
"@context": "/api/contexts/Commune",
"@id": "/api/communes",
"@type": "hydra:Collection",
"hydra:totalItems": 552,
"hydra:member": [
{
"@id": "/api/communes/bb0e8400-e29b-41d4-a716-446655440001",
"@type": "Commune",
"id": "bb0e8400-e29b-41d4-a716-446655440001",
"nom": "Commune de Dakar",
"code": "COM-DK-001",
"departement": {
"@id": "/api/departements/cc0e8400-e29b-41d4-a716-446655440001",
"nom": "Département de Dakar"
}
},
{
"@id": "/api/communes/bb0e8400-e29b-41d4-a716-446655440002",
"@type": "Commune",
"id": "bb0e8400-e29b-41d4-a716-446655440002",
"nom": "Commune de Pikine",
"code": "COM-DK-002",
"departement": {
"@id": "/api/departements/cc0e8400-e29b-41d4-a716-446655440002",
"nom": "Département de Pikine"
}
}
],
"hydra:view": {
"@id": "/api/communes?page=1",
"hydra:first": "/api/communes?page=1",
"hydra:last": "/api/communes?page=19"
}
}
GET /api/communes/{id}
Obtém um município pelo seu identificador.
Endpoint
GET /api/communes/{id}
Resposta de sucesso
Código: 200 OK
{
"@context": "/api/contexts/Commune",
"@id": "/api/communes/bb0e8400-e29b-41d4-a716-446655440001",
"@type": "Commune",
"id": "bb0e8400-e29b-41d4-a716-446655440001",
"nom": "Commune de Dakar",
"code": "COM-DK-001",
"departement": {
"@id": "/api/departements/cc0e8400-e29b-41d4-a716-446655440001",
"@type": "Departement",
"nom": "Département de Dakar"
}
}
Exemplos
cURL
# Lista dos municípios
curl https://sig.ucp-pch.org/api/communes \
-H "Authorization: Bearer TOKEN"
# Município por ID
curl https://sig.ucp-pch.org/api/communes/bb0e8400-e29b-41d4-a716-446655440001 \
-H "Authorization: Bearer TOKEN"
JavaScript
const getCommunes = async () => {
const response = await fetch(
'https://sig.ucp-pch.org/api/communes',
{
headers: {
'Authorization': `Bearer ${localStorage.getItem('token')}`
}
}
);
return response.json();
};
// Utilização
const communes = await getCommunes();
console.log(`${communes['hydra:totalItems']} municípios`);
communes['hydra:member'].forEach(commune => {
console.log(`${commune.nom} - ${commune.departement?.nom || 'N/A'}`);
});
Python
import requests
def get_communes(token):
response = requests.get(
'https://sig.ucp-pch.org/api/communes',
headers={'Authorization': f'Bearer {token}'}
)
return response.json()
# Utilização
communes = get_communes(token)
print(f"Total: {communes['hydra:totalItems']} municípios")
for commune in communes['hydra:member']:
dept = commune.get('departement', {}).get('nom', 'N/A')
print(f"- {commune['nom']} ({dept})")
Campos
| Campo | Tipo | Descrição |
|---|---|---|
| id | UUID | Identificador único |
| nom | string | Nome do município |
| code | string | Código do município |
| departement | object | Departamento pai (nullable) |
Notas
- Os municípios estão ligados a um departamento (opcional)
- Utilizados como referência para os agregados familiares
- A criação/modificação requer o papel ADMIN