# How it Works

Welcome to Documint! We are a document generation platform that lets you generate customized PDFs (such as invoices, proposals, and certificates) using data from these tools:&#x20;

* [HubSpot](https://docs.documint.me/integrations/hubspot)&#x20;
* [Airtable](https://docs.documint.me/integrations/airtable)&#x20;
* [Zapier](https://docs.documint.me/integrations/zapier)
* [Make.com](https://docs.documint.me/integrations/make.com)
* [Coda](https://docs.documint.me/integrations/coda)
* [Stacker](https://docs.documint.me/integrations/stacker)
* [Noloco](https://docs.documint.me/integrations/noloco)&#x20;
* [Softr](https://docs.documint.me/integrations/softr)&#x20;
* [Pory](https://docs.documint.me/integrations/pory)
* Or directly from your [API](https://documenter.getpostman.com/view/11741160/TVK5cLxQ)

Instead of manually editing templates every time your data changes, Documint dynamically merges your data into a pre-designed template and returns a completed PDF ready to send, store, or share.

#### How does Documint work?&#x20;

1. **Create your Template**

You start by building a template inside Documint, think of it like a design tool. You can add text, images, tables, or placeholders for dynamic fields<br>

* Add [text](https://docs.documint.me/templates/document-structure-and-layout/page-elements/content-elements#text), [images](https://docs.documint.me/templates/document-structure-and-layout/page-elements/content-elements#image), and other [elements](https://docs.documint.me/templates/document-structure-and-layout/page-elements) to structure your document.
* Build static and dynamic [tables](https://docs.documint.me/introduction/basic-tutorials/how-to-create-tables).
* Use dynamic tokens. [Tokens](https://docs.documint.me/templates/working-with-dynamic-data/field-tokens) are placeholders that represent real data (like customer names, totals, or product images).
* Tokens are generated automatically from your data [schema](https://docs.documint.me/templates/working-with-dynamic-data/connections#the-custom-connection), which defines what fields your data will include (e.g. `customer_name`, `invoice_total`, `items.description`).

You can also add [logic](https://docs.documint.me/legacy-documentation/repeating-elements) and list items visually, for example, repeat a table row for every line item in an invoice.

<figure><img src="https://1903534506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTY5wPd81K7B5rjyG5tjS%2Fuploads%2FsoJyh8wJQPJIiGBPHE0x%2Fhiw%20template.gif?alt=media&#x26;token=84bdf9d8-3bb2-4794-afa9-3ef20c4cab05" alt=""><figcaption></figcaption></figure>

The result is a clean, visually designed template that’s ready to be filled with live data.

2. **Connect your Data Source**

Once your template is built, you connect it to the data you want to populate it with. Documint integrates seamlessly with:

* Airtable, HubSpot, and other business tools
* Automation platforms like Zapier, Make, and n8n
* Custom APIs via JSON payloads

When you connect it to Airtable, Documint automatically maps your data fields to the tokens in your template schema.&#x20;

<figure><img src="https://1903534506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTY5wPd81K7B5rjyG5tjS%2Fuploads%2FG6dx0NWkFndpMgbW3gSQ%2Fhiw%20at%20con.gif?alt=media&#x26;token=9f9220b0-eba1-4dbe-a337-2d4dbf37d0f8" alt=""><figcaption></figcaption></figure>

And when integrating with other data sources, just build the schema on the Custom Data Source option.

<figure><img src="https://1903534506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTY5wPd81K7B5rjyG5tjS%2Fuploads%2FVRMOsrMEiyiIxnoOORMU%2Fhiw%20cds.gif?alt=media&#x26;token=35842757-89a7-46e0-a960-82612470be52" alt=""><figcaption></figcaption></figure>

You can even test your connection by loading sample records right inside the editor. Each value in your data automatically fills the corresponding token in the template at generation time.

3. **Preview the Document**

Before generating the final output, you can preview your document with real data inside the Template Designer.

The live preview feature allows you to:

* Verify that text, tables, and images render correctly
* See how tokens resolve using actual data values
* Check that your conditional sections and lists behave as expected

This step ensures your layout and logic are perfect before automating document generation.

<figure><img src="https://1903534506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTY5wPd81K7B5rjyG5tjS%2Fuploads%2FNCgVxqetSZgaw2BawBTr%2Fhiw%20preview.gif?alt=media&#x26;token=886a26bc-eed4-4bba-a68a-9c3199628747" alt=""><figcaption></figcaption></figure>

4. **Generate the PDF**

Once your template and data connection are ready, generating your document is simple.

You can trigger a generation:

* Using a button with a Generation Link (e.g., Airtable)
* From a workflow automation (e.g., Zapier or HubSpot workflow)
* Directly via API, by sending JSON data to your template

When the request runs, Documint:

* Replaces each token with your live data
* Renders dynamic images
* Applies logic for repeating lists or conditional sections
* Returns a completed, ready-to-share PDF file or link (we only store the PDF link for 24 hours. Uploading the PDF to a cloud is suggested)

<figure><img src="https://1903534506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FTY5wPd81K7B5rjyG5tjS%2Fuploads%2FkPlCMc8FFQrTE9qPrT5H%2Fhiw%20generate.gif?alt=media&#x26;token=368be53c-7a1c-4ac1-a5eb-6666b94a4ab9" alt=""><figcaption></figcaption></figure>

In summary, Documint lets you design once and automate forever. By combining a visual designer, schema-based data mapping, and dynamic token generation, you can create professional PDFs (invoices, quotes, certificates, or reports) automatically populated with your data.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.documint.me/introduction/how-it-works.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
