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:
Label | Sequence | Description |
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:
Field | Type | Description |
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:
Field | Type | Description |
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:
Field | Type | Description |
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