- Backend functions (per-app) — Write TypeScript functions that call the Firma REST API directly. Best for single apps or custom logic.
- Custom OpenAPI integration (workspace-level) — Import the Firma OpenAPI spec once and let every app in your workspace call Firma endpoints through
base44.integrations.custom.call(). Best for teams running multiple apps.
Prerequisites
- A Firma account with an API key
- A Base44 app on the Builder plan or higher (required for backend functions and custom integrations)
- At least one Firma template with signing fields configured
Path 1: Backend functions
This is the most flexible approach. You write TypeScript functions inside your Base44 app that call the Firma REST API directly.Step 1: Store your API key as a secret
- Open your app in the Base44 editor
- Go to Dashboard → Secrets
- Click Add Secret
- Set the name to
FIRMA_API_KEYand paste your Firma API key as the value
Step 2: Create a backend function to send signing requests
Create a new function under Dashboard → Code → Functions, or ask the Base44 AI chat to generate one. This example creates a signing request from a template and sends it in a single API call using thecreate-and-send endpoint:
The
create-and-send endpoint creates the signing request and sends it to recipients atomically. If you need to review or modify the request before sending, use POST /signing-requests to create a draft, then POST /signing-requests/{id}/send separately.Step 3: Connect the function to your app UI
Call the backend function from your frontend using the Base44 SDK:Webhook integration
To track when documents are signed, set up a Firma webhook that points to a Base44 backend function.- Create a new backend function to handle incoming webhook events
- In the Firma dashboard under Settings → Webhooks, register a webhook pointing to your function’s URL:
https://<your-app-domain>/functions/<function-name> - Firma sends events for key state changes — see the webhooks guide for all event types
Path 2: Custom OpenAPI integration
If your workspace has multiple apps that need e-signatures, register Firma as a shared workspace integration using the OpenAPI spec. You configure authentication once and every app can call Firma endpoints without writing backend functions.Step 1: Add the integration
- Click your profile icon at the top right of your workspace
- Go to Settings → Integrations
- Click New Integration
- Select From URL and enter the Firma OpenAPI spec URL:
The spec URL includes the API version number. Check the API changelog for the latest version.
- Click Continue
Step 2: Select endpoints
Select the endpoints your apps will need. Common choices:POST /signing-requests— Create a signing request from a template or documentPOST /signing-requests/create-and-send— Create and send in one callGET /signing-requests/{id}— Check statusGET /signing-requests— List signing requestsPOST /templates/{id}/duplicate— Duplicate a template into a signing requestGET /templates— List available templates
Step 3: Configure authentication
- Set the Base URL to
https://api.firma.dev/functions/v1/signing-request-api - Under Custom Headers, click Add Header
- Set the header name to
Authorizationand paste your Firma API key as the value
Step 4: Use in your apps
Once configured, any app in the workspace can call Firma endpoints using the SDK:Embedded signing
For apps where signers complete documents directly in your UI, Firma provides an embeddable signing experience. Once you have the recipient’ssigning_request_user_id from the API, load it in an iframe inside your Base44 app:
Bonus: MCP connection for AI-assisted building
Firma offers a Docs MCP server that you can connect to your Base44 account. This lets the Base44 AI chat search Firma documentation while you build, so it can help you write integration code with accurate API details. To set it up:- Go to Account Settings → MCP Connections
- Add a new MCP server with the URL:
https://docs.firma.dev/mcp
Next steps
- API authentication — API keys and workspace scoping
- Webhooks guide — event types, payloads, and signature verification
- Embedded signing — in-app signing experience
- Creating workspaces — multi-tenant setups for SaaS apps
- Complete setup guide — end-to-end Firma integration walkthrough
- API reference — full endpoint documentation