Activepieces Plugin
Open-source automation alternative to Zapier and Make with bidirectional integration — Gauzy manages Activepieces resources, and the ever-gauzy-piece on Activepieces authenticates back into Gauzy via OAuth 2.0.
Overview
| Property | Value |
|---|---|
| Package | @ever-co/gauzy-plugin-integration-activepieces |
| Source | packages/plugins/integration-activepieces |
| UI Package | packages/plugins/integration-activepieces-ui |
Why Activepieces?
| Feature | Activepieces | Zapier | Make |
|---|---|---|---|
| Open Source | ✅ | ❌ | ❌ |
| Self-Hosted | ✅ | ❌ | ❌ |
| Free Tier | Unlimited | Limited | Limited |
| Visual Builder | ✅ | ✅ | ✅ |
| Custom Pieces | ✅ | ✅ | ✅ |
Architecture
The integration is bidirectional:
| Direction | Purpose | Authentication | Isolation |
|---|---|---|---|
| Gauzy → Activepieces | Manage AP connections & MCP servers from Gauzy UI | API Key (Bearer token) | Multi-tenant; per-tenant keys or global fallback |
| Activepieces → Gauzy | ever-gauzy-piece calls Gauzy APIs securely | OAuth 2.0 Authorization Code Grant (RFC 6749) | HMAC-signed codes, single-use enforcement, JWT access tokens |
Part 1: Gauzy → Activepieces (Plugin Integration)
Setup Flow
- Obtain API Key — get a key from Activepieces (via
sales@activepieces.comor the platform dashboard). - Plugin Setup — navigate to
/pages/integrations/activepiecesand submit the API key viaPOST /api/integration/activepieces/setup. The backend creates/updates anIntegrationTenantrecord for the current Gauzy tenant, storing the API key in the settings. - Tenant Isolation — all queries include
tenantIdfiltering derived from the authenticated user's JWT.TenantPermissionGuardensures only authorized users can modify settings.
Connection Management
| Operation | Endpoint | Notes |
|---|---|---|
| Create/Upsert | POST /api/v1/app-connections (on AP via Gauzy backend) | Auto-adds tenantId, organizationId, gauzyVersion; type is SECRET_TEXT |
| List | GET /api/v1/app-connections | Filter by pieceName, displayName, and Gauzy tenantId |
| Delete | DELETE /api/v1/app-connections/:id | — |
MCP Server Management
Gauzy manages Model Context Protocol (MCP) servers on the Activepieces platform:
- List servers by project
- Rotate authentication tokens
- Update server tool configurations
提示
Response tokens are sanitized before being sent to the frontend for security.
Backend API Endpoints
All endpoints are prefixed with /api/integration/activepieces.
| Method | Path | Description |
|---|---|---|
POST | /setup | Set up Activepieces integration with API key |
POST | /connection | Create or update an Activepieces connection |
GET | /connections/:integrationId | List available connections for a specific project |
GET | /connection/:integrationId | Get specific connection details |
DELETE | /connection/:integrationId | Remove a connection |
Part 2: Activepieces → Gauzy (OAuth App)
OAuth 2.0 Authorization Code Flow
Step-by-step:
- Authorize Request —
GET /authorizewithclient_id,redirect_uri,scope,state. - User Consent — backend validates the request and redirects to
/pages/auth/oauth/authorize. - Approval — user clicks "Authorize"; frontend calls
POST /authorize(requires a Gauzy JWT). - Code Generation — backend generates an HMAC-signed, single-use authorization code:
v1.{payload}.{signature}. - Redirect — user is redirected back to Activepieces with the code.
- Token Exchange — Activepieces calls
POST /token; backend validates code, signature, and single-use marker in cache. - Response — returns a Gauzy Access Token (JWT) and expiration.