Truto Documentation
website·Indexed 35 days ago
https://truto.one/docsDocumentation for the Truto unified API and CLI, featuring guides on installation, authentication via API tokens, and cursor-based pagination. Includes detailed integration guides for connecting third-party apps like Salesforce, HubSpot, Slack, and GitHub, as well as information on the truto-python-sdk and @truto/truto-link-sdk.
What's inside Truto
- The Truto Platform MCP server is a JSON-RPC endpoint that exposes a fixed set of meta-tools for discovering and calling the Truto platform API. It is scoped to the user's workspace and is intended for use with external AI assistants to perform platform operations like listing integrations, inspecting connected accounts, and running sync jobs.
Overview of Integrated Accounts in Truto
Integrated Accounts are connections to various APIs created within Truto. Each account is associated with a unique Account ID and a Tenant ID (which can own multiple accounts across different integrations). Through the Integrated Accounts section, users can view account details, access Unified and Proxy APIs, and monitor API logs for troubleshooting.Overview of Truto LLM Tools
Truto exposes the resources defined on an Integration as tools for LLM frameworks. It maps product APIs into REST-based CRUD APIs consisting of 'Resources' (endpoints) and 'Methods' (actions like List, Get, Create, Update, Delete, or custom actions). These methods are provided as Proxy APIs that handle pagination, authentication, and query parameter processing, returning data in a predefined format suitable for LLM agents to use for data normalization.Overview of RapidForm
RapidForm is used to collect input and preferences from end users as part of the Integrated account connection flow. It allows developers to gather necessary data after a user connects their account to enable personalized integrations. Key capabilities include:
- API Support: Works with both Unified APIs and Proxy APIs.
- Dynamic Fields: Supports Single Select, Multi Select, Text, Password, Checkbox, and Hidden fields.
- Dependency Management: Fields can depend on values of other fields (e.g., loading projects based on a selected workspace).
- Logic: Supports custom validation and data transformation using JSONata expressions.
Overview of Truto Sync Jobs
A sync job is a reusable pipeline that pulls data from connected accounts and writes it to destinations such as webhooks, datastores, or SuperQuery tables. A sync job defines the pipeline (resources to fetch, transformations, and destinations), while a sync job run is a specific execution of that job for a particular integrated account. New jobs are recommended to use Runtime version 4.Use the TimeoffTypes object in Unified HRIS API
TheTimeoffTypesobject represents the schema for time off types in the Unified HRIS API. It includes details about the type of leave, its unit of measurement, and timestamps.{ "id": "string", // Required: Unique identifier for TimeoffType "name": "string", // Name of the time off type "description": "string", // Description of the time off type "unit": "string", // Allowed: 'hours', 'days', 'weeks', 'months' "created_at": "string", // Date when the timeofftype was created "updated_at": "string", // Date when the timeofftype was updated "remote_data": "object" // Raw data returned from the remote API call }Use the Unified Instant Messaging API
The Unified Instant Messaging API provides a standardized interface to interact with various messaging platforms.
Base URL:
https://api.truto.one/unified/instant-messagingAuthentication/Scoping: Every request must include the
integrated_account_idquery parameter to scope the request to a specific connection.Understand the Transcripts Object schema
TheTranscriptsresource in the Unified Conferencing API represents a meeting transcript. It includes metadata about the meeting, the processing status, and a detailed list of transcript entries.{ "id": "string", "meeting": { "id": "string" }, "entries": [ { "id": "string", "speaker_id": "string", "speaker_type": "user | guest", "speaker_name": "string", "text": "string", "raw_text": "string", "start_time": "number (seconds from start)", "end_time": "number (seconds from start)" } ], "start_time": "number", "end_time": "number", "external_id": "string", "transcript_url": "string", "status": "processing | completed", "remote_data": "object" }Unified Instant Messaging Attachments Object Schema
TheAttachmentsresource in the Unified Instant Messaging API represents a file attachment. It contains metadata about the file, its source, and the user who uploaded it.{ "id": "string", "file_name": "string", "channel_id": "string", "size": "number", "file_url": "string", "content_type": "string", "uploaded_by": "string", "uploaded_by_type": "string", "created_at": "string", "updated_at": "string", "remote_data": "object" }Understand the WebForms Object schema in Unified E-Signature API
TheWebFormsresource represents a web form within the Unified E-Signature API. It contains metadata about the form's identity, ownership, status, and associated URLs.{ "id": "string", "name": "string", "groups": [ { "id": "string", "type": "string" } ], "created_by": { "id": "string", "name": "string", "emails": [{ "email": "string" }] }, "owner": { "id": "string", "name": "string", "emails": [{ "email": "string" }] }, "status": "string", "urls": [{ "url": "string" }], "created_at": "string", "updated_at": "string", "last_activity_at": "string", "remote_data": {} }Understand the ScanCoverages object schema
TheScanCoveragesobject describes the coverage of a scanning product across cloud resources. It includes metadata about the cloud provider (aws,azure,gcp), the account/region, and specific coverage metrics such as the number of resources in scope versus those actually scanned.{ "id": "string", "provider_id": "string", "provider": "aws | azure | gcp", "account": "string", "region": "string", "native_type": "string", "tags": {}, "collected_at": "ISO 8601 string", "updated_at": "ISO 8601 string", "created_at": "ISO 8601 string", "unreadable_fields": [ { "field": "string", "reason": "not_supported_by_provider | not_configured | permission_denied | not_collected | collection_error | partially_collected", "detail": "string" } ], "remote_data": {}, "coverage_id": "string", "scanner_name": "string", "resource_type": "string", "scan_type": "string", "resources_in_scope": "integer", "resources_scanned": "integer", "resources_not_scanned": "integer", "coverage_percent": "number", "last_scan_at": "string", "counts_capped": "boolean" }Understand Truto Unified APIs
Unified APIs in Truto act as a normalization layer that consolidates multiple third-party APIs (e.g., Salesforce, HubSpot, Zendesk) into a single, consistent interface. They provide several technical abstractions:
- Data Normalization: Converts various data formats and protocols (REST, SOAP, GraphQL) into a standard REST schema.
- Authentication Simplification: Manages diverse auth methods (OAuth, OAuth 2.0, API keys, basic auth) so developers can authenticate once to access multiple platforms.
- Error Mapping: Standardizes error responses across different providers for easier troubleshooting.
- Multi-Resource Support: Allows management of entities like users, tickets, and campaigns across multiple providers using one common interface.