Ir al contenido

Take one intent policy out of a draft

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

It leaves the draft and the ratify count, and the draft's revision moves; on an edit draft the live AIP keeps it until the draft is ratified. 409 GROUNDING_IN_FLIGHT while it is being grounded.

Ventana de terminal
curl --fail-with-body -X DELETE 'https://app.openlatch.ai/api/public/v1/aip/drafts/<draft_public_id>/intent-policies/<intent_policy_id>' \
-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: aip: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. One draft: its intent policies, revision, zones, mode, preparation, replay and, for an edit draft, the live version it was opened from.
data.ask_behaviour_overridestring — one of pass_and_review, hold_until_validated or nullThe AIP's own Ask behaviour ratify gives it; null follows the Autonomy Zone.
data.ask_mode_overridestring — one of platform, agent, both or nullThe AIP's own Ask delivery ratify gives it; null follows the Autonomy Zone.
data.edit_ofobject or null
data.edit_of.versionintegerObligatorio.
data.from_framework_presetbooleanObligatorio. True when an intent policy of the draft holds a framework citation, edit drafts included.
data.intent_policiesarray of objectObligatorio.
data.intent_policies[].busyobject or nullWhat runs on the intent policy: grounding, cases (its stored cases checked again), fix, or topping_up (cases written for the values an answer added, appended when ready; it blocks nothing).
data.intent_policies[].capabilityobject or null
data.intent_policies[].cardsarray of objectObligatorio.
data.intent_policies[].casesarray of objectObligatorio.
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[].confirmedobject or null
data.intent_policies[].deferredobject or nullThe deferred part's gap class and fallback; null when it has none.
data.intent_policies[].dimensionstring — one of quality, economics, security, safety, complianceObligatorio.
data.intent_policies[].fallbackobject or null
data.intent_policies[].fixobject or null
data.intent_policies[].idstringObligatorio.
data.intent_policies[].job_idobject or null
data.intent_policies[].languagestringObligatorio.
data.intent_policies[].passageobject or null
data.intent_policies[].refusalobject or null
data.intent_policies[].request_ruleobject or null
data.intent_policies[].sentencestringObligatorio. The intent policy. Empty while the drafting job still prepares it (busy is grounding and it holds no grounding yet): a sentence is served only once it is final.
data.intent_policies[].steerobject or null
data.intent_policies[].validateobject or null
data.languagestringObligatorio.
data.modestring — one of disabled, monitor, enforce or null
data.mode_advicestring or nullObligatorio. The Monitor line on a draft newly made from a framework preset; null otherwise and on edit drafts.
data.preparationobjectObligatorio.
data.preparation.errorobject or null
data.preparation.remainingarray of string — one of ground, test, pack, replayObligatorio.
data.preparation.revisioninteger or null
data.preparation.statestring — one of idle, running, ready, failedObligatorio.
data.preparation.steps_doneintegerObligatorio.
data.preparation.steps_totalintegerObligatorio.
data.public_idstringObligatorio.
data.replayobject or null
data.replay.rowsarray of object
data.replay.statestring — one of running, done, engine_unavailable, emptyObligatorio.
data.replay.summaryobject or nullThe replay's figures over all total rows; null while it runs.
data.replay.totalinteger
data.revisionintegerObligatorio.
data.source_kindstringObligatorio.
data.unavailable_zonesarray of object
data.unavailable_zones[].nameobject or null
data.unavailable_zones[].reasonstring — one of deleted, cannot_take_policyObligatorio.
data.unavailable_zones[].sinceobject or null
data.unavailable_zones[].zone_idstringObligatorio.
data.zone_idsarray of stringObligatorio.
{
"data": {
"ask_behaviour_override": "pass_and_review",
"ask_mode_override": "platform",
"edit_of": {
"version": 3
},
"from_framework_preset": false,
"intent_policies": [
{
"busy": "string",
"capability": "string",
"cards": [
{
"answer": {},
"key": "string",
"kind": "dictionary_values",
"question": "string",
"recommended": {}
}
],
"cases": [
{}
],
"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
},
"confirmed": false,
"deferred": {
"class": "string",
"fallback": "Ask"
},
"dimension": "quality",
"fallback": "Ask",
"fix": {
"attempts_left": 3,
"available": false,
"diff": {},
"fix_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"reason": "Never push to main without a review.",
"requested": false
},
"id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"job_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"language": "string",
"passage": {
"end": 3,
"start": 3
},
"refusal": {
"class": "nothing_observable",
"reason": "Never push to main without a review."
},
"request_rule": {
"lever": "effort_clamp",
"params": {}
},
"sentence": "string",
"steer": "string",
"validate": {
"example": "string",
"fires_on_every_action": false,
"never_fires": false
}
}
],
"language": "string",
"mode": "disabled",
"mode_advice": "string",
"preparation": {
"error": {
"code": "NOT_FOUND",
"message": "Never push to main without a review."
},
"remaining": [
"ground"
],
"revision": 3,
"state": "idle",
"steps_done": 3,
"steps_total": 3
},
"public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"replay": {
"rows": [
{
"event_id": "evt_01jbwa2k1vfrn9y42xhgxhmzj2",
"occurred_at": "2026-01-15T14:32:05Z",
"platform": "string",
"readable": false,
"recorded_verdict": "string",
"verdict": "string"
}
],
"state": "running",
"summary": {},
"total": 0
},
"revision": 3,
"source_kind": "string",
"unavailable_zones": [
{
"name": "release-bot",
"reason": "deleted",
"since": "2026-01-15T14:32:05Z",
"zone_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
}
],
"zone_ids": [
"3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10"
]
}
}