NewHttpRequest, BaseAddress, and Headers are the setup commands that shape an HTTP call before Request sends it.
Use them together when you need reusable request objects, a shared URL prefix, or explicit request headers.
{
"BaseAddress": { "Address": "https://%Address%" }
}
{
"NewHttpRequest": { "ObjectName": "SystemRequest" }
}
{
"Headers": {
"RequestObjectName": "SystemRequest",
"AddHeaders": {
"Accept": "application/json",
"Authorization": "SSWS %FuncPassword%"
}
}
}
{
"Request": {
"RequestObjectName": "SystemRequest",
"ResponseObjectName": "SystemResponse",
"Verb": "GET",
"Url": "api/v1/users/%ParsedUser%",
"SubstitutionInUrl": true,
"IgnoreServerCertAuthentication": "%SkipServerCertValidation%"
}
}Creates an empty named request object that later commands can configure.
{ "NewHttpRequest": { "ObjectName": "SystemRequest" } }| Name | Type | Required? | Description |
|---|---|---|---|
ObjectName |
String | Yes | Variable name for the request object. |
Sets the shared base URL for later relative Request.Url values.
{ "BaseAddress": { "Address": "https://%Address%" } }| Name | Type | Required? | Description |
|---|---|---|---|
Address |
String | Yes | Base URL prefix, such as https://example.com or http://%Address%:%Port%. |
Adds one or more headers to a named request object.
{
"Headers": {
"RequestObjectName": "SystemRequest",
"AddHeaders": {
"Accept-API-Version": "resource=2.0, protocol=1.0",
"X-OpenAM-Username": "%AccountUsername%",
"X-OpenAM-Password": "%AccountPassword%"
}
}
}| Name | Type | Required? | Description |
|---|---|---|---|
RequestObjectName |
String | Yes | Existing request object to modify. |
AddHeaders |
Object | Yes | Header name/value map to add to the request object. Values support variable substitution and expressions. |
From samples/http/wordpress/WordPressHttp.json:
{
"Condition": {
"If": "UseSsl",
"Then": {
"Do": [
{ "BaseAddress": { "Address": "https://%Address%" } }
]
},
"Else": {
"Do": [
{ "BaseAddress": { "Address": "http://%Address%" } }
]
}
}
}
{
"NewHttpRequest": { "ObjectName": "SystemRequest" }
}From samples/http/okta-discovery/Okta_WithDiscoveryAndGroupMembershipRestore.json:
{
"Headers": {
"RequestObjectName": "SystemRequest",
"AddHeaders": {
"Authorization": "SSWS %FuncPassword%"
}
}
}From samples/http/forgerock-openam/Forgerock_OpenAM.json:
{
"Headers": {
"RequestObjectName": "SystemRequest",
"AddHeaders": {
"Accept-API-Version": "resource=2.0, protocol=1.0",
"X-OpenAM-Username": "%AccountUsername%",
"X-OpenAM-Password": "%AccountPassword%"
}
}
}
BaseAddressis stored in the current script context, not inside a single request object. Once set, later relativeUrlvalues resolve against it until anotherBaseAddresscommand changes it.
HeadersandHttpAuthexpect a real request object. In practice, create it first withNewHttpRequest.
Add each header name once per request object. The request object stores headers in a dictionary, so attempting to add the same header again in a later
Headerscommand can fail.