clear

Getting started with Ontraport’s MCP Server

Last updated on: June 5, 2026

What is a Model Context Protocol (MCP) Server?

Ontraport’s MCP Server bridges the gap between your AI and your customer data. It allows your AI to interact with your records in real-time, eliminating the need for manual CSV exports or copy-pasting. This means that once you connect your AI client to Ontraport’s MCP server, then you can “speak” to the AI and update records, search your data, send invoices and more.

Table of contents

Best practices and limitations
The agent has a context window, not a warehouse
Know when to use the agent and when to use the API
Use extra caution in unattended workflow automations
Get connected
Setting permissions
Available actions
Use cases
Create, Read, Update, and Delete (CRUD)
Query
Manage
Commerce
Security restrictions
Available objects

Best practices and limitations

Before diving into use cases, there are a few important constraints to understand about how the MCP server works. Knowing these upfront will help you get reliable results and avoid hard-to-detect mistakes.

The agent has a context window, not a warehouse

Back to top

The agent can only work with a bounded set of records at a time. Think of it as a desk, not a warehouse. If you ask it to analyze, score, or act on your entire contact database, it will only ever see a fraction of your records and process the rest as if they don't exist. It won't warn you that data was dropped, and it will sound confident either way.

This means prompts like these will produce unreliable results:

  • "Analyze all my contacts and tell me..."
  • "Find patterns across my entire customer base..."
  • "Score every lead in my database..."
  • "Tag all contacts who match [condition]..."


For large-scale operations like these, use the API directly or a workflow tool such as n8n, Zapier, or Make,  which can paginate through your full dataset and act on every record reliably.

Know when to use the agent and when to use the API

Back to top

The agent earns its place when a task requires judgment; reading between the lines, weighing tradeoffs, or producing something a simple query can't. For everything else, the API is faster, cheaper, and 100% accurate.

Use the agent when the task requires:

  • Writing, summarizing, or explaining
  • Classifying or scoring a record
  • Recommending the next step
  • Interpreting what a result means

Use the API (directly or via a workflow tool) when the task requires:

  • Counting or fetching records
  • Filtering by a condition
  • Creating, updating, or sending


A useful rule of thumb: use the API for the get and the put. Use the agent for the think.

Use extra caution in unattended workflow automations

Back to top

There are two ways to use the MCP server: conversationally, where you see every response and can course-correct in real time; and as part of an automated workflow running on a schedule without anyone watching.

The conversational mode is forgiving;  if something looks off, you ask again. Workflow mode is not. When the agent is wired into an automation running unattended, small mistakes compound silently across every run. A misclassification, a dropped record, or a confidently wrong answer can affect hundreds of contacts before anyone notices.

If you're building an unattended workflow that uses the agent, consider adding a validation step between the agent's output and any write action; confirm that required fields are present, values are in range, and contact IDs exist before the API executes. The agent decides what to do; a deterministic check makes sure the output is safe before anything reaches your customers.

Get connected

Back to top

The first step to get started with the MCP server is to get connected. You can connect to any AI client that accepts streamable HTTP MCP servers. Here are common options:


Claude Desktop

Chat GPT

Cursor

  • Follow these steps provided by Cursor to use mcp.json to connect to a remote server.

    • Note that you don’t need to include headers or an API key, so your configuration should look like this:

      {
        "mcpServers": {
          "ontraport": {
            "url": "https://mcp.ontraport.com"
          }
        }
      }

Setting permissions

Back to top

Once connected a configure button will appear next to your new connection. Click on it to control which specific tools/capabilities you want to enable or disable for Claude to use. This permission management step gives you granular control over what Claude can do with the integration. Permission setup for each client will vary slightly.

For example, you can disable the ability to delete objects to prevent any conversation with Claude resulting in the deletion of any object.

Your AI connection inherits your Ontraport user role permissions. Note that the toggles in your AI client and the permissions in Ontraport are completely separate. 

Available actions

Back to top

The following actions are available as long as you have not disabled them when you set your permissions after getting connected.

Use cases

Back to top

Once your AI client is connected to the Ontraport MCP server, you can begin offloading repetitive administrative tasks and database management to your digital assistant. The following use cases represent some of the most common ways businesses leverage this connection. Each example highlights how to configure your workspace and provides practical, natural-language prompts you can start using immediately to streamline your workflows, maintain data integrity, and keep your system clean.

Sales Deal Tracking

Managing a sales pipeline often comes with the burden of tedious administrative work. By leveraging the Ontraport MCP server connected directly to your CRM, sales representatives can natively update deal statuses, log new companies, and link primary contacts using simple, natural language prompts. This eliminates manual data entry, keeps the pipeline accurate in real time, and allows reps to focus on closing deals rather than updating records.

Here’s how to get set up after getting connected:

Admin configuration (One-time setup)

Before your team can start tracking deals via AI, ensure your Ontraport account and MCP connection are properly configured:

  • Configure Permissions: Click the configure button next to your connection to set permissions. Ensure you do not disable the actions required for creating and updating records. (Note: The client toggles operate independently from your Ontraport account permissions, which inherit your user seat's role).

  • Verify Object Access: Ensure your account has "System Apps" enabled for Deals (Object ID: 149) and Companies (Object ID: 150) to grant the AI full Create, Read, Update, and Delete (CRUD) access.

Daily workflow & example prompts

Once configured, sales representatives can manage the entire pipeline using natural language. Here is how to execute common CRM tasks:

Create or update records
To log new companies or contacts without creating accidental duplicates, use a prompt like:

"Add Sarah Johnson from sarah@acme.com to my contacts, or update her record if she’s already in there."

  • How it works behind the scenes: This triggers the saveorupdate_object tool (the "upsert" function). It intelligently checks for a unique field match (like an email) to maintain data integrity.

Link contacts to companies
To build out your business network and connect related records, ask the AI:

"Add Sarah Jones as a related contact for Acme Corp."

  • How it works behind the scenes: This uses the manage_relationships tool to automatically link different record types together in Ontraport.

Update pipeline deal status
To move a deal through your sales stages with precision, use a prompt like:

"Change the status of Deal #1234 to 'Negotiation'."

  • How it works behind the scenes: This utilizes the update_object tool to modify a single record by its specific ID or unique field.


Email List Health Scoring Use Case

Maintaining a high sender reputation requires keeping a close eye on how your audience interacts with your broadcasts. This workflow uses the MCP server to analyze your sending patterns and engagement metrics, allowing you to quickly pinpoint unengaged contacts who may be dragging down your overall email deliverability. By identifying these inactive records, you can proactively clean your list, improve your inbox placement, and ensure your marketing reaches the people who actually want to see it.

Here’s how to get set up after getting connected:

Admin configuration (one-time setup)

Before you can begin auditing your list health, ensure your AI client is connected and granted the correct analytical capabilities:

  • Configure permissions: Click the configure button to manage your permissions. You must ensure that you have not disabled the "Query" tools, as these are essential for tracking system-wide engagement and auditing contact health.

Daily workflow & example prompts

Once connected, you can use natural language to audit your list health and spot deliverability trends. Note that the AI works over a bounded set of records at a time; it is not scanning your entire database. Use it for analysis and judgment; use your API or workflow tool (such as n8n, Zapier, or Make) to execute bulk actions on the resulting segment.

Analyze account-wide engagement
Instead of manually running reports to check overall trends, ask the AI:

"What emails went out this month and how did they perform?" 

  • How it works behind the scenes: This triggers the AI to pull engagement stats like opens and clicks across your recent campaigns using the get_recent_messages tool, giving you a quick snapshot of overall deliverability trends.

Audit individual contact history
To investigate a specific contact to see if they are completely inactive, use a prompt like:

"Show me [Contact Name]'s contact history."

  • How it works behind the scenes: This triggers the get_contact_log tool to retrieve a full activity history, showing exactly which emails were sent to that person and whether they interacted with your links.

Define your inactivity criteria
Once you have a picture of your engagement trends, use the agent to help you land on a precise, testable definition of "unengaged," such as:

"Based on what you just pulled, what would be a reasonable definition of an inactive contact for a list like mine?"

  • How it works behind the scenes: This is the judgment step. The agent helps you translate a vague goal ("find unengaged contacts") into a specific, queryable condition (e.g., "no email open or click in the last 180 days"). That definition then becomes an API filter you can use reliably every time.

Build and execute the segment
Once you have a specific condition defined, use your API or workflow tool to fetch and tag the matching contacts at scale. For help translating your condition into the correct API format, ask the agent:

"What's the raw API condition for contacts who haven't opened or clicked an email in the last six months?"

  • How it works behind the scenes: This uses the build_api_condition tool to convert your human-readable criteria into a format your API or workflow tool can execute precisely and completely.

Account Governance ("Architectural Brain") 

When multiple team members or agencies work inside the same CRM, they often accidentally create duplicate fields, redundant automations, and messy workarounds because they don’t know what has already been built. This workflow uses the Ontraport MCP server to act as a real-time system auditor. Before anyone builds a new feature, the AI cross-references their request against your existing database structure to see if a matching field or asset already exists. This keeps your system clean, prevents data fragmentation, and ensures your team reuses existing infrastructure instead of cluttering the account.

Here’s how to get set up after getting connected:

Admin configuration (One-time setup)

Before deploying your AI architectural auditor, ensure it has the correct structural visibility:

  • Configure permissions: Click the configure button next to your connection and ensure the "Query" tools are enabled. Your agent relies heavily on these "Structural Discovery" capabilities to see the blueprint of your Ontraport account.

Daily workflow & example prompts

Once the agent is configured with structural access, your team can use these prompts to map the system and audit new feature requests before building them:

Map the account architecture
To initialize the AI and give it a complete mental layout of the record types it is allowed to interact with, ask:

"What objects in my account can be accessed via the MCP server?"

  • How it works behind the scenes: This prompts the AI to retrieve the structural layout of all authorized record types such as Contacts, Companies, Deals, and Custom Objects.

Audit fields before building
Before a team member creates a new field or automation, have the AI inspect the existing data structure to check for overlapping architecture:

"What fields are available on a [insert record type, e.g., deal] record?"

  • How it works behind the scenes: The AI pulls a live list of all existing fields and their properties for that object.

Evaluate for redundancy
Immediately after running the field audit, provide the AI with your proposed new asset name or operational goal to get a final verdict:

"I want to create a new field called [Insert Proposed Name] to track [Insert Purpose]. Based on the fields you just pulled, does something similar already exist, or can I reuse an existing component?"

  • How it works behind the scenes: The AI evaluates your proposal against the live schema it just retrieved, helping your team avoid creating redundant components and keeping your database completely clean.

Campaign Context Awareness

When using Ontraport’s MCP server to manage daily CRM tasks, constantly re-explaining your job role, your active marketing campaigns, and your current goals wastes time. This workflow solves that friction by creating customized, role-specific AI environments that retain persistent background context. By establishing these boundaries upfront, team members can continuously execute system commands, manage leads, and review metrics without ever having to remind the AI who they are or what campaign they are currently working on.

Here’s how to get set up after getting connected:

Admin & environment configuration (One-time setup)

Before executing campaign commands, set up your scoped workspace and verify that your AI client has the necessary operational permissions:

  • Set up a scoped project: Within your AI client, create a dedicated project or thread that includes background instructions for the specific role (e.g., "You are an assistant for the Q3 Summer Promo campaign").
  • Configure permissions: Click the configure button next to your connection to verify permissions. Ensure both the "Manage" and "Query" actions are enabled, as these allow the AI to orchestrate customer journeys and retrieve campaign data.

Daily workflow & example prompts

Once your workspace is established, team members can jump straight into executing commands within the context of that specific campaign or role:
​​​​​​​
Review campaign status
Instead of manually opening up the Ontraport UI to check on marketing performance, ask the AI:

"What email broadcasts are scheduled to go out this week?"

  • How it works behind the scenes: This uses the get_scheduled_broadcasts tool to help the role-specific AI maintain awareness of upcoming marketing efforts.

"What emails went out this month and how did they perform?"

  • How it works behind the scenes: This uses the get_recent_messages tool to analyze the performance of recent broadcasts, tracking metrics like opens and clicks within the context of your campaign.

Execute journey management
To handle lead segmentation and campaign enrollment on the fly, use prompts like:

"Tag John Smith as a 'warm lead'."

  • How it works behind the scenes: This uses the manage_tags tool to dynamically categorize records based on their interactions with the campaign.

"Enroll Sarah Johnson in the 'Summer Sale' onboarding sequence."

  • How it works behind the scenes: This uses the manage_subscriptions tool to automatically move contacts into the correct automated follow-up workflow.

Orchestrate role-specific tasks
For a sales-focused workspace, you can manage daily action items and update your to-do lists directly by asking:

​​​​​​​"Assign a 'Demo follow-up' task to me for John Smith for next Tuesday."

  • How it works behind the scenes: This uses the assign_task tool to create new action items, ensuring no lead follow-up falls through the cracks.

"Mark the follow-up call for Jane Doe as complete with the outcome 'interested'."

  • How it works behind the scenes: This uses the complete_task tool to log outcomes and update the CRM state instantly using natural language.

    Create, Read, Update, and Delete (CRUD)

    Back to top

    Managing information within a database relies on four fundamental operations collectively known as CRUD: Create, Read, Update, and Delete. These actions form the backbone of data interaction, allowing you to build, maintain, and refine your records with precision.

    The following section outlines the specific tools available for these operations. While each tool serves a distinct purpose, from retrieving historical data to purging obsolete entries. We recommend using the Save or update function. This "upsert" capability is the primary recommendation for maintaining data integrity, as it intelligently handles records to prevent the creation of unintended duplicates.

     
    • Create or update a record based on a unique field match, such as email. 
      • This is the recommended way to add records because it prevents duplicates.
      • Example prompt: “Add Sarah Johnson from sarah@acme.com to my contacts, or update her record if she’s already in there.”
      • Tool name: saveorupdate_object
    • Create a brand new record.
      • Use when you’re certain the record doesn’t already exist.
      • Example prompt: “Create a new company record for Acme Corp.”
        • Tool name: create_object
    • Fetch records using ID, a list of IDs, or a search condition.
      • Example prompt: “Pull up all contacts who signed up in the last 30 days.”
      • Tool name: get_objects
    • Modify a single record by ID or unique field.
      • Example prompt: “Change John Smith’s phone number to 555-1234”
      • Tool name: update_object
    • Permanently delete a single record by ID. 
      • Example prompt: "Delete the contact record for mike@oldcompany.com.”
      • Tool name: delete_object  
    • Bulk delete records by IDs or a condition.
      • Example prompt: "Delete all contacts who haven't engaged in the last year."
      • Any requests to delete all records in a collection will be ignored.
      • Tool name: delete_objects

    Query

    Back to top

    While CRUD operations allow you to manipulate individual records, Query tools summarize account-wide data.. These tools are designed for exploration, reporting, and auditing, allowing you to move beyond single data points to understand your entire ecosystem.
    The tools in this section serve three primary purposes:

    • Structural Discovery: Identifying which record types (like Deals or Companies) and specific fields are available to you.
    • Engagement Tracking: Monitoring how your audience interacts with your brand through automations, emails, and notes.
    • System Health: Retrieving account-wide settings and debugging complex API conditions.

    Whether you need to count your active leads in a specific region or audit the recent activity of a high-value contact, these tools provide the necessary transparency to make data-driven decisions.

     
    • List all record types available in your account (Contacts, Companies, Deals, etc.)
      • This is a good starting point for exploring what’s accessible. This list may also be different than your actual permissions in your Ontraport account as not all objects are accessible through the MCP.
      • Example prompt: “What objects in my account can be accessed via the MCP server?”
      • Tool name: list_allowed_object_types 
    • Get a list of all available fields and their properties for a given record type.
      • This is useful for knowing what data you can work with.
      • Example prompt: “What fields are available on a contact record?”
      • Tool name: get_object_meta 
    • Get the total number of records matching the conditions, plus optional field sums or averages (e.g. total revenue).
      • Example prompt: “How many active contacts do I have in California?”
      • Tool name: count_objects 
    • Get your Ontraport account details and settings like account number, timezone and configuration.
      • Example prompt: “What’s my Ontraport account number and timezone?”
      • Tool name: get_account_info 
    • List your saved groups along with filter criteria that define them.
      • Example prompt: “Show me all my saved contact groups.”
      • Tool name: get_groups 
    • Get a list of who is currently subscribed to a specific tag, sequence or automation.
      • Example prompt: “Who’s currently enrolled in my welcome automation?”
      • Tool name: get_subscribers 
    • Get a full activity history for a contact including emails sent, links clicked, tasks completed, etc.
      • Example prompt: “Show me John Smith’s contact history.
      • Tool name: get_contact_log 
    • Get all automation events for a contact including field changes, trigger fires, rule executions etc.
      • Example prompt: “What automations has Jane Doe been added to in the last three months?”
      • Tool name: get_automation_log 
    • Get a list of recently sent emails or SMS messages along with engagement stats like opens and clicks.
      • Example prompt: “What emails went out this month and how did they perform?”
      • Tool name: get_recent_messages 
    • Get a list of recently logged notes on records, including author names and the ability to filter for phone call notes.
      • Example prompt: “Show me the last 10 notes logged on contact records.”
      • Tool name: get_recent_notes 
    • Get a list of tasks with assignee names and the ability to filter by status (Open, completed, cancelled).
      • Example prompt: “What open tasks are assigned to my sales team?”
      • Tool name: get_recent_tasks 
    • Get the required form fields needed to complete a task by passing in a task ID.
      • Can be called proactively when reading a task's full parameters upfront, or reactively when a complete-task call fails due to missing fields.
      • Example prompt: "What fields do I need to fill out to complete task #4821?"
      • Tool name: get_task_form_requirements
    • Get a list of upcoming scheduled email or SMS broadcasts before they go out.
      • Example prompt: “What email broadcasts are scheduled to go out this week?”
      • Tool name: get_scheduled_broadcasts 
    • Retrieve hosted URLs of landing pages by name or ID.
      • Example prompt: “What’s the URL of my ‘Summer Sale’ landing page?”
      • Tool name: get_landing_page_url 
    • Convert a human-readable condition into a raw API format. 
      • This is primarily useful for debugging or inspecting how conditions are structured.
      • Example prompt: “Show me the raw API condition for contacts where lifetime value is over $1000.”
      • Tool name: build_api_condition 

    Manage

    Back to top

    Managing a database involves more than just storing information; it requires orchestrating the journey of your leads and customers. The tools in this section allow you to trigger automated workflows, organize complex data relationships, and manage the daily to-do lists that keep your team on track.
    These operations are categorized into three primary functions:

    • Segmentation & Automation: Dynamically categorize records using tags and manage their journey through automated sequences or email campaigns.
    • Relational Mapping: Link different record types together—such as connecting a Contact to a Company or a Deal—to create a holistic view of your business network.
    • Task Orchestration: Assign, complete, or reschedule team tasks to ensure no follow-up falls through the cracks.

    By leveraging these tools, you transform a static database into a functional, automated engine that responds to user behavior and internal team needs in real time.

     
    • Add or remove tags on records by tag ID or name.
      • This is a core tool for segmentation and triggering automations.
      • Example prompt: “Tag everyone in my ‘webinar attendees’ group as ‘warm lead.’”
      • Tool name: manage_tags 
    • Manage contact enrollment in automations or sequences.
      • Example prompt: “Enroll John Smith in the onboarding email sequence.”
      • Tool name: manage_subscriptions 
    • Create or remove relationships between records, such as adding a contact to a company.
      • Example prompt: “Add Sarah Jones as a related contact for Acme Corp.”
      • Tool name: manage_relationships 
    • Create a new task and assign it to a specific user related to a contact or other record.
      • Example prompt: “Assign the “Demo follow-up” task to Sarah for John Smith.”
      • Tool name: assign_task 
    • Complete a task, choose an outcome and optionally add a note.
      • Example prompt: “Mark John Smith’s follow-up call as complete with the outcome ‘left voicemail.’”
      • Tool name: complete_task 
    • Cancel a task without marking it complete.
      • Example prompt: “Cancel the follow-up task on Jane Doe’s record.”
      • Tool name: cancel_task 
    • Reschedule a task to a new due date.
      • Example prompt: "Move the follow-up task on John Smith's record to next Friday."
      • Tool name: reschedule_task
    • Pause or resume automations or sequences.
      • Example prompt: “Pause the holiday drip automation while we’re closed next week.”
      • Tool name: pause_unpause_objects

    Commerce

    Back to top

    The Commerce suite provides a robust framework for managing the complete lifecycle of a customer’s financial journey. Whether you are facilitating a one-time purchase, managing a recurring subscription, or handling the complexities of failed payments, these tools give you full control over your cash flow and billing transparency.
    These operations are organized into four key areas:

    • Revenue Visibility: Quickly retrieve invoice histories, track purchased products, and identify overdue accounts to stay on top of your bottom line.
    • Billing & Invoicing: Create, update, and send professional invoices, allowing you to transition a sale from a "draft" concept to a finalized "open" request for payment.
    • Payment Processing: Securely charge cards on file, process real-time transactions, or log offline payments (like checks or cash) to keep your ledger balanced.
    • Revenue Recovery & Adjustments: Manage the "what-ifs" of business, such as refunding a customer and voiding pending charges or retrying declined cards or writing off uncollectible debt.

    By mastering these transactional tools, you ensure a seamless purchasing experience for your customers while maintaining a clean, accurate financial record for your business.

    • Get a list of invoices with totals and status (draft, open, paid, etc.
      • Example prompt: “Show me all open invoices from this month.”
      • Tool name: get_invoices 
    • Get a list of purchases tied to a contact including product details.
      • Example prompt: “What products has John Smith bought from us?”
      • Tool name: get_purchases 
    • Get a list of declined or overdue invoices.
      • This can be a starting point for collection work.
      • Example prompt: “Which invoices are declined or overdue right now?”
      • Tool name: get_failed_transactions 
    • Create a new invoice with the status Draft or Open.
      • Example prompt: “Create a draft invoice for John Smith for $500 for consulting services.”
      • Tool name: create_invoice 
    • Edit a draft or open invoice. Choose to change a draft invoice to open.
      • Example prompt: “Change the due date of John Smith’s draft invoice to April 30th and sent it.”
      • Tool name: update_invoice 
    • Pay an invoice using a card already on file for the contact.
      • Example prompt: “Pay invoice #1234 using John Smith’s card on file.”
      • Tool name: pay_invoice 
    • Charge a card directly through the payment gateway.
      • Example prompt: “Charge Jane Doe’s card $299 for the Three Marketeers Annual Subscription.”
      • Tool name: process_transaction 
    • Log an offline transaction without processing a charge.
      • Example prompt: Log a $1000 check payment from John Smith for the Three Marketeers Annual Subscription.”
      • Tool name: log_offline_purchase
    • Mark an invoice as paid manually (no charge processed).
      • Best for payment settled outside the system. 
      • Example prompt: “Mark invoice #9012 as paid.”
      • Tool name: mark_transaction_paid 
    • Retry a previously failed or declined charge.
      • Example prompt: “Retry the failed charge on John Smith’s account”
      • Tool name: rerun_transaction 
    • Refunds a settled charge back to the customer.
      • Example prompt: “Refund John Smiths $299 payment from last week.”
      • Tool name: refund_transaction 
    • Void an unsettled charge before it clears. 
      • Example prompt: “Void the pending charge on Jane Doe’s account.”
      • Tool name: void_transaction 
    • Mark an invoice as uncollectable and write it off.
      • Example prompt: “Write off invoice #3456.”
      • Tool name: write_off_transaction 
    • Cancel a contact’s active recurring subscription. 
      • Example prompt: “Cancel John Smith’s monthly Three Marketeers Membership subscription.”
      • Tool name: cancel_subscription 
    • Convert an invoice into collection or declined status.
      • Example prompt: “Add invoice #7890 to collections.”
      • Tool name: convert_transaction 
    • Send or resend an invoice to a contact. It will not send drafts; finalize the invoice before sending using update_invoice.
      • Example prompt: “Send invoice #1234 to John Smith.”
      • Tool name: send_invoice 
    • Update the details of a recurring order such as price, quantity or billing frequency.
      • Example prompt: “Change John Smith’s subscription from monthly Three Marketeers Membership subscription to $50 per month per our new pricing structure.”
      • Tool name: update_order 
    • Verify offer and pricing configurations.
      • Example prompt: “Check if the summer promo offer is set up correctly.”
      • Tool name: validate_offer 

    Security restrictions

    Back to top

    To protect your accounts you cannot delete all records in a collection. The system ignores those requests. .

    However, if you want to ensure that none of your records are deleted by interacting with Ontraport MCP server, then disable the delete permissions after getting set up.

    Available objects

    Back to top

    Available objects are the record types you can read and manipulate through the MCP server. Each object maps to a core part of the platform, such as contacts, tasks, invoices, automations, and so on, and has a fixed ID and API key used to identify it in requests.

    Most objects support generic CRUD tools (get_objects, create_object, update_object, delete_object), but many also have purpose-built tools that handle business logic, state transitions, and side effects more reliably. Where specialized tools exist, prefer them over generic CRUD.

    Reference key:

    • Access - lists the HTTP methods available for that object via generic CRUD tools.
    • Tools - lists specialized tools to prefer over generic CRUD where available.

    Core CRM

    • Contacts - The central record in the system; all interactions, purchases, and automations relate back to contacts.
      • ID: 0
      • Access: GET POST PUT DEL
      • Tools: manage_tags, manage_subscriptions, manage_relationships
    • Tasks - Contact-associated tasks. Use specialized tools to enforce valid state transitions.
      • ID: 1
      • Access: GET PUT
      • Tools: get_recent_tasks, assign_task, complete_task, cancel_task, reschedule_task
    • Groups - Static contact groupings managed in the UI.
      • ID: 3
      • Access: GET
      • Tools: get_groups
    • Log Items - Read-only activity history per contact - emails sent, calls logged, etc.
      • ID: 4
      • Access: GET
      • Tools: get_contact_log
    • Notes - Free-text notes attached to contact records.
      • ID: 12
      • Access: GET POST PUT DEL
      • Tools: get_recent_notes
    • Tags - Labels applied to contacts for segmentation and filtering.
      • ID: 14
      • Access: GET POST PUT DEL
      • Tools: manage_tags, get_subscribers
    • Tag Subscribers - Join table between contacts and tags.
      • ID: 138
      • Access: GET
      • Tools: get_subscribers, manage_tags
    • Task Outcomes - Reference list of valid outcomes for completing a task.
      • ID: 66
      • Access: GET
      • Tools: complete_task
    • Custom Object Relationships - Links between contacts and custom objects, or between two contacts.
      • ID: 102
      • Access: GET
      • Tools: manage_relationships

    Marketing & Automation

    • Sequences - Email or SMS drip sequences.
      • ID: 5
      • Access: GET
      • Tools: get_subscribers, manage_subscriptions, pause_unpause_objects
    • Sequence Subscribers - Join table between contacts and sequences.
      • ID: 8
      • Access: GET
      • Tools: get_subscribers, manage_subscriptions
    • Rules - Trigger-based if/then rules configured in the UI.
      • ID: 6
      • Access: GET
      • Tools: pause_unpause_objects
    • Messages - Individual email or SMS messages sent to contacts.
      • ID: 7
      • Access: GET DEL
      • Tools: get_recent_messages
    • Pages - Landing pages built in the platform.
      • ID: 20
      • Access: GET
      • Tools: get_landing_page_url
    • Scheduled Broadcasts - One-time email blasts queued to send at a future date.
      • ID: 23
      • Access: GET
      • Tools: get_scheduled_broadcasts
    • Tracked Links - Click-tracked links embedded in emails.
      • ID: 80
      • Access: GET
    • Automation Log Items - Per-contact history of automation steps fired.
      • ID: 100
      • Access: GET
      • Tools: get_automation_log
    • Automations - Automation workflows. Also accessible via the legacy API key: campaigns.
      • ID: 140
      • Access: GET
      • Tools: manage_subscriptions, pause_unpause_objects

    Commerce & Billing

    Write operations for Invoices, Payments, and Orders are only available through specialized tools; generic update and delete are disabled for these types.

    • Products - The product catalog. Full CRUD, no restrictions.
      • ID: 16
      • Access: GET POST PUT DEL
    • Purchases - Completed purchase records.
      • ID: 17
      • Access: GET
      • Tools: get_purchases
    • Purchase History Logs - Audit log of changes to purchase records.
      • ID: 30
      • Access: GET
    • Invoices - Invoice records. All write operations via specialized tools only.
      • ID: 46
      • Access: GET
      • Tools: get_invoices, get_failed_transactions, create_invoice, update_invoice, pay_invoice, validate_offer, send_invoice, update_order, convert_transaction
    • Payments - Payment transactions. All mutations via specialized tools only.
      • ID: 227
      • Access: GET
      • Tools: get_payments, process_transaction, log_offline_transaction, refund_transaction, void_transaction, mark_transaction_paid, write_off_transaction, rerun_transaction
    • Orders - Order records. Updates via update_order; cancellations via cancel_subscription.
      • ID: 52
      • Access: GET DEL
      • Tools: cancel_subscription, update_order
    • Open Orders - Active subscription orders.
      • ID: 44
      • Access: GET
      • Tools: get_subscribers, manage_subscriptions, cancel_subscription
    • Credit Cards - Payment methods on file for a contact.
      • ID: 45
      • Access: GET
    • Taxes - Configured tax rates.
      • ID: 63
      • Access: GET
    • Shipping Types - Available shipping options.
      • ID: 64
      • Access: GET
    • Gateways - Payment gateway configurations.
      • ID: 70
      • Access: GET
      • Tools: get_account_info

    Partners & Affiliates

    • Partner Programs - Top-level affiliate program definitions.
      • ID: 35
      • Access: GET
    • Partners - Individual affiliate/partner records.
      • ID: 36
      • Access: GET
    • Referrals - Referral events generated by partner activity.
      • ID: 37
      • Access: GET
    • Commissions - Commission records owed or paid to partners.
      • ID: 38
      • Access: GET

    System Apps

    These objects require the corresponding Ontraport app to be enabled in your account.

    • Deals - Pipeline deals for sales tracking.
      • ID: 149
      • Access: GET POST PUT DEL
    • Companies - Company/account records that contacts can be associated with.
      • ID: 150
      • Access: GET POST PUT DEL
    • Surveys - Survey definitions created in the platform.
      • ID: 172
      • Access: GET

    Custom Objects

    Custom objects use IDs ≥ 10000 and vary by account. All support full GET POST PUT DEL access. To list available custom objects in your account, call list_allowed_object_types.

     

    Related university lessons

    Dynamic lists with HTML
    Learn how Ontraport’s dynamic lists HTML tags give you enhanced flexibility as you craft sophisticated page designs.
    Dynamic CMS overview
    Get a big picture overview of Ontraport’s Dynamic Content Management System. You’ll start to see how you can build blogs, customer-facing project portals, and so much more.
    Ontraport for no-code web apps: Course overview
    Get an overview of the skills you’ll gain in this course, including learning to become a no-code web app developer!
    arrow_drop_down_circle
    Divider Text

    Related support articles

    arrow_forward
    Custom fonts for Ontraport Sites and Pages
    arrow_forward
    Grandfathered accounts pricing reference
    arrow_forward
    Naming conventions
    Features
    © Ontraport 2026
    playlist_add_check
    PCI DSS, Level 1
    [bot_catcher]