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