Carbone is a fast and simple report generator that converts JSON data into various document formats such as PDF, DOCX, XLSX, ODT, and more, using templates.
Carbone is a fast and simple report generator that converts JSON data into various document formats such as PDF, DOCX, XLSX, ODT, and more, using templates. On Nagent, Carbone is exposed as a fully-configurable documents integration that any agent can call — 11 actions, and API key authentication. No code is required to wire Carbone into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Carbone to automate the kinds of tasks documents teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Carbone into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Carbone, with input parameters and output schema. Drop these into any step of an agent built in Helix.
CARBONE_DELETE_TEMPLATEPermanently delete a template from the Carbone server by its 64-character hexadecimal template ID. This action is irreversible. Ensure you have the correct template ID before deleting.
Input parameters
The 64-character hexadecimal template ID (SHA-256 hash) to delete. Obtain this from the upload_template action response.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_DOWNLOAD_TEMPLATETool to download a template from Carbone by template ID. Use when you need to retrieve the original template file.
Input parameters
The unique identifier (SHA256 hash) of the template to download. Obtain this from the upload template action or generate template ID action.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_GENERATE_REPORTTool to generate a Carbone report from a template and JSON data. Use when you need to render documents in various formats.
Input parameters
Data to merge into the template as a JSON object or an array of objects
Enumerations to use with convEnum formatter, e.g. {'ORDER_STATUS': \['open', 'close'\]}
Locale of the generated document, e.g. 'en-us'
Convert document dates to this timezone, e.g. 'Europe/Paris'
Output file format as a string, e.g. 'pdf', or an object with formatName and formatOptions
Extra data object merged into the template with tags {c.}
Static or dynamic file name returned in the content-disposition header, e.g. '{d.date}.odt'
Unique identifier of the Carbone template used to generate the report
Output type for batch processing: 'zip' or 'pdf'
Force recompute pagination and table of contents
Predefined alias for template variables, e.g. '{#def = d.id}'
Batch processing split key, e.g. 'd.items'
Localization dictionary for translations formatter, e.g. {'fr-ca': {'one': 'un'}}
Mapping of currency codes to exchange rates
Currency source code for conversions, e.g. 'EUR'
Target currency code for conversions, e.g. 'USD'
Webhook URL for asynchronous report generation. Include to enable async jobs.
Custom headers for webhook calls, as a map of header name to value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_GET_STATUSTool to retrieve the current status and health of the Carbone server. Use before generating reports to ensure the service is operational.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_LIST_TEMPLATE_CATEGORIESTool to retrieve a list of all categories used in templates. Categories function like folders for organizing templates. Use when you need to see available template groupings.
Input parameters
Carbone API version to use.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_LIST_TEMPLATESTool to retrieve a list of templates from Carbone storage with filtering, search, and cursor-based pagination. Use when you need to find templates, search by name or ID, or iterate through all deployed templates.
Input parameters
Filter by Template ID (64-bit format). Providing a Version ID (SHA256 format) is not allowed and will result in an API error.
Limit the number of items (100 by default).
A cursor to use in pagination. The cursor defines your place in the list for fetching the next set of results.
Template upload origin.
Search in template name (fuzzy search), Version ID (exact match), or Template ID (exact match).
Filter by category.
Filter by Version ID (SHA256 format).
Carbone API version to use.
By default equals to false. Use true to list all versions for a specific template ID.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_LIST_TEMPLATE_TAGSTool to list all tags currently used in templates. Use when you need to discover available tags for categorizing or filtering templates by document type or version.
Input parameters
Carbone API version to use for this request. Defaults to 5.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_RENDER_TEMPLATE_DIRECTTool to generate a document by uploading a base64-encoded template and data in a single API call. Use when you need to render documents without uploading templates separately.
Input parameters
Data to merge into the template as a JSON object or an array of objects. Use {d.fieldname} placeholders in the template.
Enumerations to use with convEnum formatter, e.g., {'ORDER_STATUS': \['open', 'close'\]}
Locale of the generated document, e.g., 'en-us'
If true, returns the generated file directly. If false, returns a JSON response with renderId for async generation.
Base64-encoded template content. Supported formats: DOCX, XLSX, PPTX, ODT, ODS, ODP, ODG, XHTML, IDML, HTML, or XML files.
Convert document dates to this timezone, e.g., 'Europe/Paris'
Output file format as a string (e.g., 'pdf', 'docx'), or an object with formatName and formatOptions
Extra data object merged into the template with tags {c.}
Static or dynamic file name returned in the content-disposition header, e.g., '{d.date}.odt'
Output type for batch processing: 'zip' or 'pdf'
Force recompute pagination and table of contents
Predefined alias for template variables, e.g., '{#def = d.id}'
Batch processing split key, e.g., 'd.items'
Localization dictionary for translations formatter, e.g., {'fr-ca': {'one': 'un'}}
Mapping of currency codes to exchange rates
Currency source code for conversions, e.g., 'EUR'
Target currency code for conversions, e.g., 'USD'
API version to use (3, 4, or 5). Specify this to override the default API version.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_SET_API_VERSIONTool to set the Carbone API version to be used for subsequent requests. Use before rendering or managing templates to ensure correct version is applied.
Input parameters
Major Carbone API version (e.g., 4)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_UPDATE_TEMPLATETool to update metadata and attributes of an existing Carbone template. Use when you need to modify template name, comment, tags, category, or control version deployment and lifecycle.
Input parameters
Template name to set or update.
List of tags for organizing and filtering templates.
Template comment or description for documentation purposes.
Group multiple templates into categories, similar to folders.
Delete the template at the specified time. Must be a UTC Unix timestamp. Values >= 42000000000 (year 3300) are treated as 'now'. Future timestamps are not allowed.
When generating a document with a Template ID, Carbone uses the most recent deployedAt version. Must be a UTC Unix timestamp. Values >= 42000000000 (year 3300) are interpreted as 'NOW'. Future values are not allowed.
Unique identifier of the template or version ID to update. This is the 64-character hexadecimal template ID (SHA-256 hash).
Carbone API version to use for this request. Defaults to 5.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
CARBONE_UPLOAD_TEMPLATEUpload a template file to the Carbone server to obtain a template ID for document generation. Supported template formats: DOCX, XLSX, PPTX, ODT, ODS, ODP, ODG, XHTML, IDML, HTML, or XML. Templates can contain placeholders like {d.fieldname} that will be replaced with data during report generation.
Input parameters
Template file to upload. Supported formats: DOCX, XLSX, PPTX, ODT, ODS, ODP, ODG, XHTML, IDML, HTML, or XML files.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 64 agents privately built on Nagent that already use Carbone.
Build on Nagent
Connect Carbone to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Carbone, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Carbone is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Carbone is connected, you configure its 11 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Carbone steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Carbone event fires, the agent kicks off automatically.
Every Carbone action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Carbone ships with 11 pre-built documents actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Carbone together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Carbone-based workflows tailored to your business.