KaiCalls Agency Program API
The Agency Program API from KaiCalls — 1 operation(s) for agency program.
The Agency Program API from KaiCalls — 1 operation(s) for agency program.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/kaicalls-com:kaicalls-com-agency-program-api"
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.
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: 3.2.0
info:
title: KaiCalls Public Agency Program API
version: '2026-06-05'
description: Machine-readable surface for KaiCalls external developers and client agents.
servers:
- url: https://www.kaicalls.com/api
security:
- bearerAuth: []
tags:
- name: Agency Program
paths:
/v1/agency-program:
get:
summary: Read a page of up to 50 accessible firms, launch-pack readiness and 30-day Kai…
description: Requires membership in every returned firm. Saved source preferences do not establish connector readiness. Training completion is separate from tested customer-route coverage. Also accepts authenticated dashboard sessions.
parameters:
- in: query
name: after
schema:
type: string
format: uuid
description: Exclusive business-id cursor from nextCursor.
responses:
'200':
description: Firms, source-specific module evidence, review drafts, report scope and nextCursor.
'401':
description: Authentication required.
'403':
description: Missing scope or membership.
'503':
description: Program evidence unavailable.
x-required-scopes:
allOf:
- workspaces:read
- calls:read
- leads:read
- emails:read
tags:
- Agency Program
operationId: getV1AgencyProgram
x-operation-id-source: derived
post:
summary: Preview or apply reviewed CaseEngine firm launch packs in batches of up to 50
description: Admin membership and workspaces:write + agents:write are required. Each firm commits atomically and replays safely. Applies quiet hours and detection, persists approved training signals and queues synthesis. Sends no messages and changes no live routing, billing, source integrations or campaign approvals.
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- entries
additionalProperties: false
properties:
action:
type: string
enum:
- preview
- apply
approved:
type: boolean
description: Must be true for apply after reviewing all firm facts.
entries:
type: array
minItems: 1
maxItems: 50
items:
type: object
required:
- businessId
- expectedRevision
- profile
additionalProperties: false
properties:
businessId:
type: string
format: uuid
expectedRevision:
type: string
nullable: true
description: Current revision, or null for a firm without a launch pack.
profile:
type: object
required:
- timezone
- practiceAreas
- serviceArea
- hours
- intakeInstructions
- dni
- lsa
- reviewUrl
additionalProperties: false
properties:
timezone:
type: string
practiceAreas:
type: array
minItems: 1
maxItems: 20
items:
type: string
serviceArea:
type: string
maxLength: 500
hours:
type: string
maxLength: 1000
intakeInstructions:
type: string
maxLength: 3000
dni:
type: string
enum:
- callrail
- kai
- other
- none
lsa:
type: string
enum:
- google_lsa
- lsa_commander
- none
reviewUrl:
type: string
description: Public HTTPS review link, or empty string.
responses:
'200':
description: Preview changes or per-firm applied/replayed/blocked/conflict/failed results. Inspect every outcome before retrying.
'400':
description: Invalid launch pack or approval missing.
'401':
description: Authentication required.
'403':
description: Missing scope or admin membership.
'413':
description: Body too large.
x-required-scopes:
allOf:
- workspaces:write
- agents:write
tags:
- Agency Program
operationId: postV1AgencyProgram
x-operation-id-source: derived
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'KaiCalls API key. Per-operation scope requirements are published on each operation as `x-required-scopes` — a scope string, or a nested `{ allOf: [...] }` / `{ anyOf: [...] }` expression. An operation with no `x-required-scopes` requires a valid key but no particular scope.'
x-scopes:
- workspaces:read
- workspaces:write
- numbers:read
- numbers:write
- agents:read
- agents:write
- communication-runs:read
- communication-runs:write
- calls:read
- calls:write
- sms:read
- sms:write
- webhooks:read
- webhooks:write
- events:read
- events:replay
- lifecycle:write
- leads:read
- leads:write
- emails:read
- emails:write
- sdr:read
- sdr:write
- evals:read
- evals:write
- appointments:read
- appointments:write
- knowledge:read
- knowledge:write
- products:read
- products:write
- integrations:write
- approvals:write
- concierge:write
- billing:read
- billing:write
- call_evidence:read
- call_evidence:write
- support:write
sessionAuth:
type: apiKey
in: cookie
name: sb-access-token
description: Authenticated dashboard session cookie. Used by first-party flows that mint or manage API keys.