Skip to main content

http_call

Internal beta โ€” config shape is being migrated

The Automation API is an internal beta and is not released yet โ€” endpoints and payloads may change or be withdrawn without notice. This action's config is being migrated to a typed schema; the fields below reflect that in-progress shape. Always read the authoritative, live shape from GET /v1/automation/meta/action before building against it.

HTTP request โ€” makes an outbound HTTP request. group: "action". No specific trigger context is required.

Part of the HTTP requests family. This page documents the typed config; for how an action sits inside an automation definition, see Actions and Action examples.

Configโ€‹

KeyTypeRequiredDescription
http_call_typeenumyesHTTP method.
http_call_urltemplate valueyesRequest URL.
http_call_bodytemplate valuenoRequest body. Empty when omitted.
http_call_headersarray of objectsnoRequest headers. Each entry is { key, value } (plus an optional id that defaults to an empty string "" when omitted โ€” header entries are not server-minted). value is a template value. Empty when omitted.
http_call_follow_redirectsbooleannoWhether to follow 3xx redirects. Default false.
custom_variable_defsarray of variable declarationsnoCustom variables this action declares (e.g. the response variable) for its own code or later actions. Empty when omitted.

http_call_type tokens (lower-case): get, post, put, patch, delete.

custom_variable_defs[].custom_type tokens (lower-case): any, single_file, multi_file, single_link, html_table_rows. Each declaration also carries a label; a custom variable reference resolves only when its custom_type + label match a declaration.

Exampleโ€‹

An action entry inside an automation definition's actions[]:

{
"type": "http_call",
"config": {
"http_call_type": "post",
"http_call_url": ["https://api.example.com/records/", { "kind": "variable", "source": "meta", "meta_type": "app_record_id" }],
"http_call_headers": [
{ "key": "Content-Type", "value": ["application/json"] }
],
"http_call_body": ["{\"status\":\"created\"}"],
"http_call_follow_redirects": false
}
}

Validation & behaviorโ€‹

  • http_call_type and http_call_url are the only required members โ€” neither has a canonical default. Everything else fills a default (http_call_body โ†’ empty, http_call_headers โ†’ [], http_call_follow_redirects โ†’ false, custom_variable_defs โ†’ []), so an omitting caller still yields a complete internal action.
  • Each http_call_headers entry requires both key and value; a header without a value is meaningless โ€” send "" (or []) for a deliberately blank value. http_call_url, http_call_body, and each header value are template values that resolve against the record / run at execution time.
  • The request is SSRF-protected: private and internal hosts are refused.
  • With http_call_follow_redirects false (the default), 3xx responses are not followed.
  • A custom variable reference (from this action or a later action) resolves only when its custom_type + label match a declaration in custom_variable_defs.

See alsoโ€‹