---
title: Method CRM API Integration on Truto
slug: method
category: CRM
canonical: "https://truto.one/integrations/detail/method/"
---

# Method CRM API Integration on Truto



**Category:** CRM  
**Status:** Generally available

## MCP-ready AI tools

Truto exposes 14 tools for Method CRM that AI agents can call directly.

- **list_all_method_crm_files** — List files attached to a record in a Method table. Returns: id, filename, fileExtension, size, createdBy, modifiedBy, createdDate, lastModifiedDate, tenantId, links.
- **create_a_method_crm_file** — Upload a file to Method and link it to a record in a table. Returns: id, filename, fileExtension, size, createdBy, modifiedBy, createdDate, lastModifiedDate, tenantId, links.
- **delete_a_method_crm_file_by_id** — Delete a file in Method by id. Returns an empty 204 response on success. Required: id.
- **method_crm_files_download** — Download a file from Method by file_id. Returns the file content as binary data. Required: file_id.
- **method_crm_files_get_url** — Get a temporary download URL for a file in Method by file_id. Returns a download URL string that expires after 20 minutes. Required: file_id.
- **method_crm_files_bulk_update** — Update a file's link details in Method — currently only the attachToEmail field can be modified. Returns an empty 204 response on success. Required: file_id, tableName, recordId.
- **list_all_method_crm_me** — Get information about the currently authenticated user in Method. Returns the current user's profile attributes; the upstream API does not enumerate the specific response fields for this endpoint.
- **list_all_method_crm_tables** — List records from a Method CRM table with filtering, ordering, and field selection. Returns: recordId, firstName, lastName, phone, email. Max 100 records per page; default ordering is descending by RecordID. Required: table.
- **update_a_method_crm_table_by_id** — Update a record in a Method CRM table by id. Include only the fields to modify; linked fields are ignored. Returns an empty 204 response on success. Use `__<ChildTableName>` prefix for related records (maximum 50). Required: id, table.
- **delete_a_method_crm_table_by_id** — Delete a record from a Method CRM table by id. Returns an empty 204 response on success. Required: id, table.
- **create_a_method_crm_table** — Create a new record in a Method CRM table. Returns the RecordID of the created record. Include all required fields for the target table; linked fields are ignored. Use `__<ChildTableName>` prefix for related records (maximum 50). Required: table.
- **get_single_method_crm_table_by_id** — Get a single record from a Method CRM table by id. Returns: RecordID, Email, FirstName, IsOptOutOfBilling, IsOptOutOfMarketing, LastName, Name, Note, Phone, PortalPassword, PortalUserName, SpecialType, Title, Mobile, FaceBookUserName, LinkedInPublicUserName, TwitterUserName, Website, AltPhone, Pager, TagList, InstagramUserName, LastModifiedDate, Entity, Entity_RecordID, AccountNumber, Balance,…. Required: id, table.
- **method_crm_tables_count** — Get the count of records in a Method table, optionally filtered by table fields, linked fields, and system fields using the filter expression syntax. Returns the record count as an integer. Required: table.
- **method_crm_tables_sync** — Sync a record in a Method table with QuickBooks or Xero. Works only with syncable tables; for accounting transactions like Estimates and Invoices, this also calculates the total amount. Returns an empty 204 response on success. Required: table, record_id.

## How it works

1. **Link your customer's Method CRM account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Method CRM.** The Proxy API is a 1-to-1 mapping of the Method CRM API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Sync signed proposals into Method as Estimates** — CPQ and e-signature platforms can push won deals directly into Method as Estimates with line items, then trigger an accounting sync so the finance team sees them in QuickBooks or Xero without manual re-entry.
- **Automate field service invoicing from mobile jobs** — Field service management apps can create Invoices in Method the moment a technician closes a job, attach on-site photos to the record, and fire the sync to QuickBooks so back-office billing happens instantly.
- **Surface live customer financials in B2B portals** — B2B commerce and customer portal apps can read balances, account numbers, and billing opt-out flags from Method to gate checkout, enforce credit terms, and show accurate account status to end customers.
- **Centralize document management on CRM records** — Document-heavy SaaS tools (contracts, CAD, inspection reports) can upload files directly to Method table records and generate temporary URLs to render those files natively inside their own UI.
- **Two-way data sync for vertical SaaS built on QuickBooks** — Vertical SaaS platforms serving contractors, wholesalers, or manufacturers can use Method as a reliable bridge to QuickBooks — reading and writing Customers, Items, Estimates, and Invoices without building a direct accounting integration.

## What you can build

- **Estimate and Invoice creation with line items** — Create parent transactions in Method and pass up to 50 child line-item records in a single API call using the __ChildTableName prefix.
- **Explicit QuickBooks/Xero sync trigger** — Fire the Method tables sync endpoint after writing a financial record so Estimates and Invoices post to the ledger with auto-calculated totals.
- **File attachments on any CRM record** — Upload binary files against Contacts, Opportunities, or Jobs, and bulk update file metadata to keep document libraries organized.
- **Embedded file viewer with temporary URLs** — Generate short-lived download URLs for Method files so your app can preview contracts, photos, or PDFs inline without proxying the binary yourself.
- **Customer financial lookup** — Fetch a single Method table record by ID to pull real-time Balance, AccountNumber, and IsOptOutOfBilling fields into your billing or checkout flow.
- **Custom table discovery and CRUD** — List, count, read, create, update, and delete records across Method's dynamic tables so your integration adapts to each customer's customized schema.

## FAQs

### How does authentication work with Method CRM through Truto?

Truto handles the OAuth handshake and token lifecycle for Method CRM on your behalf. Your end users connect their Method account through Truto's connect flow, and your app calls the tools using a Truto integrated account ID — no token storage or refresh logic on your side.

### Can I create an Invoice and its line items in a single call?

Yes. Method's table model lets you create a parent record (like an Invoice or Estimate) and include up to 50 child records (like line items) in the same create_a_method_crm_table request by using the __<ChildTableName> prefix.

### How do I get transactions to appear in QuickBooks or Xero after creating them?

After creating a financial record via the tables API, call method_crm_tables_sync to explicitly push it to the connected accounting system. For Estimates and Invoices, this sync also auto-calculates totals so the ledger stays balanced.

### Does Method CRM support custom fields and custom tables?

Yes. Method is highly customizable and every account can have its own schema. Use list_all_method_crm_tables and get_single_method_crm_table_by_id to discover the tables and fields available for each connected customer at runtime rather than hardcoding assumptions.

### How do file uploads and previews work?

Use create_a_method_crm_file to upload a binary and link it to a specific table record, method_crm_files_download to retrieve the raw file, and method_crm_files_get_url to generate a temporary URL (valid for about 20 minutes) that you can embed in your UI.

### Can I paginate and count large tables efficiently?

Yes. list_all_method_crm_tables supports paginated listing of records, and method_crm_tables_count returns totals so you can build incremental sync jobs, progress indicators, or reconciliation checks against a customer's Method data.

## Related reading

- [Connect Method CRM to Claude: Automate Data, Attachments & Syncs](https://truto.one/blog/connect-method-crm-to-claude-automate-data-attachments-syncs/) — Learn how to connect Method CRM to Claude using Truto's managed MCP server. Automate dynamic table records, file attachments, and QuickBooks/Xero data syncs.
- [Connect Method CRM to ChatGPT: Manage Records, Files & Accounting](https://truto.one/blog/connect-method-crm-to-chatgpt-manage-records-files-accounting/) — Learn how to connect Method CRM to ChatGPT using an auto-generated MCP server. Manage dynamic tables, sync accounting data, and handle file attachments.
- [Connect Method CRM to AI Agents: Orchestrate Tables, Files & Syncs](https://truto.one/blog/connect-method-crm-to-ai-agents-orchestrate-tables-files-syncs/) — Learn how to connect Method CRM to AI Agents using Truto's /tools endpoint. Fetch table schemas, handle syncs, and build autonomous workflows with working code.
