Integrate

Credentials stay on the server.

Integrate encrypts provider tokens with AES-256-GCM and a workspace-derived key. Secure connection pages collect tokens directly. Agents receive connection identifiers and allowed resource metadata.

Workspace and customer boundaries

Every connection, workflow, and run belongs to a workspace and customer context. Scoped developer keys and personal agent OAuth enforce those boundaries. API keys are stored as hashes and can be revoked. OAuth uses PKCE, explicit consent, and short-lived access tokens.

Private payloads and receipts

Input payloads and larger outputs are stored in private Vercel Blob stores. Retrieval requires ownership checks through the service layer. Payloads expire after 30 days. Receipts record action identifiers, status, and charges. Provider errors are redacted.

Predictable execution

Published versions are immutable. Signed webhooks, event uniqueness, durable execution, credit reservations, and execution leases protect the runtime. Uncertain external writes require reconciliation before retrying.

Report an issue

Send security reports to security@integrate.dev. Include the affected endpoint and a reproduction that avoids exposing customer data.