Beam Help
Solicitar ayuda

How-to · Zoho DESK

Cómo eliminar una entrada de tiempo de un ticket en Zoho Desk

Elimina entradas de tiempo de tickets mediante la API con los IDs del ticket y de la entrada.

La eliminación de una entrada de tiempo de un ticket en Zoho Desk se realiza mediante una única solicitud DELETE autenticada al endpoint de entradas de tiempo, pasando tanto el ID del ticket como el ID de la entrada de tiempo como parámetros de ruta.


Por qué es importante


Las entradas de tiempo registradas en los tickets de soporte impulsan la facturación, los informes de SLA y las métricas de productividad de los agentes. Si una entrada se registró por error — ticket incorrecto, envío duplicado o duración incorrecta — necesitas una forma limpia de eliminarla sin afectar otros registros. Esto también es relevante cuando se automatiza la limpieza del seguimiento de tiempo mediante scripts o integraciones.


> Nota: Beam Help es soporte experto independiente para Zoho — no es el soporte oficial de Zoho.


---


Paso a paso


Paso 1. Confirma tus permisos OAuth.

Antes de realizar cualquier llamada a la API, verifica que el token de tu aplicación conectada incluya el permiso Desk.tickets.ALL o Desk.tickets.DELETE. Sin el permiso correcto, la solicitud será rechazada con un error de autorización. [2]


Paso 2. Identifica los dos IDs requeridos.

Necesitas exactamente dos valores:

  • ticketId — el identificador único del ticket al que pertenece la entrada de tiempo.
  • timeEntryId — el identificador único de la entrada de tiempo específica que deseas eliminar.

Ambos son cadenas de texto. Puedes obtenerlos mediante una llamada GET previa a la lista de entradas de tiempo del ticket, o desde la URL de la interfaz de Zoho Desk. [1]


Paso 3. Construye la solicitud DELETE.

Envía un DELETE HTTP al siguiente endpoint, sustituyendo tus IDs reales:


DELETE /api/v1/tickets/{ticketId}/timeEntries/{timeEntryId}

Incluye el encabezado Authorization: Bearer <access_token> y el encabezado orgId correspondiente requerido por la API de Zoho Desk. [1]


Paso 4. Ejecuta la llamada en Python (opcional).

Si estás trabajando con una integración en Python, la llamada sigue este patrón:


def delete_ticket_time_entry(self, ticketId: str, timeEntryId: str, p: dict = None):
    return self.c.request(
        "DELETE",
        f"/api/v1/tickets/{ticketId}/timeEntries/{timeEntryId}",
        p,
        None
    )

Pasa ticketId y timeEntryId como argumentos posicionales; el parámetro opcional p puede contener cualquier parámetro de consulta adicional que requiera tu entorno. [1]


Paso 5. Gestiona la respuesta.

Una eliminación exitosa devuelve un HTTP 204 No Content o un estado de éxito similar con un cuerpo vacío. Si recibes una respuesta 4xx, revisa tus IDs y permisos OAuth antes de volver a intentarlo. [1]


---


Errores comunes


  • Tipo de entidad incorrecto. Las entradas de tiempo también pueden estar asociadas a contactos (/api/v1/contacts/{contactId}/timeEntries/{timeEntryId}) o cuentas (/api/v1/accounts/{accountId}/timeEntries/{timeEntryId}). Asegúrate de estar apuntando al endpoint de tickets y no a uno de estos endpoints similares, o recibirás un error de "no encontrado" aunque la entrada exista. [4][8]
  • Permiso OAuth insuficiente. El permiso Desk.tickets.READ por sí solo no es suficiente — debes tener un permiso que permita la eliminación, como Desk.tickets.DELETE o Desk.tickets.ALL. [2]
  • IDs intercambiados. Colocar el timeEntryId en la posición del ticketId (o viceversa) resultará en un error de recurso no encontrado. Verifica el orden: el ID del ticket va primero en la ruta, el ID de la entrada de tiempo va segundo. [1]

---


Qué verificar


  • Cobertura de permisos: Confirma que tu token OAuth fue emitido con Desk.tickets.DELETE o Desk.tickets.ALL antes de realizar la llamada. [2]
  • Ruta del endpoint correcta: Verifica que la URL sea /api/v1/tickets/{ticketId}/timeEntries/{timeEntryId} — no la variante de contactos o cuentas. [1][4][8]
  • Código de respuesta exitoso: Un 204 (o estado de éxito equivalente) confirma la eliminación; cualquier código en el rango 4xx significa que la entrada no fue eliminada y requiere investigación. [1]

Sources cited

  1. [1] DELETE /api/v1/tickets/{ticketId}/timeEntries/{timeEntryId}
  2. [2] config.py
  3. [3] server.py: build_zoho_links
  4. [4] DELETE /api/v1/contacts/{contactId}/timeEntries/{timeEntryId}
  5. [5] DELETE /api/v1/tickets/{ticketId}/tags/{tagId}
  6. [6] DELETE /api/v1/ticketTemplates/{templateId}
  7. [7] zoho_oauth.py
  8. [8] DELETE /api/v1/accounts/{accountId}/timeEntries/{timeEntryId}
Eliminar Entrada de Tiempo en Ticket | Beam Help — Beam Help