GTM Profile
Workspace
GTM Profile
The user’s own GTM profile — ICP, target market, product, pricing, competitors. Workspace-level, not per-entity.
GET
GTM Profile
Where the per-entity endpoints (
/v2/accounts/:id, /v2/context) return facts about people and companies, this returns the workspace owner’s own GTM profile — what they sell, who they sell to, pricing, and positioning — the context an agent should reference when answering questions like “what’s our ICP?” or “what’s our pricing?”
Request
Query params
Comma-separated list to filter (e.g.
ICP,Pricing). Omit to return all categories.Common categories: ICP, Market, Product, Pricing, Competitors, Playbook. Users can add any custom category in the in-app GTM Context tab.Max facts to return. Cap 500.
Response
When to call it
- “What’s our ICP?” —
categories=["ICP"] - “What’s our pricing strategy?” —
categories=["Pricing"] - “What differentiates us from competitors?” —
categories=["Competitors","Product"] - “Show me the whole playbook” — no
categoriesfilter
/v2/context) AND the user’s GTM profile (/v2/workspace/facts). The GTM profile tells it how YOU sell; the context tells it about THEM. Combine for natural copy.
Writing back
POST to the same path to keep a section of the GTM context current. Each section is a living file: in the default replace mode the new content evolves that section’s belief — the prior version is kept as history, never silently contradicted — so you just write the section’s current state. This is the endpoint behind the MCP update_gtm_profile tool.
One of
ICP, Market, Product, Pricing, Competitors, Positioning (these feed the ICP scoring model), GTM Motion, or Notes.The section’s current content — one short, current statement, not an essay.
replace evolves the section and keeps the prior version as history. append logs a new entry without replacing — the default for Notes.Explicit fact id to replace (overrides section matching).
How it gets there
The GTM profile is built through the in-app GTM Context tab (the guided Playbook setup, or added directly), through thePOST write-back above, or via POST /v2/observations with a note.<uuid> property on the workspace entity. All write paths produce the same asserted-claim records this endpoint reads.