Skip to main content
The official SDK for TypeScript and JavaScript is published on npm as humanos. It wraps every API call and removes the two fiddliest parts of a raw HTTP integration and adds full types:
  • Request signing: every call is signed automatically with your Signature Secret, so 401 Invalid signature disappears as a failure class.
  • Webhook handling: verifies the x-signature/x-timestamp headers and decrypts the {iv, data, tag} payload envelope for you.
  • Types: full TypeScript definitions for every request and response.
The HTTP API and the SDK are equivalent; everything in the API reference is available through both.

Installation

Requires Node 16 or newer. The SDK sends its own API-Version header (currently 2026-09-01), which overrides your API key’s pinned version. Browser and edge/serverless runtimes are supported through a pluggable transport (below).

Configuration

You need two sets of credentials from the dashboard:
  1. API credentials: API Keys in the dashboard sidebar, for the API Key and Signature Secret.
  2. Webhook credentials: Webhooks in the dashboard sidebar, for each endpoint’s Webhook Signature Secret, Webhook Encryption Secret and Webhook Encryption Salt.
Everything else (action URNs, mandate URNs, request ids) is application data; keep it in code or your database, not in .env.

Quick start

A 200 OK with a (possibly empty) list means you’re wired up. From there, follow the guide that matches what you’re building, Collecting Approvals or Agent Actions; each shows the SDK calls alongside the raw HTTP.

Proxies and custom transports

All connection knobs are optional; omit them to connect directly:

Other languages

Not on Node? The Authentication page documents the signing scheme for implementing a client in any language.