Sends an HTTP request to the specified URL.
For more information, see Make an HTTP request.
Arguments
Arguments | |
---|---|
url |
The URL to send the request to. |
timeout |
The request timeout, in seconds (default: |
body | If present, the request body ( requests do generally require a body). If a Content-Type header is not specified and if the body value is bytes, the header is set to Content-Type: application/octet-stream ; otherwise, the body is JSON-encoded and the header is set to Content-type: application/json; charset=utf-8 . |
headers | The HTTP request headers. If present, must be a map of strings. If a Content-Type header is specified, the request body is encoded as prescribed. For example, it might be JSON or URL-encoded. |
query | Optional query parameters. If present, must be a map that will get URL-encoded and appended to the URL. The map values must be strings, ints, floats, booleans, or lists of those. |
auth | Optional authentication properties. If present, must be a map with type attribute in ["OIDC", "OAuth2"] . A scopes key is also supported. For details, see Make authenticated requests to Google Cloud APIs. |
private_service_name |
If present, |
ca_certificate |
If present, |
Returns
The HTTP response as a map with body
, code
(status code), and headers
attributes.
Raised exceptions
Exceptions | |
---|---|
ConnectionError | In case of a network problem (DNS failure, truncated response, etc.). |
ConnectionFailedError | When the connection is halted during transfer (failed connection, refused connection, etc.). |
TimeoutError | When the specified timeout is reached before the response is received. |
HttpError | If the response status is >= 400. |
ValueError | If timeout is > 1800. If the URL is invalid or if authType is present and URL is invalid for the given authType. If the private_service_name is invalid. If private_service_name is present and URL contains a port. If ca_certificate is present and not of type bytes. |
Examples
# Make a `` request to an external HTTP endpoint - update_resource: call: http. args: url: https://www.example.com/endpoint body: some_val: "Hello World" another_val: 123 result: message - return_value: return: ${message.body}