Skip to main content

Integrations

Manage third-party integrations (v2 manager API) — CRUD, the provider catalog, OAuth token management, action associations and dispatch, the raw API proxy, and bulk operations. Available as mgr.integrations / mgr.Integrations / mgr.integrations.

CRUD

for await (const integ of mgr.integrations.list()) console.log(integ.id);
const created = await mgr.integrations.create({ /* IntegrationCreateRequest */ });
await mgr.integrations.update(created.item.id, { /* IntegrationUpdateRequest */ });
await mgr.integrations.delete(created.item.id);

Available providers & provider helpers

const available = await mgr.integrations.available();
const logo = await mgr.integrations.providerLogo("salesforce", "64");
const vars = await mgr.integrations.providerSessionVariables("salesforce");

Action associations

Associate (or remove) an integration action with an object.

await mgr.integrations.addAssociation(integrationId, associationId, actionName);
await mgr.integrations.removeAssociation(integrationId, associationId, actionName);

Dispatch & action variables

Dispatch a provider action, or inspect the variables a single action exposes.

const result = await mgr.integrations.dispatchAction(integrationId, "refresh", { /* request */ });
const vars = await mgr.integrations.actionVariables("salesforce", "refresh");

Providers, tokens, templates & proxy

Beyond CRUD, the resource also exposes the provider catalog, OAuth token management, type actions, the raw API proxy, templates, clone/authorize, and bulk update/delete.

const providers = await mgr.integrations.providers();
const cloned = await mgr.integrations.clone(integrationId);
await mgr.integrations.authorize(integrationId, { /* … */ });

const tokens = await mgr.integrations.listTokens(integrationId);
await mgr.integrations.refreshToken(integrationId, tokenId);
await mgr.integrations.deleteToken(integrationId, tokenId);

const actions = await mgr.integrations.typeActions("salesforce");
await mgr.integrations.dispatchTypeAction("salesforce", integrationId, "refresh", { /* … */ });
const res = await mgr.integrations.apiProxyGet(integrationId, "/some/upstream/path");

await mgr.integrations.bulkDelete([id1, id2]);

Action catalog & execution

Browse the global action catalog, inspect a provider action's parameters, execute an action by type/name, or dispatch an integration action via a GET request (e.g. from a call flow).

const actions = await mgr.integrations.listActions("salesforce");
const params = await mgr.integrations.listActionParams("salesforce", "refresh");
await mgr.integrations.executeAction("salesforce", "refresh", { /* params */ });
const res = await mgr.integrations.dispatchActionGet(integrationId, "refresh", { callId });

Reference