Skip to main content
Integrate pdf noodle with Bubble to generate PDFs directly from your no-code application. Create invoices, reports, certificates, and more without writing code.

Prerequisites

Before you begin, make sure you have:
  • A pdf noodle account (sign up here)
  • Your API key from API Settings
  • At least one template created in pdf noodle
  • A Bubble app

Setting Up the API Connector

Bubble connects to pdf noodle using the API Connector plugin.
1

Install API Connector

In your Bubble app, go to PluginsAdd plugins → Search for API ConnectorInstall
2

Add a New API

Open the API Connector plugin and click Add another API. Name it pdfnoodle.
3

Configure Authentication

Set up shared headers for all calls:
KeyValue
AuthorizationBearer YOUR_API_KEY
Content-Typeapplication/json
Check Private key in header to keep your API key secure.
4

Add the Generate PDF Call

Click Add another call and configure:
SettingValue
Namegenerate_pdf
MethodPOST
URLhttps://api.pdfnoodle.com/v1/pdf/sync
Data typeJSON
Body typeJSON object
5

Set the Body Parameters

Add the request body:
{
  "templateId": "<templateId>",
  "data": {
    "customerName": "<customerName>",
    "invoiceNumber": "<invoiceNumber>",
    "total": <total>
  }
}
Mark each parameter (e.g., <templateId>) as dynamic so you can pass values from your app.
6

Initialize the Call

Click Initialize call with test values to verify it works. You should see a response with the PDF URL.

Finding Your Template ID

  1. Go to app.pdfnoodle.com
  2. Navigate to the Templates section
  3. Copy the Template ID shown in the list next to your template

Using in Workflows

Once the API is configured, use it in your Bubble workflows:
1

Add Workflow Trigger

Create a workflow triggered by a button click or other event.
2

Add API Action

Add action: Pluginspdfnoodle - generate_pdf
3

Map the Parameters

Set the dynamic values:
ParameterValue
templateIdYour template ID (static or from database)
customerNameCurrent User's name
invoiceNumberCurrent Order's id
totalCurrent Order's total
4

Use the Response

The result contains signedUrl with the PDF link. You can:
  • Display it in a link element
  • Open it in a new tab
  • Save it to your database

Example: Download Invoice Button

Create a button that generates and downloads an invoice: Workflow:
  1. When Button “Download Invoice” is clicked
  2. Action pdfnoodle - generate_pdf
    • templateId: your-invoice-template-id
    • customerName: Current User's name
    • invoiceNumber: Current Order's id
    • total: Current Order's total
  3. Action Open external website
    • URL: Result of step 2's signedUrl

Displaying PDFs

You can display the generated PDF in your app: Using a Link:
Link destination: Result of generate_pdf's signedUrl
Using an iframe (for preview): Add an HTML element with:
<iframe src="PDF_URL_HERE" width="100%" height="600px"></iframe>

Error Handling

  • Check your API key is correct
  • Verify the template ID exists
  • Ensure all required parameters are provided
  • Check the Bubble debugger for error details
  • Make sure you initialized the API call
  • Check that the response is being captured correctly
  • Verify your pdf noodle account has available credits
  • Large PDFs take longer to generate
  • Consider using the async endpoint for complex documents
  • Show a loading indicator while generating

API Endpoints

EndpointDescription
POST /v1/pdf/syncGenerate PDF from template (synchronous)
POST /v1/pdf/asyncGenerate PDF from template (asynchronous)
POST /v1/html-to-pdf/syncConvert HTML to PDF (synchronous)
See the complete API Reference for all endpoints and options.

You can also generate PDFs using the API Connector plugin by calling the pdf noodle API directly. See the API Reference for all available endpoints and options.

Resources