Hold a run's recovery checkpoint
const url = 'https://api.katara.com/katara/v1/orgs/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/environments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/sandbox-holds';const options = { method: 'POST', headers: { cookie: 'katara_session=<katara_session>', 'Idempotency-Key': 'example', 'X-Katara-CSRF': '1', 'Content-Type': 'application/json' }, body: '{"run_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","kind":"legal","reason":"example","reference":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.katara.com/katara/v1/orgs/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/environments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/sandbox-holds \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: example' \ --header 'X-Katara-CSRF: 1' \ --cookie katara_session=<katara_session> \ --data '{ "run_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "kind": "legal", "reason": "example", "reference": "example" }'Owner or admin in a session; requires org:holds:write. While the hold is in force the run’s recovery checkpoint is not deleted, by routine cleanup or by closing the organization, and closing waits for it. A checkpoint already deleted cannot be held. A repeat with the same key returns the same hold.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Header Parameters
Section titled “Header Parameters”Browser cookie mutations require value 1 and an allowed Origin. Session bearer clients may omit this header.
Required for cookie-authenticated changes. Use the UUID of the account that loaded the application. A different current cookie account returns account_changed before the handler runs. Session bearer and API key clients do not require this header.
Request Bodyrequired
Section titled “Request Bodyrequired”object
Why the checkpoint must be kept.
The case, matter or incident the hold is placed under.
Responses
Section titled “Responses”The hold is in force.
A legal or security hold on one run’s recovery checkpoint. While it is in force the checkpoint is not deleted. Who placed it, why and under what reference cannot change.
object
Example
{ "kind": "legal"}The key was used for another request, the state changed, or the cookie account changed. Reinspect before a new intent; keep the key to recover an uncertain reply.
default
Section titled “default”Request rejected or unavailable.
object
object
Stable; branch on it. Any operation can answer invalid_request, with param naming the refused field when there is one; human_session_required, when an API key, service account or workload calls an operation only a signed-in person may perform; reauthentication_required, when a person’s sign-in is too old for the operation; permission_denied; route_not_found and method_not_allowed, when no operation matches the path or method; and feature_unavailable, when the operation’s service is not enabled on this deployment.
The request field a refusal is about, such as the agent_id or run_id query parameter; null when the refusal is not about one field.
Example
{ "error": { "action": "sign_in" }}