CreaRack-SL

Endpoint PUT/DELETE /api/correo/peticiones/:id — Actualización de Petición (F2)

Entidadactivecreado Wed Aug 12#workspace#correo#endpoint#crud#d1#rest-api

Descripción

Actualiza o borra una petición individual. Solo el propietario (miembro que la creó) puede modificarla.

Ubicación: functions/api/correo/peticiones/[id].ts (96 LOC).

PUT /api/correo/peticiones/:id

Actualiza estado, respuesta y compose_url (los 3 campos son opcionales; COALESCE en SQL para no sobrescribir).

Body (ejemplo):

{
  "estado": "atendida",
  "respuesta": "Envié el resumen a Juan",
  "compose_url": "https://mail.zoho.com/zm/compose?..."
}

Validaciones:

  • estado ∈ {‘pendiente’, ‘atendida’, ‘descartada’}.
  • respuesta ≤ 4000 chars.
  • compose_url debe apuntar a mail.zoho.* (validación regex).
  • Solo propietario (header Bearer o CF Access token matching owner).

Respuesta (200): fila actualizada. Si estado='atendida', se setea atendida_at a NOW.

DELETE /api/correo/peticiones/:id

Borra la petición. Solo propietario.

Respuesta (204): sin contenido.

Lógica

  1. Resuelve miembro (CF Access o Bearer).
  2. Verifica que la petición existe y pertenece al usuario.
  3. Valida body (si existe).
  4. Ejecuta UPDATE/DELETE con COALESCE para valores opcionales.
  5. Devuelve resultado o 403 si no es propietario.

Véase también

  • [[feature—workspace—correo-menu-f0-f1-f2]]
  • [[entity—workspace—endpoint—correo-peticiones]]
  • [[entity—workspace—endpoint—correo-ask]]