Перейти к содержанию

CreateInstance#

Test

Метод предназначен для создания инстанса на аккаунте партнёра.

После создания инстанса без настроек, настройки по умолчанию будут выключены.

Запрос#

Для создания инстанса аккаунта от имени партнёра требуется выполнить POST запрос по адресу:

POST
{{partnerApiUrl}}/partner/createInstance/{{partnerToken}}

Параметр partnerApiUrl можно увидеть в личном кабинете.

Получение параметра запроса partnerToken происходит через техподдержку GREEN-API с запросом получить API-ключ партнёра.

Параметры запроса#

Допускается указывать параметры выборочно. Хотя бы один параметр должен быть указан.

Параметр Тип Обязательный Описание
name string необязательный Название инстанса, указанное в личном кабинете
webhookUrl string необязательный URL для отправки вебхуков
webhookUrlToken string необязательный Токен для подключения к вашему вебхук серверу
delaySendMessagesMilliseconds integer необязательный Задержка между отправкой исходящих сообщений в миллисекундах, по умолчанию 3000 мсек.
Минимальное значение: 500 мсек (0.5 секунды)
Максимальное значение: 600000 мсек (10 мминут).
Рекомендуется устанавливать интервал не более 300000 мсек (5 минут).
markIncomingMessagesReaded string необязательный Отмечать входящие сообщения прочитанными (yes, no), по умолчанию no, параметр игнорируется, если markIncomingMessagesReadedOnReply в значении yes
markIncomingMessagesReadedOnReply string необязательный Отмечать входящие сообщения прочитанными (yes, no) при отправке сообщения в чат, по умолчанию no (входящие сообщения не помечаются прочитанными)
outgoingWebhook string необязательный Получать уведомления о статусах отправленных сообщений, возможные значения: yes, no. По умолчанию no
outgoingMessageWebhook string необязательный Получать уведомления о сообщениях, отправленных с телефона, web версии и desktop версии, возможные значения: 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"
}

Ответ#

Поля ответа#

Поле Тип Описание
apiTokenInstance string Токен API инстанса аккаунта
apiUrl string Ссылка на хост API
idInstance integer Идентификатор инстанса аккаунта. Значение может быть типом uint64 (целое число без знака со значениями от 0 до 18 446 744 073 709 551 615)
mediaUrl string Ссылка на хост API для отправки файлов
typeInstance string Тип мессенджера для инстанса аккаунта

Пример тела ответа#

В случае успеха, в ответ на запрос, отдается JSON строка следующего вида с HTTP статусом 200:

{
    "apiTokenInstance": "c1b0474542144e0ead529eb4861ca5f583c346eb00564f64a7",
    "apiUrl": "https://api.green-api.com/",
    "idInstance": 1101728000,
    "mediaUrl": "https://api.green-api.com/",
    "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();