HTTP Requests
Every request is handled and tracked by a HTTP Request record.
HTTP Request records are created every time an HTTP Request is generated for sending to or receiving from an external system. They contain all the low-level data about the individual request; the headers, the payload, the URL, timings, etc.
These records are extremely useful for developing and debugging integrations because of the immediate availability and contextual relevance to the integration you are developing. You will often find that it is easier to debug an integration from within Unifi than it is from any external system.
State Control
The Request will be inserted in a ‘Ready’ state. Unifi will then asynchronously pick it up and process it. The following table defines the state
field value choices:
Pending*
0
The HTTP Request is waiting to be processed asynchronously, but in a retry scenario it is waiting for the synchronous timeout specified on the Integration.
Ready**
1
The HTTP Request is ready to be processed outbound.
OK
1
There are no errors with the HTTP Request.
Error
3
There was an error with the HTTP Request.
Cancelled
4
The HTTP Request was cancelled.
*Pending
(After a failure the HTTP Request is created straight away, but remains in a ‘Pending’ state until the timer has finished.)
**Ready
Inbound HTTP Requests are currently processed synchronously and therefore will only ever be ‘OK’ or ‘Error’.
HTTP Request Fields
The following table gives a description of the fields that are visible on the HTTP Request record:
Number
String
The unique HTTP Request identifier.
Integration
Reference
The integration this record belongs to.
Connection
Reference
The connection this request will use.
Transaction
Reference
The transaction this record belongs to.
Message
Reference
The message used to process this record.
Response Action
Reference
The Response Action that handled this request.
Direction
Choice
The direction this record is travelling in.
Request state
Choice
The state of the request.
Attempt number
Integer
The number of HTTP Request attempts. Failed requests are retried up to the maximum attempts number as configured on the Integration.
Source type
String
The Source type that created this request.
Request Fields
The following table gives a description of the Request fields that are visible on the HTTP Request record:
Endpoint URL
URL
The external system’s access URL.
Action method
String
The SOAP Action or the REST Method to use for this request.
Request headers
String
A JSON object containing the headers sent with this request.
Request payload
String
The payload of the request being sent or received.
Time
Glide date time
The time this request was processed.
Size (bytes)
Integer
The size in bytes of the request payload.
Mid server
Reference
The MID server used to send this request.
Response Fields
It is often far quicker and easier to tell what has been sent from the integrated system by looking at the values in the Response fields in Unifi than it is to get the same information from the system that has sent it.
The following table gives a description of the Response fields that are visible on the HTTP Request record:
Status code
String
The response status code.
Time to send
Integer
The time taken in milliseconds to receive a response.
Status text
String
The HTTP status text.
Response headers
String
A JSON object containing the headers sent in response to this request.
Response payload
String
The payload of the response being sent or received.
Debugging
Unifi logs can be viewed by navigating to the 'Unifi Activity Logs' related list.
Activity Logs
The logs that relate to the HTTP Request are as follows:
RestHelper
An inbound request has been received and generated an inbound HTTP Request.
Request sending
Here Unifi is processing the outbound HTTP Request and sending it to the integrated system.
The logs that can be viewed from the HTTP Request record relate to the HTTP Request only.
Replay Request
You can click the Replay Request button on the HTTP Request record to replay that request.
This will be used when testing/debugging. For example, if the Request errors you may want to edit the payload & then replay the Request to check if the error clears.
Last updated