Skip to content
flexcal Documentation

Apps

flexcal ships an app store of calendar, video, CRM and analytics integrations. Most of them need OAuth credentials that you create yourself, because a self-hosted instance is its own OAuth client.

Where credentials live

Credentials go into two files in the repository root:

  • .env — read by the web app.
  • .env.appStore — read by the app-store seeder and tooling. Copy DATABASE_URL into it as well.

Some apps can alternatively be configured at run time from the admin UI at /settings/admin/apps, which is the better option for a deployed instance where you would otherwise have to rebuild to change an environment variable.

Enabling an app

After adding credentials, repopulate the app store so the new app appears:

Terminal window
bun run --cwd packages/prisma seed-app-store

The container image runs this on start unless SKIP_APP_STORE_SEED=1 is set.

:::note For a deployed instance, enabling apps through the admin UI is preferred over running the seeder by hand. :::

Redirect URLs

Every OAuth app needs a redirect URL of the form:

<flexcal URL>/api/integrations/<slug>/callback

where <flexcal URL> is your NEXT_PUBLIC_WEBAPP_URL. The per-app pages spell out the exact slug.

Guides