Описание
Webhooks API позволяет получать вызовы со стороны IQChannels на события в публичном API.
Структура сообщений совпадает с со структурой сообщений в WebSockets в публичном API, содержание расширено информацией о клиенте, канале и проекте.
Примеры сообщений
Клиент печатает сообщение
{ "ChatEvent": { "Id": 0, "Type": "typing", "ChatId": 21, "MessageId": null, "Actor": "client", "ClientId": 21, "UserId": null, "CreatedAt": 1542902534934, "Transitive": true }, "Rels": { "Channels": [ { "Id": 1, "ProjectId": 1, "Type": "iqchat", "Name": "support", "Title": "Внутренний чат", "Description": "Виджет и мобильные приложения.", "Deleted": false, "TotalClients": 0, "TotalTickets": 51, "TotalOpenTickets": 2, "CreatedAt": 1508308179222, "UpdatedAt": 1539160130126, "IQChat": { "ChannelId": 1, "Deleted": false, "CreatedAt": 1508308179225, "UpdatedAt": 1523604582471, "DeletedAt": null, "RestoredAt": null, "APNS": null } } ], "Chats": [ { "Id": 21, "ProjectId": 1, "ClientId": 21, "ChannelId": 1, "TicketId": 84, "EventId": null, "ClientUnread": 0, "CreatedAt": 1523012241583, "ChangedAt": 1539160135110 } ], "Clients": [ { "Id": 21, "ProjectId": 1, "ParentId": null, "Type": "crm", "Name": "Кинг Мартин", "Online": true, "CRMId": 1, "CRMClientId": "101", "ChannelId": null, "TelegramId": null, "FacebookId": null, "VKId": null, "TotalTickets": 9, "TotalOpenTickets": 1, "CreatedAt": 1523012241454, "UpdatedAt": 1542902534525, "SeenAt": 1542902534525, "MessagedAt": null, "Details": { "ClientId": 21, "CRMURL": "http://ya.ru/", "FirstName": "Мартин", "MiddleName": "Лютер", "LastName": "Кинг", "Sex": "мужской", "Birthday": "15.01.1929", "Cellphone": "+7 999 123-456", "Email": "king@example.com", "ExtRef": "XL-283-1238", "CardRef": "z8j23yzc1", "BranchId": "2132", "BranchName": "Тестовое отделение", "BranchExtRef": "238", "BranchBik": "123456789", "CreatedAt": -6795364578871, "UpdatedAt": -6795364578871, "Fields": [ { "Id": 3, "ClientId": 21, "Name": "Поле 1", "Value": "Значение 1", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 }, { "Id": 1, "ClientId": 21, "Name": "Поле 2", "Value": "Значение 2", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 }, { "Id": 2, "ClientId": 21, "Name": "Поле 3", "Value": "Значение 3", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 } ] } } ], "Projects": [ { "Id": 1, "Name": "Физические лица", "Slug": "", "Description": "Техническая поддержка", "State": "active", "TotalTickets": 85, "TotalOpenTickets": 5, "CreatedAt": 1508308155539, "UpdatedAt": 1539181095764, "ArchivedAt": null, "DeletedAt": null, "RestoredAt": null, "Permissions": null } ] } }
Клиент отправил сообщение
{ "ChatEvent": { "Id": 603, "Type": "message_created", "ChatId": 21, "MessageId": 298, "Actor": "client", "ClientId": 21, "UserId": null, "CreatedAt": 1542902601356, "Transitive": false }, "Rels": { "Channels": [ { "Id": 1, "ProjectId": 1, "Type": "iqchat", "Name": "support", "Title": "Внутренний чат", "Description": "Виджет и мобильные приложения.", "Deleted": false, "TotalClients": 0, "TotalTickets": 51, "TotalOpenTickets": 2, "CreatedAt": 1508308179222, "UpdatedAt": 1539160130126, "IQChat": { "ChannelId": 1, "Deleted": false, "CreatedAt": 1508308179225, "UpdatedAt": 1523604582471, "DeletedAt": null, "RestoredAt": null, "APNS": null } } ], "Chats": [ { "Id": 21, "ProjectId": 1, "ClientId": 21, "ChannelId": 1, "TicketId": 84, "EventId": null, "ClientUnread": 0, "CreatedAt": 1523012241583, "ChangedAt": 1539160135110 } ], "ChatMessages": [ { "Id": 298, "ChatId": 21, "LocalId": 1542902601336, "EventId": null, "TicketMessageId": 971, "Author": "client", "ClientId": 21, "UserId": null, "Payload": "text", "Text": "Привет!", "Received": false, "Read": false, "Pushed": false, "CreatedAt": 1542902601351, "ReceivedAt": null, "ReadAt": null, "My": false } ], "Clients": [ { "Id": 21, "ProjectId": 1, "ParentId": null, "Type": "crm", "Name": "Кинг Мартин", "Online": true, "CRMId": 1, "CRMClientId": "101", "ChannelId": null, "TelegramId": null, "FacebookId": null, "VKId": null, "TotalTickets": 9, "TotalOpenTickets": 1, "CreatedAt": 1523012241454, "UpdatedAt": 1542902594596, "SeenAt": 1542902594596, "MessagedAt": null, "Details": { "ClientId": 21, "CRMURL": "http://ya.ru/", "FirstName": "Мартин", "MiddleName": "Лютер", "LastName": "Кинг", "Sex": "мужской", "Birthday": "15.01.1929", "Cellphone": "+7 999 123-456", "Email": "king@example.com", "ExtRef": "XL-283-1238", "CardRef": "z8j23yzc1", "BranchId": "2132", "BranchName": "Тестовое отделение", "BranchExtRef": "238", "BranchBik": "123456789", "CreatedAt": -6795364578871, "UpdatedAt": -6795364578871, "Fields": [ { "Id": 3, "ClientId": 21, "Name": "Поле 1", "Value": "Значение 1", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 }, { "Id": 1, "ClientId": 21, "Name": "Поле 2", "Value": "Значение 2", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 }, { "Id": 2, "ClientId": 21, "Name": "Поле 3", "Value": "Значение 3", "Deleted": false, "CreatedAt": 1537519276894, "UpdatedAt": 1537519276894 } ] } } ], "Projects": [ { "Id": 1, "Name": "Физические лица", "Slug": "", "Description": "Техническая поддержка", "State": "active", "TotalTickets": 85, "TotalOpenTickets": 5, "CreatedAt": 1508308155539, "UpdatedAt": 1539181095764, "ArchivedAt": null, "DeletedAt": null, "RestoredAt": null, "Permissions": null } ] } }
Оператор отправил сообщение
{ "ChatEvent": { "Id": 606, "Type": "message_created", "ChatId": 21, "MessageId": 299, "Actor": "user", "ClientId": null, "UserId": 1, "CreatedAt": 1542902650651, "Transitive": false }, "Rels": { "Channels": [ { "Id": 1, "ProjectId": 1, "Type": "iqchat", "Name": "support", "Title": "Внутренний чат", "Description": "Виджет и мобильные приложения.", "Deleted": false, "TotalClients": 0, "TotalTickets": 51, "TotalOpenTickets": 2, "CreatedAt": 1508308179222, "UpdatedAt": 1539160130126, "IQChat": { "ChannelId": 1, "Deleted": false, "CreatedAt": 1508308179225, "UpdatedAt": 1523604582471, "DeletedAt": null, "RestoredAt": null, "APNS": null } } ], "Chats": [ { "Id": 21, "ProjectId": 1, "ClientId": 21, "ChannelId": 1, "TicketId": 84, "EventId": null, "ClientUnread": 1, "CreatedAt": 1523012241583, "ChangedAt": 1542902650654 } ], "ChatMessages": [ { "Id": 299, "ChatId": 21, "LocalId": 1542902650625, "EventId": null, "TicketMessageId": 972, "Author": "user", "ClientId": null, "UserId": 1, "Payload": "text", "Text": "Как дела?", "Received": false, "Read": false, "Pushed": false, "CreatedAt": 1542902650639, "ReceivedAt": null, "ReadAt": null, "My": false } ], "Projects": [ { "Id": 1, "Name": "Физические лица", "Slug": "", "Description": "Техническая поддержка", "State": "active", "TotalTickets": 85, "TotalOpenTickets": 5, "CreatedAt": 1508308155539, "UpdatedAt": 1539181095764, "ArchivedAt": null, "DeletedAt": null, "RestoredAt": null, "Permissions": null } ], "Users": [ { "Id": 1, "Name": "Иван Коробков", "Email": "i.korobkov@iqstore.ru", "Position": "Технический директор", "RoleId": 1, "AvatarId": "baac46c4-c475-11e7-999e-fb4e907475d9.jpg", "Online": true, "Active": true, "Deleted": false, "TotalAssignedTickets": 5, "CreatedAt": 1508308102244, "UpdatedAt": 1542902649317, "LastSeenAt": 1542902649317, "AssignedAt": 1542901263283, "DisplayName": "Иван Коробков" } ] } }
Оператор загрузил файл
{ "ChatEvent": { "Id": 608, "Type": "message_created", "ChatId": 21, "MessageId": 300, "Actor": "user", "ClientId": null, "UserId": 1, "CreatedAt": 1542902705511, "Transitive": false }, "Rels": { "Channels": [ { "Id": 1, "ProjectId": 1, "Type": "iqchat", "Name": "support", "Title": "Внутренний чат", "Description": "Виджет и мобильные приложения.", "Deleted": false, "TotalClients": 0, "TotalTickets": 51, "TotalOpenTickets": 2, "CreatedAt": 1508308179222, "UpdatedAt": 1539160130126, "IQChat": { "ChannelId": 1, "Deleted": false, "CreatedAt": 1508308179225, "UpdatedAt": 1523604582471, "DeletedAt": null, "RestoredAt": null, "APNS": null } } ], "Chats": [ { "Id": 21, "ProjectId": 1, "ClientId": 21, "ChannelId": 1, "TicketId": 84, "EventId": null, "ClientUnread": 1, "CreatedAt": 1523012241583, "ChangedAt": 1542902705514 } ], "ChatMessages": [ { "Id": 300, "ChatId": 21, "LocalId": 1542902705465, "EventId": null, "TicketMessageId": 973, "Author": "user", "ClientId": null, "UserId": 1, "Payload": "file", "Text": "", "FileId": "6054cfb4-ee70-11e8-8b35-3fa764e1543e.json", "Received": false, "Read": false, "Pushed": false, "CreatedAt": 1542902705504, "ReceivedAt": null, "ReadAt": null, "My": false } ], "Files": [ { "Id": "6054cfb4-ee70-11e8-8b35-3fa764e1543e.json", "Type": "file", "Owner": "client", "OwnerClientId": 21, "ClientId": null, "UserId": 1, "Name": "example-request.json", "Path": "clients/21/21/6054cfb4-ee70-11e8-8b35-3fa764e1543e.json", "Size": 2493, "ImageWidth": null, "ImageHeight": null, "ContentType": "application/json", "CreatedAt": 1542902705480 } ], "Projects": [ { "Id": 1, "Name": "Физические лица", "Slug": "", "Description": "Техническая поддержка", "State": "active", "TotalTickets": 85, "TotalOpenTickets": 5, "CreatedAt": 1508308155539, "UpdatedAt": 1539181095764, "ArchivedAt": null, "DeletedAt": null, "RestoredAt": null, "Permissions": null } ], "Users": [ { "Id": 1, "Name": "Иван Коробков", "Email": "i.korobkov@iqstore.ru", "Position": "Технический директор", "RoleId": 1, "AvatarId": "baac46c4-c475-11e7-999e-fb4e907475d9.jpg", "Online": true, "Active": true, "Deleted": false, "TotalAssignedTickets": 5, "CreatedAt": 1508308102244, "UpdatedAt": 1542902699384, "LastSeenAt": 1542902699384, "AssignedAt": 1542901263283, "DisplayName": "Иван Коробков" } ] } }