Saltar a contenido

Ticket

Creación de ticket

Para realizar una integración que permita crear un ticket, debe realizar una petición con la siguiente estructura:

1
2
3
POST https://queue-api.obmessage.ai/api/v1/tickets
X-Api-Key: {{API_KEY}}
Content-Type: application/json
1
2
3
4
5
6
7
8
{
    "topic_id": string,
    "data": {
        "id": int,
        "name": string,
        "lastname": string
    }
}

Ejemplo

1
2
3
4
5
6
7
8
{
    "topic_id": "519ac790-85cd-411e-b744-d21d83f21178",
    "data": {
        "id": 1,
        "name": "Juan",
        "lastname": "Pérez"
    }
}

Resultado al crear el ticket

Cuando el resultado es 200 OK, se obtiene una respuesta con la siguiente estructura:

1
2
3
4
5
6
7
8
9
{
    "id": uuid,
    "topic_id": uuid,
    "status_id": int,
    "ticket_number": string,
    "sla_minutes": int,
    "priority": int,
    "created_at": utc-date
}

Si el tópico utilizado tiene la opción with_turn con el valor true, al momento de crear el ticket también se generará un turno. En ese caso, el resultado tendrá la siguiente estructura:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
{
    "id": uuid,
    "topic_id": uuid,
    "status_id": int,
    "ticket_number": string,
    "turn": {
        "id": int,
        "created_at": utc-date,
        "attention_date": date,
        "start_hour": string(time: hh:mm:ss),
        "end_hour": string(time: hh:mm:ss),
        "code": string
    },
    "sla_minutes": 60,
    "priority": 1,
    "created_at": "2024-07-29T13:56:20.58197239Z"
}

Descripción de los campos

Campo Tipo Descripción Requerido / Valor por defecto
topic_id uuid ID del tópico desde el cual se creará el ticket. ✔
status_id int Estado padre del ticket. Se usa el status_default del tópico. Si el tópico no tiene un estado predeterminado, este campo es requerido.
customer_status_id int Estado del cliente del ticket. Se usa el status_default del tópico. Si el tópico no tiene un estado predeterminado, el valor será null.
assigned_user_id uuid ID del usuario al cual se asignará el ticket. ✖
sla_minutes int Valor SLA del ticket. Si no se envía, se usa el sla_minutes del tópico.
priority int Prioridad del ticket. Rango permitido: [1-10]. El valor por defecto es 1. Si no se envía, se usa el default_priority del tópico.
comment string Comentarios asociados al ticket. ✖
attachments []JSON Archivos adjuntos al ticket. Debe enviarse el ID del archivo registrado en el fileserver. ✖
data JSON Conjunto de datos asociados al ticket. Estos datos se visualizan de acuerdo con la plantilla configurada. ✔
turn_id int ID del turno que se usará para copiar el code cuando se genere el turno del ticket. ✖
attention_date string Fecha de atención en la que se atenderá el turno, en formato yyyy-mm-dd. datetime.NOW
bot_script_id_success int Integración con Aless: ID del script al cual debe saltar el bot si el ticket se crea correctamente. ✖
bot_script_id_failed int Integración con Aless: ID del script al cual debe saltar el bot si ocurre algún error al crear el ticket. ✖

Errores al crear el ticket

Si el tópico utilizado no está dentro del horario configurado, se retorna el siguiente error:

1
2
3
4
{
    "code": "error.invalid_reference",
    "message": "error creating ticket: 'no schedules or turn'"
}

Pruébelo en Postman