Справочник API

Contacts

Добавить контакт

Добавляет контакт в адресную книгу подключённого аккаунта. Укажите хотя бы одно из полей phone_number или username. whatsapp_options поддерживается только WhatsApp и должно передаваться вложенным объектом. Неподдерживаемые каналы возвращают 501 unsupported_by_provider.

POSThttps://api.unifyport.ai/v1/accounts/{account_id}/contacts/add

Перед вызовом

Используйте X-Api-Key нужного рабочего пространства на сервере. Перед запуском замените все заполнители.

Откуда взять параметры
account_id
Возьмите data.id из создания или запроса аккаунта. Идентификатор относится к рабочему пространству X-Api-Key. Получить аккаунт

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

Заголовки

X-Api-Key
stringобязательно

API-ключ рабочей области. Рабочая область определяется по этому заголовку.

Content-Type
stringобязательно

Используйте application/json при отправке JSON-тела запроса.

Параметры пути

account_id
stringобязательно

Идентификатор для маршрута раздела contacts.

Тело запроса

phone_number
string

Номер телефона контакта в международном формате. Укажите хотя бы phone_number или username.

minLength: 1

username
string

Имя пользователя контакта у провайдера. Укажите хотя бы username или phone_number.

minLength: 1

whatsapp_options
object

Необязательные параметры создания контакта только для WhatsApp; передавайте их вложенными в whatsapp_options.

first_name
string

Необязательное имя контакта WhatsApp.

full_name
string

Необязательное полное имя контакта WhatsApp.

sync_to_device_contacts
boolean

Синхронизировать ли контакт с адресной книгой устройства WhatsApp. По умолчанию false.

Как понять результат

Следуйте описанию полей и HTTP-статуса. Успешный 204 не содержит тела; для диагностики используйте X-Request-Id. Следующий шаг указан в связанных операциях.

Ответ 200 OK

{
  "request_id": "<REQUEST_ID>",
  "data": {
    "id": "8600000000000@s.whatsapp.net",
    "conversation_id": "123456789012345@lid",
    "display_name": "Alice Example",
    "avatar_url": "",
    "provider_user_id": "8600000000000@s.whatsapp.net",
    "extra": {
      "phone": "8600000000000"
    }
  }
}

Тело ответа

id
string

Идентификатор контакта.

conversation_id
string

Идентификатор беседы для этого контакта; используйте его для отправки сообщений или поиска чата.

display_name
string

Отображаемое имя контакта или пустая строка, если оно отсутствует.

avatar_url
string

URL аватара контакта или пустая строка, если он отсутствует.

provider_user_id
string

Идентификатор пользователя на стороне провайдера для контакта.

is_blocked
boolean

Заблокирован ли контакт подключённым аккаунтом.

extra
object

Дополнительные поля, специфичные для провайдера, например phone.

phone
string

WhatsApp phone JID 中解析出的纯手机号。

first_name
string

当前账号通讯录中保存的联系人简称或名字部分。

full_name
string

当前账号通讯录中保存的完整联系人名称。

push_name
string

联系人自行在 WhatsApp 设置的个人名称。

business_name
string

WhatsApp Business 账号的商业或认证名称。

redacted_phone
string

Provider 仅返回部分号码时的遮蔽手机号。

Ответы

200

200 OK

Запрос выполнен. См. пример тела ответа.

400

Bad Request

Тело запроса, путь или параметры некорректны.

401

Unauthorized

Заголовок X-Api-Key отсутствует или недействителен.

409

Conflict

Запрошенная операция конфликтует с существующим аккаунтом провайдера или ресурсом.

500

Internal Server Error

Сервис столкнулся с неожиданной ошибкой.

501

Not Implemented

Выбранный провайдер не реализует эту операцию.

502

Bad Gateway

Адаптер или вышестоящий провайдер не смог завершить операцию.

При ошибке запроса

Проверьте HTTP и error.code/numeric_code, сохраните request_id. Исправьте параметры, завершите авторизацию или проверьте runtime. До повторной отправки или записи выясните результат предыдущей попытки. Справочник ошибок

invalid_request · 10000 · 400
Проверьте обязательные поля, форматы и условия канала, затем исправьте запрос.
invalid_api_key · 11001 · 401
Проверьте X-Api-Key и активность рабочего пространства.