HTTP Request

Sends an HTTP request.

Object Representation (YAML)

id: String
name: String
type: String
depends: [String]
tags: [String]
condition: Boolean
each: Array
while: String
until: String
verbosity: String
ignore_errors: Boolean
tool_options: Object
properties:
  url: String
  method: String
  headers:
    - key: String
      value: String
  body: String
  response_type: String
  timeout: Number
  status_code: Number
  status_codes: [Number]
  dest: String
  validate_certs: Boolean
  credential: String

Fields

Property Details
id *

String

A unique identifier for the step.

Can contain hyphens and underscores, but not spaces.

name *

String

A friendly name for the step. This name will appear in the pipeline designer and run output.

type *

String

The type of the step. Can be pipeline or a step module type.

depends[]

[String]

A list of dependencies of this step.

This step will not be executed until all steps with ids in this list are finished executing.

tags[]

[String]

Tags are used to group related steps. Steps with the same tag can be retrieved using the findStepsByTag() helper function.

Can contain hyphens and underscores, but not spaces.

condition

Boolean

An expression which is evaluated before the step executes. If it evaluates to false, the step will be skipped. The step.result.status field will be "Skipped".

each

Array

An expression which evaluates to an array. It is evaluated once before the first iteration. There will be one iteration for each element of the array. An empty array ([]) will results in no iterations being executed.

while

String

A boolean expression evaluated before each iteration. When the expression evaluates to false, iteration stops. If false before the first iteration, no iterations will be executed.

until

String

A boolean expression evaluated after each iteration. When the expression evaluates to true, iteration stops. The first iteration will always be excuted with no regard for the value of the expression.

verbosity

String

Step event verbosity. Determines how much information about step execution is sent back to the application.

ignore_errors

Boolean

If true, errors in the step module will not halt pipeline execution, and subsequent steps will still be executed. The step.result.status field will be "Failed" if the step encounters an error.

tool_options

Object

-

properties.url *

String

URL of the web endpoint, including path and query params.

properties.method

String

HTTP request method. One of GET, PUT, POST, PATCH, DELETE, HEAD.

properties.headers[]

[Object]

A list of HTTP headers.

properties.headers[].key *

String

The header key/name.

properties.headers[].value *

String

The header value.

properties.body

String

HTTP request body

properties.response_type

String

Response Type. One of json, text, binary.

properties.timeout

Number

Request timeout. Throws an error if the request does not complete within this number of seconds.

properties.status_code

Number

A single HTTP status code indicating success. An error is thrown if the response status code does not match this value. Defaults to 200.

properties.status_codes[]

[Number]

One or more HTTP status codes indicating success. An error is thrown if the response status code is not one of these values. Defaults to [200].

properties.dest

String

If provided, the HTTP response body will be written to a file at this path.

properties.validate_certs

Boolean

Whether to ignore HTTPS certificate validation errors.

properties.credential

String

The ID of a credential to use for HTTP authentication. Supported credential types are Username/Password (for Basic authentication) and Bearer Token.

Result Fields

The following are the step execution result fields available at steps.<step id>.result after a step executes.

Key Details
result.status

String

A string indicating the step execution status. Can be Succeeded, Failed, or Skipped.

result.status_code

Number

The HTTP response status code.

result.status_text

String

The HTTP response status text, such as OK or Forbidden.

result.headers

Object

The HTTP response headers as an object.

result.body

Mixed

HTTP response body. If the response Content-Type is a variant of application/json, this value will be an object. Otherwise it will be a string.