Encuestas
Endpoints para consulta de encuestas disponibles.
Listar Encuestas
GET /api/searches
Retorna la lista de encuestas vinculadas al token del usuario.
Casos de uso:
- Obtener IDs de encuestas para integración
- Popular selectores de encuesta
- Validar encuestas disponibles para disparo
Ejemplo de Solicitud
bash
curl -X GET "https://api-b2s.experienciab2s.com/api/searches" \
-H "Authorization: Bearer SU_TOKEN"Respuesta Exitosa (200)
json
[
{
"id": "103a525c-0ce3-4182-a504-aad595425233",
"name": "Encuesta de Satisfacción - Restaurante",
"company_id": "603a525c-0ce3-4182-a504-aad595425233"
},
{
"id": "203a525c-0ce3-4182-a504-aad595425233",
"name": "Encuesta de Satisfacción - Delivery",
"company_id": "503a525c-0ce3-4182-a504-aad595425233"
}
]Estructura de la Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
id | string | ID único de la encuesta (UUID) |
name | string | Nombre de la encuesta |
company_id | string | ID de la empresa vinculada (UUID) |
Códigos de Respuesta
| Código | Descripción |
|---|---|
| 200 | Encuestas encontradas |
| 401 | Token ausente o inválido |
| 403 | Token inválido o usuario no autorizado |
| 404 | Token de integración no encontrado |
Obtener Encuesta con Preguntas
GET /api/searches/:id
Retorna los detalles completos de una encuesta específica, incluyendo todas las preguntas configuradas, opciones de respuesta y traducciones disponibles.
Casos de uso:
- Renderizar formulario de encuesta personalizado
- Obtener estructura completa de preguntas para integración
- Cargar traducciones de las preguntas para sistemas multilingües
- Validar tipos y formatos de preguntas antes del envío
Parámetros de URL
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
id | string | Sí | ID único de la encuesta (UUID) |
Ejemplo de Solicitud
bash
curl -X GET "https://api-b2s.experienciab2s.com/api/searches/103a525c-0ce3-4182-a504-aad595425233" \
-H "Authorization: Bearer SU_TOKEN"Respuesta Exitosa (200)
json
{
"nps": "¿Cómo califica su experiencia?",
"discursive_question": "Deje su comentario",
"questions": [
{
"id": "q1-uuid-example",
"name": "¿Cómo califica la atención?",
"required": true,
"others": false,
"unknown": false,
"description": "Evalúe la calidad de la atención recibida",
"type": "Rating",
"format": "default",
"detractor_replica": "Lamentamos su experiencia",
"neutral_replica": "Gracias por su feedback",
"promoter_replica": "¡Estamos felices con su calificación!",
"options": [
{
"id": "opt1-uuid",
"name": "Excelente",
"optionTranslations": [
{
"id": "trans1-uuid",
"option_id": "opt1-uuid",
"language_code": "en",
"name": "Excellent"
},
{
"id": "trans2-uuid",
"option_id": "opt1-uuid",
"language_code": "pt",
"name": "Excelente"
}
]
}
],
"translations": [
{
"id": "qtrans1-uuid",
"question_id": "q1-uuid-example",
"language_code": "en",
"name": "How do you rate the service?",
"description": "Rate the quality of the service received",
"promoter_replica": "We are happy with your rating!",
"neutral_replica": "Thank you for your feedback",
"detractor_replica": "We are sorry for your experience"
}
]
},
{
"id": "q2-uuid-example",
"name": "Seleccione el empleado",
"required": true,
"others": false,
"unknown": true,
"description": "Elija el empleado que lo atendió",
"type": "Atendente",
"format": "select",
"options": [
{
"id": "att1-uuid",
"name": "Juan García",
"optionTranslations": []
},
{
"id": "att2-uuid",
"name": "María López",
"optionTranslations": []
}
],
"translations": []
}
]
}Estructura de la Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
nps | string | Texto de la pregunta NPS principal |
discursive_question | string | Texto de la pregunta discursiva/comentario |
questions | array | Lista de preguntas de la encuesta |
Estructura de Question
| Campo | Tipo | Descripción |
|---|---|---|
id | string | ID único de la pregunta (UUID) |
name | string | Texto/título de la pregunta |
required | boolean | Si la pregunta es obligatoria |
others | boolean | Si permite opción "Otros" |
unknown | boolean | Si permite opción "No sé/Desconocido" |
description | string | Descripción auxiliar de la pregunta |
type | string | Tipo de pregunta (ver tabla abajo) |
format | string | Formato de visualización (ver tabla abajo) |
detractor_replica | string | Pregunta de seguimiento para notas bajas - opcional |
neutral_replica | string | Pregunta de seguimiento para notas medias - opcional |
promoter_replica | string | Pregunta de seguimiento para notas altas - opcional |
options | array | Opciones de respuesta disponibles |
translations | array | Traducciones de la pregunta en otros idiomas |
Tipos de Pregunta (type)
| Tipo | Descripción |
|---|---|
Atendente | Selección de empleado/funcionario |
Caixa de seleção | Opción múltiple con checkboxes |
CSAT | Customer Satisfaction Score (1-5) |
Data | Campo de selección de fecha |
Emoticon | Evaluación por emoticones/emojis |
Like/Dislike | Evaluación binaria (me gusta/no me gusta) |
Multipla escolha | Selección entre múltiples opciones |
NPS | Net Promoter Score (0-10) |
Rating | Evaluación por estrellas/puntuación |
Resposta curta | Campo de texto libre |
Formatos de Visualización (format)
| Formato | Descripción | Disponible en |
|---|---|---|
default | Visualización estándar (botones) | Todos los tipos |
select | Menú desplegable (dropdown) | Atendente, Multipla escolha |
checkbox | Casilla de selección múltiple | Atendente |
Estructura de Option
| Campo | Tipo | Descripción |
|---|---|---|
id | string | ID único de la opción (UUID) |
name | string | Texto de la opción |
optionTranslations | array | Traducciones de la opción en otros idiomas |
Estructura de OptionTranslation
| Campo | Tipo | Descripción |
|---|---|---|
id | string | ID único de la traducción (UUID) |
option_id | string | ID de la opción relacionada |
language_code | string | Código del idioma (ej: "en", "pt") |
name | string | Texto traducido de la opción |
Estructura de QuestionTranslation
| Campo | Tipo | Descripción |
|---|---|---|
id | string | ID único de la traducción (UUID) |
question_id | string | ID de la pregunta relacionada |
language_code | string | Código del idioma (ej: "en", "pt") |
name | string | Texto traducido de la pregunta |
description | string | Descripción traducida (opcional) |
promoter_replica | string | Pregunta de seguimiento (notas altas) traducida (opcional) |
neutral_replica | string | Pregunta de seguimiento (notas medias) traducida (opcional) |
detractor_replica | string | Pregunta de seguimiento (notas bajas) traducida (opcional) |
criteria | string | Criterio traducido (opcional) |
Códigos de Respuesta
| Código | Descripción |
|---|---|
| 200 | Encuesta encontrada exitosamente |
| 401 | Token ausente o inválido |
| 403 | Token inválido o usuario no autorizado |
| 404 | Encuesta no encontrada |
