Herald
OpenapiLegal

Save (upsert) a draft for an agreement type.

Admin — requires `inject_identity` + `settings.manage` + `has_access_to_realm`. A repeat save overwrites the prior draft. Does NOT publish — the agreement stays unchanged for end users until POST `/publish`.

PUT
/api/legal/admin/{realmId}/agreements/{agreementType}/draft

Admin — requires inject_identity + settings.manage + has_access_to_realm. A repeat save overwrites the prior draft. Does NOT publish — the agreement stays unchanged for end users until POST /publish.

Path Parameters

realmId*string

Realm ID

agreementType*string

Agreement type: terms_of_service | privacy_policy

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

content*unknown
external_url?string|null
mode?null|
version_label?string|null

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X PUT "https://example.com/api/legal/admin/string/agreements/string/draft" \  -H "Content-Type: application/json" \  -d '{    "content": null  }'
{  "agreement_type": "terms_of_service",  "content": null,  "external_url": "string",  "mode": "full_text",  "pending_version_no": 0,  "updated_at": "2019-08-24T14:15:22Z",  "version_label": "string"}
{  "code": "string",  "details": null,  "message": "string",  "requestId": "string",  "status": 0}
{  "code": "string",  "details": null,  "message": "string",  "requestId": "string",  "status": 0}
{  "code": "string",  "details": null,  "message": "string",  "requestId": "string",  "status": 0}
{  "code": "string",  "details": null,  "message": "string",  "requestId": "string",  "status": 0}