EngageFabric supports multiple authentication methods depending on your use case:Documentation Index
Fetch the complete documentation index at: https://docs.engagefabric.com/llms.txt
Use this file to discover all available pages before exploring further.
API Keys
For server-to-server communication and backend integrations
JWT Tokens
For admin console access and user authentication
OAuth2
Sign in with Google or GitHub for seamless onboarding
API Key Authentication
API keys are the recommended way to authenticate your application with EngageFabric. They are project-specific and should be kept secure on your server.Getting Your API Key
- Log in to the Admin Console
- Navigate to your project
- Go to Settings > API Keys
- Copy your API key
Using API Keys
Include your API key in theX-API-Key header:
API Key Types
| Type | Prefix | Use Case |
|---|---|---|
| Live | ef_live_ | Production environment |
| Test | ef_test_ | Development and testing |
OAuth2 Authentication
EngageFabric supports OAuth2 authentication with Google and GitHub for seamless user onboarding. This is the recommended method for signing up and logging into the admin console.Supported Providers
| Provider | Flow Types | Best For |
|---|---|---|
| Login, Signup, Link | Business users with Google Workspace | |
| GitHub | Login, Signup, Link | Developers and technical users |
Initiating OAuth Flow
Redirect users to the OAuth endpoint to begin authentication:Flow Types
| Flow | Description |
|---|---|
login | Sign in existing user (default) |
signup | Create new account and tenant |
link | Link OAuth provider to existing account |
OAuth Callback
After successful authentication, users are redirected to yourredirect_uri with tokens:
Getting Available Providers
Check which OAuth providers are enabled:OAuth is the recommended way to create an EngageFabric account. After signup, users can also set a password for email/password login.
JWT Authentication
JWT (JSON Web Tokens) are used for authenticating admin console users and can be used for WebSocket connections.Obtaining a JWT Token
Using JWT Tokens
Include the token in theAuthorization header:
Token Expiration
| Token Type | Expiration | Use Case |
|---|---|---|
| Access Token | 7 days | API requests |
| WebSocket Token | 15 minutes | Real-time connections |
WebSocket Authentication
For real-time features, authenticate WebSocket connections with a short-lived JWT:WebSocket tokens have a shorter expiration (15 minutes) for security.
Implement token refresh logic in your application.
Role-Based Access Control (RBAC)
EngageFabric implements RBAC for tenant management:| Role | Permissions |
|---|---|
| Owner | Full access, can delete tenant |
| Admin | Manage projects, users, and settings |
| Designer | Create and edit rules, quests, adventures |
| Developer | Read access, API key management |
| Viewer | Read-only access to dashboards |
Rate Limits
API requests are rate-limited based on your project tier:| Tier | Rate Limit |
|---|---|
| Free | 100 requests/minute |
| Starter | 500 requests/minute |
| Pro | 1,000 requests/minute |
| Enterprise | Custom limits |
429 Too Many Requests response with headers:
Error Responses
Authentication errors return standard error responses:| Error Code | HTTP Status | Description |
|---|---|---|
UNAUTHORIZED | 401 | Missing or invalid credentials |
FORBIDDEN | 403 | Insufficient permissions |
RATE_LIMITED | 429 | Too many requests |
