CreateInstance#
Метод предназначен для создания инстанса на аккаунте партнёра.
После создания инстанса без настроек, настройки по умолчанию будут выключены.
Запрос#
Для создания инстанса аккаунта от имени партнёра требуется выполнить POST запрос по адресу:
{{partnerApiUrl}}/partner/createInstance/{{partnerToken}}
Параметр
partnerApiUrlможно увидеть в личном кабинете.Получение параметра запроса
partnerTokenпроисходит через техподдержку GREEN-API с запросом получить API-ключ партнёра.
Параметры запроса#
Допускается указывать параметры выборочно. Хотя бы один параметр должен быть указан.
| Параметр | Тип | Обязательный | Описание | 
|---|---|---|---|
name |  string | необязательный | Название инстанса, указанное в личном кабинете | 
webhookUrl |  string | необязательный | URL для отправки вебхуков | 
webhookUrlToken |  string | необязательный | Токен для подключения к вашему вебхук серверу | 
delaySendMessagesMilliseconds |  integer | необязательный | Задержка между отправкой исходящих сообщений в миллисекундах, по умолчанию 500 мсек.  Минимальное значение: 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 |  
Пример тела запроса#
{
    "name": "Ходабрыш Пробешёлов",
    "webhookUrl": "https://mysite.com/webhook/green-api/",
    "webhookUrlToken": "f93537eb3e8fed66847b5bd",
    "delaySendMessagesMilliseconds": 1000,
    "markIncomingMessagesReaded": "no", // Уведомление временно не работает.
    "markIncomingMessagesReadedOnReply": "no", // Уведомление временно не работает.
    "outgoingAPIMessageWebhook": "yes",
    "outgoingWebhook": "yes",
    "outgoingMessageWebhook": "yes",
    "incomingWebhook": "yes",
    "stateWebhook": "no",
}
Ответ#
Поля ответа#
| Поле | Тип | Описание | 
|---|---|---|
idInstance |  integer | Идентификатор инстанса аккаунта.  Значение типа uint64, 10 разрядов  |  
apiTokenInstance |  string | Токен API инстанса аккаунта | 
typeInstance |  string | Тип мессенджера для инстанса аккаунта | 
Поле принимает значение v3 для мессенджера MAX |  ||
Поле принимает значение whatsapp - для мессенджера WhatsApp |  
Пример тела ответа#
В случае успеха, в ответ на запрос, отдается JSON строка следующего вида с HTTP статусом 200:
{
    "apiTokenInstance": "c1b0474542144e0ead529eb4861ca5f583c346eb00564f64a7",
    "apiUrl": "https://3100.api.green-api.com/v3/",
    "idInstance": 3100000000,
    "mediaUrl": "https://3100.api.green-api.com/v3/",
    "typeInstance": "v3"
}
В случае неудачи, отдается ответ с 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"
}
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"
}'
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\"}")
  .asString();