Cancela una orden de trabajo con cancelación estándar, siguiente iteración o reprogramación en una nueva OT.
Mediante esta API se puede cancelar una Órden de Trabajo. Soporta tres tipos de cancelación: estándar, llevar a la siguiente iteración y reprogramar en una nueva OT.
Este servicio web hace parte del add-on APIS AVANZADAS.
:folio = Número de folio o de OT a cancelar.
Parámetros de entrada
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
folio | Texto | Sí* | Código de la OT. |
user_code | Texto | Sí | Código del recurso humano que actualizará la OT en Fracttal. |
work_orders_status_cancel | Texto | Sí | Motivo de cancelación. |
note | Texto | Sí | Nota donde se indica por qué se está cancelando la OT. |
id_work_order | Número | No* | Id de la OT. Este id es opcional; solo es obligatorio cuando no se indica el folio. |
cancellation_type | Número | No (default: 1) | Tipo de cancelación. 1 = Cancelar OT, 2 = Cancelar y llevar a la siguiente iteración, 3 = Cancelar y reprogramar en nueva OT. |
id_reschedule_cause | Número | Condicional† | Id del motivo de reprogramación. Obligatorio cuando cancellation_type es 2 o 3. |
reschedule_note | Texto | No | Nota de reprogramación. Aplica para cancellation_type 2 o 3. |
id_assigned_user | Número | Condicional† | Id del responsable de la nueva OT. Obligatorio cuando cancellation_type es 3. |
tasks | Arreglo | No | Lista de tareas a incluir en la cancelación avanzada. Aplica para cancellation_type 2 o 3. Ver estructura en la sección Tasks. |
utc_min | Número | No | Offset UTC en minutos. |
type_user | Texto | No | Tipo de usuario. Valor por defecto: HUMAN_RESOURCES. |
reschedule_cause | Texto | No | Descripción textual de la causa de reprogramación del catálogo auxiliar. Regla de precedencia cuando se envían reschedule_cause e id_reschedule_cause simultáneamente. |
folioeid_work_orderson mutuamente excluyentes; se debe enviar al menos uno.
† Condicional: requerido según el valor de cancellation_type. Ver tabla de comportamiento.
Tasks
Estructura de cada objeto dentro del arreglo tasks:
| Parámetro | Tipo | Descripción |
|---|---|---|
id_task | Número | Id de la tarea. |
id_item | Número | Id del activo asociado a la tarea. |
date_maintenance | Fecha | Fecha de mantenimiento de la tarea. |
Tipos de cancelación
| cancellation_type | Comportamiento |
|---|---|
1 (default) | Cancela la OT. Las tareas mantienen su programación actual. Comportamiento retrocompatible; equivale a omitir el parámetro. |
2 | Cancela la OT y reprograma las tareas a la siguiente iteración. Las tareas planificadas por activador de fecha avanzan fecha calculada y programada. Las no planificadas mantienen las mismas fechas. Requiere id_reschedule_cause. |
3 | Cancela la OT y crea una nueva OT con la misma tarea. Requiere id_reschedule_cause e id_responsible. |
Parámetros de salida
| Parámetro | Tipo | Descripción |
|---|---|---|
id | Número | id de la tarea en la orden de trabajo |
id_group_task | Número | Id del plan de tareas donde se encuentra la tarea de la cual se obtendrá la información |
id_request | Número | Id de la solicitud, si la tarea proviene de una solicitud |
id_item_log | Número | Id del item log asociado a la tarea |
id_task_log | Número | Id interno del log de tareas |
id_tasks_todo | Número | Id interno de tareas pendientes |
id_task_trigger | Número | Id interno del activador de la tarea |
id_task | Número | Id de la tarea de la cual se obtendrá la información para crear la OT |
id_item | Número | Id del activo |
id_items_availability | Número | Id de registro del fuera de servicio |
items_log_description | Texto | Descripción del activo |
task_description | Texto | Descripción de la tarea |
Ejemplo
Cancelación estándar — cancellation_type omitido (retrocompatible)
cancellation_type omitido (retrocompatible)Petición: (PUT)https://app.fracttal.com/api/work_order_cancel?folio=OT-1896
{
"user_code": "AQOP1521",
"work_orders_status_cancel": "Error en la generacion de la OT",
"note": "OT Duplicada"
}{
"success": true,
"message": "200",
"data": {
"id": 16954494,
"id_group_task": null,
"id_request": null,
"id_item_log": 3696049,
"id_task_log": 5683844,
"id_tasks_todo": 16740135,
"id_task_trigger": null,
"id_task": 5911238,
"id_item": 1,
"id_items_availability": null,
"items_log_description": "{ CORP-256 } EMPRESA SECTOR MANUFACTURA AVDA INTERNACIONAL ",
"task_description": "OT Duplicada"
},
"total": 1
}Cancelar y llevar a la siguiente iteración — cancellation_type: 2
cancellation_type: 2Petición: (PUT)https://app.fracttal.com/api/work_order_cancel?folio=OT-1896
{
"user_code": "AQOP1521",
"work_orders_status_cancel": "Mantenimiento reprogramado",
"note": "Se reprograma a la siguiente iteración según frecuencia",
"cancellation_type": 2,
"id_reschedule_cause": 5,
"reschedule_note": "Equipo no disponible en la fecha programada",
"tasks": [
{
"id_task": 5911238,
"id_item": 1
}
]
}{
"success": true,
"message": "200",
"data": [
{
"id": 16954495,
"id_group_task": null,
"id_request": null,
"id_item_log": 3696050,
"id_task_log": 5683845,
"id_tasks_todo": 16740136,
"id_task_trigger": null,
"id_task": 5911238,
"id_item": 1,
"id_items_availability": null,
"items_log_description": "{ CORP-256 } EMPRESA SECTOR MANUFACTURA AVDA INTERNACIONAL ",
"task_description": "Mantenimiento reprogramado"
}
],
"total": 1
}Cancelar y reprogramar en nueva OT — cancellation_type: 3
cancellation_type: 3Petición: (PUT)https://app.fracttal.com/api/work_order_cancel?folio=OT-1896
{
"user_code": "AQOP1521",
"work_orders_status_cancel": "OT requiere reprogramación",
"note": "Se genera nueva OT con la misma tarea",
"cancellation_type": 3,
"id_reschedule_cause": 5,
"reschedule_note": "Nueva fecha acordada con cliente",
"type_user": "HUMNA_RESOURCES",
"id_assigned_user": 1234,
"tasks": [
{
"id_task": 5911238,
"id_item": 1,
"data_maintenance": "2026-08-10T18:00:00-05:00"
}
]
}{
"success": true,
"message": "200",
"data": {
"work_order_id": 16954496,
"cancellation_type": 3,
"new_work_order": {
"id":123,
"wo_folio":"WO-123",
"id_status_work_order":0
}
},
"total": 1
}