Проверка REST API Cloud Contact с помощью cURL и терминала

Если вам нужно протестировать Cloud Contact API REST, обратите внимание, что вы можете сделать это с помощью cURL и терминал вашего компьютера. Если ваша компания поддерживает веб-сайт, она будет использовать серверные сценарии для выполнения аналогичных действий. Установка cURL для ОС Windows — довольно простой процесс; В Mac OS по умолчанию установлен cURL.

В этом руководстве используется Cloud Contact API управления списком для добавления записи в существующий список .CSV, а затем вернуть все записи из списка. Информацию о загрузке списков вызовов см. в Руководстве для администраторов, раздел Списки.

Примечания:

  • Терминал читает фигурные кавычки и прямые кавычки (типографически известные как «умные кавычки» и «глупые кавычки») как два совершенно разных элемента. Некоторые программы обработки текста автоматически преобразуют все кавычки в фигурные. При копировании и вставке кода в терминал вы должны убедиться, что используемые кавычки являются прямыми, а не фигурными.
  • Для выполнения запросов на терминалах Mac и терминалах Windows потребуется разный синтаксис. Вот пример статьи, посвященной этой теме.
  • Порядок действий

    1. Убедитесь, что ваш Cloud Contact имеет доступ к соответствующему API.
    2. Откройте терминал.
      1. Если вы используете Mac, вот вы сможете найти свой терминал.
      2. Если вы используете Windows, это инструкции по настройке вашего терминала.
    3. Если вы используете Mac, убедитесь, что вы используете bash, а не zsh.
      1. Если вы используете zsh, здесь описано, как изменить его на bash.

    Аутентификация в API: получение токена доступа

    Прежде чем делать какие-либо запросы Cloud Contact REST API, вы должны сначала пройти аутентификацию в системе. Большинство API Cloud Contact используют OAuth для аутентификации, которая предоставляет пользователю токен доступа на предъявителя для включения в заголовок каждого последующего запроса API. Используемый для этого метод называется Получить токен доступа.

    В этом методе для аутентификации клиентов используются учетные данные клиента. Аутентифицированный пользователь проверяется на наличие соответствующих привилегий для выполнения запрошенной операции. Привилегии назначаются пользователям через роли в Администратор контактного центра.

    1. Скопируйте и вставьте следующий код в простой текстовый редактор, например блокнот.

    curl --location --request POST 'https://<tenant_URL>/configapi/v3/oauth/token' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --data-urlencode 'client_id=<user_name>' \
    --data-urlencode 'client_secret=<API_Secret_Generated_Code>' \
    --data-urlencode 'scope=<contact-center.example>' \
    --data-urlencode 'grant_type=client_credentials'

    1. Измените подчеркнутые области.
      (Обратите внимание, что предоставленные данные в этом примере по-прежнему являются поддельными и должны быть заменены данными для ваших собственных учетных данных и веб-сайта.)
    2. Пример: <tenant_URL> становится «server.website.com».
    <user_name> становится «имя администратора вашего веб-сайта».
    <API_Secret_Generated_Code> становится «A1B2C3D4E5F6H7I8J9K0L0M9N8P7Q6R5S4T3U2V1W0»
    center.example
    1. Скопируйте отредактированный код.
    2. Вставьте код в терминал и нажмите «Ввод».
    3. Терминал вернет что-то вроде этого:
    4. Скопируйте и вставьте строку access_token в файл основного программного обеспечения для редактирования текста или блокнота, чтобы сохранить его для следующего процесса.
      1. В этом примере access_token: A1B2C3D4E5F6H7I8J9K0L0M9N8P7Q6R5S4T3U2V1W0.
      2. token_type — «Носитель».

    Добавить запись

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

    1. Скопируйте и вставьте следующий код в простой текстовый редактор, например блокнот, и измените подчеркнутые области.

    curl --location --request POST '<tenant_URL>/configapi/v3/callinglist/add/<CSV_list_name>' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <access_token_number>' \
    --data-raw '{
    "ID": "some_number",
    "firstName": "some_first_name",
    "lastName": "some_last_name",
    "Email": "some_email_address",
    "PhoneNumber": "some_phone_number"
    }'

    Скриншот терминала с кодом.

    1. Скопируйте отредактированный код, вставьте его в терминал и нажмите «Ввод».
    2. Чтобы проверить, что список теперь может получать записи, зайдите в приложение Администратор контактного центра, раздел Списки.
    3. Перейдите на центральную вкладку «Содержание» и просмотрите список.
      1. Если информация о тесте была опубликована, вы добились успеха.
      2. Если это не так, проверьте код запроса и проверьте его на наличие ошибок форматирования (e.g., фигурные кавычки). Обратите внимание, что все возвращаемые коды ответов HTTP описаны в документации по API списков.

    Если введенная вами тестовая информация появляется в списке, вы прошли успешно. Альтернативный вариант: снимок экрана страницы содержимого списка Cloud Contact с выделенными областями

    Получить все записи

    Для дальнейшего тестирования List API используйте метод Get All Records, чтобы просмотреть содержимое существующего списка обзвона. Полученные записи можно передать в другую систему, например в собственную CRM.
    Кроме того, возвращаемый список содержит объекты JSON, отсортированные по индексу. Рекомендуется сохранять последний fromIndex, чтобы ускорить запросы к системам.

    1. Скопируйте и вставьте следующий код в простой текстовый редактор, например блокнот, и измените подчеркнутые области.

    curl --location --request POST 'https://<tenant_URL>/configapi/v3/callinglist/getAll/<CSV_list_name>/<campaign_name>' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <access_token_number>' \
    --data-raw '{
    "fromIndex": 0,
    "maxSize": "100"
    }'

    1. Скопируйте отредактированный код, вставьте его в терминал и нажмите «Ввод».
    2. Если запрос пройдет успешно, вы получите обратно все записи из указанного списка.