Integrations

202 integrations with 1392 actions. Connect one once, then call its actions from a workflow or a server function. Credentials stay encrypted on the server; your app never holds them.

Reference homeWorkflow ctx

Catalog

202 integrations

Call an action

In a workflow, ctx.integrations.invoke(id, action, input) (native modules) or ctx.integrations.call(id, { action, ...input }) (defineWorkflow modules) runs one action and resolves with { success, output, error? }. Each integration's page lists its actions with their inputs.

Workflow
const res = await ctx.integrations.invoke("slack", "send_channel_message", {
  channel: "C0123456",
  text: "New order #1042",
});
if (!res.success) throw new Error(res.error);

Apps call actions through the connector proxy (POST /__appbricx/connector-proxy/:integration/:action) or, better, through a server function so the input is checked on the server.

Connect

  • In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
  • For every project in a workspace: Workspace settings, Integrations.
  • Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.
OAuth
Click Connect and approve access on the provider's page. Appbricx runs the OAuth flow (signed single-use state, PKCE where the provider supports it), stores the tokens encrypted and refreshes them before they expire.
API key
Paste the API key (or token) from the provider's settings into the connect dialog. It is encrypted at rest and only decrypted on the server when an action runs.
Credentials form
Fill in the fields the provider needs (listed below). They are stored encrypted in the vault.
Username and password
Enter the username and password (or key pair) the provider issues. They are stored encrypted in the vault.
No credentials
Nothing to connect: the actions run without credentials.