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

CreateInstance#

Test

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

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

Запрос#

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

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();