Skip to content
  • Administrator Knowledge Base
  • Supervisor Knowledge Base
  • Agent Knowledge Base
  • Administrator Knowledge Base
  • Supervisor Knowledge Base
  • Agent Knowledge Base
Horizon Contact Admin Help
Release Notes
Horizon Contact Admin Help

Administrator Portal and Setup

  • Quick Setup Guide
  • Setup Guides and Templates
  • Privileges summary
  • Administrator Portal Overview
  • Full Setup Guide
    • Setup 1: Setting up agents
    • Setup 2: Preparing assets
    • Setup 3: Assigning user groups
    • Setup 4: Creating queues
    • Setup 5: Multiple groups
    • Setup 6: Queue Numbers
    • Setup 7: Adding audio files
    • Setup 8: Customising queue recordings
    • Setup 9: Customising agent recordings
    • Setup 10: Queue KPIs
    • Setup 11: Advanced setup
    • Setup 12: Queue Announcements
    • Setup 13: Callback setup
    • Setup 14: Customising time ranges
  • Administrator Information
    • What I can see on my screen after I log in
    • Change password
    • Change Language
    • Searching a list
    • Searching a dropdown list of items

Staff Management

  • Status data report
  • Users
    • Call Recording
    • Resetting user passwords
    • Modifying an existing user account
    • Configuring recording for a user account
    • Chat recording
    • Viewing agent contact details
    • Setting the IVR PIN
    • Viewing agent capability
  • Groups
    • User groups
    • Creating and adding a user group
    • Editing or deleting a user group
    • Copying a user group
  • Roles
    • Roles, privileges and profiles
    • Best practice when creating different versions of a role
    • Managing roles
    • Assigning and Customising Roles and Privileges
  • Break Reasons
    • Managing break reasons
    • Break reasons overview
  • Holiday Lists
    • Create a holiday list
    • Manage Holiday Lists
  • Time Ranges
    • Managing time ranges
    • Creating and adding a time range
    • Defining rules for a relative time range
    • Defining rules for an absolute time range
    • Editing or deleting a time range
    • Copying a time range
  • External Destinations
    • Managing external destinations
    • External destinations

Calls Management

  • Simultaneous ringing overview
  • Scheduling a call
  • Direct calls overview
  • Call data reports
  • Call Flows
    • Call routing flows
    • Modify user-configurable parameters for call flows
    • Call Flow Tutorial
    • Setting up an auto attendant for BC/DR Treatments
    • Call Flow Templates
      • Call Flow Tips and Tricks
      • Call Flow Templates
      • Call Flow Template 1
      • Call Flow Template 2
      • Call Flow Template 3
      • Call Flow Template 4
  • Service Numbers
    • Managing service numbers
    • Update a service numbers call flow or user-configurable parameters
    • Update an existing service number
  • Campaigns
    • Viewing campaign progress
    • Importing lists of campaign numbers
    • Create an outbound campaign
    • Managing outbound campaigns
    • Managing campaign numbers
    • How do campaigns work?
  • Queues
    • Call queue introduction
    • Create a call queue
    • Managing call queues
    • Assigning agent groups to a call queue
    • Configuring agent outbound dialling
    • Configuring wrapup settings
    • Adding queue audio
    • Managing in-queue audio
    • Defining when in-queue announcements are played
    • Configuring opt in/out options for caller recording
    • Customising agent call recording buttons
    • Configuring call recording for queues
    • Defining call-queue KPIs
    • Configuring advanced settings for a call queue
    • Configuring callbacks for a queue
    • Configuring callback slots for a queue
  • Playbooks
    • Managing play books
  • Audio Files
    • Managing audio files
    • System audio files
    • Adding audio announcements
    • Text-to-speech overview
    • Uploading Audio Files
    • Generate text-to-speech audio
  • Area Codes
    • Create an area-code group
    • Managing an area-code group
    • Importing and exporting area-code numbers
  • Number Lists
    • Managing number lists
    • Importing number lists
  • Global Variables
    • Managing global variables
  • Surveys
    • Managing after-call surveys
    • How after-call surveys are handled
    • Configuring survey parameters
  • Call Slots
    • Managing call slots
    • Callback slot announcements
    • What are call slots?
    • What are callbacks?

Flow Management

  • Introduction to Routing Flows and the Flow Editor
  • Benefits of Routing flows
  • Managing Routing Flows
    • Introduction to Node types
    • Node Parameter Values
    • Create and publish a new routing flow
    • Making nodes available from the Node Type library
    • Configuring nodes in a routing flow
    • Configuring variables in a routing flow
    • Adding user-configurable values
    • User-configurable parameter options
    • Additional flow editor functionality
    • Managing existing routing flows
    • Importing or Exporting a routing flow
    • Routing Flow Templates
  • Standard Node Types
    • Call delivery and routing node types
    • Caller interaction node types
    • Branching node types
    • Outdial node types
    • Queue node types
    • Email node types
    • Work-item node types
    • Company configuration node types
    • External destination node types
    • HTTP node types
    • Integrated PBX node types
    • Webchat node types
    • Miscellaneous node types

Webchat Management

  • Webchat overview
  • How the web-client interface works
  • Managing Webchat services
  • Webchat data reports
  • Classifying a webchat
  • Webchat Queues
    • Configuring advanced settings for a chat queue
    • Creating and managing a webchat queue
    • Defining chat-queue KPIs
    • Defining when in-queue announcements are displayed
    • Webchat queues overview
    • Assigning agent assets to a webchat queue
  • Webchat Flows
    • Managing Webchat flows
    • Modify user-configurable parameters for Webchat flows
    • Webchat flow templates
      • Chat flow templates
      • Chat Flow Template 1
      • Chat Flow Template 2
      • Chat Flow Template 3
      • Chat Flow Template 4

Email Management

  • Email overview
  • Email data reports
  • Supporting a shared email address
  • Settings required for adhoc outbound email
  • Classifying an email
  • Email Servers
    • Email Server recommended settings
    • Email Server Setup Guide
    • Viewing the default system email server
    • Viewing the email servers’ status
    • How email servers and authentication work
    • Managing email servers
    • Email Server Setup Guide
      • Email 1: Setting up users for email
      • Email 2: Setting up groups for email
      • Email 3: Creating text blocks for email
      • Email 4: Preparing assets for email
      • Email 5: Creating email classifications
      • Email 6: Creating email queues
      • Email 8: Email server settings
      • Email 7: Email Flow Templates
  • Email Flows
    • Managing email flows
    • Modify user-configurable parameters for email flows
    • Email Flow Templates
      • Email Flow Template 1
      • Email Flow Template 2
      • Email Flow Template 3
  • Email Queues
    • Email queues overview
    • Creating and managing an email queue
    • Defining email-queue KPIs
    • Configuring advanced settings for an email queue
    • Assigning agent assets to an email queue

SMS Management

  • SMS overview
  • Configuring SMS Templates
  • Configuring SMS From Addresses
  • Create an SMS queue
  • Configuring automated SMS
  • Managing SMS queues
  • Outbound SMS data reports

Safe-Pay Management

  • Safe-Pay data reports
  • The cardholder’s view
  • How Safe-Pay works
  • Merchant Configuration
  • Configure Payment Queues
  • PSP Configuration
  • PSP – Link Delivery
  • Editing or deleting a payment queue
  • Configuring Safe-Pay
  • PSP – Additional Parameters
  • PSP – Advanced Limits
  • PSP – Digital Wallets for Stripe PSP Configuration

Agent Assets Management

  • Agent scripts overview
  • Configuring agent scripts
  • Configuring agent script sections
  • Configuring text blocks
  • Managing text blocks
  • Managing attachments

Data Management

  • Reports Management
    • Reports overview
    • Loading or creating a report
    • Scheduling report generation
    • Generating and exporting a contact report
    • Managing contact reports
    • Scheduling contact report generation
    • Agent scripts data
    • Offline Reporting
      • Managing offline reporting destinations
      • The offline reporting datastore
      • Offline reporting events
      • Agent call event fields
      • Agent status event fields
      • Call queue event fields
      • Contact call event fields
      • Missed call event fields
  • Report Types
    • Call data reports
      • Callers report
      • Call flow report
      • Calls report
      • Call transfers report
      • External destination report
      • IVR report
      • Queue transfers report
      • Scheduled calls report
      • Service-number report
      • Call Classifications report
      • Voicemail report
      • Unreturned missed calls report
      • Queues – Abandoned Calls Report
      • Queues – Service Level Report
      • Call trace reports
      • Dropped calls report
      • Queue report
      • Agent report
    • Status data reports
      • Break reasons report
      • Working hours report
    • Diagnostic reports
      • Activity audit report statistics
      • Status change report
    • Email data reports
      • Email agent report
      • Email flow report
      • Email queue report
      • Email classifications report
      • Inbound emails report
      • Outbound email agent report
      • Outbound email recipient report
      • Outbound email template report
    • Webchat data reports
      • Webchat agent report
      • Webchat flow report
      • Webchat queue report
    • Outbound SMS data reports
      • Outbound SMS agent report
      • Outbound-SMS recipient report
      • Outbound SMS template report
    • Safe-Pay data reports
      • Safe-Pay agent report
      • Safe-Pay payments report
  • Wallboards
    • Managing wallboards
    • Customising a wallboard
    • Wallboards overview
    • Filtering the Agents Overview widget
    • Filtering wallboard widgets
    • Filtering the call queues for Company Summary widgets
  • Classifications
    • Managing classifications
    • Classifications Overview

Customer-related tasks

  • CRM overview
  • Creating a new contact record
  • View a customer’s contact record
  • Modifying a customer’s details
  • Deleting webchat conversations from customer contact records
  • Importing customer details
  • Exporting customer details
  • Configuring custom fields and tags
  • Assigning tags to a customer record
  • Managing columns

CRM Integration

  • Contact CRM Integration Developer Guide
  • Salesforce Integration
    • Salesforce Integration overview
    • Salesforce Integration procedure
  • Zendesk Integration
    • Zendesk Integration Overview
    • Installing Contact in Zendesk
    • Contact Zendesk Integration
    • Using Contact with Zendesk
  • Care Connect Integration
    • Using Care Connect
    • Contact Care Connect
  • ConConnect Integration
    • Introduction to ConConnect
    • Configuring ConConnect
    • Install ConConnect
  • Microsoft Dynamics Integration
    • Microsoft Dynamics Integration overview
    • Microsoft Dynamics Integration procedure

System Management

  • Configuring system assets
  • Managing system themes
  • Managing media files
  • Displaying the online help
  • Microsoft Edge Integration
  • Configuring ODS codes for automated NHSE reporting
  • Configuring agents’ unavailability
  • Configuring what agents can view on their web portal
  • Configuring email editor options
  • Channel blending
  • Configuring system channels
  • Changing the blending formula of channels
  • Changing the importance weighting of a channel queue
  • Changing Agent Capacities
  • Configuring an SFTP destination
  • Managing reporting destinations
  • Diagnostics data reports
  • Home
  • Docs
  • Flow Management
  • Standard Node Types
  • HTTP node types
View Categories

HTTP node types

Simple JSON
This node type provides simple JSON-encode capabilities. It will create a JSON string that contains a single object with multiple name/value pairs.

This node type provides simple JSON-encode capabilities. It will create a JSON string that contains a single object with multiple name/value pairs.

Note: The JSON string formed by this node might typically be provided as the Body parameter to a subsequent REST Query or Prepare REST Request node. See REST Query or Prepare REST Request.

Instead of providing a value directly in the node parameter for a particular name/value pair, a number of placeholders may be specified instead. Where the resulting JSON string is used in a subsequent REST request node (see above), the system replaces these placeholders with the appropriate values when the REST request is sent.

The following parameters can be set:

ParameterHow many?TypeDescription
JSON Output String1StringThe variable in which to store the resulting JSON string.
Integers0 to 20
NameStringThe name for this name/value pair.

This parameter can be set to User-configurable.
ValueIntegerThe value for the name/value pair.

This parameter can be set to User-configurable.
Strings0 to 20
NameStringThe name for this name/value pair.

This parameter can be set to User-configurable.
ValueStringThe value for the name/value pair.

This parameter can be set to User-configurable.
Booleans0 to 20
NameStringThe name for this name/value pair.

This parameter can be set to User-configurable.
ValueBooleanThe value for the name/value pair.

This parameter can be set to User-configurable.
Placeholders0 to 20
NameStringThe name for this name/value pair.

This parameter can be set to User-configurable.
ValueEnumThe placeholder to set as the value for this name/value pair. One of: Time, Event, Agent Username or Queue Name.

These will be replaced as follows:

Agent External ID – replaced with the External ID value as configured for an agent’s user account, in the Administrator Portal

Agent Username – replaced with the username of the agent who is being called

Event – replaced with one of the following strings: AGENT_RINGING, AGENT_ANSWERED, TRANSFER_RINGING, or TRANSFER_ANSWERED

Queue Name – replaced with the name of the queue on which the current call resides or, in the case of an attended queue consult/transfer, the name of the target queue

Time – replaced with a string in ISO 8601 compatible format.

The following branch can be taken:

BranchHow many?Description
Success1This branch is always taken.

REST Query
This node type is used to send an arbitrary HTTP request to an external HTTP server. It might be used, for example, to retrieve details from an external CRM system or to inform an external system that a call has arrived.

This node type is used to send an arbitrary HTTP request to an external HTTP server. It might be used, for example, to retrieve details from an external CRM system or to inform an external system that a call has arrived.

This node allows, for example, external systems to be notified of or passed information pertaining to Contact calls, such as individual customer interactions, statistics, etc. for monitoring, configuration and data-analysis purposes.

If the Replace Placeholders parameter is set to true, the system will replace any placeholders found in the body text with the appropriate values when the request is sent. Supported placeholders are: ##agentExternalId##, ##agentUsername##, ##event##, ##queueName## and ##time##. For convenience, a Simple JSON node can be used to construct a JSON string that includes these placeholders as values. These placeholders will be replaced as follows:

  • ##agentExternalId## – replaced with the External ID value as configured for an agent’s user account, in the Administrator Portal.
  • ##agentUsername## – replaced with the username of the agent who is being called
  • ##event## – replaced with one of the following strings: AGENT_RINGING, AGENT_ANSWERED, TRANSFER_RINGING, or TRANSFER_ANSWERED
  • ##queueName## – replaced with the name of the queue on which the current call resides or, in the case of an attended queue consult/transfer, the name of the target queue
  • ##time## – replaced with a string in ISO 8601 compatible format.

If required, you can modify the header when sending a HTTP request (for example, for authentication purposes) and add additional headers. If the response to the REST request contains a JSON body, the node type allows for specified parts of that data to be read out into provided variables.

Note: Unlike the Prepare REST Request node, this node type sends the HTTP request immediately.

Note: If required, some of the parameters for this node type can be set to User-configurable so that they can accept values specified by a company administrator. For more information, see Adding user-configurable values.

The following parameters can be set:

ParameterHow many?TypeDescription
URL1StringThe URL for this HTTP request.This parameter can be set to User-configurable.
Body1StringThe body of the outbound HTTP request.This parameter can be set to User-configurable.
Content Type1EnumOne of: JSON, TEXT/PLAIN or TEXT/HTML.
Replace Placeholders0 or 1BooleanWhether or not placeholder tags are replaced in the body of the HTTP request at the point when the HTTP request is sent.

The placeholders are defined above.

This parameter can be set to User-configurable.
Method1EnumThe HTTP method to use for the request. One of: POST, GET, DELETE or PUT.

Note: If the HTTP method is set to GET, the Body parameter is omitted.
Request Headers0 to 50Optional headers for the HTTP request.
Name0 or 1StringThe name of the header in the HTTP request.

This parameter can be set to User-configurable.
Value0 or 1StringThe value to assign to the header.

This parameter can be set to User-configurable.
Response DataOptional values for different parameter types that can be set from a JSON response body. If the HTTP response contains a JSON body, these optional parameters allow parts of that JSON data to be read into the provided variables.
Integer Parameters0 to 50
Variable0 or 1IntegerThe variable into which to place the read value.
Path0 or 1StringThe path of the value to read.

See the example below.This parameter can be set to User-configurable.
Default0 or 1IntegerThe value to write to the variable if no value is found at the given path.

This parameter can be set to User-configurable.
Float Parameters0 to 50
Variable0 or 1FloatThe variable into which to place the read value.
Path0 or 1StringThe path of the value to read. See the example below.

This parameter can be set to User-configurable.
Default0 or 1FloatThe value to write to the variable if no value is found at the given path.

This parameter can be set to User-configurable.
String Parameters
0 to 50
Variable0 or 1StringThe variable into which to place the read value.
Path0 or 1StringThe path of the value to read. See the example below.

This parameter can be set to User-configurable.
Default0 or 1StringThe value to write to the variable if no value is found at the given path.This parameter can be set to User-configurable.
Boolean Parameters0 to 50
Variable0 or 1BooleanThe variable into which to place the read value.
Path0 or 1StringThe path of the value to read. See the example below.

This parameter can be set to User-configurable.
Default0 or 1BooleanThe value to write to the variable if no value is found at the given path.

This parameter can be set to User-configurable.

Note: If the external HTTP server does not return a value or if the type of returned value is incompatible with the call-flow variable type, (for example, the server returns the string “hello” in the response body in a Path that is assigned to a Boolean parameter, the Default parameter value is used and the Next branch is taken.

The following branches can be taken:

BranchHow many?Description
Next1The branch to take if the HTTP request succeeds.
Failed1The branch to take if the HTTP request fails. Failure is indicated by any response code in the range 400 to 599.

Example usage of the JSON path #

An HTTP REST request is sent to an external HTTP server, which returns the following JSON:

{
  "result": {
    "success": true,
    "details": {
      "code": 100,
      "message": "Success"
    }
  },
  "data": [
    { "name": "Alice", "age": 27 },
    { "name": "Bob", "age": 47 }
  ]
}

Given the above data, the following paths would result in the following values being written to the provided variable:

PathTypeValue
result.successBooleantrue
result.details.messageStringSuccess
data.0.nameStringAlice
Data.1.ageInteger47

This data is then passed to a Compare String node, which directs the call as appropriate.

Prepare REST Request
This node type is used to prepare an arbitrary HTTP request to be sent to an external platform. Any prepared requests will be sent when the specified agent-related events occur.

This node type is used to prepare an arbitrary HTTP request to be sent to an external platform. Any prepared requests will be sent when the specified agent-related events occur.

The HTTP request is only sent when triggered by a specific event, such as when an agent is being alerted to an incoming call or when they answer a call. Multiple REST queries can be prepared for the same event.

This node allows, for example, external systems to be notified of or passed information pertaining to Contact calls, such as individual customer interactions, statistics, etc. for monitoring, configuration and data-analysis purposes.

If the Replace Placeholders parameter is set to true, the system will replace any placeholders found in the body text with the appropriate values when the request is sent. Supported placeholders are: ##agentExternalId##, ##agentUsername##, ##event##, ##queueName## and ##time##. For convenience, a Simple JSON node can be used to construct a JSON string that includes these placeholders as values. These placeholders will be replaced as follows:

  • ##agentExternalId## – replaced with the External ID value as configured for an agent’s user account, in the Administrator Portal.
  • ##agentUsername## – replaced with the username of the agent who is being called
  • ##event## – replaced with one of the following strings: AGENT_RINGING, AGENT_ANSWERED, TRANSFER_RINGING, or TRANSFER_ANSWERED
  • ##queueName## – replaced with the name of the queue on which the current call resides or, in the case of an attended queue consult/transfer, the name of the target queue
  • ##time## – replaced with a string in ISO 8601 compatible format.

If required, you can modify the header when sending a HTTP request (for example, for authentication purposes) and add additional headers.

Note: Unlike the REST Query node, this node type does not send the HTTP request immediately, but instead stores the request details so that the request can be sent when a particular event (or a set of events) occurs.

Note: If required, some of the parameters for this node type can be set to User-configurable so that they can accept values specified by a company administrator. For more information, see Adding user-configurable values.

Note: Only the ports below can be used to setup the node:

  • 80 (http)
  • 443 (https)
  • 25 (smtp)
  • 465 (smtps)
  • 587 (smtp)
  • 110 (pop)
  • 995 (pops)
  • 143 (imap)
  • 993 (imaps)

The following parameters can be set:

ParameterHow many?TypeDescription
Events0 to 4EnumWhen this HTTP request should be sent:

Agent Ringing – As soon as the agent’s phone starts to ring
Agent Answered – As soon as the agent answers a call
Transfer Ringing – As soon as the phone starts to ring for a consulted party or one to which a call has been transferred
Transfer Answered – As soon as the consulted party or one to which a call has been transferred answers the call
URL1StringThe URL for this HTTP request.

This parameter can be set to User-configurable.
Body1StringThe body of the outbound HTTP request.

This parameter can be set to User-configurable.
Content Type1EnumOne of: JSON, TEXT/PLAIN or TEXT/HTML.
Replace Placeholders0 or 1BooleanWhether or not placeholder tags are replaced in the body of the HTTP request at the point when the HTTP request is sent.

The placeholders are defined above.

This parameter can be set to User-configurable.
Method1EnumThe HTTP method to use for the request. One of: POST, GET, DELETE or PUT.

Note: If the HTTP method is set to GET, the Body parameter is omitted.
Request Headers0 or 50Optional headers for the HTTP request.
Name0 or 1StringThe name of the header in the HTTP request.

This parameter can be set to User-configurable.
Value0 or 1StringThe value to assign to the header.

This parameter can be set to User-configurable.

The following branches can be taken:

BranchHow many?Description
Next1The branch to take if the HTTP request succeeds.
Failed1The branch to take if the HTTP request fails. Failure is indicated by any response code in the range 400 to 599.
How did you find this training?
External destination node typesIntegrated PBX node types
Table of Contents
  • Example usage of the JSON path

End User License Agreement