FabricFabricSDK
Plugins

Plugin catalog

All 20 built-in integration plugins with endpoint references, auth models, and webhook docs.

The Integrations SDK ships with 20 built-in plugins covering the most common SaaS APIs. Each plugin follows the same FabricPlugin contract: endpoints, optional webhooks, auth config, and permission metadata.

Quick reference

PluginAuthEndpointsWebhooks
Slackbot_token / OAuth8—
GmailOAuth7—
GitHubAPI key / OAuth9—
NotionAPI key / OAuth9—
LinearAPI key / OAuth7—
HubSpotAPI key / OAuth6✅ Contacts
StripeAPI key / OAuth7✅ Charges, subscriptions
Google CalendarOAuth8—
ResendAPI key3✅ Email delivery
AsanaAPI key / OAuth10✅ Tasks
AirtableAPI key / OAuth6—
PostHogAPI key5—
DiscordBot token / OAuth7—
TwilioAPI key (Basic)7—
OpenAIAPI key10—
Cal.comAPI key5—
Google SheetsOAuth5—
JiraAPI key (Basic)6—
TelegramBot token6—
FirecrawlAPI key5—

Adding a plugin

Run the scaffolder:

fabric integrations generate my-plugin

It writes packages/integrations-v2/src/plugins/my-plugin/index.ts with a working factory. Replace the demo endpoint, export from src/plugins/index.ts, and you're done.

Plugin shape

Every plugin returns the same FabricPlugin contract:

return {
  id: 'slack',
  options,
  endpoints: slackEndpointsNested,
  webhooks: slackWebhooksNested,
  hooks: options.hooks,
  webhookHooks: options.webhookHooks,
  endpointMeta: slackEndpointMeta,
  endpointSchemas: slackEndpointSchemas,
  webhookSchemas: slackWebhookSchemas,
  oauthConfig: slackOAuthConfig,
  permissionsConfig: options.permissions ?? { mode: 'cautious' },
  pluginWebhookMatcher: (request) => 'x-slack-signature' in request.headers,
  keyBuilder: async (ctx) => { /* … */ },
};

The runtime uses this contract to synthesize platform actions, register webhook handlers, gate operations on permissions, and resolve auth credentials per call.