Integrations
Setup
Install and configure the FilaForms integrations package.
This package is available on request. Contact hello@filaforms.app for access.
The integrations package is optional and requires filaforms/core.
Installation
Install Package
Terminal
composer require filaforms/integrations
Publish Configuration
Terminal
php artisan vendor:publish --tag="filaforms-integrations-config"
Run Migrations
Terminal
php artisan migrate
This creates the following tables:
integration_connections-- OAuth accounts and credentials (encrypted)form_integrations-- Per-form integration configurationsintegration_deliveries-- Delivery log for tracking webhook/API callswebhook_subscriptions-- REST Hook subscriptions for automation platformsform_submission_payments-- Payment records linked to form submissions
Auto-Discovery
When auto_discover is true (default), integration classes are automatically found by scanning the src/Integrations/ directory. No manual registration needed.
config/filaforms-integrations.php
'auto_discover' => false,
Architecture
The package is built on a 3-interface system:
| Interface | Purpose | Examples |
|---|---|---|
IntegrationInterface | Base contract for all integrations | All integrations |
ApiWriteIntegrationInterface | API integrations with field mapping and OAuth | Google Sheets, CRMs |
ExternalIntegrationInterface | Externally-configured integrations (info cards, no config form) | Zapier |
Generic base classes (GenericApiIntegration, GenericOAuthIntegration) eliminate code duplication across integrations.
Two-Tier Connection Architecture
- Integration Connections -- OAuth accounts created on the main Integrations page. One connection can be reused across multiple forms.
- Form Integrations -- Per-form configuration that references a connection and stores integration-specific settings (spreadsheet selection, field mapping, etc.).