Skip to content

CRM

Nimble
API integration

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

Talk to us
Nimble

Use Cases

Why integrate with Nimble

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

01

Log call transcripts and interaction history directly into Nimble contacts

Cloud telephony and conversational AI platforms can search Nimble contacts by phone number, then automatically attach AI-generated call summaries and sentiment analysis as contact notes — keeping the sales rep's CRM updated without manual data entry.

02

Automate deal progression from external commercial events

E-signature, billing, or CPQ platforms can programmatically move deals through pipeline stages — including marking them as won or exiting them as lost with specific reasons — when contracts are signed, invoices are paid, or proposals expire.

03

Sync lead scores and segment contacts with tag-based automation

Marketing automation platforms can assign tags to Nimble contacts when engagement thresholds are met, then advance tagged leads to specific pipeline stages, bridging the gap between Nimble's lightweight automation and sophisticated lead scoring engines.

04

Provision custom CRM fields and tabs for your SaaS data

Any B2B SaaS product can dynamically create dedicated field groups, tabs, and custom fields on Nimble contact profiles to store proprietary data like health scores, subscription tiers, or product usage metrics — without requiring the end user to manually configure their CRM.

05

Generate personalized email drafts from AI-powered outreach tools

Sales enablement and AI writing platforms can inject hyper-personalized message drafts directly into a Nimble user's draft queue, ready for review and sending through their connected Microsoft 365 or Google Workspace account.

What You Can Build

Ship these features with Truto + Nimble

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

01

Automatic call log injection

After every call, create a timestamped contact note in Nimble containing the transcript, duration, and outcome using the contact notes API.

02

Closed-won deal automation with file attachment

Attach signed contracts or invoices to Nimble deals as files and trigger a pipeline transition to mark the deal as won — all from a single external workflow.

03

Dynamic custom field provisioning

Programmatically create custom tabs, field groups, fields, and dropdown choices on Nimble contact or deal records so your SaaS data appears natively inside the CRM.

04

Smart contact deduplication on ingest

Before creating new contacts, query Nimble's search endpoint to check for existing records by email or name, preventing duplicate entries from your lead generation or event platform.

05

Tag-driven audience segmentation sync

Assign and manage tags on Nimble contacts based on external engagement data, enabling end users to build Nimble-native saved searches and segments without leaving their CRM.

06

Pipeline stage progression from external triggers

Move leads between pipeline stages, undo transitions, or exit leads unsuccessfully using Nimble's granular pipeline transition endpoints — driven by events in your product like form submissions, payment failures, or contract expirations.

SuperAI

Nimble 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_nimble_me

Get current user info in Nimble. Returns company_id, company_size, email, name, and user_id in the response.

list_all_nimble_contacts

List contacts in Nimble. Returns important fields such as id, avatar_url, employers_info, tags, last_contacted, company_last_contacted, reminder, and record_type. These fields provide identification, company data, tags, interaction history, reminders, and type.

create_a_nimble_contact

Create a new contact in Nimble. Requires fields for contact data with at least a first or last name for persons or a company name for companies. Returns id, avatar_url, owner_id, privacy, tags, record_type, type, fields, created, updated, and additional details of the created contact.

delete_a_nimble_contact_by_id

Delete a contact in Nimble. Requires id. Returns a message field indicating the operation result.

update_a_nimble_contact_by_id

Update a contact in Nimble by id. Requires id. Returns fields such as id, avatar_url, fields, is_important, last_contacted, record_type, owner_id, tags, stages_info, reminder, notice, and contexts for the contact.

nimble_contacts_contact_ids

List contact ids in Nimble. Returns an array of ids for matching contacts. Response includes resources (array of contact ids) and meta (pagination details).

nimble_contacts_standard

List contacts in Nimble using required id parameter (comma-separated up to 30). Returns key fields including id, avatar_url, employers_info, company_last_contacted, created, updated, tags, record_type, stages_info, and contexts.

nimble_contacts_bulk

Delete a list of contacts in Nimble using advanced search query or record_type. Returns data.ids of deleted contacts, push_data with action and notification info, and status.

get_single_nimble_contact_by_id

Get a specific contact in Nimble by id. Returns avatar_url, employers_info, company_last_contacted, fields, created, updated, tags, reminder, privacy settings, stages_info, notice details, and contexts data.

nimble_contacts_proceedings

List proceedings for a specific contact in Nimble. Requires contact_id, direction, and limit. Returns proceeding_id, name, description, feed_tstamp, and proceeding_type with type_id and type_name.

nimble_contacts_proceeding_providers

List contacts proceeding providers in Nimble. Returns providers with name, provider_id, and available types including type_id and type_name.

nimble_contacts_assign_tags

Assign tags to a specific contact in Nimble. Requires id. Returns contact details including id, tags, avatar_url, employers_info, created, updated, fields, record_type, stages_info, and related metadata.

list_all_nimble_contact_notes

List contact-notes for a specific contact in Nimble. Requires contact_id. Returns id, note, note_preview, author_name, created, updated, owner details, and related contacts including their name, email, phones, and employment.

create_a_nimble_contact_note

Create a note on one or more contacts in Nimble. Requires contact_ids, note, and note_preview. Returns id, note, note_preview, author_name, created, updated, owner details, and associated contacts with their information.

update_a_nimble_contact_note_by_id

Update a contact note in Nimble by id. Requires id, contact_ids, note, and note_preview. Returns note content, note_preview, author_name, contacts details (id, name, email, employment, phones), owner details, created, updated, and owner_id.

delete_a_nimble_contact_note_by_id

Delete a specific contact note in Nimble using id. Returns id of the deleted note.

get_single_nimble_contact_note_by_id

Get a specific contact note in Nimble using id. Returns author_name, id, note, note_preview, created, updated, owner, and related contacts details.

nimble_contact_notes_create_with_id

Create a contact note in Nimble with id. Requires id, contact_ids (1-10), note, and note_preview. Returns id, note, note_preview, author_name, contacts with details (id, name, email, phones, employment), owner info, created, and updated.

list_all_nimble_contact_fields

List all available metadata for company contact fields in Nimble. Returns tabs with tab_id, tab_name, contact_types, members, and fields including field_id, name, type, field_kind, validation_rule, read_only, multiples, and available_actions.

create_a_nimble_contact_field

Create a new contact field in Nimble. Requires field_type, group_id, insert_after, name, presentation, tab_id, and multiples. Returns the created field including field_type, group_id, insert_after, name, presentation, tab_id, and multiples.

update_a_nimble_contact_field_by_id

Update a specific contact field in Nimble by id. Requires id. Returns the updated field details including group_id, insert_after, name, presentation with number_type, and tab_id.

delete_a_nimble_contact_field_by_id

Delete a contact field in Nimble by id. Requires id and preflight_checks. Returns object_id and object_type to confirm the deleted field.

nimble_contact_fields_unset_primary

Delete is_primary mark from a specific contact field in Nimble. Requires contact_id, field_id, and position. Returns object_id and object_type in the response.

nimble_contact_fields_set_primary

Update contact field in Nimble by marking it with is_primary flag. Requires contact_id, field_id, and position. Returns updated field details including is_primary status.

create_a_nimble_contact_fields_group

Create a new contacts fields group in Nimble. Requires insert_after, logo_id, name, and tab_id. Returns tab_id, tab_name, contact_types, is_standard, members with their fields, and available_actions.

update_a_nimble_contact_fields_group_by_id

Update a contacts fields group in Nimble by id. Requires id. Response includes tab_id, tab_name, contact_types, is_standard, members with fields details, and available_actions.

delete_a_nimble_contact_fields_group_by_id

Delete contact-fields-groups by id in Nimble. Requires id. Returns object_id for deleted resource and object_type indicating the resource type.

create_a_nimble_contact_field_tab

Create a new contact-field-tab in Nimble. Requires contact_types, insert_after, and tab_name. Returns the created tab details including its id and name.

update_a_nimble_contact_field_tab_by_id

Update contact-field-tab in Nimble using id. Requires id. Response returns updated tab details including contact_types, insert_after, and tab_name.

delete_a_nimble_contact_field_tab_by_id

Delete a contact-field-tab in Nimble by id. Requires id. Returns confirmation of deletion.

create_a_nimble_contact_field_choice

Create a choice for a contact field in Nimble. Requires field_id. Returns tab_id, tab_name, contact_types, is_standard, members with group and field details, and available_actions.

update_a_nimble_contact_field_choice_by_id

Update a contact-field-choice in Nimble. Requires field_id and id. Returns tabs with tab_id, tab_name, contact_types, is_standard, members with groups and fields including field_id, name, type, field_type, and available_actions.

delete_a_nimble_contact_field_choice_by_id

Delete a specific contact-field-choice in Nimble by providing field_id and id. The response confirms successful deletion.

list_all_nimble_contact_pipelines

List contacts pipelines in Nimble. Returns pipelines with fields such as pipeline_id, name, description, created, updated, creator details, stages with stage_id and name, and lost_reasons with id and text.

list_all_nimble_contacts_search

Search contacts in Nimble using advanced query. Requires query parameter. Returns resources containing fields like id, first name, last name, company, and email.

create_a_nimble_deal

Create a new deal in Nimble. Requires owner_id, fields_values (with at least deal_name), pipeline_id, and stage_id. Returns deal details including id, owner_id, pipeline_id, stage_id, fields_values like name, probability, description, amount, expected_close_date, plus related_contacts, related_external_contacts, tags, privacy settings, and currency.

get_single_nimble_deal_by_id

Get deal in Nimble by id. Returns deal_id, deal_number, creator details, related_contacts, owner, custom field values, stage_transitions, files, tags, final_probability, and age_in_days.

delete_a_nimble_deal_by_id

Delete a deal in Nimble by id. Requires id. Returns a message confirming deletion or access restrictions.

update_a_nimble_deal_by_id

Update a deal in Nimble by id. Requires id. Returns updated deal fields including name, probability, description, amount, stage_id, currency, related_contacts, external_contacts, and tags.

nimble_deals_won_deals_last_month

Get sum of all deals won last month in Nimble. Returns last_month_won_amount as the total amount and last_month_won_count as the total number of deals.

nimble_deals_overdue

List overdue activities for a specific deal in Nimble. Requires id. Returns activities with fields including activity_id, activity_type details, assigned_to, comments, created, description, priority, related_contacts, and related_deals.

list_all_nimble_deals_tags

List deals tags in Nimble. Returns tag name and created date for each tag.

create_a_nimble_deals_tag

Add tags to deals in Nimble using a query to match deals. Returns is_completed, operation_id, processed, started_at, total, and errors with details on failed operations.

update_a_nimble_deals_tag_by_id

Update a deals tag by name in Nimble. Requires id as tag_name in path and new_tag in body. Returns updated tag information.

delete_a_nimble_deals_tag_by_id

Delete a deals tag by name in Nimble. Requires id (tag name). Returns errors with message, nse_query, total, and type if deletion fails due to restrictions.

list_all_nimble_deal_column_catalogue

List column catalogue in Nimble. Returns columns and column groups including id, human_readable_name, json_path, value_json_path, presentation details, and whether columns are read_only, is_standard, or sortable.

list_all_nimble_deals_pipelines

List all deals pipelines in Nimble. Returns available pipelines including their details such as stages and structure.

get_single_nimble_deals_pipeline_by_id

Get deals pipeline by id in Nimble. Requires id. Returns details about the pipeline including name, stages, and configuration.

create_a_nimble_deals_pipeline

Create a new deals pipeline in Nimble. Requires name, description, color, lost_reasons, stages, fields_tab_members, and default_currency. Returns pipeline details including id, name, description, color, lost_reasons, stages with probabilities and expected_days, fields_tab_members, and default_currency.

update_a_nimble_deals_pipeline_by_id

Update a deals pipeline in Nimble by id. Requires id. Returns updated fields including name (pipeline name), description (pipeline description), and color (pipeline color).

delete_a_nimble_deals_pipeline_by_id

Delete a deals pipeline in Nimble by id. Requires id. All deals in this pipeline will also be deleted. Response confirms successful deletion.

nimble_deals_pipelines_archive

Archive a specific deals pipeline in Nimble using id. Returns confirmation of successful archival.

nimble_deals_pipelines_unarchive

Un-archive a deals pipeline in Nimble. Requires id. Returns pipeline details including id, name, and status to confirm it is unarchived.

nimble_deals_pipelines_add_pipeline_lost_reason

Add a new lost reason to a deals pipeline in Nimble. Requires pipeline_id and reason. Returns the created lost reason with its id and details.

list_all_nimble_message_drafts

List message drafts in Nimble. Returns draft_id, specification (including subject, body, sender, recipients), creator, recipients, cc, bcc, sender, and updated fields.

create_a_nimble_message_draft

Create a draft message in Nimble. Returns draft details including subject, body, sender, recipients, attachments, tracking_configuration, expiration settings, and sender_credential_id.

create_a_nimble_pipeline_transition

Exit lead from pipeline successfully in Nimble. Requires lead_id and pipeline_id. Returns lead details including id, owner_id, stages_info, record_type, company_last_contacted, reminder, notice, and tags.

update_a_nimble_pipeline_transition_by_id

Update the successful exit pipeline-transition in Nimble for a lead. Requires lead_id and pipeline_id. Returns fields including id, avatar_url, company_last_contacted, fields, owner_id, tags, stages_info, and updated.

delete_a_nimble_pipeline_transition_by_id

Clear all pipeline-transition for a lead in Nimble. Requires lead_id and pipeline_id. Returns lead details including id, record_type, object_type, stages_info with pipeline_id, pipeline_name, and stage_name, along with tags, created, updated, and owner_id.

nimble_pipeline_transition_exit_lead_unsuccessfully

Exit lead from a pipeline unsuccessfully in Nimble. Requires lead_id and pipeline_id. Returns lead details including id, name, avatar_url, tags, employers_info, stages_info, and contact metadata.

nimble_pipeline_transition_unsuccessful_exit

Update the unsuccessful exit pipeline-transition in Nimble. Requires lead_id and pipeline_id. Returns updated transition details including actual_exit_date, notes, and lost_reason.

nimble_pipeline_transition_move_lead_stage

Move lead to a specific pipeline stage in Nimble. Requires lead_id, pipeline_id, and stage_id. Returns lead details including id, owner_id, fields, tags, reminder, stages_info, and contact metadata.

nimble_pipeline_transition_undo_lead

Undo a recent lead transition to won or lost stage in Nimble. Requires lead_id and pipeline_id. Returns lead details including id, avatar_url, record_type, owner_id, stages_info, reminder, tags, and notice information.

create_a_nimble_deal_file

Store a new deal file in Nimble for a specific deal using id. Supports external sources or uploaded files via Azure SDK. Returns metadata including data_id and source.

update_a_nimble_deal_file_by_id

Update a deal file in Nimble using deal_id and id. Allows renaming the file by providing new_file_name. Only files uploaded using Azure SDK can be renamed. Response returns updated file details.

delete_a_nimble_deal_file_by_id

Delete a specific deal file in Nimble. Requires deal_id and id. Returns confirmation of deletion.

nimble_deal_file_download

Get download URL for a specific deal file in Nimble. Requires deal_id and id. Returns the download link of the requested file in the response.

create_a_nimble_deal_note

Create note in Nimble for a deal. Requires deal_id and title. Returns note details including title and body.

update_a_nimble_deal_note_by_id

Update a specific deal note in Nimble. Requires deal_id and id. Returns the updated note including title and body fields.

delete_a_nimble_deal_note_by_id

Delete a specific deal note in Nimble. Requires deal_id and id. The response confirms successful deletion of the note.

list_all_nimble_deal_fields

List deal fields in Nimble. Returns standard_fields with field_id, field_type, and field_name, and pipelines_tabs with tab_id, tab_name, pipeline_id, members, and related field details.

create_a_nimble_pipeline_stage

Create a new pipeline-stage in Nimble. Requires pipeline_id. Returns fields including id (stage identifier), name (stage name), description (stage description), expected_days (time before stage completion), and default_probability (default deal probability in this stage).

update_a_nimble_pipeline_stage_by_id

Update a pipeline stage in Nimble. Requires pipeline_id and id. Returns stage details including name, description, expected_days, and default_probability.

delete_a_nimble_pipeline_stage_by_id

Archive pipeline-stage in Nimble. Requires pipeline_id and id. Response confirms stage archived.

list_all_nimble_pipeline_deals_by_stages

List pipeline deals by stages in Nimble. Requires pipeline_id. Returns deals with fields such as deal_id, deal_number, creator, owner, related_contacts, stage details, tags, files, final_probability, and meta information including totals.

list_all_nimble_pipeline_deals_by_owner

List pipeline deals by owner in Nimble. Requires pipeline_id and sort. Returns groups containing deals with deal_id, deal_number, creator, owner, related contacts, stage transitions, files, tags, and meta with total_amount.

create_a_nimble_deal_pipeline_field

Create a new custom field in a deals pipeline in Nimble. Requires pipeline_id. Returns field id, name, field_type, validation_rule, presentation, and placement details.

update_a_nimble_deal_pipeline_field_by_id

Update a custom field in a specific deals pipeline in Nimble using pipeline_id and id. Returns pipelines_tabs with tab_id, tab_name, pipeline_id, members details, and standard_fields with field_id, field_type, and field_name.

delete_a_nimble_deal_pipeline_field_by_id

Delete a custom field from a deals pipeline in Nimble. Requires pipeline_id and id. Returns success if deleted, 404 if field not found, and 403 if access is forbidden.

create_a_nimble_deal_pipeline_choice

Create a new choice in a deals pipeline field in Nimble. Requires pipeline_id and field_id. Returns choice id and value fields in the response.

update_a_nimble_deal_pipeline_choice_by_id

Update a choice in a custom deals pipeline field in Nimble. Requires pipeline_id, field_id, and id. Returns updated choice details including value and order within the field.

delete_a_nimble_deal_pipeline_choice_by_id

Delete a specific deal pipeline custom field choice in Nimble. Requires pipeline_id, field_id, and id. If preflight_checks is true and deals use this choice, an error is returned; otherwise, the choice and its values are removed.

create_a_nimble_deal_pipeline_fields_group

Create a deal pipeline fields group in Nimble. Requires pipeline_id. Returns the created group details including group_name, logo_id, insert_after, and associated fields with their types and presentation.

update_a_nimble_deal_pipeline_fields_group_by_id

Update a specific deal pipeline fields group in Nimble. Requires pipeline_id and id. Returns updated group details such as group_name, logo_id, and position (insert_after).

delete_a_nimble_deal_pipeline_fields_group_by_id

Delete a specific deal pipeline fields group in Nimble. Requires pipeline_id and id. Returns confirmation of deletion.

Why Truto

Why use Truto’s MCP server for Nimble

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 Nimble in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Nimble account

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

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

04

Unified response format

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

FAQs

Common questions about Nimble on Truto

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

What authentication method does the Nimble integration use?

Nimble uses OAuth 2.0 for authentication. Truto handles the full OAuth flow, token refresh, and credential storage so your end users can connect their Nimble accounts securely without you managing auth infrastructure.

Can I create custom fields and tabs on Nimble contact records through this integration?

Yes. The integration supports creating, updating, and deleting custom contact fields, field groups, field tabs, and field choices. You can also set or unset primary fields, and do the same for deal pipeline fields, groups, and choices.

How does deal pipeline management work with the available tools?

You have full lifecycle control over deals and pipelines. You can create and manage pipelines, stages, and deals. For pipeline transitions specifically, you can move leads between stages, undo transitions, exit leads unsuccessfully, and add lost reasons — all as discrete API operations rather than simple record updates.

Is there a Unified CRM API available for Nimble?

Nimble does not yet have a Unified API mapping in Truto. However, all listed tools are available as direct API proxy calls through Truto, giving you full access to Nimble's native API capabilities including contacts, deals, pipelines, notes, files, fields, tags, drafts, and search.

Can I search for existing contacts before creating new ones to avoid duplicates?

Yes. The list_all_nimble_contacts_search tool lets you run advanced queries against Nimble contacts. You can search by email, name, or other fields to check for existing records before ingesting new leads.

What contact and deal operations does the integration support?

For contacts: full CRUD, bulk operations, search, tag assignment, notes (with CRUD), and proceedings. For deals: full CRUD, notes, file attachments with download, pipeline transitions, and filtered views like won deals last month and overdue deals. Truto handles pagination and API quirks across all these endpoints.

Nimble

Get Nimble integrated into your app

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

Talk to us