Docs
Global functions

HTTP

httpRequest

Global functions available to smart-app code. Call them by bare name; there is no object to import.

FunctionSummary
httpRequestFire-and-forget outbound HTTP request from the hub.

httpRequest

Not available to AI-generated user automations.

Fire-and-forget outbound HTTP request from the hub. Useful for hitting integrations the action catalog doesn't cover (chat platforms, IFTTT, custom backends). The host issues the request off-thread; smart-app callers don't see the response. Errors are logged on the host side. headers is an object of string values; body is sent verbatim (set Content-Type in headers to declare the encoding).

Signature

function httpRequest(opts: { url: string; method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; headers?: Record<string, string>; body?: string; }): { ok: boolean; reason?: string }

Parameters

NameTypeRequiredDefaultDescription
opts{ url: string; method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; headers?: Record<string, string>; body?: string; }yes—Request description.
opts.urlsee signatureno—http or https URL. Loopback, link-local and multicast destinations are refused; LAN addresses are allowed.
opts.methodsee signatureno—One of GET, POST, PUT, PATCH, DELETE.
opts.headerssee signatureno—String values only. Set Content-Type to declare the body encoding.
opts.bodysee signatureno—Sent verbatim.

Returns

{ ok: boolean; reason?: string } — Whether the request was accepted for sending. The response is never visible to the app; failures are logged on the hub.

Notes

  • Redirects are not followed.
  • Not available to AI-generated user automations.

Examples

httpRequest({
  url: 'https://hooks.example.com/novon',
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ event: 'door-open', at: new Date().toISOString() }),
});

See also

egress policy · http and egress

Generated from docs-bundle v0.1.0, novon-platform 9ce3486c (2026-10-09).

On this page