Export an object’s versions and policy
const url = 'https://api.katara.com/katara/v1/orgs/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/environments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/content/exports';const options = { method: 'POST', headers: { 'X-Katara-CSRF': '1', 'Idempotency-Key': '2489E9AD-2EE2-8E00-8EC9-32D5F69181C0', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: '{"content":{"org_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","environment_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","version":1,"integrity":"example","media_type":"text/plain","size_bytes":1}}'};
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/content/exports \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: 2489E9AD-2EE2-8E00-8EC9-32D5F69181C0' \ --header 'X-Katara-CSRF: 1' \ --data '{ "content": { "org_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "environment_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "version": 1, "integrity": "example", "media_type": "text/plain", "size_bytes": 1 } }'Requires the configured content service. While the object is live its own policy decides who may export it; once it is deleted that policy is one of the things the deletion removed, so whoever could have deleted it, or an administrator, reads the record instead. The manifest lists every version the object has had, the state each is in, the policy that governed it and how far its deletion has got (reads blocked, derived records removed, stored objects purged) and seals them with a digest taken over the state rather than the moment, so two exports of an unchanged object agree and a manifest kept after the object is gone can still be checked against itself. Exporting is recorded like a change, because a copy of customer content leaving the system is one.
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
object
Responses
Section titled “Responses”Successful request
object
object
The object’s display name. A deleted object has none.
object
object
object
object
object
Whether the deletion record may be destroyed now: its term is up, nothing holds it and the stored objects are gone.
Example
{ "owner_kind": "user", "versions": [ { "content": { "media_type": "text/plain" }, "state": "uploading" } ], "access": [ { "subject_kind": "user", "relation": "reader" } ], "deletion": { "stages": [ { "stage": "reads_blocked" } ] }}Account_changed: reload and review with the signed-in account.
default
Section titled “default”Request error
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" }}