logoDocumentación
Buscar

Enviar mensaje

Se pueden enviar mensajes a conversaciones específicas mediante la API.

Método de solicitud

POST

URL de la solicitud

https://livedesk-api.engagelab.com/api/v2/accounts/conversations/:conversation_id/messages

Autenticación

Consúltese la descripción de la autenticación en Visión general de la API para obtener más información.

Solicitud de texto sin formato

Ejemplo de solicitud

curl -X POST 'https://livedesk-api.engagelab.com/api/v2/accounts/conversations/:conversation_id/messages' \ -H 'Content-Type: application/json' \ -H 'Authorization: Basic base64(api_key:api_secret)' \ -d '{ "content": "Agent sending message, is it normal?", "private": false, "content_attributes": { "in_reply_to": 29 } }'
              
              curl -X POST 'https://livedesk-api.engagelab.com/api/v2/accounts/conversations/:conversation_id/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Basic base64(api_key:api_secret)' \
-d '{
    "content": "Agent sending message, is it normal?",  
    "private": false,
    "content_attributes": {
        "in_reply_to": 29   
    }
}'

            
Este bloque de código se muestra en una ventana flotante

Encabezados de la solicitud

Campo Tipo Descripción
Authorization string Usar Authorization: Basic base64(API Key:API Secret) para la autenticación. Acceda a la página de claves de API (API Key) para obtener la API Key y el secreto de API (API Secret), y únalas con dos puntos antes de la codificación Base64.
Content-Type application/json Tipo de datos; usar application/json para mensajes de texto sin formato.

Parámetros de ruta

Campo Tipo Obligatorio Descripción
conversation_id string ID de la conversación.

Parámetros del cuerpo de la solicitud

Campo Tipo Obligatorio Descripción
content string Contenido del mensaje.
private boolean No Indica si es un mensaje privado; el valor predeterminado es false.
content_attributes object No Atributos de contenido; por ejemplo, al responder a un mensaje, se puede especificar el ID del mensaje mediante el campo in_reply_to.

Ejemplo de respuesta de texto

Respuesta correcta

{ "id": 3030, "content": "Agent sending message, is it normal?", "inbox_id": 79, "conversation_id": 141, "message_type": 1, "content_type": "text", "status": "sent", "content_attributes": {}, "created_at": 1762331029, "private": false, "source_id": null, "sorting_id": 4, "sender": { "id": 3, "name": "TEST", "available_name": "TEST", "avatar_url": "", "type": "user", "availability_status": "offline", "thumbnail": "" } }
              
              {
    "id": 3030,
    "content": "Agent sending message, is it normal?",
    "inbox_id": 79,
    "conversation_id": 141,
    "message_type": 1,
    "content_type": "text",
    "status": "sent",
    "content_attributes": {},
    "created_at": 1762331029,
    "private": false,
    "source_id": null,
    "sorting_id": 4,
    "sender": {
        "id": 3,
        "name": "TEST",
        "available_name": "TEST",
        "avatar_url": "",
        "type": "user",
        "availability_status": "offline",
        "thumbnail": ""
    }
}

            
Este bloque de código se muestra en una ventana flotante

Parámetros de la respuesta

Campo Tipo Descripción
id Int ID del mensaje.
content String Contenido del mensaje.
inbox_id Int ID de la bandeja de entrada.
conversation_id Int ID de la conversación.
message_type Int Tipo de mensaje.
content_type String Tipo de contenido.
status String Estado del mensaje, como sent, delivered, etc.
content_attributes Object Atributos de contenido.
created_at Int Marca de tiempo de creación del mensaje.
private Boolean Si se trata de un mensaje privado.
source_id Int ID de origen.
sorting_id Int ID de ordenación.
sender Object Información del remitente.
sender.id Int ID del remitente.
sender.name String Nombre del remitente.
sender.available_name String Nombre para mostrar del remitente.
sender.avatar_url String URL del avatar del remitente.
sender.type String Tipo de remitente (p. ej., user).
sender.availability_status String Estado en línea del remitente (p. ej., offline).
sender.thumbnail String Miniatura del remitente.

Solicitud de imagen/audio/archivo

Ejemplo de solicitud

curl -X POST "https://livedesk.engagelab.com/api/v2/accounts/conversations/:conversation_id/messages" \ -H "Authorization: Basic base64(api_key:api_secret)" \ -F "attachments[]=@/path/to/your/file.jpg" \ -F "content=Detailed image as follows"
              
              curl -X POST "https://livedesk.engagelab.com/api/v2/accounts/conversations/:conversation_id/messages" \
  -H "Authorization: Basic base64(api_key:api_secret)" \
  -F "attachments[]=@/path/to/your/file.jpg" \
  -F "content=Detailed image as follows" 

            
Este bloque de código se muestra en una ventana flotante

Parámetros de ruta

Campo Tipo Obligatorio Descripción
conversation_id string ID de la conversación.

Ejemplo de respuesta de imagen/audio/archivo

Respuesta correcta

{ "id": 3031, "content": "Detailed image as follows", "inbox_id": 79, "conversation_id": 141, "message_type": 1, "content_type": "text", "status": "sent", "content_attributes": {}, "created_at": 1762331762, "private": false, "source_id": null, "sorting_id": 5, "sender": { "id": 3, "name": "Wenjie Yu", "available_name": "Wenjie Yu", "avatar_url": "", "type": "user", "availability_status": "offline", "thumbnail": "" }, "attachments": [ { "id": 199, "message_id": 3031, "file_type": "image", "account_id": 14, "extension": null, "data_url": "https://livedesk.engagelab.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBamNUIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--727ba7469d64f90790d242c743f254b5c9013fe1/android-icon-48x48.png", "thumb_url": "https://livedesk.engagelab.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBamNUIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--727ba7469d64f90790f242c743f254b5c9013fe1/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RTNKbGMybDZaVjkwYjE5bWFXeHNXd2RwQWZvdyIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--63c890cbf173eb3dc92a8786fcc3e120c329852d/android-icon-48x48.png", "file_size": 589136, "width": null, "height": null } ] }
              
              {
    "id": 3031,
    "content": "Detailed image as follows",
    "inbox_id": 79,
    "conversation_id": 141,
    "message_type": 1,
    "content_type": "text",
    "status": "sent",
    "content_attributes": {},
    "created_at": 1762331762,
    "private": false,
    "source_id": null,
    "sorting_id": 5,
    "sender": {
        "id": 3,
        "name": "Wenjie Yu",
        "available_name": "Wenjie Yu",
        "avatar_url": "",
        "type": "user",
        "availability_status": "offline",
        "thumbnail": ""
    },
    "attachments": [
        {
            "id": 199,
            "message_id": 3031,
            "file_type": "image",
            "account_id": 14,
            "extension": null,
            "data_url": "https://livedesk.engagelab.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBamNUIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--727ba7469d64f90790d242c743f254b5c9013fe1/android-icon-48x48.png",
            "thumb_url": "https://livedesk.engagelab.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBamNUIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--727ba7469d64f90790f242c743f254b5c9013fe1/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJY0c1bkJqb0dSVlE2RTNKbGMybDZaVjkwYjE5bWFXeHNXd2RwQWZvdyIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--63c890cbf173eb3dc92a8786fcc3e120c329852d/android-icon-48x48.png",
            "file_size": 589136,
            "width": null,
            "height": null
        }
    ]
}

            
Este bloque de código se muestra en una ventana flotante

Parámetros de la respuesta

Campo Tipo Descripción
id Int ID del mensaje.
content String Contenido del mensaje.
inbox_id Int ID de la bandeja de entrada.
conversation_id Int ID de la conversación.
message_type Int Tipo de mensaje.
content_type String Tipo de contenido.
status String Estado del mensaje, como sent, delivered, etc.
content_attributes Object Atributos de contenido.
created_at Int Marca de tiempo de creación del mensaje.
private Boolean Si se trata de un mensaje privado.
source_id Int ID de origen.
sorting_id Int ID de ordenación.
sender Object Información del remitente.
sender.id Int ID del remitente.
sender.name String Nombre del remitente.
sender.available_name String Nombre para mostrar del remitente.
sender.avatar_url String URL del avatar del remitente.
sender.type String Tipo de remitente (p. ej., user).
sender.availability_status String Estado en línea del remitente (p. ej., offline).
sender.thumbnail String Miniatura del remitente.
attachments Array Lista de información de los archivos adjuntos.
attachments[].id Int ID del archivo adjunto.
attachments[].message_id Int ID del mensaje al que pertenece.
attachments[].file_type String Tipo de archivo (p. ej., image).
attachments[].account_id Int ID de la cuenta.
attachments[].extension String Extensión del archivo.
attachments[].data_url String URL del archivo.
attachments[].thumb_url String URL de la miniatura (solo para el tipo image).
attachments[].file_size Int Tamaño del archivo (bytes).
attachments[].width Int Ancho del archivo (solo para el tipo image).
attachments[].height Int Alto del archivo (solo para el tipo image).
icon
Contacto