Skip to main content
POST
Write a catalog resource

Authorizations

Authorization
string
header
required

murmur API key: mur_<key_id>.

Path Parameters

ref.kind
string
required

e.g. "vm-profile", "environment", "pool-config"

ref.name
string
required

resource name within the kind (required)

Body

application/json
ref
object

ResourceRef identifies a catalog resource by kind and name.

payload
string<byte>

The resource document as base64-encoded JSON.

updateMask
string

When empty, the write is a full replace: the payload is the complete resource and overwrites whatever exists. When non-empty, the write is a patch: only the named fields are applied onto the existing resource — fields not in the mask are preserved, fields in the mask are taken from the payload even when zero-valued.

justification
string

Reason for the write, recorded in the audit log. Required for platform-operator writes; optional otherwise.

ifGenerationMatch
string<int64>

Optional write precondition. When unset, the write is unconditional (last writer wins). When set, the write commits only if the resource's current generation equals this value; 0 means the resource must not exist (atomic create). On mismatch the request fails with FAILED_PRECONDITION and nothing is written. Must be >= 0. Obtain the generation from GetResourceResponse.generation.

Response

A successful response.

payload
string<byte>

The stored resource document as base64-encoded JSON, as persisted after the write — including server-populated fields. For kinds that generate a one-time secret (the key of a newly created token or share link, or an integration's webhook signing key), the document additionally carries the raw secret, which is never stored — this response is the only place it is readable; record it now.

generation
string<int64>

Version generation produced by the write, so the caller can chain conditional writes without an interleaved read. 0 only where no versioned object was written.