XC Satisfaction Survey#
Endpoints for a simple Effort Score (CES-style) survey: after interacting with the XC flow, a user rates how easy or difficult it was, with optional open-ended feedback.Concepts#
effort_score: an object with value (integer 1–5) and a label. Only value is accepted from the client — label is always derived server-side and cannot be overridden:| value | label |
|---|
| 1 | Muy dificil |
| 2 | Dificil |
| 3 | Ni facil, Ni dificil |
| 4 | Facil |
| 5 | Muy facil |
No dedicated permission on create: submitting a survey only requires being an authenticated business user (xcBusinessEnabled); it is not gated by a permission like the read endpoints are. user_id is taken from the authenticated user, not the request body.
Reading requires xc-satisfaction-survey-read: list, get-by-id, and get-by-user all require this permission.
This is a MongoDB-backed resource (XcSatisfactionSurvey), unlike most other XC resources which are MySQL/TypeORM.
Related: a filtered Excel export of survey responses is available under XC Reports → "Download XC satisfaction survey report", using the same filters as the list endpoint here.
Endpoints#
POST /v1/xc/satisfaction-surveySubmits a survey response for the authenticated user.GET /v1/xc/satisfaction-surveyPaginated list, filterable by user, score, and date range.GET /v1/xc/satisfaction-survey/{id}A single response by its ID.GET /v1/xc/satisfaction-survey/user/{user_id}All responses submitted by one user (no pagination).Source#
Router: routes/v1/xc/satisfaction-surveys.router.js
Controller: controllers/xc/satisfaction-surveys.controller.js
Service: services/xc/satisfaction-surveys.service.js
Model: models/xc-satisfaction-survey.js
Modified at 2026-09-25 18:08:52