Ratify and activate a draft
POST/api/public/v1/aip/drafts/{public_id}/ratify beta
Ratifies at once every intent policy confirmed on the draft whose capability is enforce or defer, and attaches the AIP to the one zone saved on the draft in its mode (409 ONE_ZONE_PER_AIP for more); the refused and left-out intent policies are dropped. For an edit draft, a new version of the same AIP. An agent (OAuth) caller must send sentences, the exact sentences this puts in force: 428 SENTENCES_REQUIRED without them, 409 SENTENCES_MISMATCH unless they match.
curl --fail-with-body -X POST 'https://app.openlatch.ai/api/public/v1/aip/drafts/<draft_public_id>/ratify' \ -H "Authorization: Bearer $OPENLATCH_API_KEY" \ -H 'Content-Type: application/json' \ -d '{"revision":<revision>,"sentences":<sentences>}'import jsonimport osimport urllib.request
body = '{"revision":<revision>,"sentences":<sentences>}'request = urllib.request.Request( 'https://app.openlatch.ai/api/public/v1/aip/drafts/<draft_public_id>/ratify', method='POST', data=body.encode(), headers={ 'Authorization': 'Bearer ' + os.environ['OPENLATCH_API_KEY'], 'Content-Type': 'application/json', },)with urllib.request.urlopen(request) as response: text = response.read().decode() print(json.dumps(json.loads(text), indent=2) if text else response.status)#!/usr/bin/env bashset -euo pipefail
curl -sS --fail-with-body -X POST 'https://app.openlatch.ai/api/public/v1/aip/drafts/<draft_public_id>/ratify' \ -H "Authorization: Bearer $OPENLATCH_API_KEY" \ -H 'Content-Type: application/json' \ -d '{"revision":<revision>,"sentences":<sentences>}' | jq .$headers = @{ Authorization = "Bearer $env:OPENLATCH_API_KEY"}$body = '{"revision":<revision>,"sentences":<sentences>}'Invoke-RestMethod -Method POST -Uri 'https://app.openlatch.ai/api/public/v1/aip/drafts/<draft_public_id>/ratify' -Headers $headers -ContentType 'application/json; charset=utf-8' -Body $body | ConvertTo-Json -Depth 20Autorisation
Section intitulée « Autorisation »| Rôle dans l’organisation | Ce point de terminaison |
|---|---|
owner | Autorisé |
admin | Autorisé |
editor | Autorisé |
viewer | Non autorisé |
Une clé porte le rôle que son propriétaire détient dans l’organisation. Voir Authentification.
Portée de clé d’API : aip:write
Paramètres de chemin
Section intitulée « Paramètres de chemin »| Paramètre | Type | Description |
|---|---|---|
public_id | string | Obligatoire. |
Paramètres d’en-tête
Section intitulée « Paramètres d’en-tête »| Paramètre | Type | Description |
|---|---|---|
Idempotency-Key | string or null | Optional. 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. |
Corps de la requête
Section intitulée « Corps de la requête »| Champ | Type | Description |
|---|---|---|
revision | integer | Obligatoire. |
sentences | array of string or null | The exact sentences this call puts in force, as shown to the user. Required of an agent (OAuth) caller: 428 SENTENCES_REQUIRED without them, 409 SENTENCES_MISMATCH unless they match the sentences put in force (the same sentences, order ignored, each as many times as it appears, after Unicode NFC and whitespace normalisation). |
- 200 OK — l’appel a réussi.
- 400 Bad Request —
BAD_REQUEST - 401 Unauthorized —
UNAUTHORIZED - 402 Payment Required —
license_expired - 403 Forbidden —
FEATURE_DISABLED,FORBIDDEN,INSUFFICIENT_SCOPE - 404 Not Found —
NOT_FOUND - 409 Conflict —
DICTIONARY_TABLE_EXISTS,DRAFT_NOT_PREPARED,EDIT_DRAFT_STALE,IDEMPOTENCY_IN_PROGRESS,ONE_ZONE_PER_AIP,SENTENCES_MISMATCH - 422 Unprocessable Content —
IDEMPOTENCY_KEY_REUSED,INVALID_ID,INVALID_PATTERN,NOTHING_RATIFIED,NO_ZONE,VALIDATION_ERROR,ZONE_UNAVAILABLE - 428 Precondition Required —
SENTENCES_REQUIRED - 429 Too Many Requests —
TOO_MANY_REQUESTS - 500 Internal Server Error —
INTERNAL_SERVER_ERROR,tenant_isolation_violation - 503 Service Unavailable —
ENGINE_UNAVAILABLE,FEATURE_STATE_UNAVAILABLE,SERVICE_UNAVAILABLE
Champs de la réponse
Section intitulée « Champs de la réponse »| Champ | Type | Description |
|---|---|---|
data | object | Obligatoire. |
data.dropped | array of string | Obligatoire. |
data.policy_public_id | string | Obligatoire. |
data.ratified | array of string | Obligatoire. |
data.version | integer | Obligatoire. |
Exemple de réponse
Section intitulée « Exemple de réponse »{ "data": { "dropped": [ "string" ], "policy_public_id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10", "ratified": [ "string" ], "version": 3 }}