Управление номерами телефонов и сертификатами

В этом руководстве приведена общая информация, связанная с номерами телефонов для партнеров по решениям и клиентов. Кроме того, в нем содержатся сведения о соответствующих процедурах для партнеров по решениям в ситуациях, когда они отвечают за управление номером телефона и сертификатами компании-клиента.

Предварительная информация о номерах телефонов

Ниже приводится полезная для компаний информация о номерах телефонов в контексте регистрации на сайте поставщика.

Для регистрации на сайте поставщика с использованием WhatsApp компании необходим специальный номер телефона. Номер, уже зарегистрированный в приложении WhatsApp для обмена сообщениями или в приложении WhatsApp Business, использовать нельзя.

У компании может быть несколько номеров, связанных с бизнес-аккаунтом Meta, поэтому достаточно будет просто добавить номер телефона специально для WhatsApp.

Компания не может пройти регистрацию на сайте поставщика с номером телефона, который уже зарегистрирован в версии WhatsApp для бизнеса или обычных пользователей.

Дополнительную информацию о номерах телефонов и платформе WhatsApp Business см. в этой статье.

Сведения о том, как перенести существующий зарегистрированный номер телефона WhatsApp, можно найти в этом разделе.

Инструкции для клиентов

Этот раздел предназначен для клиентов регистрации на сайте поставщика и содержит инструкции в отношении номеров телефонов.

Добавление номеров телефона в аккаунт WhatsApp Business

Добавить номер телефона в аккаунт WhatsApp Business (WABA) можно двумя способами:

  1. Рекомендуемый вариант. Ещё раз пройдите регистрацию на сайте поставщика, выберите существующий аккаунт Business Manager и WhatsApp Business, добавьте и подтвердите номер.
  2. В Business Manager перейдите в раздел WhatsApp Manager, откройте вкладку Номера телефонов и выберите Добавить номер телефона. Если вы используете эту функцию, партнеру по решениям потребуется вручную подтвердить номер телефона, так как в Business Manager эта процедура недоступна. По этой причине компаниям рекомендуется добавлять дополнительные номера посредством регистрации на сайте поставщика.

Инструкции для партнеров по решениям

В этом разделе содержатся инструкции по управлению номерами телефонов и сертификатами клиентов для партнеров по решениям.

Регистрация номеров телефонов для облачного API

После подтверждения телефона в процессе регистрации на сайте поставщика нужно выполнить вызов API к конечной точке register. Для этого укажите любое значение code_method (sms | voice). Поскольку номер телефона уже подтвержден, код регистрации не понадобится. Вызов API verify не требуется.

Можно также предварительно подтвердить номера телефонов и предложить их клиентам в процессе регистрации на сайте поставщика. Так клиентам не придется обращаться к вам за одноразовым паролем при регистрации. См. статью о предварительно подтвержденных номерах телефонов.

Регистрация номеров телефонов для локального API

После подтверждения телефона в процессе регистрации на сайте поставщика нужно выполнить вызов API к конечной точке account. Для этого укажите любое значение code_method (sms | voice). Поскольку номер телефона уже подтвержден, код регистрации не понадобится. Вызов API verify не требуется.

Можно также предварительно подтвердить номера телефонов и предложить их клиентам в процессе регистрации на сайте поставщика. Так клиентам не придется обращаться к вам за одноразовым паролем при регистрации. См. статью о предварительно подтвержденных номерах телефонов.

Номер телефона должен быть зарегистрирован в течение 14 дней после прохождения процесса встроенной регистрации на сайте поставщика. Если в течение этого периода времени номер не будет зарегистрирован, то перед регистрацией этого номера телефона для него необходимо будет снова выполнить процедуру встроенной регистрации на сайте поставщика.

Получение статуса и сертификата номера телефона

С помощью конечной точки phone_numbers вы можете проверить статус отображаемого имени номера телефона и получить сертификат после изменения этого имени. Дополнительные сведения см. в статье Получение номеров телефонов.

Пример запроса

В следующем примере используйте ID назначенного аккаунта WhatsApp Business.

curl -i -X GET "https://graph.facebook.com/v21.0/{waba-id}/phone_numbers
  ?fields=
    display_phone_number,
    certificate,
    name_status,
    new_certificate,
    new_name_status
  &access_token={system-user-access-token}"
ID аккаунта WhatsApp Business можно просмотреть здесь: Business Manager > Настройки компании > Аккаунты > Аккаунты WhatsApp Business. Нажмите нужный аккаунт. Откроется панель с информацией о нем, включая ID аккаунта.

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

{
  "data": [
    {
      "id": "1972385232742141",    
      "display_phone_number": "+1 631-555-1111",
      "last_onboarded_time": "2023-08-22T19:05:53+0000",
      "certificate": "AbCdEfGhIjKlMnOpQrStUvWxYz",
      "new_certificate": "123AbCdEfGhIjKlMnOpQrStUvWxYz",
      "name_status": "APPROVED",
      "new_name_status": "APPROVED",
    }
  ]
}

Параметры ответа

ИмяОписание

name_status

Статус обработки запроса для текущего отображаемого имени.

Чтобы посмотреть доступные варианты, нажмите стрелку в левом столбце.

Доступные варианты

  • APPROVED — имя одобрено, вы можете скачать сертификат.
  • DECLINED — имя не одобрено, вы не можете скачать сертификат.
  • EXPIRED — срок действия сертификата истек, его невозможно скачать.
  • PENDING_REVIEW — запрос находится на рассмотрении, вы не можете скачать сертификат.
  • NONE — сертификат недоступен.

new_name_status

Статус обработки запроса на изменение текущего отображаемого имени. Это поле возвращает данные, только если было запрошено изменение отображаемого имени.

certificate

Возвращает текущий сертификат для этого номера телефона.

new_certificate

Сертификат нового отображаемого имени (после одобрения изменения). Это поле возвращает данные, только если запрос на изменение отображаемого имени утвержден. Эти данные остаются доступными, пока номер телефона не будет зарегистрирован с новым сертификатом.

Получение статуса одноразового пароля телефона

Чтобы проверить, был ли номер телефона подтвержден с помощью одноразового пароля, проверьте для этого номера поле code_verification_status. Сначала выполните вызов GET к конечной точке /{whatsapp-business-account-id}/phone_numbers:

curl -i -X GET \ 
"https://graph.facebook.com/v21.0/{waba-id}/phone_numbers
  ?access_token={your-access-token}"

Ответ будет содержать поле code_verification_status с одним из следующих значений: VERIFIED или NOT_VERIFIED. Ответ выглядит примерно так:

[
  {
    "code_verification_status": "NOT_VERIFIED",
    "id": "1754951608042154"
  }
]

Статус одноразового пароля также можно получить по ID номера телефона:

curl -i -X GET \ 
"https://graph.facebook.com/v21.0/{phone-number-id}
  ?access_token={your-access-token}"
Чтобы получить ID номера телефона, выполните вызов к https://graph.facebook.com/v21.0/{whatsapp-business-account-ID}/phone_numbers. Замените {whatsapp-business-account-ID} на ID аккаунта WhatsApp Business, которому принадлежит номер телефона. См. пример в разделе о получении всех номеров телефонов.

Фильтрация номеров телефонов по режиму аккаунта

Вы можете запросить номера телефонов и отфильтровать их по признаку account_mode. Для этого запроса используются перечисленные ниже параметры.

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

ИмяОписание

field

Поле, по которому выполняется фильтрация. В этом примере следует использовать поле account_mode.

operator

Способ фильтрации аккаунтов. В этом примере следует использовать значение EQUAL.

value

Искомый режим аккаунта.

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

Поддерживаемые значения

  • SANDBOX — аккаунт не подтвержден.

  • LIVE — для аккаунта недоступен режим пробного периода для неподтвержденных аккаунтов, либо этот аккаунт получил статус подтвержденного.

Пример запроса

В следующем примере используйте ID назначенного аккаунта WhatsApp Business.

curl -i -X GET "https://graph.facebook.com/v21.0/{waba-id}/phone_numbers
  ?filtering=[{
    "field":"account_mode",
    "operator":"EQUAL",
    "value":"SANDBOX"}]
  &access_token={system-user-access-token}"

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

{
  "data": [
    {
      "id": "1972385232742141",    
      "display_phone_number": "+1 631-555-1111",
      "verified_name": "John’s Cake Shop",
      "quality_rating": "UNKNOWN",
    }
  ],
  "paging": {
	"cursors": {
		"before": "abcdefghij"
		"after": "klmnopqr"
	}
   }
}