Backfill in-progress. Some lexicons and records may be missing or incomplete.

com.atproto.repo.applyWrites

atproto-lexicons.bsky.social

{
  "id": "com.atproto.repo.applyWrites",
  "defs": {
    "main": {
      "type": "procedure",
      "input": {
        "schema": {
          "type": "object",
          "required": [
            "repo",
            "writes"
          ],
          "properties": {
            "repo": {
              "type": "string",
              "format": "at-identifier",
              "description": "The handle or DID of the repo (aka, current account)."
            },
            "writes": {
              "type": "array",
              "items": {
                "refs": [
                  "#create",
                  "#update",
                  "#delete"
                ],
                "type": "union",
                "closed": true
              }
            },
            "validate": {
              "type": "boolean",
              "description": "Can be set to 'false' to skip Lexicon schema validation of record data across all operations, 'true' to require it, or leave unset to validate only for known Lexicons."
            },
            "swapCommit": {
              "type": "string",
              "format": "cid",
              "description": "If provided, the entire operation will fail if the current repo commit CID does not match this value. Used to prevent conflicting repo mutations."
            }
          }
        },
        "encoding": "application/json"
      },
      "errors": [
        {
          "name": "InvalidSwap",
          "description": "Indicates that the 'swapCommit' parameter did not match current commit."
        }
      ],
      "output": {
        "schema": {
          "type": "object",
          "required": [],
          "properties": {
            "commit": {
              "ref": "com.atproto.repo.defs#commitMeta",
              "type": "ref"
            },
            "results": {
              "type": "array",
              "items": {
                "refs": [
                  "#createResult",
                  "#updateResult",
                  "#deleteResult"
                ],
                "type": "union",
                "closed": true
              }
            }
          }
        },
        "encoding": "application/json"
      },
      "description": "Apply a batch transaction of repository creates, updates, and deletes. Requires auth, implemented by PDS."
    },
    "create": {
      "type": "object",
      "required": [
        "collection",
        "value"
      ],
      "properties": {
        "rkey": {
          "type": "string",
          "format": "record-key",
          "maxLength": 512,
          "description": "NOTE: maxLength is redundant with record-key format. Keeping it temporarily to ensure backwards compatibility."
        },
        "value": {
          "type": "unknown"
        },
        "collection": {
          "type": "string",
          "format": "nsid"
        }
      },
      "description": "Operation which creates a new record."
    },
    "delete": {
      "type": "object",
      "required": [
        "collection",
        "rkey"
      ],
      "properties": {
        "rkey": {
          "type": "string",
          "format": "record-key"
        },
        "collection": {
          "type": "string",
          "format": "nsid"
        }
      },
      "description": "Operation which deletes an existing record."
    },
    "update": {
      "type": "object",
      "required": [
        "collection",
        "rkey",
        "value"
      ],
      "properties": {
        "rkey": {
          "type": "string",
          "format": "record-key"
        },
        "value": {
          "type": "unknown"
        },
        "collection": {
          "type": "string",
          "format": "nsid"
        }
      },
      "description": "Operation which updates an existing record."
    },
    "createResult": {
      "type": "object",
      "required": [
        "uri",
        "cid"
      ],
      "properties": {
        "cid": {
          "type": "string",
          "format": "cid"
        },
        "uri": {
          "type": "string",
          "format": "at-uri"
        },
        "validationStatus": {
          "type": "string",
          "knownValues": [
            "valid",
            "unknown"
          ]
        }
      }
    },
    "deleteResult": {
      "type": "object",
      "required": [],
      "properties": {}
    },
    "updateResult": {
      "type": "object",
      "required": [
        "uri",
        "cid"
      ],
      "properties": {
        "cid": {
          "type": "string",
          "format": "cid"
        },
        "uri": {
          "type": "string",
          "format": "at-uri"
        },
        "validationStatus": {
          "type": "string",
          "knownValues": [
            "valid",
            "unknown"
          ]
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against com.atproto.repo.applyWrites

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:6msi3pj7krzih5qxqtryxlzw
CID
bafyreidwfwif7k5uncwqxhpxpxhvdkgedbvp6kqy6r4nozii433lwlajba
Indexed At
2026-01-09 12:47 UTC
AT-URI
at://did:plc:6msi3pj7krzih5qxqtryxlzw/com.atproto.lexicon.schema/com.atproto.repo.applyWrites

Referenced Schemas (1)

Lexicon Garden

@