Objects
Proposal
The Proposal object of the Kaabist API.
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | pattern ^prp_[0-9a-hjkmnp-tv-z]{26}$ |
object | "proposal" | yes | |
kind | "relocate", "dismiss", "insert_steps", "parser_config", "api_discovery" | yes | |
status | "pending", "approved", "rejected", "expired" | yes | |
program | object | yes | |
program.id | string | yes | pattern ^prg_[0-9a-hjkmnp-tv-z]{26}$ |
program.name | string | yes | |
program.version | integer | yes | ≥ 1 |
program.version_id | string | yes | pattern ^pv_[0-9a-hjkmnp-tv-z]{26}$ |
job_id | string or null | yes | pattern ^job_[0-9a-hjkmnp-tv-z]{26}$ |
target | string | yes | |
confidence | number or null | yes | ≥ 0 · ≤ 1 |
source | "heuristic", "llm", "takeover", "canary" | yes | |
payload | object | yes | |
payload.old | map of any | ||
payload.new | map of any | ||
payload.samples | map of any | ||
payload.fingerprints | map of any | ||
payload.bboxes | map of any | ||
payload.evidence | map of any | ||
payload.screenshots | object | ||
payload.screenshots.old | string or null | ||
payload.screenshots.new | string or null | ||
payload.obstacle | map of any | ||
payload.action | map of any | ||
payload.hostname | string | ||
payload.steps | map of any | ||
payload.recording_key | string | ||
payload.live_id | string | ||
created_at | string (date-time) | yes | |
expires_at | string (date-time) | yes | |
decided_at | string or null (date-time) | yes | |
decision | object or null | yes | |
decision.promote | boolean | yes | |
decision.remember | "none", "site" | yes | |
decision.by | string | yes | |
decision.notes | string or null | max length 1000 |
#Example
{
"id": "prp_01j9zqk3q7m4n5p6r7s8t9v0wx",
"object": "proposal",
"kind": "relocate",
"status": "pending",
"program": {
"id": "prg_01j9zqk3q7m4n5p6r7s8t9v0wx",
"name": "acme-report",
"version": 3,
"version_id": "pv_01j9zqk3q7m4n5p6r7s8t9v0wx"
},
"job_id": "job_01j9zqk3q7m4n5p6r7s8t9v0wx",
"target": "extract.rows[].amount",
"confidence": 0.91,
"source": "heuristic",
"payload": {
"old": {
"selector": "td:nth-child(3)"
},
"new": {
"candidates": [
{
"css": "td[data-col=amount]"
}
]
},
"samples": {
"old": "1.250,00",
"new": "1.250,00"
}
},
"created_at": "2026-09-18T10:00:00Z",
"expires_at": "2026-09-25T10:00:00Z",
"decided_at": null,
"decision": null
}