Skip to content
Developer Preview

ApprovalChoice

One option the server offers for deciding an approval. Clients pick one and send its choiceId in approval/decide; they never build their own.

  • acceptsFeedback
  • choiceId
  • decision
  • label
  • rulePreview
  • scope
Source

schema/msp/experimental/msp.schema.json#/types/ApprovalChoice

{
"description": "One option the server offers for deciding an approval. Clients pick one and\nsend its `choiceId` in `approval/decide`; they never build their own.",
"properties": {
"acceptsFeedback": {
"description": "`true` when this choice takes optional `feedback` text in\n`approval/decide`, which reaches the model as guidance. Omitted when\n`false`.",
"type": "boolean"
},
"choiceId": {
"description": "The id to send as `choiceId` in `approval/decide`. The set of ids is\nopen, so show `label` and do not base behavior on specific ids.",
"type": "string"
},
"decision": {
"$ref": "#/$defs/ApprovalDecision",
"description": "The decision this choice applies, so a client can act on approve or\nreject without knowing choice ids."
},
"label": {
"description": "The human-readable label to show for this choice.",
"type": "string"
},
"rulePreview": {
"description": "A human-readable preview of what this choice grants, such as the policy\nrule it would create; show it exactly as given.",
"type": "string"
},
"scope": {
"$ref": "#/$defs/ApprovalChoiceScope",
"description": "The grant duration this choice declares: `once` (this request only),\n`session` (the rest of the session) or `localPersistent` (saved in the\nlocal policy store)."
}
},
"required": [
"choiceId",
"decision",
"label",
"scope"
],
"type": "object"
}