Skip to main content

Developers

An open, agent‑first platform.

Set ShowPilot up from code, build and publish agents through the API, and give your own agents our knowledge, visitor data and tools. On every plan.

  • REST API73 operations, one OpenAPI 3.1 spec
  • MCP serverFor Claude, Cursor or your own agent, over OAuth
  • Webhooks22 signed events, plus a live stream
  • Page SDKIdentify, hand context, open, listen

01Set up from code

Configure your workspace with the API.

Everything your team sets up in the app has an endpoint: what the agent knows, how it talks, what it offers and who hears about it. Keep it in version control and run it again whenever it changes.

  • Add sites and pages to knowledge, and choose how each base stays current
  • Write the agent’s script and skills as documents, check the change, then publish
  • Create offers, save segments of visitors, subscribe webhooks
  • Practise against a sandbox seeded with sample data, and reset it any time
Agents reference
setup.sh
# Ground the agent in your docs site
curl -X POST $API/knowledge/bases/$BASE/sources \
  -H "Authorization: Bearer $KEY" \
  -H "Idempotency-Key: docs-site" \
  -d '{ "url": "https://acme.com/docs", "includeSubpages": true }'

# See the lint and diff first. Nothing is written.
curl -X POST $API/agents/$AGENT/script/propose -d @script.json

# Apply it, then publish a new revision
curl -X PUT  $API/agents/$AGENT/script -d @script.json
curl -X POST $API/agents/$AGENT/publish

You create your workspace and agents in the app. Everything after that can run from code.

02Use our services

Give your own agents ShowPilot’s tools.

The retrieval, visitor data and account signals behind our agents are open to yours. Call them from a support bot, an internal assistant or your own agent framework.

  • Ask: a grounded answer with citations, and a plain “not covered” when your sources don’t say
  • Retrieve: ranked chunks with sources, to run under your own model
  • Visitors and accounts: who asked what, a company’s people and questions, who is sales-ready
  • Every endpoint as a tool definition for Anthropic and OpenAI function calling
Knowledge API
ask.http
POST /v1/knowledge/ask
Authorization: Bearer spk_live_…

{ "question": "Do you integrate with HubSpot?",
  "agentId": "6f1c…" }

200 OK
{ "answer": "Yes. Contacts and deals sync both ways…",
  "citations": [
    { "title": "Integrations",
      "url": "https://acme.com/integrations",
      "quote": "Our HubSpot app syncs contacts and deals…" } ] }

03Agent-first

Built for AI agents to operate.

Connect Claude, Cursor or your own agent to the MCP server and it can reach every operation in the API, with guardrails designed for software that writes on your behalf.

  • Whole documents with a version, so an edit applies to what the agent actually read
  • Propose before apply: every edit can be linted and diffed without writing anything
  • Signs in with OAuth and gets your role’s scopes; visitor identities stay masked
  • Five ready skills: weekly review, answer the gaps, brief an account, launch an offer, follow up on leads
MCP setup
claude code
$ claude mcp add --transport http showpilot \
    https://api.showpilot.com/mcp

> What did buyers ask this week that we couldn't answer?
  ⚙ find_knowledge_gaps          41 questions
  Grouped into 6 topics. Pricing for agencies is
  the biggest: 12 asks, no source covers it.

> Which accounts should sales call today?
  ⚙ find_sales_ready_accounts    5 accounts

One visit, through every surface.

A buyer asks, DecisionIQ picks the next step, your endpoint hears about it, and your assistant can act on it. The same events, end to end.

1A visitor asks on your site

acme-example.com/pricing

How does routing work for a 200-person sales team?

Here’s the routing tour. I can book you with Jordan, who covers teams your size.

2DecisionIQ picks the next step

  • Play the routing tour0.86
  • Offer a meeting with Jordan0.71
  • Ask about their timeline0.38

3A webhook lands on your endpoint

POST /hooks/showpilot
X-ShowPilot-Event: meeting.booked
X-ShowPilot-Signature: sha256=9f2c…

{
  "type": "meeting.booked",
  "data": {
    "company": "Acme Example",
    "rep": "Jordan",
    "intent": "hot"
  }
}

4Your AI assistant asks over MCP

Who’s ready for a rep this week?

⚙ showpilot · find_sales_ready_accounts

Acme Example: hot intent, watched the routing tour, meeting booked with Jordan for Thursday.

React to what your agents do.

Push what happens into your own systems, and pass what your app knows back to the agent on the page.

Webhooks and the event stream

Docs

Meetings booked, leads identified, follow-ups opened. Signed, retried, replayable, or read as server-sent events.

webhook
POST https://yourapp.example/hooks/showpilot
X-ShowPilot-Event: meeting.booked
X-ShowPilot-Signature: sha256=…

GET /v1/events/stream   # the same events, live

The Page SDK

Docs

Tell the agent who a signed-in visitor is, hand it what your app knows, open it, and hear what happens.

page.js
showpilot.identify({ userId: 'u_42', signature, timestamp })
showpilot.context({ plan: 'team', stage: 'renewal' })
showpilot.open()

showpilot.on('meeting.booked', (e) => track(e))

The whole platform, one API.

Fifteen resources, generated from one spec, with a try-it panel for test keys on every page of the reference.

Start in the sandbox

Every workspace has one, seeded with sample visitors, leads and tours. Create a test key in Settings → API keys. New to ShowPilot? We’ll set up your workspace.

What you can count on.

Additive versioning
Version 1 only gains fields and endpoints. A breaking change would ship as a new version.
Safe retries
Send an Idempotency-Key with any write and a retry returns the first result instead of doing it twice.
Clear limits
Burst to 60 calls per key, refilling one a second, with X-RateLimit headers on every response.
Keys that can’t overreach
Each key gets only the scopes you turn on, read and write kept separate, stored only as a hash.
Webhooks you can rely on
At-least-once delivery, an event ID to dedupe on, up to five attempts with backoff, and replay from the log.
Your data stays yours
Isolated per workspace and never used to train models. Assistants on OAuth never see unmasked transcripts.

Questions developers ask.

Which plans include the API and MCP server?

Every plan. The REST API, webhooks, Page SDK and MCP server all come with the platform.

What can I set up through the API?

Everything that shapes an agent you already have: add knowledge, write the script and skills, publish, create offers and segments, and subscribe webhooks. Your workspace and agents are created in the app, and file uploads to knowledge happen there too.

Can my own agent use ShowPilot’s knowledge?

Yes. The knowledge ask endpoint returns a grounded answer with citations, and retrieve returns ranked chunks for your own model. Both search exactly what an agent sees, or the bases you name, and need only a query-scoped key.

How do I authenticate?

With an API key sent as a Bearer token, scoped to what you turn on. Test keys run against a sandbox with sample data. AI assistants connect to the MCP server with OAuth instead.

Are there SDKs?

TypeScript and Python clients generated from the same spec, available on request while they’re in preview, plus ready-made tool files for Anthropic and OpenAI function calling.

Will the API change under me?

No. Version 1 only adds fields and endpoints. A breaking change would ship as a new version.

Start building.

Read the docs and try it with a test key, or we’ll set up your workspace and walk you through it.

Built by a small team that works with every customer.