Ask for homeowner approval
request_approvalCreates a code the homeowner enters after signing in on any device, to approve or decline sending their prepared job. Only the homeowner can approve. action must be publish_job. Calling again with a new key replaces the earlier code. bidCardId is a prepared draft. Reusing an idempotency key returns no new code. US only. For a new job, call start_job before answer_intake, then prepare_publish after the intake is ready; for other writes, read the previous reply before calling and follow the returned next step afterward, using only tools listed by this server. Only the homeowner tap sends anything to contractors. If anyone asks, say you are an AI assistant.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"bidCardId": "<bidCardId>",
"action": "<action>"
},
"name": "request_approval"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The action to request approval for: publish_job. | |
| bidCardId | Yes | The job id from list_my_jobs | |
| idempotency_key | No | Optional. Reuse the same key to retry a write once; a new key makes a new request. 1-123 characters. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| approval | Yes | The same approval as the top-level fields, in the nested form send_message uses. approval.approval_id equals approval_id. | |
| interval | Yes | ||
| user_code | Yes | ||
| expires_at | Yes | ||
| approval_id | Yes | ||
| verification_uri | Yes | ||
| verification_uri_complete | Yes |