Вход

/v1/users/login

Для аутентификации в клиенте API WhatsApp Business нужно войти в систему. Для этого предоставьте имя пользователя и пароль (базовая аутентификация). В ответ вы получите маркер на предъявителя. Затем этот маркер используется для аутентификации при отправке запросов к конечным точкам API WhatsApp Business. Подробнее об аутентификации для использования API см. в этом разделе.

Прежде чем начать

В клиенте WhatsApp Business API имеется используемый по умолчанию аккаунт с именем пользователя admin и паролем secret. Его нельзя удалить. Из соображений безопасности необходимо сменить пароль администратора при первом входе.

Рекомендации в отношении паролей

При создании аккаунтов или смене паролей мы рекомендуем использовать надежные пароли согласно отраслевым рекомендациям.

Пароль должен содержать от 8 до 64 символов, в том числе по крайней мере:

  • одну цифру;
  • одну прописную букву;
  • одну строчную букву;
  • один из специальных символов (!"#$%&\'()*+,-./:;<=>?@[]^_`{|}~).

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

Создание

При входе в систему вы проходите базовую аутентификацию по имени пользователя и паролю. Эти данные указываются в HTTP-заголовке Authorization. Тип (type) аутентификации — Basic, а учетные данные (credentials) представляют собой строку в кодировке Base64, состоящую из имени пользователя (username) и пароля (password), указанных через двоеточие: username:password.

Когда клиент WhatsApp Business API получает запрос входа, он проверяет действительность ваших учетных данных.

  • В случае успеха генерируется ваш маркер. Он содержится в ответе в поле token.
  • В случае неудачи возвращается ошибка.

Примеры

Первый вход

Из соображений безопасности при первом входе необходимо сменить пароль администратора по умолчанию в поле new_password. Если вы попытаетесь войти в систему с паролем по умолчанию, не указав информацию в поле new_password, будет возвращена ошибка.

См. рекомендации в разделе о паролях. Первый запрос входа должен выглядеть так:

  POST /v1/users/login
  Authorization: Basic base64(username:password)
  {
  "new_password": "new-password"
  }

Версия для cURL выглядит так:

curl -k -X POST https://your-webapp-hostname:your-webapp-port/v1/users/login \
  -w "\n%{http-code}\n" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Basic base64(username:password)' \
  -d '{"new_password" : "new-password"}'

Стандартный вход

Процесс стандартного входа для клиента API WhatsApp Business выглядит так:

POST /v1/users/login
Authorization: Basic base64(username:password)

Версия для cURL выглядит так:

curl -X POST \
  -H 'Authorization: Basic base64(username:password)' \
  -H 'Content-Type: application/json' \
  -d '{}' \
  https://your-webapp-hostname:your-webapp-port/v1/users/login

В случае успеха возвращается статус 200 OK, а также маркер и срок его действия. Все генерируемые маркеры действуют семь дней. Пример ответа:

{
   "users": [{
      "token": "eyJhbGciOHlXVCJ9.eyJ1c2VyIjoNTIzMDE2Nn0.mEoF0COaO00Z1cANo",
      "expires_after": "2018-03-01 15:29:26+00:00"
   }]
}

Если выполнить запрос не удалось, возвращается статус HTTP 401 Unauthorized. Обычно эта ошибка означает, что имя пользователя или пароль, указанные в запросе входа, недействительны, поэтому клиенту API WhatsApp Business не удалось сгенерировать маркер.

Если в ответе имеются ошибки, обратитесь к разделам Коды ошибок клиента API WhatsApp Business и Коды статусов HTTP.

Возвращаемые поля

Поле Описание

token

Обязательный параметр.

Маркер аутентификации для всех последующих вызовов API WhatsApp Business. Должен передаваться в заголовке авторизации в следующем формате:
Authorization: Bearer <authentication-token>

expires_after

Обязательный параметр.

Метка времени со сроком действия маркера. По умолчанию это семь дней.