CreateInstance#
Метод предназначен для создания инстанса на аккаунте партнёра.
После создания инстанса без настроек, настройки по умолчанию будут выключены.
Запрос#
Для создания инстанса аккаунта от имени партнёра требуется выполнить POST запрос по адресу:
{{partnerApiUrl}}/partner/createInstance/{{partnerToken}}
Параметр
partnerApiUrl
можно увидеть в личном кабинете.Получение параметра запроса
partnerToken
происходит через техподдержку GREEN-API с запросом получить API-ключ партнёра.
Параметры запроса#
Допускается указывать параметры выборочно. Хотя бы один параметр должен быть указан.
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
name | string | необязательный | Название инстанса, указанное в личном кабинете |
webhookUrl | string | необязательный | URL для отправки вебхуков |
webhookUrlToken | string | необязательный | Токен для подключения к вашему вебхук серверу |
delaySendMessagesMilliseconds | integer | необязательный | Задержка между отправкой исходящих сообщений в миллисекундах, по умолчанию 3000 мсек, минимум 500 мсек |
markIncomingMessagesReaded | string | необязательный | отмечать входящие сообщения прочитанными или нет (yes , no ), по умолчанию no , параметр игнорируется, если markIncomingMessagesReadedOnReply в значении yes |
markIncomingMessagesReadedOnReply | string | необязательный | отмечать входящие сообщения прочитанными или нет (yes , no ) при отправке сообщения в чат, по умолчанию no (входящие сообщения не помечаются прочитанными) |
outgoingWebhook | string | необязательный | Получать уведомления о статусах отправки/доставки/прочтении исходящих сообщений, возможные значения: yes , no . По умолчанию no |
outgoingMessageWebhook | string | необязательный | Получать уведомления о сообщениях, отправленных с телефона, возможные значения: yes , no . По умолчанию no |
outgoingAPIMessageWebhook | string | необязательный | Получать уведомления о сообщениях, отправленных из API, возможные значения: yes , no . По умолчанию no |
stateWebhook | string | необязательный | Получать уведомления об изменении состояния авторизации инстанса, возможные значения: yes , no . По умолчанию no |
incomingWebhook | string | необязательный | Получать уведомления о входящих сообщениях и файлах, возможные значения: yes , no . По умолчанию no |
deviceWebhook | string | необязательный | Временно не работает. Получать уведомления об устройстве (телефоне) и уровне заряда батареи, возможные значения: yes , no . По умолчанию no |
keepOnlineStatus | string | необязательный | Отображать статус инстанса “В сети”. Возможные значения: yes , no . По умолчанию no . Примечание: При включенной настройке не будут приходить звуковые уведомления о новых сообщениях на телефонный аппарат, подключенный к API |
pollMessageWebhook | string | необязательный | Получать уведомления о создании опроса и голосовании в опросе, возможные значения: yes , no . По умолчанию no |
incomingBlockWebhook | string | необязательный | Временно не работает. Получать уведомления о добавлении чата в список заблокированных контактов, возможные значения: yes , no . По умолчанию no |
incomingCallWebhook | string | необязательный | Получать уведомления о статусах входящего звонка, возможные значения: yes , no |
editedMessageWebhook | string | необязательный | Получать уведомления о факте того, что сообщение было отредактировано и статусах отредактированного сообщения: yes , no |
deletedMessageWebhook | string | необязательный | Получать уведомления о факте того, что сообщение было удалено и о статусах удаленного сообщения: yes , no |
Пример тела запроса#
{
"name": "Mailings Harry",
"webhookUrl": "https://mysite.com/webhook/green-api/",
"webhookUrlToken": "f93537eb3e8fed66847b5bd",
"delaySendMessagesMilliseconds": 1000,
"markIncomingMessagesReaded": "no",
"markIncomingMessagesReadedOnReply": "no",
"outgoingAPIMessageWebhook": "yes",
"outgoingWebhook": "yes",
"outgoingMessageWebhook": "yes",
"incomingWebhook": "yes",
"deviceWebhook": "no", // Уведомление временно не работает.
"stateWebhook": "no",
"keepOnlineStatus": "no",
"pollMessageWebhook": "no",
"incomingBlockWebhook": "yes", // Уведомление временно не работает.
"incomingCallWebhook": "yes",
"editedMessageWebhook": "no",
"deletedMessageWebhook": "no"
}
Ответ#
Поля ответа#
Поле | Тип | Описание |
---|---|---|
idInstance | integer | Идентификатор инстанса аккаунта. Размер integer равен int64. Значения лежат в диапазоне от 1 до 10 разрядов |
apiTokenInstance | string | Токен API инстанса аккаунта |
typeInstance | string | Тип мессенджера для инстанса аккаунта |
Пример тела ответа#
В случае успеха, в ответ на запрос, отдается JSON строка следующего вида с HTTP статусом 200:
{
"idInstance": 1101728000,
"apiTokenInstance": "c1b0474542144e0ead529eb4861ca5f583c346eb00564f64a7",
"typeInstance": "whatsapp"
}
В случае неудачи, отдается ответ с HTTP статусом 200, в теле ответа отдается JSON строка с кодом и описанием ошибки:
{
"code": 401,
"description": "Unauthorized"
}
Ошибки CreateInstance#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requestss
url = "https://api.green-api.com/partner/createInstance/{{partnerToken}}"
payload = {
"name": "first instance",
"webhookUrl": "",
"webhookUrlToken": "",
"delaySendMessagesMilliseconds": 3000,
"markIncomingMessagesReaded": "no",
"markIncomingMessagesReadedOnReply": "no",
"outgoingWebhook": "yes",
"outgoingMessageWebhook": "yes",
"outgoingAPIMessageWebhook": "yes",
"incomingWebhook": "yes",
"stateWebhook": "yes",
"keepOnlineStatus": "no",
"pollMessageWebhook": "yes",
"incomingCallWebhook": "yes",
"editedMessageWebhook": "no",
"deletedMessageWebhook": "no"
}
headers = {
'Content-Type': 'application/json'
}
response = requests.post(url, json=payload)
print(response.text.encode('utf8'))
curl --location --globoff 'https://api.green-api.com/partner/createInstance/{{partnerToken}}' \
--header 'Content-Type: application/json' \
--data '{
"name":"first instance",
"webhookUrl": "",
"webhookUrlToken": "",
"delaySendMessagesMilliseconds": 3000,
"markIncomingMessagesReaded": "no",
"markIncomingMessagesReadedOnReply": "no",
"outgoingWebhook": "yes",
"outgoingMessageWebhook": "yes",
"outgoingAPIMessageWebhook": "yes",
"incomingWebhook": "yes",
"stateWebhook": "yes",
"keepOnlineStatus": "no",
"pollMessageWebhook": "yes",
"incomingCallWebhook": "yes",
"editedMessageWebhook": "no",
"deletedMessageWebhook": "no"
}'
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://api.green-api.com/partner/createInstance/{{partnerToken}}")
.header("Content-Type", "application/json")
.body("{\r\n \"name\":\"first instance\", \n \"webhookUrl\": \"\", \n \"webhookUrlToken\": \"\",\r\n \"delaySendMessagesMilliseconds\": 3000,\r\n \"markIncomingMessagesReaded\": \"no\",\r\n \"markIncomingMessagesReadedOnReply\": \"no\",\r\n \"outgoingWebhook\": \"yes\",\r\n \"outgoingMessageWebhook\": \"yes\",\r\n \"outgoingAPIMessageWebhook\": \"yes\",\r\n \"incomingWebhook\": \"yes\",\r\n \"stateWebhook\": \"yes\",\r\n \"keepOnlineStatus\": \"no\",\r\n \"pollMessageWebhook\": \"yes\",\r\n \"incomingCallWebhook\": \"yes\", \"editedMessageWebhook\": \"no\", \r\n \"deletedMessageWebhook\": \"no\" \r\n}")
.asString();