Oneprofile Sequences API

Sequence authoring: the graph, the table-backed audience, previews.

GitHub OpenAPI

Operations 111

GET /message-templates/ List saved email templates #
POST /message-templates/ Save an email template #
GET /message-templates/built-ins/ List the built-in email templates #
DELETE /message-templates/{template_id}/ Delete an email template #
PATCH /message-templates/{template_id}/ Rename or re-scope an email template #
GET /sequence-templates/ List reusable sequence templates #
POST /sequence-templates/ Save a detached sequence template #
DELETE /sequence-templates/{template_id}/ Delete a template #
POST /sequence-templates/{template_id}/use/ Create a draft from a template, with fresh audience and senders #
GET /sequences/ List sequences #
POST /sequences/ Create a sequence #
GET /sequences/analytics/leaderboard/ Sender leaderboard #
GET /sequences/analytics/summary/ Outreach analytics #
GET /sequences/audience-refusals/ Name the tables a sequence cannot write to #
PATCH /sequences/bulk/ Change several sequences at once #
GET /sequences/column-mapping/suggestions/ Suggest a column mapping for a table #
GET /sequences/email-steps/suggestions/ Suggest email steps from a table's written emails #
GET /sequences/folders/ List sequence folders #
POST /sequences/folders/ Make a sequence folder #
GET /sequences/folders/suggestions/ Suggest folders for the sequences in no folder #
DELETE /sequences/folders/{folder_id}/ Delete a sequence folder #
PATCH /sequences/folders/{folder_id}/ Rename or move a sequence folder #
POST /sequences/folders/{folder_id}/restore/ Restore a sequence folder from Trash #
GET /sequences/length/ Count sequences, with when their stats were computed #
POST /sequences/message/check/ Check a drafted message for deliverability risks #
POST /sequences/spintax/suggestions/ Propose spintax rotations for a drafted message #
DELETE /sequences/{sequence_id}/ Move a sequence to Trash #
GET /sequences/{sequence_id}/ Get a sequence with its graph #
PATCH /sequences/{sequence_id}/ Update a sequence's settings #
POST /sequences/{sequence_id}/agent/copy/ Copy another sequence's agent setup #
GET /sequences/{sequence_id}/agent/examples/ List saved samples or reviewed messages for a sequence's agent #
POST /sequences/{sequence_id}/agent/preview/stream/ Preview one contact's agent-written message, streaming the research #
POST /sequences/{sequence_id}/agent/preview/{preview_id}/stop/ Stop a preview that is being written #
GET /sequences/{sequence_id}/agent/source-columns/ List the audience columns the agent writes from #
GET /sequences/{sequence_id}/agent/training-contacts/ List contacts available for the Preview #
POST /sequences/{sequence_id}/agent/training-contacts/bulk/ Keep threads already written on the AI writing tab #
GET /sequences/{sequence_id}/agent/training-contacts/next/ Name the contact to read after this one #
GET /sequences/{sequence_id}/agent/training-sessions/ List the sequence's Previews #
POST /sequences/{sequence_id}/agent/training-sessions/ Write complete sequences for up to ten contacts #
POST /sequences/{sequence_id}/agent/training-sessions/{session_id}/complete/ Close the Preview and keep its reviews #
PATCH /sequences/{sequence_id}/agent/training-sessions/{session_id}/contacts/{record_id}/ Review a contact's whole thread in the Preview #
POST /sequences/{sequence_id}/agent/training-sessions/{session_id}/retry/ Write the Preview's failed messages again #
PATCH /sequences/{sequence_id}/audience/ Remap the audience columns without rebinding the table #
PUT /sequences/{sequence_id}/audience/ Set the audience: table, view, column mapping #
GET /sequences/{sequence_id}/audience/impact/ Preview a replacement audience before choosing how existing journeys continue #
GET /sequences/{sequence_id}/audience/preview/ Preview what the audience resolves to #
GET /sequences/{sequence_id}/audit-logs/ List a sequence's activity #
GET /sequences/{sequence_id}/browser-runs/{run_id}/replay/ A Browser use run's recording #
POST /sequences/{sequence_id}/browser-runs/{run_id}/replay/open/ Open a Browser use run's recording #
GET /sequences/{sequence_id}/browser-runs/{run_id}/replay/pages/{page_id}/download/ One page of a Browser use run's recording, as a playlist #
POST /sequences/{sequence_id}/browser-runs/{run_id}/reveal/ Show the values a Browser use run kept out of sight #
GET /sequences/{sequence_id}/browser-trials/{trial_id}/replay/ A Browser use trial's recording #
POST /sequences/{sequence_id}/browser-trials/{trial_id}/replay/open/ Open a Browser use trial's recording #
GET /sequences/{sequence_id}/browser-trials/{trial_id}/replay/pages/{page_id}/download/ One page of a Browser use trial's recording, as a playlist #
POST /sequences/{sequence_id}/browser-trials/{trial_id}/reveal/ Show the values a Browser use trial kept out of sight #
GET /sequences/{sequence_id}/budget/ Read sequence spending and reservations #
GET /sequences/{sequence_id}/capacity/ Get the combined send capacity of the sequence's assigned senders #
POST /sequences/{sequence_id}/changes/apply/ Apply the reviewed changes atomically #
POST /sequences/{sequence_id}/changes/preview/ Review proposed live changes #
GET /sequences/{sequence_id}/check/ Check a sequence before it launches #
DELETE /sequences/{sequence_id}/contacts/ Remove many contacts from the sequence #
GET /sequences/{sequence_id}/contacts/ List a sequence's contacts #
GET /sequences/{sequence_id}/contacts/breakdown/ Contacts breakdown #
POST /sequences/{sequence_id}/contacts/bulk/pause/ Pause many contacts #
POST /sequences/{sequence_id}/contacts/bulk/resume/ Resume many contacts #
POST /sequences/{sequence_id}/contacts/bulk/retry/ Retry many failed contacts #
POST /sequences/{sequence_id}/contacts/bulk/send-now/ Send the next step now to many contacts #
POST /sequences/{sequence_id}/contacts/bulk/stop/ Stop many contacts #
GET /sequences/{sequence_id}/contacts/eligibility/ Audience eligibility and actionable reasons #
GET /sequences/{sequence_id}/contacts/length/ Count the contacts a filter matches under each tab #
DELETE /sequences/{sequence_id}/contacts/{enrolment_id}/ Remove one contact from the sequence #
GET /sequences/{sequence_id}/contacts/{enrolment_id}/ One contact in this sequence #
GET /sequences/{sequence_id}/contacts/{enrolment_id}/history/ One contact's history in this sequence #
POST /sequences/{sequence_id}/contacts/{enrolment_id}/move/ Move one contact to another sequence #
POST /sequences/{sequence_id}/contacts/{enrolment_id}/pause/ Pause one contact #
POST /sequences/{sequence_id}/contacts/{enrolment_id}/resume/ Resume one paused or stopped contact #
POST /sequences/{sequence_id}/duplicate/ Duplicate a sequence #
POST /sequences/{sequence_id}/email-searches/ Find a sequence's missing work emails #
GET /sequences/{sequence_id}/email-searches/preview/ Price finding a sequence's missing work emails #
POST /sequences/{sequence_id}/email-verifications/ Verify a sequence's emails #
GET /sequences/{sequence_id}/email-verifications/preview/ Price verifying a sequence's emails #
GET /sequences/{sequence_id}/email-verifications/progress/ Follow a sequence's email verification #
DELETE /sequences/{sequence_id}/favorite/ Unstar a sequence #
PUT /sequences/{sequence_id}/favorite/ Star a sequence #
GET /sequences/{sequence_id}/funnel/ Live per-node counts for the builder #
PUT /sequences/{sequence_id}/graph/ Replace the sequence graph #
GET /sequences/{sequence_id}/holds/ Why nothing is moving #
POST /sequences/{sequence_id}/launch/ Launch a sequence #
GET /sequences/{sequence_id}/message-performance/ Per-step message performance #
GET /sequences/{sequence_id}/observed-costs/ What a sequence's contacts have cost so far #
POST /sequences/{sequence_id}/open/ Record that the caller opened this sequence #
POST /sequences/{sequence_id}/pause/ Pause a sequence #
GET /sequences/{sequence_id}/reply-stats/ Reply numbers #
POST /sequences/{sequence_id}/restore/ Restore a sequence from Trash #
POST /sequences/{sequence_id}/resume/ Resume a paused sequence #
GET /sequences/{sequence_id}/senders/ Get the senders a sequence sends as #
PUT /sequences/{sequence_id}/senders/ Choose the senders a sequence sends as #
GET /sequences/{sequence_id}/start-progress/ Follow a sequence's start #
GET /sequences/{sequence_id}/steps/{step_id}/browser-trials/ List a Browser use step's trials #
POST /sequences/{sequence_id}/steps/{step_id}/browser-trials/ Try a Browser use step on one contact #
POST /sequences/{sequence_id}/steps/{step_id}/browser-trials/preview/ Preview trying a Browser use step on one contact #
GET /sequences/{sequence_id}/steps/{step_id}/preview/ Render a step for one contact #
POST /sequences/{sequence_id}/steps/{step_id}/preview/ Preview one step for one contact with the waiting changes #
PUT /sequences/{sequence_id}/steps/{step_id}/rows/{record_id}/feedback/ Mark one email the agent wrote for a contact Looks good #
DELETE /sequences/{sequence_id}/steps/{step_id}/rows/{record_id}/override/ Revert one contact to the step's template #
GET /sequences/{sequence_id}/steps/{step_id}/rows/{record_id}/override/ Get one contact's hand-edited message for a step #
PUT /sequences/{sequence_id}/steps/{step_id}/rows/{record_id}/override/ Pin the exact message one contact receives #
POST /sequences/{sequence_id}/steps/{step_id}/rows/{record_id}/samples/ Write one contact's samples #
POST /sequences/{sequence_id}/steps/{step_id}/test-send/ Send this step as a real test email #
POST /sequences/{sequence_id}/sync/ Sync a sequence's enrolments now #
POST /tables/{table_id}/rows/bulk/add-to-sequence/ Add grid rows to a sequence #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/getoneprofile-ai:getoneprofile-ai-sequences-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

getoneprofile-ai-sequences-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@getoneprofile.ai
    name: Oneprofile Support
  description: REST API reference for Oneprofile, the GTM data layer for your CRM. Manage tables, enrichments, and integrations. Authenticate with an API key to get started.
  termsOfService: https://www.getoneprofile.ai/terms
  title: Reference | Oneprofile Sequences API
  version: 1.0.42765316646
tags:


# --- truncated at 32 KB (668 KB total) ---
# Full source: https://artifacts.apis.io/getoneprofile-ai/openapi/getoneprofile-ai-sequences-api-openapi.yml