Comércios
Endereços de Comércio
Gerencie endereços de um comércio.
POST /api/commerces/:cId/addresses
Adiciona um novo endereço a um comércio.
Auth: Obrigatória — permissão commerce:manage
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
source | string | Sim | Origem do endereço: RETEN ou INTEGRATION |
address_alias | string | Não | Nome amigável para o endereço |
is_primary | boolean | Não | Definir como endereço principal |
country_code | string | Não | Código do país (ex. CL, MX) |
region | string | Não | Região ou estado |
commune | string | Não | Comuna ou município |
city | string | Não | Cidade |
street | string | Não | Nome da rua |
street_number | string | Não | Número da rua |
unit | string | Não | Apartamento, sala ou unidade |
formatted_address | string | Não | Endereço completo formatado |
latitude | number | Não | Coordenada de latitude |
longitude | number | Não | Coordenada de longitude |
Exemplo
curl -X POST https://api.reten.ai/api/commerces/<cId>/addresses \
-H "Authorization: Bearer <token>" \
-H "x-tenant-id: <tenant-id>" \
-H "Content-Type: application/json" \
-d '{
"source": "RETEN",
"address_alias": "Main Office",
"street": "Av. Providencia",
"street_number": "1234",
"commune": "Providencia",
"city": "Santiago",
"region": "Metropolitana",
"country_code": "CL",
"latitude": -33.4500,
"longitude": -70.6700,
"is_primary": true
}'const commerceId = "<cId>";
const response = await fetch(`https://api.reten.ai/api/commerces/${commerceId}/addresses`, {
method: "POST",
headers: {
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
"Content-Type": "application/json",
},
body: JSON.stringify({
source: "RETEN",
address_alias: "Main Office",
street: "Av. Providencia",
street_number: "1234",
commune: "Providencia",
city: "Santiago",
region: "Metropolitana",
country_code: "CL",
latitude: -33.4500,
longitude: -70.6700,
is_primary: true,
}),
});
const address = await response.json();import requests
commerce_id = "<cId>"
response = requests.post(
f"https://api.reten.ai/api/commerces/{commerce_id}/addresses",
headers={
"Authorization": "Bearer <token>",
"x-tenant-id": "<tenant-id>",
},
json={
"source": "RETEN",
"address_alias": "Main Office",
"street": "Av. Providencia",
"street_number": "1234",
"commune": "Providencia",
"city": "Santiago",
"region": "Metropolitana",
"country_code": "CL",
"latitude": -33.4500,
"longitude": -70.6700,
"is_primary": True,
},
)
address = response.json()Resposta 201 Created
Retorna o objeto de endereço criado.
PATCH /api/commerces/:cId/addresses/:aId
Atualiza um endereço existente.
Auth: Obrigatória — permissão commerce:manage
Corpo da Requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
address_alias | string | Não | Nome amigável para o endereço |
country_code | string | Não | Código do país |
region | string | Não | Região ou estado |
commune | string | Não | Comuna ou município |
city | string | Não | Cidade |
street | string | Não | Nome da rua |
street_number | string | Não | Número da rua |
unit | string | Não | Apartamento, sala ou unidade |
formatted_address | string | Não | Endereço completo formatado |
latitude | number | Não | Coordenada de latitude |
longitude | number | Não | Coordenada de longitude |
is_active | boolean | Não | Se o endereço está ativo |
POST /api/commerces/:cId/addresses/:aId/set-primary
Define um endereço como o endereço principal do comércio. Remove automaticamente o endereço principal anterior.
Resposta 200 OK
Retorna o endereço atualizado.
Notas
- Apenas um endereço pode ser principal por comércio (entre os endereços ativos)
- Definir um novo endereço principal remove automaticamente o anterior