> ## Documentation Index
> Fetch the complete documentation index at: https://developers.essal.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Integrations Overview

> Overview of integration options available in the Essal platform — webhooks, OAuth apps, SSO, and third-party connectors.

Essal is designed to fit into your existing workflows and tooling. The platform offers multiple integration patterns depending on whether you need to react to events, extend the platform with custom apps, or connect third-party services.

## Integration Options

<CardGroup cols={2}>
  <Card title="Webhooks" icon="bolt" href="/integrations/webhooks">
    Receive real-time HTTP notifications when events occur across any Essal app.
  </Card>

  <Card title="OAuth Apps" icon="key" href="/integrations/oauth-apps">
    Build apps that act on behalf of users with scoped OAuth 2.0 access.
  </Card>

  <Card title="SSO / SAML" icon="shield-keyhole" href="/integrations/sso-saml">
    Connect your identity provider for single sign-on across the Essal suite.
  </Card>

  <Card title="Third-Party" icon="plug" href="/integrations/third-party">
    Connect Slack, Zapier, and other tools directly from the integrations marketplace.
  </Card>
</CardGroup>

## Choosing the Right Pattern

| Goal                                               | Recommended Pattern   |
| -------------------------------------------------- | --------------------- |
| React to platform events in your backend           | Webhooks              |
| Build a user-facing integration with scoped access | OAuth App             |
| Federate authentication from your corporate IdP    | SSO / SAML or OIDC    |
| Connect a no-code tool (Zapier, Make)              | Third-Party connector |
| Automate admin tasks on a schedule                 | API Key + cron        |

## Rate Limits for Integrations

All integrations share the workspace API rate limit. If you run multiple integrations, design them to be efficient and avoid polling where webhooks can be used instead.
