API de envío de envío de mensajes por Whatsapp

Para el envío de mensajes y archivos por Whatsapp se requieren de 4 APIs de Wntook.

  1. La API de perfil (Profile) para obtener la información de la cuenta del usuario de Wintook
  2. La API de búsqueda de contactos (Search Contact) para obtener los datos del usuario
  3. La API de conversasiones del contacto (Contact Conversations) para obtener las conversasiones del contacto
  4. La API de creación de mensajes (Create New Message)

Profile (https://app.wintook.com/api/v1/profile) utiliza el método GET

Obtener perfil de usuario

Obtener los detalles del perfil de usuario

AUTORIZACIONES:

userApiKey

Clave API : userApiKey

Este token se puede obtener visitando la página de Wintook en la parte inferior de los ajustes del perfil o a través de la consola de Rails. Proporciona acceso a puntos finales en función de los niveles de permisos de los usuarios. Este token puede ser guardado por un sistema externo cuando el usuario se crea a través de la API, para realizar actividades en nombre del usuario.

Nombre del parámetro de encabezado : api_access_token

Código de ejemplo en NodeJs-Axios

const axios = require('axios');

let config = {
  method: 'get',
  maxBodyLength: Infinity,
  url: 'https://app.wintook.com/api/v1/profile',
  headers: { 
    'api_access_token': 'AquiVaElUserApiKey'
  }
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Respuestas

200 Success

Esquema de respuestas: application/json; charset=utf-8
id number
uid string
name string
available_name string
display_name string
email string
account_id number
role string
Enum: “agent” “administrator”
confirmed boolean
custom_attributes object
Disponible para usuarios creados a través de las API de la plataforma y con atributos personalizados asociados.
accounts Array of objects (account)
Ejemplo de respuesta 200:

{
    "access_token": "UserApiKey",
    "account_id": 1480,
    "available_name": "Leobardo Molina",
    "avatar_url": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibm9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg",
    "confirmed": true,
    "display_name": "",
    "message_signature": null,
    "email": "[email protected]",
    "id": 1750,
    "inviter_id": null,
    "name": "Leobardo Molina",
    "provider": "email",
    "pubsub_token": "EZqVLhFWtBdxcuLQHp",
    "role": "administrator",
    "ui_settings": {
        "notification_tone": "ding",
        "editor_message_key": "cmd_enter",
        "enable_audio_alerts": "all",
        "is_conv_actions_open": true,
        "is_ct_prev_conv_open": true,
        "is_ct_custom_attr_open": true,
        "show_secondary_sidebar": true,
        "is_contact_sidebar_open": true,
        "last_active_locale_code": "en",
        "last_active_portal_slug": "horarios-de-atencion",
        "conversation_display_type": "condensed",
        "is_conv_participants_open": true,
        "is_contact_attributes_open": true,
        "contact_sidebar_items_order": [
            {
                "name": "contact_attributes"
            },
            {
                "name": "contact_labels"
            },
            {
                "name": "previous_conversation"
            }
        ],
        "previously_used_sidebar_view": true,
        "show_help_center_secondary_sidebar": true,
        "previously_used_conversation_display_type": "condensed",
        "alert_if_unread_assigned_conversation_exist": false
    },
    "uid": "[email protected]",
    "type": "",
    "accounts": [
        {
            "id": 1480,
            "name": "CRMZeus",
            "status": "active",
            "active_at": "2023-08-04T00:10:56.082Z",
            "role": "administrator",
            "availability": "online",
            "availability_status": "online",
            "auto_offline": true
        }
    ]
}

401 Unauthorized

Search Contact (https://app.wintook.com/api/v1/accounts/{account_id}/contacts/search) utiliza el método GET

Buscar contactos

Busque los contactos resueltos usando una clave de búsqueda, actualmente admite la búsqueda de correo electrónico (tamaño de página = 15). Los contactos resueltos son aquellos que tienen un valor de identificador, correo electrónico o número de teléfono.

AUTORIZACIONES:

UserApiKey

Clave API : UserApiKey

Este token se puede obtener visitando la página de Wintook en la parte inferior de los ajustes del perfil o a través de la consola de Rails. Proporciona acceso a puntos finales en función de los niveles de permisos de los usuarios. Este token puede ser guardado por un sistema externo cuando el usuario se crea a través de la API, para realizar actividades en nombre del usuario.

Nombre del parámetro de encabezado : api_access_token

PARÁMETROS DE RUTA
account_id
requerido
integer
El ID numérico de la cuenta.
PARÁMETROS DE CONSULTA
q string
Buscar usando name , identifier , email , phone_number
sort string
Enumeración : “name” “email” “phone_number” “last_activity_at” “-name” “-email” “-phone_number” “-last_activity_at”
El atributo por el cual se debe ordenar la lista
page integer
Predeterminado: 1
El parámetro de la página
Código de ejemplo
const axios = require('axios');

let config = {
  method: 'get',
  maxBodyLength: Infinity,
  url: 'https://app.wintook.com/api/v1/accounts/{account_id}/contacts/search?include_contact_inboxes=true&q={phone_number}',
  headers: { 
    'api_access_token': 'AquiVaElUserApiKey'
  }
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Respuestas

Ejemplo de respuesta 200

{
    "meta": {
        "count": 1,
        "current_page": 1
    },
    "payload": [
        {
            "additional_attributes": {
                "company_name": "Organizacion de Prueba"
            },
            "availability_status": "offline",
            "email": "[email protected]",
            "id": 690,
            "name": "Liverio 299 2444412344444",
            "phone_number": "+5213123456299",
            "identifier": null,
            "thumbnail": "",
            "custom_attributes": {
                "dataSync": {
                    "idOrg": 15032,
                    "idContact": 78529
                }
            },
            "conversations_count": 1,
            "last_activity_at": 1691088855,
            "created_at": 1690491556,
            "contact_inboxes": [
                {
                    "source_id": "whatsapp:+5213123456299",
                    "inbox": {
                        "id": 286,
                        "avatar_url": "",
                        "channel_id": 26,
                        "name": "Whatsapp",
                        "channel_type": "Channel::TwilioSms",
                        "greeting_enabled": true,
                        "greeting_message": "este es el mensaje saludo a nueva conversacion",
                        "working_hours_enabled": false,
                        "enable_email_collect": true,
                        "csat_survey_enabled": true,
                        "enable_auto_assignment": true,
                        "auto_assignment_config": {},
                        "out_of_office_message": null,
                        "working_hours": [
                            {
                                "day_of_week": 0,
                                "closed_all_day": true,
                                "open_hour": null,
                                "open_minutes": null,
                                "close_hour": null,
                                "close_minutes": null,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 1,
                                "closed_all_day": false,
                                "open_hour": 9,
                                "open_minutes": 0,
                                "close_hour": 17,
                                "close_minutes": 0,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 2,
                                "closed_all_day": false,
                                "open_hour": 9,
                                "open_minutes": 0,
                                "close_hour": 17,
                                "close_minutes": 0,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 3,
                                "closed_all_day": false,
                                "open_hour": 9,
                                "open_minutes": 0,
                                "close_hour": 17,
                                "close_minutes": 0,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 4,
                                "closed_all_day": false,
                                "open_hour": 9,
                                "open_minutes": 0,
                                "close_hour": 17,
                                "close_minutes": 0,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 5,
                                "closed_all_day": false,
                                "open_hour": 9,
                                "open_minutes": 0,
                                "close_hour": 17,
                                "close_minutes": 0,
                                "open_all_day": false
                            },
                            {
                                "day_of_week": 6,
                                "closed_all_day": true,
                                "open_hour": null,
                                "open_minutes": null,
                                "close_hour": null,
                                "close_minutes": null,
                                "open_all_day": false
                            }
                        ],
                        "timezone": "UTC",
                        "callback_webhook_url": "https://app.wintook.com/twilio/callback",
                        "allow_messages_after_resolved": true,
                        "lock_to_single_conversation": true,
                        "widget_color": null,
                        "website_url": null,
                        "hmac_mandatory": null,
                        "welcome_title": null,
                        "welcome_tagline": null,
                        "web_widget_script": null,
                        "website_token": null,
                        "selected_feature_flags": null,
                        "reply_time": null,
                        "messaging_service_sid": null,
                        "phone_number": "whatsapp:+14155345586",
                        "medium": "whatsapp",
                        "provider": null
                    }
                }
            ]
        }
    ]
}

Contact Conversations (https://app.wintook.com/api/v1/accounts/{account_id}/contacts/{id}/conversations) usa el método GET

Obtener conversaciones asociadas a ese contacto

AUTORIZACIONES:

userApiKey

Clave API : userApiKey

Este token se puede obtener visitando la página de Wintook en la parte inferior de los ajustes del perfil o a través de la consola de Rails. Proporciona acceso a puntos finales en función de los niveles de permisos de los usuarios. Este token puede ser guardado por un sistema externo cuando el usuario se crea a través de la API, para realizar actividades en nombre del usuario.

Nombre del parámetro de encabezado : api_access_token

PARÁMETROS DE RUTA
ID de la cuenta
requerido
integer
El ID numérico de la cuenta.
id
requerido
number
id del contacto
Código de ejemplo
const axios = require('axios');

let config = {
  method: 'get',
  maxBodyLength: Infinity,
  url: 'https://app.wintook.com/api/v1/accounts/18/contacts/6043/conversations',
  headers: { 
    'api_access_token': 'Goa2BznzJryTcThvPv8dN'
  }
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Respuestas

200 Succes

ESQUEMA DE RESPUESTA: aplicación/json; conjunto de caracteres = utf-8

Array [

id number
ID de la conversación
messages Array de objetos ( mensaje )
account_id number
ID de la cuenta
inbox_id number
ID de la bandeja de entrada
status string
Enumeración : “abierto” “resuelto” “pendiente”
El estatus de la conversación.
timestamp string
La hora a la que se creó la conversación.
contact_last_seen_at string
agent_last_seen_at string
unread_count number
El número de mensajes no leídos
additional_attributes object
El objeto que contiene atributos adicionales relacionados con la conversación.
custom_attributes object
El objeto para guardar atributos personalizados para conversación, acepta clave y valor de atributos personalizados
meta object
display_id number

]

Codigo de ejemplo de la respuesta


{
    "payload": [
        {
            "meta": {
                "sender": {
                    "additional_attributes": {
                        "company_name": "Organizacion de Prueba"
                    },
                    "availability_status": "offline",
                    "email": "[email protected]",
                    "id": 69043,
                    "name": "Liverio 299 2444423454444",
                    "phone_number": "+5213121234599",
                    "identifier": null,
                    "thumbnail": "",
                    "custom_attributes": {
                        "dataSync": {
                            "idOrg": 15032,
                            "idContact": 78529
                        }
                    },
                    "last_activity_at": 1691088855,
                    "created_at": 1690491556
                },
                "channel": "Channel::TwilioSms",
                "assignee": {
                    "id": 175,
                    "account_id": 148,
                    "availability_status": "online",
                    "auto_offline": true,
                    "confirmed": true,
                    "email": "[email protected]",
                    "available_name": "Leobardo Molina",
                    "name": "Leobardo Molina",
                    "role": "administrator",
                    "thumbnail": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg"
                },
                "hmac_verified": false
            },
            "id": 430,
            "messages": [
                {
                    "id": 61137,
                    "content": null,
                    "account_id": 148,
                    "inbox_id": 286,
                    "conversation_id": 430,
                    "message_type": 1,
                    "created_at": 1691089628,
                    "updated_at": "2023-08-03T19:07:15.443Z",
                    "private": false,
                    "status": "sent",
                    "source_id": "MMa52c78593c9c463fe1741e6dcc7305e2",
                    "content_type": "text",
                    "content_attributes": {},
                    "sender_type": "User",
                    "sender_id": 175,
                    "external_source_ids": {},
                    "additional_attributes": {},
                    "label_list": null,
                    "conversation": {
                        "assignee_id": 175,
                        "unread_count": 0
                    },
                    "attachments": [
                        {
                            "id": 2986,
                            "message_id": 61137,
                            "file_type": "file",
                            "account_id": 148,
                            "extension": null,
                            "data_url": "https://app.wintook.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBblczIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--de2601baa38048db3047bd20f88576936b0ad523/A00012.pdf",
                            "thumb_url": "",
                            "file_size": 8845
                        }
                    ],
                    "sender": {
                        "id": 175,
                        "name": "Leobardo Molina",
                        "available_name": "Leobardo Molina",
                        "avatar_url": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg",
                        "type": "user",
                        "availability_status": "online",
                        "thumbnail": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg"
                    }
                }
            ],
            "account_id": 148,
            "additional_attributes": {},
            "agent_last_seen_at": 1691106451,
            "assignee_last_seen_at": 1691106451,
            "can_reply": true,
            "contact_last_seen_at": 0,
            "custom_attributes": {},
            "inbox_id": 286,
            "labels": [],
            "muted": false,
            "snoozed_until": null,
            "status": "open",
            "created_at": 1690491557,
            "timestamp": 1691089628,
            "first_reply_created_at": 1690491558,
            "unread_count": 0,
            "last_non_activity_message": {
                "id": 61137,
                "content": null,
                "account_id": 148,
                "inbox_id": 286,
                "conversation_id": 430,
                "message_type": 1,
                "created_at": 1691089628,
                "updated_at": "2023-08-03T19:07:15.443Z",
                "private": false,
                "status": "sent",
                "source_id": "MMa52c78593c9c463fe1741e6dcc7305e2",
                "content_type": "text",
                "content_attributes": {},
                "sender_type": "User",
                "sender_id": 175,
                "external_source_ids": {},
                "additional_attributes": {},
                "label_list": null,
                "conversation": {
                    "assignee_id": 175,
                    "unread_count": 0
                },
                "attachments": [
                    {
                        "id": 2986,
                        "message_id": 61137,
                        "file_type": "file",
                        "account_id": 148,
                        "extension": null,
                        "data_url": "https://app.wintook.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBblczIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--de2601baa38048db3047bd20f88576936b0ad523/A00012.pdf",
                        "thumb_url": "",
                        "file_size": 8845
                    }
                ],
                "sender": {
                    "id": 175,
                    "name": "Leobardo Molina",
                    "available_name": "Leobardo Molina",
                    "avatar_url": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg",
                    "type": "user",
                    "availability_status": "online",
                    "thumbnail": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg"
                }
            }
        }
    ]
}

403

Acceso denegado

404

Contacto no encontrado

Create New Message (https://app.wintook.com/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages) utiliza el método POST

Crear un nuevo mensaje en la conversación.

AUTORIZACIONES:

userApiKey
agentBotApiKey

Clave API : userApiKey

Este token se puede obtener visitando la página de Wintook en la parte inferior de los ajustes del perfil o a través de la consola de Rails. Proporciona acceso a puntos finales en función de los niveles de permisos de los usuarios. Este token puede ser guardado por un sistema externo cuando el usuario se crea a través de la API, para realizar actividades en nombre del usuario.

Nombre del parámetro de encabezado : api_access_token

Clave API : agentBotApiKey

Este token debe ser proporcionado por el administrador del sistema u obtenido a través de la consola Rails. Este token se puede usar para crear integraciones de bots y solo puede acceder a API limitadas.

Nombre del parámetro de encabezado : api_access_token

PARÁMETROS DE RUTA
account_id
requerido
integer
El ID numérico de la cuenta
conversation_id
requerido
integer
El ID numérico de la conversacion
ESQUEMA DE RESPUESTA: application/json; charset=utf-8
content
requerido
string
El contenido del mensaje
message_type string
Enumeración: “outgoing” “incoming”
private boolean
Bandera para identificar si es una nota privada
content_type string
Enumeración: “input_email” “cards” “input_select” “form” “article”
Si quieres crear tipos de mensaje personalizados
content_attributes object
Atributos basados en el content_type
Código de ejemplo
const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');
let data = new FormData();
data.append('attachments[]', fs.createReadStream('Fesy3CkO2/Solicitud de Cambio en Software folio 00078.pdf'));

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://app.wintook.com/api/v1/accounts/120/conversations/340/messages',
  headers: { 
    'api_access_token': 'AquiVaElAccesToken', 
    'file_type': 'application/pdf', 
    'Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundary', 
    ...data.getHeaders()
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

Respuestas

200

Success

ESQUEMA DE LA RESPUESTA: application/json; charset=utf-8
id number
content string
El texto que contiene el mensaje
content_type string
Enumeración: “text” “input_select” “cards” “form”
El tipo de plantilla de mensaje
content_attributes object
Los atributos del contenido por cada content_type
message_type string
Enumeración: “incoming” “outgoing” “activity” “template”
El tipo de mensaje
created_at integer
La fecha y hora en que fue creado el mensaje
private boolean
Las banderas que muestran si el mensaje es privado o no
attachment object
El objeto de archivo adjunto a la imagen
sender object
User/Agent/AgentBot object
conversation_id number
ID de la conversación

Codigo de ejemplo de la respuesta


{
    "id": 6115,
    "content": null,
    "inbox_id": 26,
    "conversation_id": 40,
    "message_type": 1,
    "content_type": "text",
    "status": "sent",
    "content_attributes": {},
    "created_at": 1691110662,
    "private": false,
    "source_id": null,
    "sender": {
        "id": 175,
        "name": "Leobardo Molina",
        "available_name": "Leobardo Molina",
        "avatar_url": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CK)_1-2.jpg",
        "type": "user",
        "availability_status": "online",
        "thumbnail": "https://app.wintook.com/rails/active_storage/representations/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdDZ6IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--b7fe4568e111a7fd35bbf7359920a8d6f5cc755e/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdCem9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRERJMU1IZ3lOVEFHT3daVSIsImV4cCI6bnVsbCwicHVyIjoidmFyaWF0aW9uIn19--0a14b5bfc5fd6411c45b9680bf3856213217b1ac/Logo%20CRMZeus%20_v2(CMYK)_1-2.jpg"
    }
}

403

Access denied

404

Conversation not found