patch_v1_crm_applications_id
PatchApplication moves one Startup Program application through the pipeline.
PatchApplication moves one Startup Program application through the pipeline. The
move is recorded on the application's timeline, attributed to the calling
staff user: it may advance exactly one stage, go back to any earlier stage,
reject from any non-rejected stage, or reopen a rejected application to
applied; anything else is refused. Rejecting requires a reason. A note with
no stage change is still recorded.
| Tool | patch_v1_crm_applications_id |
| Door | https://api.hanzo.ai/v1/mcp |
| Method | tools/call (JSON-RPC 2.0) |
| Arguments | 4 |
| Operation | PATCH /v1/crm/applications/{id} |
| Product | crm |
Arguments
| Field | Type | Required | Default | Values | Description |
|---|---|---|---|---|---|
id | string | — | — | — | ID is the application to move, from the path. |
note | string | — | — | — | Note is a free-text comment recorded on the timeline, with or without a stage change. |
reason | string | — | — | — | Reason records WHY, and is required to reject. |
stage | string | — | — | — | Stage is the stage to move to: applied, screened, qualified, credits-offered, onboarded or rejected. Omit to leave the stage alone. |
tools/list declares a type and a description for each field and nothing further. A — means neither the door nor that operation constrains the field.
Call it
A tools/call carries every argument in one flat object — nothing binds to a path or a query string. Nothing above is required, so every declared argument is shown rather than a guess at which matter.
curl -X POST https://api.hanzo.ai/v1/mcp \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "patch_v1_crm_applications_id",
"arguments": {
"id": "<id>",
"note": "<note>",
"reason": "<reason>",
"stage": "<stage>"
}
}
}'Values are the operation's own defaults and enumerated values where it declares them, and a <placeholder> where neither source declares one. tools/list needs no credential; tools/call does — called without one the door answers HTTP 200 with a JSON-RPC result whose isError is set and whose text says what was missing. How to get a key →
The operation behind it
| Operation | Route | Product | Summary |
|---|---|---|---|
patch_v1_crm_applications_id | PATCH /v1/crm/applications/{id} | crm | Moves one Startup Program application through the pipeline. |
The same capability over plain HTTP is in the crm API reference, on https://api.hanzo.ai.
All 755 tools · The door · API reference
Generated from tools/list on https://api.hanzo.ai/v1/mcp — 833 tools captured 2026-08-01, of which 755 are documented here (the operator surface is not published) (this build read the vendored copy; the door was unreachable).
How is this guide?