Skip to content

Artificial Intelligence

Botpress
API integration

Ship Artificial Intelligence features without building the integration. Full Botpress API access via Proxy and 190+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Talk to us
Botpress

Use Cases

Why integrate with Botpress

Common scenarios for SaaS companies building Botpress integrations for their customers.

01

Ship an auto-trained AI agent for your helpdesk or CRM

Let customers connect their Botpress account and continuously sync your knowledge base articles, resolved tickets, and account data into Botpress Knowledge Bases and Tables. Their AI agent stays trained on the latest content without any manual uploads.

02

Provision white-labeled bots for every customer

Vertical SaaS and agencies can programmatically spin up Botpress workspaces, deploy pre-configured bot templates from JSON, and seed them with customer-specific data on signup. Non-technical end users get a fully functional AI agent without ever touching Botpress directly.

03

Embed Botpress as a headless AI brain in your product

Route messages from your own chat UI into Botpress's inference engine and stream replies back in real time. Your SaaS keeps full control of the frontend, channel, and identity layer while Botpress handles reasoning and workflow execution.

04

Surface Botpress analytics in your CS or RevOps dashboard

Pull conversations, chat events, bot analytics, and action runs into your product to correlate AI drop-offs with human handoffs, escalations, or revenue outcomes. Give customer success leaders a single view of where their bots resolve versus where they fail.

05

Trigger Botpress actions from your workflows

Let your customers configure their Botpress agents to call into your SaaS (or vice versa) mid-conversation — injecting authenticated user context via chat state so the bot can safely execute account-specific actions like refunds, upgrades, or ticket creation.

What You Can Build

Ship these features with Truto + Botpress

Concrete product features your team can ship faster by leveraging Truto’s Botpress integration instead of building from scratch.

01

One-click Botpress account connection

Let your users authenticate their Botpress workspace through Truto and immediately start syncing bots, tables, and conversations — no PAT handling on your side.

02

Continuous knowledge base sync

Create and update Botpress Knowledge Bases and file passages from your platform so the customer's agent is always trained on current articles, docs, and resolved tickets.

03

Template-driven bot deployment

Publish pre-built bots from a bot JSON into a newly provisioned workspace, giving customers an industry-specific agent live in minutes.

04

Structured RAG via Botpress Tables

Push customer records, product catalogs, or entitlement data into Botpress Tables and upsert rows in bulk so the AI can run deterministic lookups during conversations.

05

Headless chat orchestration

Initialize incoming messages, manage chat users and conversations, and subscribe to conversation listens for real-time AI replies inside your own product UI.

06

Unified bot analytics and audit views

Aggregate bot analytics, chat events, action runs, usage quotas, and workspace audit records into reporting dashboards your customers already use.

SuperAI

Botpress AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

create_a_botpress_helper_vrl

Run a VRL (Vector Remap Language) script in Botpress. Returns the result of the script execution.

delete_a_botpress_admin_account_by_id

Delete the Botpress account associated with the authenticated user. Returns: id, name, createdAt, updatedAt.

list_all_botpress_admin_accounts

Retrieve the current authenticated account's profile, including email, display name, email verification status, and profile picture.

botpress_admin_accounts_bulk_update

Update details of the Botpress account associated with the authenticated user. Returns: id, name, createdAt, updatedAt.

list_all_botpress_account_pats

List Personal Access Tokens (PATs) for the authenticated Botpress account. Returns: id, createdAt, updatedAt.

create_a_botpress_account_pat

Create a new Personal Access Token (PAT) in Botpress. Returns: id, createdAt, updatedAt.

delete_a_botpress_account_pat_by_id

Delete a Personal Access Token (PAT) by id. Required: id. Returns an empty 204 response on success.

get_single_botpress_account_preference_by_id

Get a Botpress account preference by its preference key. Returns the preference object including its key and value. Required: id.

create_a_botpress_account_preference

Set a preference for a Botpress account by preference key. Returns the updated preference object including its key and value. Required: preference_id, value.

list_all_botpress_hub_integrations

List public Botpress hub integrations with filtering, search, and sorting capabilities. Returns each integration with id, name, version, description, createdAt, updatedAt, installCount, verificationStatus, actions, and interfaces. When the search parameter is used, responses also include a matchedOn field indicating which fields matched.

get_single_botpress_hub_integration_by_id

Get a single public Botpress hub integration by its integration version ID. Returns: id, name, version, description, createdAt, updatedAt, installCount, verificationStatus, matchedOn, actions, interfaces. Required: id.

botpress_hub_integrations_get_by_name

Get a public Botpress hub integration by name and version. Returns: id, name, version, description, createdAt, updatedAt, installCount, verificationStatus, matchedOn, actions, interfaces. Required: name, version. The version accepts a semver version, semver range, or the constant string "latest".

list_all_botpress_hub_plugins

List public plugins from the Botpress Hub, optionally filtered by name and/or version. Returns: id, name, version, createdAt, updatedAt.

get_single_botpress_hub_plugin_by_id

Get a single public plugin from the Botpress Hub by id. Returns: id, name, version, createdAt, updatedAt. Required: id.

botpress_hub_plugins_get_by_name

Get a public Botpress hub plugin by name and version. Returns: id, name, version, createdAt, updatedAt. Required: name, version. The version parameter accepts a semver version, a semver version range, or the constant string "latest".

list_all_botpress_plugin_dereferenceds

Get a public Botpress Hub plugin by ID with all interface entity references resolved to the corresponding entities as extended by the backing integrations. Returns: id, name, version, createdAt, updatedAt. Required: plugin_id, interfaces.

botpress_plugin_dereferenceds_get_admin_plugin_dereferenced

Get a private Botpress plugin by ID with all interface entity references resolved to the corresponding entities as extended by the backing integrations. Returns: id, name, version, createdAt, updatedAt. Required: plugin_id.

list_all_botpress_plugin_codes

Get the public plugin code from the Botpress Hub for a specific platform (node or browser). Returns the plugin's bundled code for the requested platform. Required: plugin_id, platform.

botpress_plugin_codes_get_admin_plugin_code

Get the compiled code for a Botpress workspace plugin for a specific platform (node or browser). Returns the plugin's bundled code for the requested platform. Required: plugin_id, platform.

list_all_botpress_hub_interfaces

List public interfaces in Botpress. Returns: id, name, version, createdAt, updatedAt. Results can be filtered by interface name and version.

get_single_botpress_hub_interface_by_id

Get a single public interface in Botpress by id. Returns: id, name, version, createdAt, updatedAt. Required: id.

botpress_hub_interfaces_get_by_name

Get a public interface in Botpress by name and version. Returns: id, name, version, createdAt, updatedAt. Required: name, version. Version accepts a semver version, semver range, or 'latest'.

list_all_botpress_admin_bots

List Botpress bots with optional filtering by environment and tags. Returns: id, name, createdAt, updatedAt, deployedAt. Results can be sorted by createdAt or updatedAt in ascending or descending order.

create_a_botpress_admin_bot

Create a new bot in Botpress. Returns the created bot object including id, name, createdAt, updatedAt, and deployedAt. Required: name.

get_single_botpress_admin_bot_by_id

Get a single Botpress bot by id. Returns the bot object including id, name, createdAt, updatedAt, and deployedAt. Required: id.

update_a_botpress_admin_bot_by_id

Update a Botpress bot by id. Returns the updated bot object including id, name, createdAt, updatedAt, and deployedAt. Required: id.

delete_a_botpress_admin_bot_by_id

Delete a Botpress bot by id. Returns an empty 204 response on success. Required: id.

botpress_admin_bots_get_logs

Retrieve Botpress bot logs within a specified time range, with optional filters for level, user, workflow, conversation, and message content. Returns: level, message, timestamp, userId, workflowId, conversationId. Required: bot_id, timeStart.

create_a_botpress_bot_transfer

Transfer a Botpress bot to another workspace. Returns the transferred bot object including id, name, createdAt, updatedAt, and deployedAt. Required: bot_id. Caller must be a Manager member of the bot's current workspace with bot-creation rights in the target workspace.

list_all_botpress_bot_webchats

Get the webchat embed code or shareable URL for a Botpress bot. Returns: code, url. Required: bot_id, type. The type parameter selects the output format: preconfigured, configurable, and fullscreen return embed code; sharableUrl returns a URL.

list_all_botpress_bot_analytics

Get bot analytics from Botpress for a specified date range. Returns the bot's analytics object containing performance metrics for the requested period. Required: bot_id, startDate, endDate.

list_all_botpress_bot_action_runs

List action runs for a specific integration of a bot in Botpress. Returns: id, createdAt, status. Required: bot_id, integrationName.

list_all_botpress_bot_issues

List bot issues for a specific Botpress bot. Returns issue records including id, createdAt, and updatedAt. Required: bot_id.

delete_a_botpress_bot_issue_by_id

Delete a Botpress bot issue by id. Returns an empty 204 response on success. Required: bot_id, id.

botpress_bot_issues_events

List events for a specific Botpress bot issue. Returns: id, createdAt. Required: bot_id, issue_id.

get_single_botpress_bot_issue_by_id

Get a single Botpress bot issue by id. Returns: id, createdAt, updatedAt. Required: bot_id, id.

list_all_botpress_bot_versions

List all saved versions for a specific Botpress bot. Returns: id. Required: bot_id.

create_a_botpress_bot_version

Create a new saved version for a specific Botpress bot. Returns: id. Required: bot_id.

get_single_botpress_bot_version_by_id

Get a specific bot version by id in Botpress. Returns: id, createdAt, updatedAt. Required: bot_id, id.

list_all_botpress_bot_bot_jsons

Download the raw bot JSON for a Botpress bot, optionally for a specific version. Returns the raw bot JSON object with bot-specific configuration fields. Required: bot_id.

create_a_botpress_bot_publish_from_bot_json

Deploy a bot in Botpress using a provided raw bot JSON payload. Returns the deployed bot object including id, name, createdAt, updatedAt, and deployedAt. Required: bot_id. The Admin API has a maximum payload size of 50 MB.

create_a_botpress_versions_deploy

Deploy a version for a Botpress bot. Returns the deployed version object including id, createdAt, and updatedAt. Required: bot_id.

list_all_botpress_integration_shareable_ids

List existing shareable IDs for an integration installed in a Botpress bot. The shareable ID is a human-readable identifier for the crossover of a bot and an integration version, used for the integrations channel sandbox feature. Returns: id, createdAt, updatedAt. Required: bot_id, integration_id.

create_a_botpress_integration_shareable_id

Generate a shareable ID for an integration installed in a Botpress bot. The shareable ID is a human-readable identifier for the crossover of a bot and an integration version, used for the integrations channel sandbox feature. Returns: id. Required: bot_id, integration_id.

botpress_integration_shareable_ids_bulk_delete

Delete a shareable ID for an integration installed in a Botpress bot. The shareable ID is a human-readable identifier for the crossover of a bot and an integration version, used for the integrations channel sandbox feature. Returns an empty 204 response on success. Required: bot_id, integration_id.

botpress_integration_sandboxed_conversations_bulk_delete

Unlink all sandboxed conversations for an integration installed in a Botpress bot (EXPERIMENTAL). Returns an empty 204 response on success. Required: bot_id, integration_id. Optionally pass integration_instance_alias to target a specific integration instance by alias, in which case integration_id is ignored.

list_all_botpress_bots_baks

List Bot Access Keys (BAKs) for a specific bot in Botpress. Returns: id, createdAt, updatedAt. Required: botId.

create_a_botpress_bots_bak

Create a new Bot Access Key (BAK) in Botpress. Returns: id, createdAt, updatedAt.

delete_a_botpress_bots_bak_by_id

Delete a Botpress Bot Api Key (BAK) by id. Returns: id. Required: id.

list_all_botpress_bot_allowlists

Get the allowlist for a specific Botpress bot. Returns the bot's allowlist configuration. Required: bot_id.

botpress_bot_allowlists_bulk_update

Update the bot allowlist for a specific Botpress bot, controlling which domains are permitted to embed the bot. Returns the updated allowlist as an array of allowed domain strings. Required: bot_id.

create_a_botpress_workspace_migrate_to_v_4

Migrate a Botpress workspace from v3 to v4 billing. This is an internal admin endpoint not meant for public use; its request body and response shape are not publicly documented. Required: workspace_id.

list_all_botpress_billing_invoices

List invoices billed to a Botpress workspace. Returns: id, createdAt, updatedAt. Required: workspace_id.

list_all_botpress_billing_upcoming_invoices

Get the upcoming billing invoice for a Botpress workspace. Returns the upcoming invoice object with billing-specific fields defined upstream. Required: workspace_id.

create_a_botpress_invoices_charge_unpaid

Charge unpaid invoices of a Botpress workspace. Required: workspace_id.

list_all_botpress_admin_workspaces

List Botpress workspaces the user has access to, optionally filtered by handle. Returns: id, name, handle, createdAt, updatedAt.

create_a_botpress_admin_workspace

Create a new Botpress workspace. Returns the created workspace object including id, name, createdAt, and updatedAt. Required: name.

get_single_botpress_admin_workspace_by_id

Get a single Botpress workspace by id. Returns: id, name, handle, createdAt, updatedAt. Required: id.

update_a_botpress_admin_workspace_by_id

Update a Botpress workspace by id. Returns the updated workspace object including id, name, createdAt, and updatedAt. Required: id.

delete_a_botpress_admin_workspace_by_id

Delete a Botpress workspace by id. Returns an empty 204 response on success. Required: id.

list_all_botpress_workspace_publics

Get public details of a Botpress workspace by workspace_id. Returns: id, name, handle, integrations, createdAt. Required: workspace_id.

list_all_botpress_workspace_usages

List workspace usages in Botpress for a given usage type (e.g., invocation_calls, ai_spend, bot_count). Returns: id, type. Required: workspace_id, type.

list_all_botpress_usages_by_bots

Break down Botpress workspace usage by bot for a given usage type and optional period. Returns: botId. Required: workspace_id, type.

list_all_botpress_usages_quota_completions

List workspace quota completion rates for a user in Botpress. Returns a map of workspace IDs to their highest quota completion rate, where each key is a workspace ID string and each value is the completion rate number.

list_all_botpress_workspace_quotas

Get a specific Botpress workspace quota by usage type. Returns: type, period. Required: workspace_id, type.

botpress_workspace_quotas_get_quotas

List all Botpress workspace quotas for a specified workspace. Returns: type. Required: workspace_id.

botpress_workspaces_handle_availabilities_bulk_update

Check whether a workspace handle is available in Botpress. Returns a boolean indicating whether the handle is available for use. Required: handle.

list_all_botpress_workspaces_publics

List public workspaces in Botpress, optionally filtered by workspace IDs or a search query. Returns: id, handle, createdAt, updatedAt.

list_all_botpress_workspace_audit_records

List audit records for a Botpress workspace, sorted from most recent to oldest. Returns: id, createdAt. Required: workspace_id.

get_single_botpress_workspaces_preference_by_id

Get a workspace preference by id in Botpress. Returns: key, value. Required: id.

create_a_botpress_workspaces_preference

Set a workspace preference in Botpress. Returns: key, value. Required: preference_id, value.

list_all_botpress_admin_workspace_members

List all members in a Botpress workspace. Returns: id, createdAt, updatedAt.

create_a_botpress_admin_workspace_member

Add a member to a Botpress workspace. Returns the created workspace member including id, createdAt, and updatedAt.

get_single_botpress_admin_workspace_member_by_id

Get details of the currently authenticated Botpress workspace member. Returns: id, createdAt, updatedAt.

update_a_botpress_admin_workspace_member_by_id

Update a Botpress workspace member by id. Returns the updated workspace member object including id, role, createdAt, and updatedAt. Required: id.

delete_a_botpress_admin_workspace_member_by_id

Remove a Botpress workspace member by id. Returns the deleted workspace member object including id, role, createdAt, and updatedAt. Required: id.

list_all_botpress_integrations_iaks

List Integration Api Keys (IAKs) for a specific Botpress integration. Returns: id, integrationId, createdAt, updatedAt. Required: integrationId.

create_a_botpress_integrations_iak

Create a new Integration Api Key (IAK) in Botpress. Returns the created IAK object including its id, createdAt, and updatedAt.

delete_a_botpress_integrations_iak_by_id

Delete an Integration Api Key (IAK) in Botpress by id. Returns the deleted IAK object including its id, createdAt, and updatedAt. Required: id.

list_all_botpress_admin_integrations

List Botpress integrations with filtering and sorting. Returns: id, name, version, description, createdAt, updatedAt, installCount, verificationStatus, visibility, matchedOn, actions, interfaces. Supports search and filtering by interface, bot, and dev status.

create_a_botpress_admin_integration

Create a new integration in Botpress. Returns the created integration with id, name, version, createdAt, updatedAt, and verificationStatus. Required: name, version.

get_single_botpress_admin_integration_by_id

Get a single Botpress integration by id. Returns: id, name, version, description, createdAt, updatedAt, installCount, verificationStatus, visibility, matchedOn, actions, interfaces. Required: id.

update_a_botpress_admin_integration_by_id

Update a Botpress integration by id. Returns the updated integration with id, name, version, createdAt, updatedAt, and verificationStatus. Required: id.

delete_a_botpress_admin_integration_by_id

Delete a Botpress integration by id. Returns an empty 204 response on success. Required: id.

botpress_admin_integrations_get_by_name

Get a Botpress integration by its name and version. Returns the integration object including id, name, version, description, createdAt, updatedAt, verificationStatus, visibility, installCount, interfaces, and actions. Required: name, version. Version accepts a semver version, a semver version range, or the constant string "latest".

botpress_admin_integrations_get_logs

Get logs for a Botpress integration within a time range. Returns log entries with id, message, level, createdAt, userId, and conversationId. Required: integration_id, timeStart.

create_a_botpress_integrations_validate

Validate an integration creation request in Botpress. Returns the validation result for the proposed integration creation payload. No caller-supplied query or path parameters required.

botpress_integration_validates_bulk_update

Validate an integration update request in Botpress by submitting the proposed changes for validation without applying them. Returns the validation result for the proposed integration update. Required: id.

create_a_botpress_integrations_request_verification

Request integration verification for a Botpress integration, submitting it for the Botpress review process via the Admin API. Returns a verification request response. No caller-supplied query or path parameters are required; authentication headers are handled automatically.

list_all_botpress_admin_interfaces

List Botpress interfaces, optionally filtered by name and version. Returns: id, name, version, createdAt, updatedAt.

create_a_botpress_admin_interface

Create a new Botpress interface. Returns: id, name, version, createdAt, updatedAt. Required: name, version.

get_single_botpress_admin_interface_by_id

Get a single Botpress interface by id. Returns: id, name, version, createdAt, updatedAt. Required: id.

update_a_botpress_admin_interface_by_id

Update a Botpress interface by id. Returns: id, name, version, createdAt, updatedAt. Required: id.

delete_a_botpress_admin_interface_by_id

Delete a Botpress interface by id. Returns: id, name, version, createdAt, updatedAt. Required: id.

botpress_admin_interfaces_get_by_name

Get a Botpress interface by its name and version. Returns: id, name, version, createdAt, updatedAt. Required: name, version. The version parameter accepts a semver version, a semver version range, or the constant string "latest".

list_all_botpress_admin_plugins

List Botpress plugins in a workspace, optionally filtering by name and version. Returns: id, name, version, createdAt, updatedAt.

create_a_botpress_admin_plugin

Create a new Botpress plugin in a workspace. Returns: id, name, createdAt, updatedAt. Required: name, version.

get_single_botpress_admin_plugin_by_id

Get a single Botpress plugin by id. Returns the plugin object including its id, name, version, createdAt, and updatedAt. Required: id.

update_a_botpress_admin_plugin_by_id

Update a Botpress plugin by id. Returns the updated plugin object including its id, name, createdAt, and updatedAt. Required: id.

delete_a_botpress_admin_plugin_by_id

Delete a Botpress plugin by id. Returns an empty 204 response on success. Required: id.

botpress_admin_plugins_get_by_name

Get a single Botpress plugin by name and version. Returns: id, name, version, createdAt, updatedAt. Required: name, version. The version accepts a semver version, a semver range, or "latest".

get_single_botpress_admin_usage_by_id

Get a single Botpress usage record by id (bot or workspace ID, depending on type) for a specified usage type and optional period. Returns: type, id, period, createdAt, updatedAt. Required: id, type.

list_all_botpress_admin_usages

List Botpress usage history for a resource (bot or workspace) by resource_id and usage type. Returns: type, id, period, createdAt, updatedAt. Required: resource_id, type.

botpress_admin_usages_activity

List Botpress usage activity for a resource (bot or workspace) by resource_id and usage type, with the most recent activity listed first. Returns: type, id, timestamp, createdAt, updatedAt. Required: resource_id, type.

list_all_botpress_usages_multiples

List multiple Botpress usages across several workspace or bot IDs in a single request. Returns: id, type, period. Required: types, ids. All requested types must belong to the same entity kind (workspace or bot).

list_all_botpress_usage_daily_activities

List aggregate daily usage activity in Botpress for a given usage type and resource ID, with the most recent activity listed first. Returns daily activity records containing the date and aggregated usage count for the specified type. Required: resource_id, type.

botpress_quotas_ai_spends_bulk_update

Update the AI Spend quota for a Botpress workspace. Returns the updated AI spend quota object reflecting the new configuration. The request body fields are defined in the upstream OpenAPI component `changeAISpendQuotaBody`.

list_all_botpress_admin_activities

List activities of a Botpress task. Returns: id, createdAt, updatedAt. Required: bot_id, task_id.

create_a_botpress_admin_introspect

Introspect the Botpress Admin API to retrieve its specification. Returns the introspected API specification with dynamic, schema-specific fields. No required parameters.

get_single_botpress_conversation_by_id

Get a single Botpress conversation by id. Returns: id, createdAt, updatedAt. Required: id.

delete_a_botpress_conversation_by_id

Permanently delete a Botpress conversation by id. Also immediately deletes corresponding messages; this cannot be undone. Returns: id, createdAt, updatedAt. Required: id.

list_all_botpress_conversations

List Botpress conversations. Returns: id, createdAt, updatedAt.

create_a_botpress_conversation

Create a new Botpress conversation. Returns: id, createdAt, updatedAt.

botpress_conversations_list_messages

List messages in a Botpress conversation. Returns: id, createdAt. Required: conversation_id.

get_single_botpress_conversations_get_or_create_by_id

Get or create a Botpress conversation by id. If a conversation with the given id already exists it is returned; otherwise a new one is created. Returns: id, createdAt, updatedAt. Required: id.

list_all_botpress_conversation_listens

Open an SSE stream to receive real-time messages and events from a Botpress conversation. The response is a Server-Sent Events stream rather than a JSON body with enumerable fields. Required: conversation_id.

list_all_botpress_conversation_participants

List participants in a Botpress conversation. Returns: id, name, pictureUrl, profile, createdAt, updatedAt. Required: conversation_id.

create_a_botpress_conversation_participant

Add a participant to a Botpress conversation by user id. Returns: id, name, pictureUrl, profile, createdAt, updatedAt. Required: conversation_id, userId.

delete_a_botpress_conversation_participant_by_id

Remove a participant from a Botpress conversation by id. Returns an empty 200 response with no data on success. Required: conversation_id, id.

get_single_botpress_conversation_participant_by_id

Get a specific participant from a Botpress conversation by id. Returns: id, name, pictureUrl, profile, createdAt, updatedAt. Required: conversation_id, id.

get_single_botpress_message_by_id

Get a single Botpress message by id. Returns: id, createdAt, payload, userId, conversationId. The payload field is a content-type-specific object whose shape is determined by a `type` discriminator (audio, card, carousel, choice, dropdown, file, image, location, markdown, text, video). Required: id.

delete_a_botpress_message_by_id

Permanently delete a Botpress message by id; this action cannot be undone. Returns the deleted Message object including its id, createdAt, payload, userId, and conversationId. Required: id.

create_a_botpress_message

Create a new message in Botpress by sending a typed payload to a conversation webhook. Supports payload types: text, markdown, image, audio, video, file, card, carousel, choice, dropdown, and location, each with type-specific required fields. Returns: id, createdAt. Required: webhook_url, payload.

get_single_botpress_users_get_or_create_by_id

Get or create a Botpress chat user, returning the existing user if a match is found or creating a new one otherwise. Returns: id, name, pictureUrl, profile, createdAt, updatedAt. The profile field is limited to 1000 characters.

get_single_botpress_event_by_id

Get a Botpress custom event by id. Returns: id, createdAt, payload, conversationId, userId. Required: id.

create_a_botpress_event

Create a custom Botpress event. Returns: id, createdAt, payload, conversationId, userId. Required: payload, conversationId.

list_all_botpress_files

List files uploaded to a Botpress bot with optional filtering and sorting. Returns: id, key, size, status, createdAt, updatedAt, tags, indexed. Supports sorting by key, size, createdAt, updatedAt, or status, and filtering by tags, IDs, and indexing state.

botpress_files_bulk_update

Create or update a Botpress file using key as the unique identifier; updating erases existing content. Upload file content separately via a PUT request to the uploadUrl returned in the response. Returns: id, createdAt, updatedAt. Required: key.

get_single_botpress_file_by_id

Get a Botpress file by its file ID or key. Returns the file object including id, key, size, status, createdAt, updatedAt, uploadUrl, and tags. Required: id.

update_a_botpress_file_by_id

Update metadata for a Botpress file by id (File ID or Key) without modifying the file content. Returns the updated file object including id, key, size, status, createdAt, updatedAt, tags, and accessPolicies. Required: id.

delete_a_botpress_file_by_id

Delete a file in Botpress by its file ID or key. Returns an empty response on success. Required: id.

create_a_botpress_file

Copy a Botpress file to a new destination key, optionally to a different bot. Returns the copied file object including id, key, size, status, and createdAt. Required: id_or_key, destination_key. The destination_key must not already be in use in the destination bot.

botpress_files_search

Search indexed Botpress files using natural language semantic search to retrieve matching text passages. Returns: content, score, context. Required: query. Maximum 50 results; query limited to 1 KB.

list_all_botpress_file_passages

List indexed text passages for a Botpress file by file ID or key. Returns each passage with its content, context, breadcrumb, title, and subtitle. Required: file_id.

botpress_file_passages_bulk_update

Set the indexed file passages for a Botpress file by id, replacing all existing passages asynchronously. Returns the passages array. Required: id. The endpoint returns immediately with the file status set to indexing_pending; indexing completes asynchronously, transitioning to indexing_completed or indexing_failed.

list_all_botpress_files_tags

List available file tags in Botpress. Returns: name.

list_all_botpress_tag_values

List all distinct values assigned to a specific file tag in Botpress. Returns a paginated collection of tag value strings. Required: tag.

list_all_botpress_files_knowledge_bases

List knowledge bases for a bot in Botpress. Returns: id, name, tags, createdAt, updatedAt. Supports filtering by tags passed as a URL-encoded JSON object of key-value pairs.

create_a_botpress_files_knowledge_base

Create a new knowledge base for grouping files in Botpress. Returns: id, name, tags, createdAt, updatedAt. Required: name.

update_a_botpress_files_knowledge_base_by_id

Update an existing knowledge base in Botpress. Returns: id, name, tags, createdAt, updatedAt. Required: id.

delete_a_botpress_files_knowledge_base_by_id

Delete a knowledge base in Botpress by id. Returns an empty 204 response on success. Required: id.

list_all_botpress_chat_conversations

List Botpress conversations sorted by recency, with the most recent appearing first. Returns: id, createdAt, updatedAt. Filterable by tags, participant ids, integration name, channel, and creation date range; sortable by createdAt or updatedAt.

create_a_botpress_chat_conversation

Create a new Botpress conversation. Returns: id, createdAt, updatedAt. Required: tags. The required tags depend on the specific integration; see the integration's documentation for details.

get_single_botpress_chat_conversation_by_id

Get a single Botpress chat conversation by id. Returns: id, createdAt, updatedAt. Required: id.

update_a_botpress_chat_conversation_by_id

Update a Botpress conversation by id, setting the values of the parameters passed; any parameters not provided are left unchanged. Returns: id, createdAt, updatedAt. Required: id.

delete_a_botpress_chat_conversation_by_id

Permanently delete a Botpress chat conversation by id; this also immediately deletes all corresponding messages and cannot be undone. Returns: id, createdAt, updatedAt. Required: id.

list_all_botpress_chat_events

List Botpress chat events sorted by most recent first. Returns: id, createdAt, payload, conversationId, userId. Filter by type, conversationId, userId, messageId, workflowId, or status.

create_a_botpress_chat_event

Create a new Botpress chat event. Returns the created event including id, createdAt, payload, conversationId, and userId. Required: payload, conversationId.

get_single_botpress_chat_event_by_id

Get a single Botpress chat event by id. Returns: id, createdAt, payload, conversationId, userId. Required: id.

delete_a_botpress_events_scheduled_by_id

Cancel a scheduled Event in Botpress. The event must be in a `scheduled` state. Returns the cancelled event object including its id, createdAt, payload, conversationId, and userId. Required: id.

list_all_botpress_chat_messages

List messages for a bot. Supports filtering by conversation, date range, and tags with cursor-based pagination.

create_a_botpress_chat_message

Create a new message in a conversation. Supports all Botpress payload types (text, image, card, choice, etc.) and optional scheduled delivery.

get_single_botpress_chat_message_by_id

Retrieve a single message by its ID, including payload, tags, direction, and metadata.

update_a_botpress_chat_message_by_id

Update the tags or payload of an existing message. The message type field is immutable and cannot be changed.

delete_a_botpress_chat_message_by_id

Permanently delete a message by its ID. This action is irreversible.

get_single_botpress_messages_get_or_create_by_id

Retrieve an existing message matching the given discriminating tags, or create it if not found. If found, updates its tags and payload with the provided values.

create_a_botpress_chat_initialize_incoming_message

Initialize an incoming message by atomically get-or-creating the user, conversation, and message in a single call. Used by integrations to register inbound messages from external channels before processing them through the bot.

create_a_botpress_messages_import_message

Bulk import up to 100 messages into Botpress conversations in a single call. Each message uses discriminateByTags for idempotent deduplication, making it safe to re-run imports. Used to migrate or replay historical messages from an external channel.

list_all_botpress_chat_users

List Botpress chat users sorted by most recent first. Returns: id, name, pictureUrl, profile, tags, attributes, createdAt, updatedAt. Filterable by conversation id, tags, and date range.

create_a_botpress_chat_user

Create a new Botpress chat user. Returns: id, name, pictureUrl, profile, createdAt, updatedAt. Required tags vary by integration; see the specific integration for details.

get_single_botpress_chat_user_by_id

Get a single Botpress chat user by id. Returns: id, name, pictureUrl, profile, tags, attributes, createdAt, updatedAt. Required: id.

update_a_botpress_chat_user_by_id

Update a Botpress chat user by id. Any parameters not provided will be left unchanged. Returns: id, name, createdAt, updatedAt. Required: id.

delete_a_botpress_chat_user_by_id

Permanently delete a Botpress chat user by id. This action cannot be undone. Returns: id, name, createdAt, updatedAt. Required: id.

create_a_botpress_expiry

Update the expiry for a Botpress chat state. Returns the updated State object including type, id, name, expiresAt, createdAt, and updatedAt. Required: type, state_id, name.

list_all_botpress_chat_states

Get a Botpress chat state by resource type, state_id, and name. Returns the State object including type, id, name, values, expiresAt, createdAt, and updatedAt. Required: type, state_id, name.

create_a_botpress_chat_state

Override a Botpress chat state by setting new state values for a given resource type, state_id, and name. Returns the State object including type, id, name, createdAt, and updatedAt. Required: type, state_id, name.

botpress_chat_states_bulk_update

Update a Botpress chat state by setting new state values for a given resource type, id, and name. Returns the State object including type, id, name, createdAt, and updatedAt. Required: type, id, name.

get_single_botpress_get_or_set_by_id

Get or create a Botpress chat State by resource type, id, and name — returns the existing State, or creates a new one if it does not exist. Returns: type, id, name, value, expiresAt, createdAt, updatedAt. Required: type, name, id.

create_a_botpress_chat_action

Call an action on a Botpress bot via the Chat API. Returns the action result with action-specific fields depending on which action was invoked.

create_a_botpress_integrations_configure

Configure a Botpress integration by having it call this endpoint to configure itself. Returns the configuration object with integration-specific fields.

list_all_botpress_chat_workflows

List Botpress chat workflows with the most recent appearing first. Returns: id, name, status, conversationId, userId, parentWorkflowId, tags, createdAt, updatedAt. Filterable by tags, conversationId, userId, parentWorkflowId, statuses, and name.

create_a_botpress_chat_workflow

Create a new Botpress chat workflow. Returns: id, name, createdAt, updatedAt.

get_single_botpress_chat_workflow_by_id

Get a single Botpress chat workflow by id. Returns: id, name, status, conversationId, userId, parentWorkflowId, tags, createdAt, updatedAt. Required: id.

update_a_botpress_chat_workflow_by_id

Update a Botpress chat workflow by id, setting only the provided parameters; any not provided remain unchanged. Returns: id, name, createdAt, updatedAt. Required: id.

delete_a_botpress_chat_workflow_by_id

Permanently delete a Botpress chat workflow by id. This action cannot be undone. Returns: id, name, createdAt, updatedAt. Required: id.

get_single_botpress_workflows_get_or_create_by_id

Get an existing Botpress workflow by tags, or create a new one if no matching workflow is found. Returns: id, name, createdAt, updatedAt. Required: tags.

create_a_botpress_chat_analytic

Add an event to Botpress chat analytics. Returns the analytics response object.

create_a_botpress_chat_observation

Capture a bot runtime observation in Botpress. Returns the captured observation object. Does not support integration observations yet.

list_all_botpress_tables

List all tables associated with your Botpress bot, optionally filtered by tags. Returns: id, name, schema, createdAt, updatedAt.

create_a_botpress_table

Create a new Botpress table with a provided column schema, excluding system-managed fields like IDs and timestamps. Returns: id, name, schema, createdAt, updatedAt. Required: name, schema.

get_single_botpress_table_by_id

Get a single Botpress table by id. Returns: id, name, schema, tags, createdAt, updatedAt. Required: id.

update_a_botpress_table_by_id

Update the schema or name of an existing Botpress table. Returns: id, name, schema, createdAt, updatedAt. Required: id.

delete_a_botpress_table_by_id

Delete a Botpress table by id, permanently removing the table and all its associated data. This action cannot be undone. Returns an empty 204 response on success. Required: id.

botpress_tables_duplicate

Duplicate a Botpress table's schema and content by source table id, creating a new table with the same structure and data. Returns: id, name, createdAt, updatedAt. Required: source_table_id.

botpress_tables_get_or_create

Get or create a Botpress table by table_id. If the table exists, retrieves its information; otherwise, creates a new table based on the provided schema in the request body. Returns: id, name, schema, tags, createdAt, updatedAt. Required: table_id, schema.

list_all_botpress_table_exports

Starts an export job for the table. Required: table_id.

list_all_botpress_table_jobs

List recent export and import jobs for a Botpress table. Returns: id, type, createdAt, updatedAt. Required: table_id.

create_a_botpress_table_import

Import the content of a file into a Botpress table. The table must already exist with the correct schema; existing data in the table is preserved. Returns the import job result. Maximum payload size is 40 MB. Required: table_id, fileId.

botpress_table_columns_bulk_update

Rename an existing column within a Botpress table to better reflect its content or usage. The request body must include the current column name and the new column name. Returns: id. Required: table_id, name, newName.

list_all_botpress_table_rows

Get a specific Botpress table row by its integer id. Returns: id, createdAt, updatedAt, data. Required: table_id, id.

create_a_botpress_table_row

Create one or more new rows in a Botpress table. Returns the created rows with id, createdAt, updatedAt, and table-schema-specific data fields. Required: table_id, rows.

botpress_table_rows_bulk_update

Update specified rows in a Botpress table with partial success support and detailed error feedback. Returns the updated rows with id, createdAt, updatedAt, and table-schema-specific data fields. Required: table_id, rows.

create_a_botpress_rows_find

Search and filter rows in a Botpress table based on specific criteria, supporting complex queries for advanced data retrieval. Returns matching rows with id and table-schema-specific data. Required: table_id.

delete_a_botpress_rows_delete_by_id

Delete specific rows or clear all rows from a Botpress table. Returns the affected rows including id, createdAt, and updatedAt. Required: table_id.

create_a_botpress_rows_upsert

Upsert rows in a Botpress table by key — existing rows matching the key are updated, otherwise new rows are created. Returns the upserted rows including id, createdAt, updatedAt, and table-specific column data. Required: table_id, rows.

create_a_botpress_bot_signing_secrets_rotate

Rotate bot signing secrets in Botpress. Generates a new signing secret; existing secrets remain valid for 24 hours before being invalidated. Returns: id, createdAt, updatedAt. Required: bot_id.

create_a_botpress_integration_signing_secrets_rotate

Rotate signing secrets for a Botpress integration, generating a new secret and invalidating old ones after 24 hours. Returns: id, createdAt, updatedAt. Required: integration_id.

list_all_botpress_chat_tag_values

List Botpress chat tag values for a given tag key. Returns an array of tag value strings associated with the given tag key. Required: key, type.

Why Truto

Why use Truto’s MCP server for Botpress

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

How It Works

From zero to integrated

Go live with Botpress in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Botpress account

Use Truto’s frontend SDK to connect your customer’s Botpress account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call Botpress

Truto’s Proxy API is a 1-to-1 mapping of the Botpress API. You call us, we call Botpress, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Botpress’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Botpress on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

How do end users authenticate their Botpress account?

Botpress uses Personal Access Tokens (PATs) scoped to a workspace. Truto handles token storage, refresh flows where applicable, and workspace scoping so you never manage credentials yourself.

Can I provision new Botpress workspaces and bots programmatically?

Yes. Truto exposes the Botpress Admin API, including workspace creation, workspace member management, admin bot creation, and publishing bots from a bot JSON — everything you need for automated, white-labeled onboarding.

How do I keep a customer's knowledge base in sync?

You can create Knowledge Bases, upload files, bulk-update file passages, tag files, and run semantic file search through Truto. Trigger syncs on your own schedule or on content-change events in your app.

Can I stream AI replies back into my own chat UI?

Yes. Use the chat endpoints to initialize incoming messages and listen on conversations for real-time events and AI responses, so your product can render replies natively while Botpress handles reasoning.

How do I inject authenticated user context into a live conversation?

Use chat state operations to set variables (like account ID, plan, or entitlements) on an active session. Your bot's workflows can then branch on that state to execute gated or account-specific actions safely.

What analytics and usage data can I pull for reporting?

Truto surfaces bot analytics, conversations, chat events, action runs, bot issues, workspace usage, quotas, and audit records — enough to build resolution dashboards, escalation reports, and billing/consumption views.

Are there rate limits I should design around?

Botpress enforces per-workspace rate limits and usage quotas on AI computations and messages. Truto normalizes error responses and retry semantics, and you can query workspace quotas and usage endpoints to back off gracefully.

Botpress

Get Botpress integrated into your app

Our team understands what it takes to make a Botpress integration successful. A short, crisp 30 minute call with folks who understand the problem.