Ir al contenido

Revoke an intent policy's decisive mark

DELETE/api/public/v1/policies/{public_id}/intent-policies/{intent_policy_id}/decisive beta

The intent policy's fallback returns for declarations the client cannot verify, and the next bundle omits decisive. Answers the AIP as GET /policies/{public_id} reads it. Idempotent when the intent policy is not decisive. 409 NOT_RATIFIED for a draft or retired AIP.

Ventana de terminal
curl --fail-with-body -X DELETE 'https://app.openlatch.ai/api/public/v1/policies/<policy_public_id>/intent-policies/<intent_policy_id>/decisive' \
-H "Authorization: Bearer $OPENLATCH_API_KEY"
Rol en la organizaciónEste punto de conexión
ownerPermitido
adminPermitido
editorPermitido
viewerNo permitido

Una clave tiene el rol que su propietario ocupa en la organización. Consulte Autenticación.

Ámbito de la clave de API: policies:write

ParámetroTipoDescripción
public_idstringObligatorio.
intent_policy_idstring (uuid)Obligatorio.
ParámetroTipoDescripción
Idempotency-Keystring or nullOptional. Makes the request safe to retry: the same key and the same request, within 24 hours, returns the stored response with Idempotent-Replayed: true and runs once.
CampoTipoDescripción
dataobjectObligatorio. A ratified policy with its intents, provenance, history and activity.
data.activity_7dobjectObligatorio. Named counts of the policy's durable decision evidence from the last seven days.
data.activity_7d.anomalies_raisedinteger
data.activity_7d.events_evaluatedinteger
data.activity_agent_14dobject or nullEvents evaluated and anomalies raised by this policy on the agent named by agent_id, over 14 days. Null when the read was not scoped to an agent.
data.activity_agent_14d.anomalies_raisedinteger
data.activity_agent_14d.events_evaluatedinteger
data.anomalies_7dinteger
data.ask_behaviour_overridestring or nullThis AIP's own Ask behaviour, or null to follow the zone.
data.ask_mode_overridestring or nullThis AIP's own ASK delivery mode, or null to follow the zone.
data.attached_hereboolean
data.attachment_modestring — one of disabled, monitor, enforce or null
data.attachmentsarray of objectEvery Autonomy Zone the AIP is attached to, the viewed one first.
data.attachments[].attached_atstring (date-time)Obligatorio.
data.attachments[].modestring — one of disabled, monitor, enforceObligatorio.
data.attachments[].unit_idstringObligatorio.
data.attachments[].zone_idstringObligatorio.
data.attachments[].zone_labelstringObligatorio.
data.coverageobjectObligatorio. D-66 — installs counted from stamped negotiation, never from mode + recent poll.
data.coverage.compatibility_unavailable_installsintegerObligatorio.
data.coverage.enforced_installsintegerObligatorio.
data.dimensionsarray of stringObligatorio.
data.display_titlestringThe AIP's name: its title, else its generated_title, else its statement.
data.dropped_deferred_rulesarray of objectThe deferred rules of the version in force that no bundle serves, because their trigger is too broad: each with its intent policy and that intent policy's ratified sentence. Describes the version in force whatever version is viewed; empty when none.
data.dropped_deferred_rules[].intent_policy_idstringObligatorio.
data.dropped_deferred_rules[].rule_keystringObligatorio.
data.dropped_deferred_rules[].sentencestringObligatorio.
data.effective_ask_behaviourstringThe Ask behaviour its Asks follow at the layer being viewed.
data.effective_ask_modestringThe mode its ASKs follow at the layer being viewed: platform, agent or both.
data.effective_layerobject or null
data.effective_layer.inheritedbooleanObligatorio.
data.effective_layer.labelstringObligatorio.
data.effective_layer.unit_idstringObligatorio.
data.effective_layer.zone_idstringObligatorio.
data.effective_modestring — one of disabled, monitor, enforce or null
data.generated_titlestring or nullThe title generated when the AIP was first drafted; null when none.
data.historyarray of objectObligatorio.
data.history[].actor_kindstringObligatorio.
data.history[].actor_user_idobject or nullObligatorio.
data.history[].atstring (date-time)Obligatorio.
data.history[].changestringObligatorio.
data.history[].evidence_refobject or nullObligatorio.
data.history[].from_valueobject or nullObligatorio.
data.history[].to_valueobject or nullObligatorio.
data.home_zoneobject or nullObligatorio. The Autonomy Zone the AIP is in (ratified), or was last in while that zone is still live (deleted); null otherwise.
data.home_zone.org_unit_idstringObligatorio.
data.home_zone.zone_idstringObligatorio.
data.idstringObligatorio.
data.intent_policiesarray of objectThe ratified intent policies of the version viewed.
data.intent_policies[].aip_idstringObligatorio.
data.intent_policies[].aip_public_idstringObligatorio.
data.intent_policies[].aip_versionintegerObligatorio.
data.intent_policies[].ask_behaviourstringObligatorio.
data.intent_policies[].ask_modestringObligatorio.
data.intent_policies[].capabilityobject or null
data.intent_policies[].citationobject or nullObligatorio. The framework preset rule this intent policy came from, edited when its sentence differs; null for anything not drawn from a framework preset.
data.intent_policies[].decisiveobject or nullSet when the owner let this intent policy's declarations decide (Spec AZ2-6).
data.intent_policies[].dimensionstring — one of quality, economics, security, safety, complianceObligatorio.
data.intent_policies[].exceptionsarray of object
data.intent_policies[].fallbackobject or nullAn Optimize intent policy's fallback: how an action already steered twice is settled.
data.intent_policies[].idstringObligatorio.
data.intent_policies[].languagestringObligatorio.
data.intent_policies[].learned_casesarray of objectRegression cases accepted from learning proposals (Spec AZ2-6).
data.intent_policies[].measurementobject or nullA measure intent policy's seven-day measurement counts; null otherwise.
data.intent_policies[].messagesobjectObligatorio.
data.intent_policies[].modestringObligatorio.
data.intent_policies[].request_ruleobject or nullA measure intent policy's request rule; null otherwise.
data.intent_policies[].rulesarray of objectObligatorio.
data.intent_policies[].sentencestringObligatorio.
data.intent_policies[].statusstring — one of draft, ratified, droppedObligatorio.
data.intent_policies[].steerobject or nullThe better path an Optimize intent policy steers the agent to; null otherwise.
data.intentsobjectObligatorio. How many of the policy's atoms are actually enforceable.
data.intents.enforceableintegerObligatorio.
data.intents.monitor_onlyintegerObligatorio.
data.intents.totalintegerObligatorio.
data.layerobjectObligatorio. The layer a policy row is labelled with: the zone being viewed when it holds the AIP, else the zone whose attachment sets its mode there. `inherited` is true when the viewed zone holds no attachment of it.
data.layer.inheritedbooleanObligatorio.
data.layer.labelstringObligatorio.
data.layer.unit_idstringObligatorio.
data.layer.zone_idstringObligatorio.
data.limitsobject or null
data.limits.cannot_promptintegerObligatorio. Agents whose binding cannot prompt: their ASKs take the fallback verdict.
data.limits.in_scopeintegerObligatorio. Agents whose effective zone is in the subtree.
data.limits.shell_onlyintegerObligatorio. Agents whose refusals reach shell tools only (Cline today).
data.modestringObligatorio. Deprecated: attachment_mode at zone_id, else effective_mode.
data.open_edit_draftobject or nullThe AIP's open draft version and who holds it; null when none is open.
data.open_edit_draft.held_byobjectObligatorio.
data.open_edit_draft.public_idstringObligatorio.
data.open_edit_draft.versionintegerObligatorio.
data.presetobject or null
data.preset.application_idstringObligatorio.
data.preset.preset_idstringObligatorio.
data.preset.preset_namestringObligatorio.
data.preset.preset_policy_keystringObligatorio.
data.preset.preset_versionintegerObligatorio.
data.provenanceobjectObligatorio. Where a ratified policy came from and who ratified it, when known.
data.provenance.copied_fromobject or nullThe AIP this one was copied from and its version then; null when not a copy.
data.provenance.presetobject or null
data.provenance.ratified_atstring (date-time) or nullObligatorio.
data.provenance.ratified_bystring or nullObligatorio.
data.provenance.ratified_by_kindstring or nullObligatorio.
data.provenance.rationalestring or nullObligatorio.
data.provenance.source_idstring or nullObligatorio.
data.provenance.source_kindstringObligatorio.
data.provenance.source_namestring or nullObligatorio.
data.public_idstringObligatorio.
data.read_onlyboolean
data.retired_atstring (date-time) or nullObligatorio. When the AIP was deleted; null while it is in force.
data.retired_byobject or nullObligatorio. Who deleted it; null while it is in force.
data.retired_by.kindstring — one of user, api_key, system, migrationObligatorio.
data.retired_by.nameobject or null
data.statementstringObligatorio.
data.statusstringObligatorio.
data.titlestring or nullThe owner's name for the AIP; null falls back.
data.versionintegerObligatorio.
data.versionsarray of object
data.versions[].changestringObligatorio.
data.versions[].ratified_atstring (date-time)Obligatorio.
data.versions[].ratified_by_kindstringObligatorio.
data.versions[].versionintegerObligatorio.
data.viewing_versionintegerObligatorio.
{
"data": {
"activity_7d": {
"anomalies_raised": 0,
"events_evaluated": 0
},
"activity_agent_14d": {
"anomalies_raised": 0,
"events_evaluated": 0
},
"anomalies_7d": 0,
"ask_behaviour_override": "string",
"ask_mode_override": "string",
"attached_here": false,
"attachment_mode": "disabled",
"attachments": [
{
"attached_at": "2026-01-15T14:32:05Z",
"mode": "disabled",
"unit_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"zone_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"zone_label": "string"
}
],
"coverage": {
"compatibility_unavailable_installs": 3,
"enforced_installs": 3
},
"dimensions": [
"string"
],
"display_title": "",
"dropped_deferred_rules": [
{
"intent_policy_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"rule_key": "string",
"sentence": "string"
}
],
"effective_ask_behaviour": "pass_and_review",
"effective_ask_mode": "both",
"effective_layer": {
"inherited": false,
"label": "string",
"unit_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"zone_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
},
"effective_mode": "disabled",
"generated_title": "string",
"history": [
{
"actor_kind": "string",
"actor_user_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"at": "2026-01-15T14:32:05Z",
"change": "string",
"evidence_ref": "string",
"from_value": "string",
"to_value": "string"
}
],
"home_zone": {
"org_unit_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"zone_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
},
"id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"intent_policies": [
{
"aip_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"aip_public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"aip_version": 3,
"ask_behaviour": "string",
"ask_mode": "string",
"capability": "string",
"citation": {
"edited": false,
"entries": [
{}
],
"items": [
{}
],
"license_url": "https://app.openlatch.ai/",
"preset_key": "string",
"preset_title": "string",
"rule_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"source_commit": "string",
"source_date": "string",
"source_sentence": "string",
"version": 1
},
"decisive": {
"by": {},
"proposal_public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"since": "2026-01-15T14:32:05Z",
"unit_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
},
"dimension": "quality",
"exceptions": [
{}
],
"fallback": "Ask",
"id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"language": "string",
"learned_cases": [
{
"action": "string",
"action_line": "string",
"id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"kind": "string",
"outcome": "string",
"reviewed_at": "2026-01-15T14:32:05Z"
}
],
"measurement": {
"guarded": 3,
"incapable": 3,
"shadowed": 3,
"unchanged": 3,
"window_days": 3,
"would_change": 3
},
"messages": {
"declare": "",
"held": "",
"notice": ""
},
"mode": "string",
"request_rule": {
"lever": "effort_clamp",
"params": {}
},
"rules": [
"string"
],
"sentence": "string",
"status": "draft",
"steer": "string"
}
],
"intents": {
"enforceable": 3,
"monitor_only": 3,
"total": 3
},
"layer": {
"inherited": false,
"label": "string",
"unit_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"zone_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
},
"limits": {
"cannot_prompt": 3,
"in_scope": 3,
"shell_only": 3
},
"mode": "string",
"open_edit_draft": {
"held_by": {
"name": "release-bot"
},
"public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"version": 3
},
"preset": {
"application_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"preset_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"preset_name": "release-bot",
"preset_policy_key": "string",
"preset_version": 3
},
"provenance": {
"copied_from": {
"public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"version": 3
},
"preset": {
"application_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"preset_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"preset_name": "release-bot",
"preset_policy_key": "string",
"preset_version": 3
},
"ratified_at": "2026-01-15T14:32:05Z",
"ratified_by": "string",
"ratified_by_kind": "string",
"rationale": "string",
"source_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"source_kind": "string",
"source_name": "release-bot"
},
"public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"read_only": false,
"retired_at": "2026-01-15T14:32:05Z",
"retired_by": {
"kind": "user",
"name": "release-bot"
},
"statement": "string",
"status": "string",
"title": "string",
"version": 3,
"versions": [
{
"change": "string",
"ratified_at": "2026-01-15T14:32:05Z",
"ratified_by_kind": "string",
"version": 3
}
],
"viewing_version": 3
}
}