1. All Collections >
  2. Товар >
  3. Автоматизация >
  4. Шаг: HTTP-запрос

Шаг: HTTP-запрос

Avatar
Shing-Yi Tan
менее минуты чтения

Этот шаг позволяет отправлять HTTP-запросы и сохранять их ответы в виде переменных.

Этот шаг доступен только для плана «Advanced» и выше.

Конфигурация

На этапе HTTP-запроса есть две ключевые конфигурации:

Метод HTTP-запроса

Конкретный метод, требуемый для запроса. Выберите подходящий метод из выпадающего списка.

URL

В поле URL введите конечную точку URL внешнего API для извлечения данных. Чтобы включить переменные, используйте префикс "$" для поддержки интерполяции статического текста и переменных.

Теперь вы можете использовать IP-адреса и номера портов на этапе HTTP-запроса, что обеспечивает вам прямой доступ к серверам и гибкость для доступа к службам через нестандартные порты.

Обратите внимание, что домен respond.io занесен в черный список. Отправка API-вызова на этот домен не допускается, так как это может привести к зацикливанию.

Тело

Чтобы обеспечить правильное декодирование получателем запроса, расширьте раздел «Тело» и включите тело вместе с заголовком Content-Type.

Заголовки

В разделе «Заголовок» вы можете добавлять заголовки к HTTP-запросу парами. Ключ представляет имя заголовка, а значение представляет значение заголовка. Вы можете использовать переменные в качестве заголовков, добавив префикс "$". Однако помните, что допускается не более 10 заголовков.

Картографирование ответов

В ответах JSON API вы можете сохранять отдельные значения ответа как переменные. В разделе «Отображение ответа» введите JSON-путь/ссылку на значение слева и назначьте имя переменной справа.

Поле JSON Key должно содержать JSON-путь/ссылку к значению, которое вы хотите сохранить, начиная с корня ответа с `$`. Например, для `{"phone":"123123"}` введите `$.phone`, а не `phone`.

Примеры:

Чтобы сохранять значения из разных форматов ответа, заполните поле JSON Key, указав JSON-путь к данным, которые вы хотите сохранить.

{  
    "имя": "Джейсон",  
    "почтовые индексы": "12345",  
    "телефон": "123123"  
}

Чтобы сохранить номер телефона из приведённого выше ответа, введите $.phone в поле JSON Key.

{ 
    "custom_fields": {  
        "firstName": "Джон",  
        "lastName": "Доу",  
        "locale": "en_GB",  
        "timezone": "5",  
        "gender": "male",  
        "phone": "123123",  
        "email": "zy@respond.io",  
        "customerid": "1"  
    },  
    "created_at": 1575618542  
}

Чтобы сохранить номер телефона из приведённого выше ответа, введите $.custom_fields.phone в поле JSON Key.

{  
        "data": {  
            "id":"1776025372480910",  
            "contacts" : [  
                {  
                    "firstName":"John",  
                    "lastName":"Doe",  
		    "locale": "en_GB"  
                },  
                {  
                    "firstName":"Jane",  
                    "lastName":"Doe",  
		    "locale": "en_GB"  
                }  
	    ]  
        }  
    }

Чтобы сохранить имя 'Jane' из приведённого выше ответа, введите $.data.contacts[1].firstName в поле JSON Key.

Сохранить статус ответа как переменную

Чтобы сохранить статус ответа HTTP-запроса как переменную, включите переключатель Сохранить статус ответа как переменную . Затем введите имя переменной в соответствующем поле.

Как это работает

При активации этого шага будет отправлен HTTP-запрос на указанный URL-адрес, используя определенное тело и заголовок.

Вы можете направлять рабочий процесс на основе статуса ответа. Например, вы можете создать Шаг «код состояния равен 200». Если получен какой-либо другой код статуса ответа, Jump Step может вернуть Контакты на шаг HTTP-запроса. В качестве альтернативы Контакт может быть направлен в ветку «Отказ», если условия ветки не выполнены. Если в ветви «Отказ» не настроено ни одного шага, рабочий процесс будет завершен.

Если ваш HTTP-запрос превысит 10 секунд, это приведет к тайм-ауту, что приведет к сбою запроса.

Потенциальный провал

Чтобы избежать возможных сбоев при выполнении HTTP-запросов, убедитесь, что выполнены следующие условия:

  • Используйте правильный метод HTTP и заголовок Content-Type.

  • Обязательно включите требуемый протокол http:// или https:// в свой URL-адрес в зависимости от того, что поддерживает ваша система, чтобы избежать сбоя запроса.

  • Убедитесь, что Content-Type является допустимым.

  • Исключите номер порта из URL.

  • Избегайте использования самоподписанного сертификата в URL-адресе.

  • Убедитесь, что разрешение действительно.

  • Убедитесь, что наши IP-адреса (52.74.35.155, 18.138.31.163, 54.169.155.20) не заблокированы.

Если какое-либо из вышеперечисленных условий не выполнено, Контакт пропустит этот шаг и продолжит оставшуюся поездку.

При проверке выходных данных HTTP-запроса с динамическими переменными помните, что переменные без значения вернутся как null и undefined.

Лучшие практики

Вот несколько рекомендаций по этому шагу, которые вы можете использовать для оптимизации своего рабочего процесса:

Когда HTTP-запрос успешен

  1. Сохранить статус ответа как переменную:

    1. Убедитесь, что первым шагом является сохранение статуса ответа в переменную для дальнейших действий.

  2. Шаг ветви:

    1. Добавьте шаг ветви для оценки статуса HTTP-запроса.

    2. Если статус 200, запрос выполнен успешно.

    3. Если нет, настройте оповещение, чтобы уведомить менеджера о невыполненном запросе.

  3. Google Sheetдля мониторинга:

    1. Запишите статус ответа в Google Таблицу, чтобы иметь четкое представление об успешности или неудаче запросов.

  4. Комментарий:

    1. Добавьте комментарий в свой рабочий процесс, чтобы задокументировать статус ответа. Это поможет вам более эффективно отслеживать и анализировать ошибки.

Когда HTTP-запрос не выполняется

  1. Сохранить статус ответа как переменную:

    1. Аналогично успешному запросу, сохраните статус ответа в переменную для обработки ошибок.

  2. Использовать ожидание или переход к шагу для повторных попыток:

    1. Реализуйте шаг ожидания, чтобы сделать паузу перед повторной попыткой выполнить неудачный запрос.

    2. Либо используйте Jump Step, чтобы вернуться к шагу HTTP-запроса и повторить попытку запроса.

  3. Комментарий:

    1. Задокументируйте ошибку, создав комментарий для записи ошибки HTTP-запроса.

    2. Укажите контактную информацию и ответственное лицо.

  4. Google Таблица для мониторинга:

    1. Используйте Google Sheet Step для регистрации контактной информации и сведений об ошибках для мониторинга и проверки.

  5. Задание:

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

Предлагаемые варианты использования

Вот несколько способов использования шага HTTP-запроса:

  • Маршрутизация VIP-контактов: используйте шаг HTTP Request, чтобы получить данные контакта из хранилища данных, например из CRM. Это позволяет вам идентифицировать VIP-контакты, обеспечивая персонализированный клиентский опыт и отличая их от обычных контактов.

Часто задаваемые вопросы и устранение неполадок

Могу ли я вызывать конечную точку API, требующую аутентификации OAuth 2.0?

Нет. HTTP Request не поддерживает потоки аутентификации OAuth 2.0, такие как получение согласия пользователя, обмен кода авторизации, обновление токена доступа или динамическая генерация токенов.

Вы можете использовать HTTP Request с конечными точками, которые принимают простые методы аутентификации, такие как API-ключи или статические токены, добавляемые в URL, параметры запроса или заголовки.

Например, если вы вызываете конечную точку Google API и запрос не выполняется, проверьте, требует ли эта конечная точка аутентификации OAuth 2.0. Если да, то это не поддерживается. Если вместо этого конечная точка поддерживает API-ключи или статические токены, вы можете использовать этот метод аутентификации в настройках HTTP Request.

Поделиться этой статьей
Telegram
Facebook
Linkedin
Twitter

Не удается найти то, что вы ищете? 🔎