Calificar el pedido o un plato
POST /api/site-reviews/create-review
Descripción
Guarda la calificación de un cliente sobre la atención de su visita o sobre un plato que pidió.
Detalles
Registra de 1 a 5 estrellas sobre la atención del pedido o sobre uno de los platos que el cliente pidió, con un comentario opcional. Solo se puede calificar después de que el restaurante acepta el pedido, y un plato solo si la cocina lo recibió: por eso la calificación queda marcada como compra verificada. Quien califica se reconoce por su dispositivo o, si inició sesión, por su cuenta, y deja una sola calificación por contenido: si vuelve a calificar, reemplaza la anterior. Con sesión iniciada, sus calificaciones lo acompañan aunque cambie de dispositivo. Devuelve la calificación guardada y el nuevo promedio del plato.
Permisos requeridos
public
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| slug | string | Sí |
min:1
max:63
|
| orderUuid | string | Sí |
min:36
max:36
|
| referenceType | string | Sí |
max:20
|
| productUuid | string | No |
min:36
max:36
|
| sessionUuid | string | Sí |
min:36
max:36
|
| dinerToken | string | No |
min:1
|
| ratingValue | int | Sí |
min_value:1
max_value:5
|
| authorName | string | No |
max:60
|
| body | string | No |
max:500
|
Ejemplo de request
curl -X POST https://restofy.pro/api/site-reviews/create-review \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-H "X-Tenant-Key: <tenantKey>" \
-d '{
"slug": "string",
"orderUuid": "string",
"referenceType": "string",
"sessionUuid": "string",
"ratingValue": 1
}'
Los valores son demo: reemplázalos por datos reales del negocio.
Ejemplo de respuesta
Actualizado: 2026-09-08T16:35:34Z
HTTP 200
Request
{
"slug": "restofy_test_listorderreviews_9493_1788885197_tenant",
"orderUuid": "74e8fe9a-5e62-4a99-80b7-8cb16c237eec",
"referenceType": "order",
"productUuid": null,
"sessionUuid": "ca7f3ac1-729a-4d03-82ef-35b9274eba32",
"ratingValue": 5,
"body": "Nos atendieron muy bien."
}
Response
{
"success": true,
"message": "Operación realizada correctamente",
"data": {
"review": {
"commentUuid": "f81ea0ee-f604-41d4-a4ac-0aac405aceab",
"ratingValue": 5,
"authorName": "Anónimo",
"body": "Nos atendieron muy bien.",
"isVerified": true
},
"ratingAverage": null,
"reviewsCount": 0
}
}