AT Protocol icon

AT Protocol

CRUD records and manage blobs in any AT Protocol repo

Actions8

Record → Put

AI-generated

Summary

Fully replace a record in the selected AT Protocol collection and repository using the supplied record data. The operation resolves an empty key from a collection’s fixed-key lexicon when possible, validates the record when its schema is available, and returns the record URI and CID.

Inputs

  • Collection (required) — Collection NSID, selected from the list or entered directly (for example, app.bsky.feed.post).
  • Record Key (Rkey) — Key of the record to replace. Leave empty only when the collection declares a fixed key; the operation resolves that key from its lexicon or errors if it cannot.
  • Record Data (required) — Fields for the replacement record. The UI can map fields from the collection lexicon; JSON or an expression can be used if fields cannot be resolved. This is a full replacement, so include the fields you want in the resulting record.
  • Swap Commit (CID) — Optional compare-and-swap CID. The write is rejected if the repository head does not match it.

Output shape

A single record containing the write response's uri and cid.

The write targets the authenticated user's repository. The node injects the collection NSID as $type and adds createdAt if absent. When a lexicon schema is available, it applies constant fields, uploads named binary properties for blob fields, injects nested $type values, and validates the record before writing. Errors can be returned in an error object when Continue On Fail is enabled.

Links

Discussion