Obtener la configuración de necesidades por servicio
Este endpoint devuelve la configuración de necesidades definida para cada producto del servicio indicado en la URL.
GET /api/v1/businesses/{businessId}/services/{serviceId}/needs-config
Si los datos incluidos en la URL son correctos, la respuesta contendrá, para cada producto del servicio que tenga alguna configuración de necesidades, sus temporadas (seasons) y las propuestas activas en ellas.
Ejemplo de respuesta
{
"businessId": "BUSINESSID",
"serviceId": "0001",
"products": [
{
"productId": "0001-GENERAL",
"productName": "GENERAL",
"seasons": [
{
"id": "2026-GEN",
"name": "General",
"fromMonthDay": "01-01",
"toMonthDay": "12-31",
"addressable": true,
"proposals": [
{
"id": "PRT",
"name": "Productivity",
"defaultProposal": true,
"addressable": true,
"steps": [
{
"id": "STP1",
"name": "Productivity",
"order": 4,
"type": "PRODUCTIVITY",
"addressable": true
}
]
},
{
"name": "Dynamic template",
"defaultProposal": false,
"addressable": false,
"steps": [
{
"name": "Dynamic template",
"order": 1,
"type": "DYNAMIC_TEMPLATES",
"addressable": false
},
{
"name": "Dynamic template 2",
"order": 2,
"type": "DYNAMIC_TEMPLATES",
"addressable": false
}
]
},
{
"name": "Hourly budget",
"defaultProposal": false,
"addressable": false,
"steps": [
{
"name": "Recommendation based on hourly budget",
"order": 1,
"type": "BUDGET_HOUR",
"addressable": false
}
]
},
{
"name": "Training",
"defaultProposal": false,
"addressable": false,
"steps": [
{
"name": "Training",
"order": 1,
"type": "PREPARATION",
"addressable": false
},
{
"name": "Productivity",
"order": 2,
"type": "PRODUCTIVITY",
"addressable": false
},
{
"name": "Test template",
"order": 3,
"type": "DYNAMIC_TEMPLATES",
"addressable": false
}
]
}
]
}
]
}
]
}
Detalles
-
businessId: identificador externo del negocio.
-
serviceId: identificador externo del servicio.
-
products: productos del servicio que tienen alguna configuración de necesidades. Para cada producto se incluye la siguiente información:
-
productId: identificador externo del producto o sección.
-
productName: nombre del producto o sección.
-
seasons: temporadas configuradas en el producto. Para cada temporada se incluye la siguiente información:
-
id: identificador externo de la temporada. Puede ser
null, en cuyo caso, la temporada no puede referenciarse a través de la API. -
name: nombre de la temporada.
-
fromMonthDay: inicio de la temporada, en formato
MM-dd. -
toMonthDay: fin de la temporada, en formato
MM-dd. -
year: año al que se restringe la temporada. Puede ser
nullsi aplica a todos los años. -
addressable: indica si esta temporada puede referenciarse a través de la API. Es
falsecuando no tiene identificador externo. -
proposals: propuestas de generador de necesidades activas en la temporada. Para cada propuesta se incluye la siguiente información:
-
id: identificador externo de la propuesta. Puede ser
nullsi no se ha definido en el sistema. -
name: nombre de la propuesta.
-
defaultProposal: indica si esta es la propuesta por defecto.
-
addressable: indica si esta propuesta puede referenciarse a través de la API. Es
falsecuando no tiene identificador externo. -
steps: etapas de la propuesta, ordenadas según se ejecutan. Para cada etapa se incluye la siguiente información:
-
id: identificador externo de la etapa. Puede ser
null, en cuyo caso, la etapa no puede referenciarse a través de la API. -
name: nombre de la etapa.
-
order: posición de la etapa dentro de la propuesta, tal y como está almacenada.
-
type: tipo de la etapa, que determina cómo se configura. Posibles valores son
BRMS,PRODUCTIVITY,ASSISTED_SALE,BUDGET_HOUR,PREPARATION,REST,DYNAMIC_TEMPLATES,ACCUMULATIVE,LOWEST_DEMAND,CHECKOUT_SIMULATION. -
addressable: indica si esta etapa puede modificarse a través de la API. Es
falsecuando no tiene identificador externo o cuando su tipo todavía no está soportado.
-
-
-
-
Como se puede ver en el ejemplo, la respuesta agrupa por producto las temporadas y propuestas de generador de necesidades que tiene configuradas, junto con las etapas de cada propuesta. Solo la propuesta PRT y su etapa STP1 se puede referenciar y modificar por API.
Consideraciones
Si el producto no tiene ninguna propuesta activa asociada a una temporada, la respuesta devolverá "seasons": [].
Si una propuesta no tiene etapas configuradas, la respuesta devolverá "steps": [] para esa propuesta.
El campo addressable será true si el elemento tiene identificador externo y se puede referenciar en la API. En las etapas (steps), además, su tipo de generación debe ser soportado en escritura.
Códigos de error
Este endpoint no devuelve códigos de error propios que no se encuentren descritos en errores comunes.
Enlaces de interés
¿Qué son las necesidades?
¿Qué es un generador de necesidades?