Bubble integration

APIRAPTOR plugin guide for Bubble

Configure the server-side API key, call any of the eleven named service actions, and handle typed JSON, async jobs and secure files without exposing credentials in the browser.

Setup

Connect your Bubble app safely

Every APIRAPTOR action runs on Bubble's server. The app owner supplies the APIRAPTOR key; the plugin does not create accounts, keys or billing records of its own.

1

Add the plugin to your Bubble app and open Settings > API.

2

Set APIRAPTOR_API_KEY as a private plugin value. Never expose it in page data, URL parameters or client-side workflows.

3

Run APIRAPTOR - Check Connection from a workflow before connecting a paid service action.

4

Choose the named action for the service. Set only fields used by the selected request representation.

5

Store the returned Request ID. For async execution also store the Job ID and query it with the shared async utilities.

Required private setting

Use the exact plugin setting APIRAPTOR_API_KEY and keep its Private checkbox enabled. Use a dedicated, revocable key for each environment.

Action catalog

Eleven service actions, one contract per service

Select the named action instead of sending a service slug through a generic connector. Bubble exposes the fields and typed response carrier declared for that service contract.

APIRAPTOR - Address Check

Validate and normalize a postal address.

APIRAPTOR - Code Generator

Generate supported barcode and QR code artifacts.

APIRAPTOR - Document Translation

Translate supported documents and text inputs.

APIRAPTOR - DOCX to PDF

Render a DOCX input as PDF.

APIRAPTOR - Email Validation

Validate an email address and return its typed result.

APIRAPTOR - HTML to Image

Render HTML as a supported image format.

APIRAPTOR - Invoice & Receipt Extraction

Extract structured invoice or receipt data.

APIRAPTOR - OCR Extract

Extract text from supported image and PDF inputs.

APIRAPTOR - HTML to PDF

Render HTML as PDF.

APIRAPTOR - PII Redaction

Detect or redact personally identifiable information.

APIRAPTOR - URL to PDF

Render a public URL as PDF.

Available execution modes, input representations and delivery modes differ by service. Use the action's dropdowns and the currentpublic API reference; do not assume that every service supports every branch.

Request fields

Set only the branch you intend to send

Optional request fields have a matching Set control. Representation and scalar-type selectors make union branches explicit and prevent inactive Bubble expressions from being evaluated.

Execution mode

Choose sync for an immediate result or async for a Job ID only when the selected service exposes that mode.

Request representation

Choose JSON or multipart according to the action contract, then fill only fields belonging to that representation.

Optional values

Turn a field's Set control on before supplying its value. Leave Set off to omit the field from the API request.

Async workflow

Keep Request ID, Job ID and File ID separate

The identifiers have different purposes. Do not pass a Job ID to Secure File Download or treat a Request ID as a completed artifact.

01

APIRAPTOR - Check Connection

Verify the API key and read the service contract catalog without executing a paid service.

02

APIRAPTOR - Check Async Job Status

Read the status of an existing Job ID.

03

APIRAPTOR - Get Async File Result

Resolve the completed result for an existing async file job.

04

APIRAPTOR - Secure File Download

Read an existing APIRAPTOR File ID as a Bubble File or prepare a browser download.

  1. 1. Run the service action once and store its Job ID.
  2. 2. Poll with Check Async Job Status using a bounded workflow schedule.
  3. 3. After status succeeded, call Get Async File Result with that Job ID.
  4. 4. If the result contains a File ID, pass that File ID to Secure File Download.
Files

Bounded file input and explicit delivery

File handling is intentionally strict. This protects the private key and prevents the connector from becoming a general-purpose URL fetcher.

Supported Bubble uploader input

A public Bubble File Uploader value is accepted only from Bubble's canonical public CDN or the documented legacys3.amazonaws.com/appforest_uf path. The server performs one bounded read without cookies, credentials or redirects and rechecks MIME type and size before reading the API key or sending a paid request.

Maximum decoded file size: 5 MiB.

Rejected file sources

Private Bubble files, Box values, custom domains and arbitrary URLs are not resolved as Bubble File inputs. A native File returned by the plugin is a workflow value; it is not automatically copied to your Bubble storage or database.

Browser download

Choose browser_download, place the APIRAPTOR File Delivery element on the page, and run its explicit Deliver file action with the returned internal bytes and MIME value. Abrowser_download_pending result means the client-side delivery step is still required; it does not prove that a browser saved the file.

Production safety

Treat every paid POST as a one-shot operation

Validate inputs before dispatch, preserve identifiers for support, and make retries an explicit business decision.

Never automatically retry an APIRAPTOR_CONNECTOR:execution_outcome_unknown error. The provider request may have completed and may have been billed.

Use Bubble conditions to require valid inputs before the service action. Store the returned Request ID and inspect APIRAPTOR Request Logs before deciding whether a distinct retry is safe.

The APIRAPTOR token ledger is the billing source of truth. Bubble workflow completion alone is not proof of a debit or of a no-charge result.

Need integration help?

Include the APIRAPTOR Request ID, service action name and sanitized error code. Never send your API key, complete document contents or signed download URLs.