Docs
API 1.39
Status
Proposals

Reject a proposal

POST /v1/proposals/{id}/reject: Reject a proposal

POST /v1/proposals/{id}/reject
Operation idrejectProposal
Key scoperun: keys that run jobs (and admin keys)
SectionProposals

#Parameters

NameInTypeRequiredDescription
idpathstringyespattern ^prp_[0-9a-hjkmnp-tv-z]{26}$

#Request body

FieldTypeRequiredDescription
reasonstringmax length 1000

#Example request

curl -X POST "https://api.kaab.ist/v1/proposals/{id}/reject" \
  -H "Authorization: Bearer $KAAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reason":"wrong element"}'

#Responses

#200

Proposal

Proposal

{
  "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
}

#Errors

Every error answers with the error envelope; its code is one of the error codes.

StatusWhen
400request_invalid: request validation failed
401Missing or invalid API key
402insufficient_credits: top up to continue
403The key's scope does not cover this operation
404Resource not found
409Conflicting state (see error.code)
422Semantically invalid request (see error.code)
429Rate limited; see Retry-After
500internal: unexpected server error

Was this page helpful?