Skip to content

Analytics · Beta

DoiT
API integration

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

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
DoiT

Use Cases

Why integrate with DoiT

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

01

Add FinOps context to observability and APM products

Let your users correlate application telemetry with cloud spend by pushing product usage events into DoiT's DataHub and pulling analytics reports back into your dashboards. This turns latency and throughput metrics into unit economics like cost-per-request or cost-per-tenant.

02

Route cloud cost anomalies through your incident management workflows

Pipe DoiT anomalies, budget alerts, and cloud incidents into your ITSM or alerting product so on-call engineers can triage overspend the same way they triage downtime. Two-way sync with DoiT support tickets keeps escalations in one place.

03

Overlay security posture onto live cloud architecture diagrams

CSPM and cloud security tools can ingest DoiT's scheme data and resource relationships to render vulnerabilities on top of real infrastructure maps. Push findings back as DoiT insights so shared customers see cost-weighted security risk in one view.

04

Embed team-level cost visibility inside internal developer portals

Give engineering teams a financial footprint for the services they own by pulling DoiT budgets, reports, and label-scoped analytics into your IDP. Add a natural-language FinOps assistant powered by DoiT Ava without building your own LLM stack.

05

Automate chargebacks and allocations for billing and revenue platforms

Sync DoiT allocations, labels, and analytics reports into billing engines and revenue tools so shared customers can accurately attribute cloud cost to internal cost centers, products, or customers. Create and update allocations programmatically as your product's tagging model evolves.

What You Can Build

Ship these features with Truto + DoiT

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

01

DataHub event streaming

Push batched product usage events or external metrics into DoiT DataHub datasets via JSON or CSV upload so customers can build unit economics on top of your data.

02

Cost anomaly and budget alert sync

Poll DoiT anomalies, alerts, and budgets and forward breaches into your notification, incident, or ChatOps surface with severity and affected platform metadata.

03

Embedded Ava FinOps assistant

Ship a natural-language cost assistant inside your product using DoiT's Ava ask endpoints, letting users query cloud spend without leaving your UI.

04

Two-way DoiT support ticket integration

Create tickets, attach comments, tag issues, and list ticket history so your product can act as a front door for DoiT engineering support escalations.

05

Architecture-aware security overlays

Fetch cloud scheme exports, resource relationships, and scoped cost snapshots to render infrastructure diagrams enriched with your own security or compliance findings.

06

Label-scoped cost reporting for team dashboards

Query DoiT reports, budgets, allocations, and label assignments filtered by team or service tags to power per-team cost widgets inside developer portals and internal tools.

SuperAI

DoiT AI agent tools

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

list_all_doi_t_analytics_alerts

List alerts in DoiT that your account can access. Returns each alert's id, name, createTime, updateTime, lastAlerted, config, and owner. Results are ordered by most recently created by default.

create_a_doi_t_analytics_alert

Create a new alert in DoiT. Returns the created alert object including its id, name, and config. Required: name, config.

get_single_doi_t_analytics_alert_by_id

Get a single analytics alert in DoiT by id. Returns: id, name, createTime, updateTime, lastAlerted, recipients, config. Required: id.

update_a_doi_t_analytics_alert_by_id

Update a DoiT alert by id. Returns the updated alert object including its id, name, and config. Required: id, config.

delete_a_doi_t_analytics_alert_by_id

Delete a DoiT alert by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_analytics_allocations

List allocations in your doit account. Returns a list of allocations including id, name, owner, type, folderId, createTime, and updateTime. Optional: filter, sortBy.

create_a_doi_t_analytics_allocation

Create a new allocation in doit. Returns the created allocation including id, name, owner, type, folderId, createTime, and updateTime. Requires a request body. Required: name, description.

get_single_doi_t_analytics_allocation_by_id

Get a single allocation by id in doit. Returns the allocation including id, name, owner, type, folderId, createTime, and updateTime. Required: id.

update_a_doi_t_analytics_allocation_by_id

Update an allocation by id in doit. Returns the updated allocation including id, name, owner, type, folderId, createTime, and updateTime. Required: id.

delete_a_doi_t_analytics_allocation_by_id

Delete an allocation by id in doit. Returns an empty 204 response on success. Required: id.

list_all_doi_t_analytics_annotations

List annotations in DoiT. Returns: pageToken, rowCount, annotations. Optional: filter, sort_by.

create_a_doi_t_analytics_annotation

Create a new annotation in DoiT. Returns the created annotation including id and content-type-specific attributes. Required: content, timestamp.

get_single_doi_t_analytics_annotation_by_id

Get a single DoiT annotation by id. Returns the annotation object including id, content, timestamp, labels, timeCreated, and timeModified. Required: id.

update_a_doi_t_analytics_annotation_by_id

Update an annotation in doit by id. Returns the updated annotation object. Required: id.

delete_a_doi_t_analytics_annotation_by_id

Delete an annotation in doit by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_analytics_labels

List labels accessible to your doit account. Returns label records with id, name, type, createTime, and updateTime. Supports filtering by name or type and sorting by id, name, type, createTime, or updateTime.

create_a_doi_t_analytics_label

Create a new label in doit. Returns the created label object including its id. Required: name, color.

get_single_doi_t_analytics_label_by_id

Get a single label in DoiT by id. Returns the label object with its id and content-type-specific attributes. Required: id.

update_a_doi_t_analytics_label_by_id

Update a label in DoiT. Returns the updated label object including its id, name, and other label properties. Required: id.

delete_a_doi_t_analytics_label_by_id

Delete a doit analytics label by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_label_assignments

List objects currently assigned to a DoiT label. Required: label_id.

create_a_doi_t_label_assignment

Assign or unassign objects to a DoiT label. Returns an empty 200 response on success. Required: label_id.

list_all_doi_t_settings_themes

List custom color themes defined for your DoiT account. Returns: rowCount, themes, error. Each theme contains its id plus upstream-defined fields.

create_a_doi_t_settings_theme

Create a custom color theme in DoiT. Returns the created theme with its id. Requires a request body. Required: name, primaryColor, colors.

get_single_doi_t_settings_theme_by_id

Get a custom color theme in DoiT by id. Returns the theme including its id. Required: id.

update_a_doi_t_settings_theme_by_id

Update a custom color theme in DoiT by id. Returns the updated theme including its id. Required: id.

delete_a_doi_t_settings_theme_by_id

Delete a custom DoiT Cloud Analytics theme by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_settings_active_themes

Get the active color theme for the authenticated DoiT user. Returns the active theme object, including `themeId` (the reserved sentinel `"default"` means the built-in default is in use). No parameters required.

doi_t_settings_active_themes_bulk_update

Set the active color theme for the authenticated DoiT user. Returns the updated active theme object, including `themeId`. Send `themeId: "default"` to reset to the built-in default. Required: themeId.

list_all_doi_t_analytics_budgets

List budgets in DoiT. Returns a paginated list of budget objects with a next page token and row count. Supports filtering by owner, last modified time, and creation time range.

create_a_doi_t_analytics_budget

Create a new budget in DoiT. Returns the created budget object including id, name, amount, currency, type, and scopes.

get_single_doi_t_analytics_budget_by_id

Get a single DoiT budget by id. Returns the budget object including id, name, amount, currency, type, and scopes. Required: id.

update_a_doi_t_analytics_budget_by_id

Update a budget in DoiT. Returns the updated budget object including id, name, amount, currency, type, and scopes. Required: id.

delete_a_doi_t_analytics_budget_by_id

Delete a budget in doit by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_analytics_dimensions

List DoiT analytics dimensions your account can access. Returns a list of dimension records, each with id and content-type-specific attributes.

get_single_doi_t_analytics_dimension_by_id

Get a DoiT analytics dimension by type and id. Returns the dimension with id and content-type-specific attributes. Required: type, id.

list_all_doi_t_analytics_folders

List Cloud Analytics folders in DoiT that the current customer can access. Returns folders with id, name, and description, ordered by id ascending.

create_a_doi_t_analytics_folder

Create a new Cloud Analytics folder in DoiT. Returns the created folder with id, name, and description. Required: name.

get_single_doi_t_analytics_folder_by_id

Get a Cloud Analytics folder in DoiT by id. Returns the folder with id, name, and description. Required: id.

update_a_doi_t_analytics_folder_by_id

Update a Cloud Analytics folder in DoiT. All fields are optional. Returns the updated folder with id, name, and description. Required: id.

delete_a_doi_t_analytics_folder_by_id

Delete a Cloud Analytics folder in DoiT by id. Nested folders are deleted and any reports or allocations inside the folder are moved to the root. Returns an empty 204 response on success. Required: id.

list_all_doi_t_analytics_reports

List Cloud Analytics reports in doit. Returns each report's id and content-type-specific attributes.

create_a_doi_t_analytics_report

Create a Cloud Analytics report in doit. Returns the created report with id, name, description, and config.

get_single_doi_t_analytics_report_by_id

Get the results of a specific Cloud Analytics report in doit. Returns id and a content-type-specific result object. Required: id.

update_a_doi_t_analytics_report_by_id

Update a Cloud Analytics report in doit with the specified configuration. Only supplied fields are changed. Returns the updated report with id, name, description, and config. Required: id.

delete_a_doi_t_analytics_report_by_id

Delete a Cloud Analytics report in doit. Returns an empty 204 response on success. Required: id.

create_a_doi_t_reports_query

Run a non-persisted report query in DoiT Cloud Analytics. Returns the report result object with query-specific data.

list_all_doi_t_report_configs

Get the configuration of a specific Cloud Analytics report in doit. Returns the report configuration object. Required: report_id.

list_all_doi_t_sharings

Get permissions for a Cloud Analytics resource in DoiT. Returns the resource permissions object with content-type-specific fields. Required: resource_type, resource_id.

update_a_doi_t_sharing_by_id

Update permissions for a Cloud Analytics resource in DoiT. Returns the updated resource permissions object. Required: id, resource_type.

list_all_doi_t_anomalies

List detected anomalies in doit. Returns anomaly records including attribution, billingAccount, costOfAnomaly, platform, severityLevel, startTime, and notifications. Set include_notifications to true to populate the notifications array.

get_single_doi_t_anomaly_by_id

Get a specific anomaly by id in doit. Returns the anomaly including attribution, billingAccount, costOfAnomaly, platform, severityLevel, startTime, and notifications. Required: id.

list_all_doi_t_auth_validates

Validate the current API user in DoiT. Returns: domain, email.

create_a_doi_t_billing_create_asset

Create a new asset in doit. Returns the created asset object including its account_id. Optional: type, mode, account_name, and root_email. Defaults to type amazon-web-services, mode New, and account_name 'Account name'.

create_a_doi_t_csv_upload

Upload a CSV batch of events to DoiT DataHub. Returns: batch, ingestedRows. The file may be uncompressed or compressed as ZIP/GZ, up to 30 MB; data may take up to 15 minutes to appear in the console.

create_a_doi_t_datahub_event

Ingest a batch of events into doit DataHub. Returns: message. Max 50,000 events per request.

create_a_doi_t_events_delete

Delete specific events in Doit by dataset using either a list of event ids or a time range. Returns: message. Required: dataset.

list_all_doi_t_datahub_datasets

List all DataHub datasets in doit. Returns: datasets.

create_a_doi_t_datahub_dataset

Create a new DataHub dataset in doit. Returns the created dataset including name, description, records, updatedBy, and lastUpdated. Required: name.

delete_a_doi_t_datahub_dataset_by_id

Delete a DataHub dataset by id in doit. Returns: message. Required: id.

update_a_doi_t_datahub_dataset_by_id

Update a DataHub dataset's metadata in doit. Only the description can be changed; the dataset name is immutable. Returns the updated dataset with name, description, records, updatedBy, and lastUpdated. Required: id.

doi_t_datahub_datasets_bulk_delete

Delete one or more DataHub datasets and all their associated data. Returns: message. Required: datasets.

get_single_doi_t_datahub_dataset_by_id

Get a specific DataHub dataset by its name. Returns: name, description, records, updatedBy, lastUpdated, error. Required: id.

list_all_doi_t_billing_invoices

List current and historical DoiT invoices for your organization. Returns: invoices, pageToken, rowCount. Invoices are ordered newest first.

get_single_doi_t_billing_invoice_by_id

Get full details for a single DoiT invoice by its invoice number. Returns: id, invoiceDate, platform, dueDate, status, totalAmount, balanceAmount, currency, url, lineItems. Required: id.

list_all_doi_t_core_cloudincidents

List cloud incidents in doit. Returns an array of incidents with id, title, platform, status, and createTime, plus pageToken and rowCount. Optional: filter, minCreationTime, maxCreationTime, maxResults.

get_single_doi_t_core_cloudincident_by_id

Get a single cloud incident in doit by id. Returns: createTime, description, id, platform, product, status, summary, symptoms, title, workaround. Required: id.

list_all_doi_t_customers_account_teams

List DoiT account managers assigned to your organization. Returns: id, attributes.

create_a_doi_t_cloudflow_trigger

Trigger a published doit CloudFlow whose first node is a webhook trigger. Returns: executionLink. The request body must be valid JSON. Required: trigger_id.

doi_t_cloudflow_flows_refine

Refine a CloudFlow in doit from natural language intent. Streams incremental build events as a server-sent event stream while generating and updating nodes and connections. Required: flow_id, question.

list_all_doi_t_cloudflow_flows

List CloudFlows in doit. Returns a cursor-paginated list of flows. Use maxResults to control page size (1–500, default 50). Pass pageToken from the previous response to fetch the next page.

list_all_doi_t_iam_users

List DoiT users in the organization, including active and invited users. Filter by exact email to return a single match. Returns user records including id and upstream-defined attributes. Optional: email.

update_a_doi_t_iam_user_by_id

Update a DoiT user's information such as name, job function, phone, language, and role. Returns the updated user record including id and upstream-defined attributes. Required: id.

delete_a_doi_t_iam_user_by_id

Delete a DoiT user by id. Returns the deleted user record including id and upstream-defined attributes. Required: id.

doi_t_iam_users_resend

Resend a DoiT user invite by user_id. Invalidates the previous token, resets expiry to 48 hours, and reactivates cancelled invites. Returns the updated invite record including id and upstream-defined attributes. Required: user_id.

doi_t_iam_users_cancel

Cancel a pending DoiT user invite by user_id. Marks the invite as cancelled and invalidates the invite token. Returns the updated invite record including id and upstream-defined attributes. Returns 404 if not found or 409 if already cancelled. Required: user_id.

create_a_doi_t_users_invite

Invite a new user to a doit organization with a specified role and organization. Returns the created invitation response. Requires the invitation details including email, role, and organization. Required: email.

list_all_doi_t_iam_roles

List roles in DoiT. Returns: roles. Each role exposes its primary identifier and any additional fields defined upstream.

list_all_doi_t_iam_organizations

List DoiT organizations accessible to the caller. Returns an organizations array and a rowCount integer.

list_all_doi_t_metadata_platforms

List available platforms in DoiT. Returns the platforms array, where each entry contains upstream platform metadata.

list_all_doi_t_metadata_products

List available products in DoiT. Returns the products array; each item contains an id and product-specific attributes. Optional: platform.

list_all_doi_t_billing_assets

List DoiT assets such as Google Cloud billing accounts and G Suite/Workspace subscriptions. Returns a list of asset records, each containing id, properties, and type. Supports filtering by type.

get_single_doi_t_billing_asset_by_id

Get a DoiT asset by id. Returns the full asset record including id and asset-type-specific attributes. Required: id.

update_a_doi_t_billing_asset_by_id

Update an existing DoiT asset such as a G Suite/Workspace or Office 365 subscription to add or remove licenses. Returns the updated asset with id, properties, and type. Required: id.

list_all_doi_t_support_tickets

List support tickets in DoiT. Returns: tickets. Optional: maxResults, filter, minCreationTime, maxCreationTime.

create_a_doi_t_support_ticket

Create a support ticket in DoiT. Returns: created, id, platform, product, requester, severity, status, subject, urlUI, attributes. The request body is an upstream-defined ticket creation form. Required: ticket.

get_single_doi_t_support_ticket_by_id

Get a DoiT support ticket by id. Returns: id, subject, description, requester, severity, platform, product, platform_info, status, createTime, updateTime, urlUI, is_public, tags, attributes. Required: id.

doi_t_support_tickets_list_comments

List comments on a DoiT support ticket. For customers, only public comments are returned. Returns: comments. All comments are returned in a single response. Required: ticket_id.

doi_t_support_tickets_attach_comment

Add a comment to a DoiT support ticket. For DoiT employees, the request body can mark comments as private internal notes by setting `private` to true. Returns: id, body, author, created, attachments, attributes. Required: ticket_id, body.

doi_t_support_tickets_add_tags

Add tags to a support ticket in DoiT. Returns the stored tags array (including any normalization). Required: ticket_id, tags.

doi_t_support_tickets_bulk_delete

Remove tags from a support ticket in DoiT. Required: ticket_id, tags.

create_a_doi_t_scheme_find

Find cloud diagrams in DoiT that match the provided resource IDs. Returns diagram URLs and matching metadata. Required: resources.

list_all_doi_t_scheme_stats

List doit cloud diagrams with activity stats for a given time period. Returns the diagram stats records including id and content-type-specific activity attributes. Required: start, end.

create_a_doi_t_scheme_get

Get DoiT cloud diagram components and layer data. With an empty body, returns all accessible diagrams; with a populated body, returns full diagram data including projected components. Returns the diagram object with content-type-specific fields.

create_a_doi_t_scheme_search

Search diagrams and components in DoiT. Returns: scheme, component, prop, diagram. The request body must be supplied as JSON. Required: query.

create_a_doi_t_get

Get specified components from a Cloud Diagram status sheet layer in DoiT. Returns the requested layer components. Optional: p for space-separated projection fields. Required: statussheet_id.

list_all_doi_t_export_jsons

Export a DoiT Cloud Diagram layer as a structured JSON document. Returns: statussheet, metadata, nodes, elements, groups, attachments, links, combiners, notes. Required: statussheet_id.

list_all_doi_t_costs

Get a bounded cost snapshot for a doit cloud diagram layer. Returns: currency, total, trend. Required: statussheet_id, start_date, end_date.

list_all_doi_t_snapshots

List saved snapshots for a DoiT Cloud Diagrams layer. Returns the snapshot object with id and content-type-specific attributes. Required: statussheet_id.

get_single_doi_t_snapshot_by_id

Get a single DoiT Cloud Diagrams layer snapshot by id and snapshot_id. Returns the snapshot object with id and content-type-specific attributes. Required: id, snapshot_id.

list_all_doi_t_resource_relationships

List related resources for a doit Cloud Diagrams anchor resource by walking the diagram graph. Returns: anchor, direction, depth, kind, relations, truncated. Required: statussheet_id, rid.

list_all_doi_t_clouddiagrams_activities

List Cloud Diagram activity groups for a DoiT diagram layer. Returns the activity group records with content-type-specific fields. Required: ss_id.

list_all_doi_t_activity_node_activities

List node activities for a component node in a doit Cloud Diagram layer. Returns activity records ordered by timestamp descending, each including id and activity-specific attributes. Required: ss_id, node_id.

list_all_doi_t_analytics_commitment_managers

List commitments in DoiT. Returns: commitments. Optional: sortBy, filter.

get_single_doi_t_analytics_commitment_manager_by_id

Get a commitment in DoiT by id. Returns: id, name, currency, periods. Required: id.

create_a_doi_t_ava_ask

Ask Ava a question in DoiT and receive a streaming response via Server-Sent Events (SSE). Returns an opaque Server-Sent Events stream. Requires a JSON request body. Required: question.

create_a_doi_t_ava_ask_sync

Ask Ava in DoiT and receive a synchronous response. Returns: answer, error. Optional: ephemeral. Required: question.

create_a_doi_t_ava_feedback

Submit feedback on an Ava answer in DoiT. Returns an empty response on success. Required: conversationId, answerId, feedback.

doi_t_ava_delete_conversations_bulk_delete

Delete an Ava conversation in DoiT by its ID. Returns an empty 204 response on success. Required: conversation_id.

list_all_doi_t_insights_results

List insights in DoiT Cloud Intelligence. Returns paginated insight results with content-type-specific attributes.

create_a_doi_t_insights_result

Create or update multiple insights in a batch in DoiT Cloud Intelligence. Returns an array of batch result objects with content-type-specific attributes.

doi_t_insights_results_bulk_delete

Delete all doit insights matching a specified key from the batch source. Returns an empty 204 response on success. Required: insight_key.

create_a_doi_t_insight

Create or update a DoiT insight for the given source and key. If the key already exists, it is updated. Resource results are managed separately. Returns the insight metadata and aggregate summary as defined by the upstream DoiT API. Required: source_id, insight_key, key, title, shortDescription, cloudProvider, categories.

doi_t_insights_bulk_delete

Delete an insight in doit. Returns an empty 204 response on success. Only insights created via the public API (source_id "public-api") can be deleted. Required: source_id, insight_key.

doi_t_status_bulk_update

Update the display status of a single DoiT insight. Returns an empty 204 response on success. Only public-api insights are supported. Deprecated: prefer the status field on the create/update insight endpoint. Required: source_id, insight_key, status.

list_all_doi_t_resource_results

List resource-level results for a Doit insight. Returns a paginated list of affected cloud resources such as EC2 instances or GCS buckets, including their risk scores or potential savings. Required: source_id, insight_key.

create_a_doi_t_resource_result

Replace all resource results for a DoiT insight. Returns the updated resource results, each including server-computed fields severity, resolved, and enhancement. Send an empty array to delete all results. Required: source_id, insight_key, resourceResults.

get_single_doi_t_cloudconnect_supported_feature_by_id

Get supported features and their permission status for a cloud account connected via CloudConnect in DoiT. Returns the content-type-specific feature object. Required: id.

create_a_doi_t_aws_account

Create or update an AWS CloudConnect account role in DoiT. Returns the AWS account response object with upstream-defined fields. s3Bucket and s3BucketRegion are required when enabledFeatures includes "real-time-data". Required: accountID, roleArn, enabledFeatures.

get_single_doi_t_aws_account_by_id

Get an AWS CloudConnect account by id. Returns the AWS account response object with upstream-defined fields. Required: id.

update_a_doi_t_aws_account_by_id

Update an AWS CloudConnect account feature by id. Returns the updated account record with id and upstream-defined attributes. s3Bucket and s3BucketRegion are required when real-time-data is included. Required: id, enabledFeatures.

delete_a_doi_t_aws_account_by_id

Delete an AWS CloudConnect account role by id. Returns an empty 204 response on success. Required: id.

list_all_doi_t_cloudflow_connections

List cloud provider connections in DoiT Cloudflow. Returns connection objects including id, name, description, and enabled. Max 100 per page.

create_a_doi_t_cloudflow_connection

Create a cloud provider connection in DoiT Cloudflow. Returns the created connection including id, name, description, and enabled. Exactly one of gcpConfig or awsConfig must be supplied. Required: name.

get_single_doi_t_cloudflow_connection_by_id

Get a single DoiT Cloudflow connection by id. Returns the connection including id, name, description, and enabled. Required: id.

update_a_doi_t_cloudflow_connection_by_id

Update a DoiT Cloudflow connection by id. Returns the updated connection including id, name, description, and enabled. At most one of gcpConfig or awsConfig may be set. Required: id.

delete_a_doi_t_cloudflow_connection_by_id

Delete a DoiT Cloudflow connection by id. Returns an empty 204 response on success. Returns 409 if the connection is referenced by flows. Required: id.

list_all_doi_t_cloudflow_templates

List the available CloudFlow templates in DoiT. Returns the catalogue as a list of template objects, each including id and attributes. No required parameters.

get_single_doi_t_cloudflow_template_by_id

Get a single DoiT CloudFlow template by id. Returns the template object including its id and attributes. Required: id.

Why Truto

Why use Truto’s MCP server for DoiT

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 600+ 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 DoiT in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s DoiT account

Use Truto’s frontend SDK to connect your customer’s DoiT 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 DoiT

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

04

Unified response format

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

FAQs

Common questions about DoiT on Truto

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

How does end-user authentication to DoiT work through Truto?

Your users connect their DoiT account through Truto's managed auth flow. Truto handles credential storage, refresh, and per-tenant isolation so you never touch DoiT API keys directly in your application.

Which DoiT resources can I read and write via this integration?

The available tools cover analytics (reports, budgets, allocations, alerts, annotations, labels, folders, dimensions), anomalies, DataHub events and datasets, billing assets and invoices, cloud incidents, support tickets, insights and resource results, scheme and cloud diagram data, IAM users and roles, AWS account connections, Cloudflow connections and templates, and the Ava AI assistant.

Can I stream responses from DoiT's Ava AI assistant?

Yes. Truto exposes both the synchronous Ava ask endpoint and the streaming variant, so you can render token-by-token responses inside embedded chat UIs or run one-shot programmatic queries.

How fresh is the cost and anomaly data?

Truto calls DoiT's API on demand, so data freshness matches whatever DoiT itself exposes — reports, budgets, and anomalies reflect the latest state DoiT has processed at the time of the request. You control polling cadence for anomaly and alert sync patterns.

Does Truto handle pagination and rate limits for DoiT?

Yes. Truto normalizes pagination across list endpoints (anomalies, reports, budgets, tickets, datasets, etc.) and manages retries and backoff against DoiT's rate limits so you don't have to build that plumbing per endpoint.

Can I upload usage events in bulk to DoiT DataHub?

Yes. Truto supports both the DataHub event creation endpoint and the CSV upload endpoint, so you can send single events, JSON batches, or large CSV files depending on the volume and shape of the metrics you're forwarding.

DoiT

Get DoiT integrated into your app

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