Una sección del catálogo/listado de comercios de una Company para mostrar en las apps.
type es custom (contenido a medida por payload), categories, featured (destacados) o
nearby (cercanos). Para custom, payload define el contenido: { type: "ids", ... } con
una lista de ids, o { type: "sql", ... } con una consulta. Se puede programar por franjas
(day_time_blocks) y por rango de fechas (date_beg–date_end). in_order fija la posición;
enabled la activa.
| Atributo | Tipo | Descripción |
|---|---|---|
id |
int |
|
name |
string |
Nombre de la sección |
type |
string |
Tipo de sección: custom, categories, featured o nearby |
enabled |
bool |
Si la sección está activa |
in_order |
int |
Posición de la sección en el listado |
created_at |
datetime\|null |
|
updated_at |
datetime\|null |
|
company_id |
int |
{@link Company} dueña de la sección |
payload |
array\|null |
Contenido de la sección custom (ids o sql) |
day_time_blocks |
array |
Franjas de día/hora en que la sección está visible |
date_beg |
datetime\|null |
Inicio del rango de vigencia (opcional) |
date_end |
datetime\|null |
Fin del rango de vigencia (opcional) |
allLogs |
ApiLog> |
|
logs |
ApiLog> |
{
"id": 3,
"name": "System-Managed Section",
"type": "categories",
"enabled": false,
"in_order": 65535,
"created_at": "2020-09-17 00:53:20",
"updated_at": "2025-11-18 21:14:36",
"payload": null,
"day_time_blocks": [],
"date_beg": null,
"date_end": null
}
Crear sección de comercios
Crea una BranchSection para la company (type, payload, in_order, enabled y
su programación de horario/fechas).
| Método | URI | Cabeceras |
|---|---|---|
| POST | /companies/{companyId}/branch-sections |
Authorization |
{
"name": "required_if:type,custom|string|max:64",
"type": "required|string|in:custom,categories,featured,nearby",
"enabled": "boolean",
"in_order": "integer",
"payload": "",
"day_time_blocks": [
{
"day_sunday": "nullable|boolean",
"day_monday": "nullable|boolean",
"day_tuesday": "nullable|boolean",
"day_wednesday": "nullable|boolean",
"day_thursday": "nullable|boolean",
"day_friday": "nullable|boolean",
"day_saturday": "nullable|boolean",
"hour_beg": {
"nullable": true,
"string": true,
"regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
},
"hour_end": {
"nullable": true,
"string": true,
"regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
}
}
],
"date_beg": "nullable|date",
"date_end": "nullable|date|after:date_beg"
}
{info} Soporta: Paginación Filters Carga dinámica
Listar secciones de comercios
Devuelve las BranchSection de la company, ordenadas por in_order.
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/branch-sections |
Authorization |
{info} Soporta: Carga dinámica
Mostrar sección de comercios
Devuelve la BranchSection por su id.
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/branch-sections/{branchSectionId} |
Authorization |
Actualizar sección de comercios
Modifica name, type, payload, in_order, enabled y la programación de la
BranchSection.
| Método | URI | Cabeceras |
|---|---|---|
| PATCH | /companies/{companyId}/branch-sections/{branchSectionId} |
Authorization |
{
"name": "string|max:64",
"type": "string|in:custom,categories,featured,nearby",
"enabled": "boolean",
"in_order": "integer",
"payload": "",
"day_time_blocks": [
{
"day_sunday": "nullable|boolean",
"day_monday": "nullable|boolean",
"day_tuesday": "nullable|boolean",
"day_wednesday": "nullable|boolean",
"day_thursday": "nullable|boolean",
"day_friday": "nullable|boolean",
"day_saturday": "nullable|boolean",
"hour_beg": {
"nullable": true,
"string": true,
"regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
},
"hour_end": {
"nullable": true,
"string": true,
"regex": "/^([0-1][0-9]|2[0-3]):[0-5][0-9]$/"
}
}
],
"date_beg": "nullable|date",
"date_end": "nullable|date|after:date_beg"
}
Eliminar sección de comercios
Borra la BranchSection.
| Método | URI | Cabeceras |
|---|---|---|
| DELETE | /companies/{companyId}/branch-sections/{branchSectionId} |
Authorization |