← All action domains

Intelligence

10 operations. Call each with POST https://app.chirply.io/api/v1/actions/<name> and a bearer token; the response is { "data": { "action", "summary", "result" } }. A read badge means the operation changes nothing; write requires the credential’s write scope.

Analyze a call

intelligence.analyze_callwriteconfirm

Run AI analysis on one completed call right now, instead of waiting for the background sweep. COSTS MONEY: this makes a model call billed to the organization's own OpenRouter account. Use `force` to re-analyze a call that already has analysis — otherwise an already-analyzed call is left alone. Fails cleanly when the call has no transcript, which is the case unless transcription was enabled on the number.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
call_idstring (uuid)requiredThe call to analyze.
forcebooleanoptionalRe-analyze even if this call already has analysis. Spends another model call. Default: false

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.analyze_call \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "call_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_analyze_call at https://app.chirply.io/api/mcp, same bearer token, same input.

Objection & topic breakdown

intelligence.breakdownread

Rank what the organization's calls have been about and what keeps stopping them, over a window of days: objections raised, topics discussed, how calls ended, sentiment, and the average lead score. Read-only and free. The counts describe the analyzed calls in the window and say so — an unanalyzed call is invisible to this.

Parameters

FieldTypeRequiredDescription
daysintegeroptionalWindow in days, counting back from now. Default: 30
contact_idstring (uuid)optionalNarrow the breakdown to one contact's calls.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.breakdown \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "days": 30,
    "contact_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_breakdown at https://app.chirply.io/api/mcp, same bearer token, same input.

Pipeline forecast

intelligence.forecastread

The revenue forecast for open deals, showing both numbers side by side: what the pipeline is worth weighted by each stage's historical win rate, and what it is worth weighted by the AI's per-deal probability, which is informed by what was actually said on the calls. Also returns deals broken down by health, the riskiest deals by value, and the most common risks. Read-only and free.

Parameters

FieldTypeRequiredDescription
pipeline_idstring (uuid)optionalLimit to one pipeline. Omit for every pipeline in the org.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.forecast \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "pipeline_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_forecast at https://app.chirply.io/api/mcp, same bearer token, same input.

Open a call's analysis

intelligence.get_callread

Fetch the full AI analysis of one call by the CALL's id: summary, what the call was about, objections raised, sentiment, the commitments made on it, coaching for the rep, and the lead score with its reasoning. Read-only and free. Returns not-found when that call has never been analyzed.

Parameters

FieldTypeRequiredDescription
call_idstring (uuid)requiredThe id of the call (not of the analysis).

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.get_call \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "call_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_get_call at https://app.chirply.io/api/mcp, same bearer token, same input.

Open a deal's risk assessment

intelligence.get_dealread

Fetch the AI assessment of one open deal: its adjusted win probability against the stage's historical one, its health, the specific risks on it, the recommended next step, and the evidence the assessment rests on — call counts, objections raised, sentiment over time, days since anyone made contact. Read-only and free.

Parameters

FieldTypeRequiredDescription
deal_idstring (uuid)requiredThe deal to look at.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.get_deal \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "deal_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_get_deal at https://app.chirply.io/api/mcp, same bearer token, same input.

Intelligence settings

intelligence.get_settingsread

Read the organization's intelligence settings: whether open deals are scored automatically, and how many days without contact makes a deal count as stalled. Read-only and free.

Parameters

No parameters — POST an empty body.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.get_settings \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{}'
Test with your API key

Over MCP the same operation is the tool intelligence_get_settings at https://app.chirply.io/api/mcp, same bearer token, same input.

List analyzed calls

intelligence.list_callsread

List calls that have been analyzed by AI, newest first, with each call's summary, outcome, sentiment, objections raised, lead score and agreed next step. Read-only and free — it returns analysis that already exists and never runs a model. Calls only appear here if the number they came in on has call analysis turned on.

Parameters

FieldTypeRequiredDescription
limitintegeroptionalHow many calls to return (max 200). Default: 50
offsetintegeroptionalHow many to skip, for paging. Default: 0
contact_idstring (uuid)optionalOnly calls with this contact.
deal_idstring (uuid)optionalOnly calls attached to this deal.
outcome"connected" | "voicemail" | "no_answer" | "wrong_number" | "not_interested" | "callback_requested" | … 4 moreoptionalOnly calls that ended this way, e.g. 'appointment_set'.
sentiment"positive" | "neutral" | "negative" | "mixed"optionalOnly calls where the other party sounded this way.
objection"price" | "budget_timing" | "needs_approval" | "using_competitor" | "happy_with_current" | "no_perceived_need" | … 7 moreoptionalOnly calls where this objection was raised, e.g. 'price'.
topic"pricing" | "product_demo" | "scheduling" | "onboarding" | "support_issue" | "billing_issue" | … 6 moreoptionalOnly calls about this topic, e.g. 'pricing'.
daysintegeroptionalOnly calls analyzed in the last N days.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.list_calls \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "limit": 50,
    "offset": 0
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_list_calls at https://app.chirply.io/api/mcp, same bearer token, same input.

Score a deal

intelligence.score_dealwriteconfirm

Run the AI risk assessment on one open deal right now. COSTS MONEY: this gathers the deal's evidence and makes a model call billed to the organization's own OpenRouter account. Re-scores a deal that already has a score.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
deal_idstring (uuid)requiredThe deal to score.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.score_deal \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "deal_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_score_deal at https://app.chirply.io/api/mcp, same bearer token, same input.

Turn call analysis on for a number

intelligence.set_call_analysiswriteconfirmadmin only

Turn AI call analysis on or off for one phone number. ONGOING COST: with it on, every completed call on that number is analyzed by a background job — one model call each, billed to the organization's own OpenRouter account. Analysis reads the transcript, so it does nothing unless transcription is also enabled on the number; this capability reports that rather than silently doing nothing.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
phone_number_idstring (uuid)requiredThe phone number to change.
enabledbooleanrequiredTrue to analyze this number's calls.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.set_call_analysis \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "phone_number_id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11",
    "enabled": true
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_set_call_analysis at https://app.chirply.io/api/mcp, same bearer token, same input.

Change intelligence settings

intelligence.update_settingswriteconfirmadmin only

Turn automatic deal scoring on or off and set how many days of silence makes a deal stalled. ONGOING COST: with scoring on, every open deal that changes is re-scored by a background job at most once a day, each one a model call billed to the organization's own OpenRouter account.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
analyze_dealsbooleanoptionalScore open deals automatically in the background.
stall_daysintegeroptionalDays without any contact before a deal is called stalled.

Example

curl -X POST https://app.chirply.io/api/v1/actions/intelligence.update_settings \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "analyze_deals": true,
    "stall_days": 1
  }'
Test with your API key

Over MCP the same operation is the tool intelligence_update_settings at https://app.chirply.io/api/mcp, same bearer token, same input.

The machine-readable version of this page is GET https://app.chirply.io/api/v1/actions?domain=intelligence — same operations, with full JSON Schemas. Authentication, errors and rate limits are covered in the API documentation home.