Overview
The Make HTTP Request action will perform an HTTP(S) request from the Workflow system to a specified address. It allows you to specify the method, the body of the request, as well as any desired HTTP headers.
Using the Make HTTP Request action, you can:
Easily integrate with CostGuard APIs
Integrate with arbitrary third-party APIs
Achieve greater flexibility than the existing Web API action
Action Parameters
Parameter Name | Required? | Description |
|---|---|---|
Address | Yes | The address to which the HTTP request should be made |
Method | Yes | The HTTP method to use when making the request. Supported methods are: GET, DELETE, PATCH, POST, PUT. |
Include IDI Security Token | No | If set to “Yes”, the request send will include an |
Authorization | No | The value specified here will be sent as the value of the |
Content-Type | No | The value specified here will be sent as the value of the |
Additional Headers | No | A JSON object that represents any additional headers to be sent in the request. (The keys of the object should be the name of the HTTP header, the values should be the value of the header.) |
Body | No | The body of the request. |
Examples
Use in a Workflow Instance: Interact with an external system at a certain point in a Workflow instance
In this example, we’ll assume we have a Workflow for managing the flow of a new employee hire. After the employee has completed security training, we want to create a record for the employee in an external security system. We can do this by adding a task to perform the Make HTTP Request Action.
Assume we have the following:
The security system allows creating employee records with the following address:
https://security.mycompanyapis.com/api/employee. The request should be a POST and specify at leastemployeeIdandemployeename in a JSON body.Our Workflow has two pieces of extended data,
Employee IDandEmployee Namethat we want to use in the request to the third-party system.We need to supply a token in the Authorization header:
MySecurityToken.
With this information, we can configure a task in our Workflow with the Make HTTP Request action with the following parameters:

Use in a Trigger: Sync customer data when changed
In this example, we’ll assume that we have an external system for managing customer information, and we would like to keep it in sync when customer data in CostGuard changes. We can do this using a combination of the Customer Modified trigger and the Make HTTP Request action.
Assume we have the following:
The external customer system allows modifying customer records with the following address:
https://customer.mycompanyapis.com/api/customer/{id}. The request should be a PATCH, and specify a JSON object as the body that contains new values for properties that should be changed.We need to supply a token in the Authorization header:
MySecurityToken.We only care (for this example) about syncing the customer’s name.
We can configure the trigger as such:

Response Handling
Timeout
The Make HTTP Request action is configured to have a two minute timeout.
Status Codes
Depending on the returned HTTP status code, different actions will be performed.
Status Code | Description | Result | Action |
|---|---|---|---|
| Any status code between 200 and 299 | Success | If used in a task: the task will be completed. If used in a trigger: no action. |
| Any status code between 300 and 499 | Error | If used in a task: the task will be immediately errored, and a note will be written indicating the error message. If used in a trigger: no action, but the failure will be logged with the message and viewing the event in the Trigger History will provide context into the failure. |
| Any status code in the 500s | Retry | The request will be retried, up to ten (10) times. If, after the tenth time, the response is still |
Using HTTPS
When attempting to use HTTP the following considerations should be made:
When possible use a fully qualified domain name for the address. For example, https://api.mycompany.com/api/foo. It is important that the domain on the SSL certificate bound to your web service matches the domain in the address.
The certificate used should be signed by a trusted source and not a self-signed certificate.