update
This commit is contained in:
126
lexicons/com/atproto/repo/applyWrites.json
Normal file
126
lexicons/com/atproto/repo/applyWrites.json
Normal file
@ -0,0 +1,126 @@
|
||||
{
|
||||
"lexicon": 1,
|
||||
"id": "com.atproto.repo.applyWrites",
|
||||
"defs": {
|
||||
"main": {
|
||||
"type": "procedure",
|
||||
"description": "Apply a batch transaction of repository creates, updates, and deletes. Requires auth, implemented by PDS.",
|
||||
"input": {
|
||||
"encoding": "application/json",
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"required": ["repo", "writes"],
|
||||
"properties": {
|
||||
"repo": {
|
||||
"type": "string",
|
||||
"format": "at-identifier",
|
||||
"description": "The handle or DID of the repo (aka, current account)."
|
||||
},
|
||||
"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."
|
||||
},
|
||||
"writes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "union",
|
||||
"refs": ["#create", "#update", "#delete"],
|
||||
"closed": true
|
||||
}
|
||||
},
|
||||
"swapCommit": {
|
||||
"type": "string",
|
||||
"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.",
|
||||
"format": "cid"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"output": {
|
||||
"encoding": "application/json",
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"required": [],
|
||||
"properties": {
|
||||
"commit": {
|
||||
"type": "ref",
|
||||
"ref": "com.atproto.repo.defs#commitMeta"
|
||||
},
|
||||
"results": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "union",
|
||||
"refs": ["#createResult", "#updateResult", "#deleteResult"],
|
||||
"closed": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"errors": [
|
||||
{
|
||||
"name": "InvalidSwap",
|
||||
"description": "Indicates that the 'swapCommit' parameter did not match current commit."
|
||||
}
|
||||
]
|
||||
},
|
||||
"create": {
|
||||
"type": "object",
|
||||
"description": "Operation which creates a new record.",
|
||||
"required": ["collection", "value"],
|
||||
"properties": {
|
||||
"collection": { "type": "string", "format": "nsid" },
|
||||
"rkey": { "type": "string", "maxLength": 15 },
|
||||
"value": { "type": "unknown" }
|
||||
}
|
||||
},
|
||||
"update": {
|
||||
"type": "object",
|
||||
"description": "Operation which updates an existing record.",
|
||||
"required": ["collection", "rkey", "value"],
|
||||
"properties": {
|
||||
"collection": { "type": "string", "format": "nsid" },
|
||||
"rkey": { "type": "string" },
|
||||
"value": { "type": "unknown" }
|
||||
}
|
||||
},
|
||||
"delete": {
|
||||
"type": "object",
|
||||
"description": "Operation which deletes an existing record.",
|
||||
"required": ["collection", "rkey"],
|
||||
"properties": {
|
||||
"collection": { "type": "string", "format": "nsid" },
|
||||
"rkey": { "type": "string" }
|
||||
}
|
||||
},
|
||||
"createResult": {
|
||||
"type": "object",
|
||||
"required": ["uri", "cid"],
|
||||
"properties": {
|
||||
"uri": { "type": "string", "format": "at-uri" },
|
||||
"cid": { "type": "string", "format": "cid" },
|
||||
"validationStatus": {
|
||||
"type": "string",
|
||||
"knownValues": ["valid", "unknown"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"updateResult": {
|
||||
"type": "object",
|
||||
"required": ["uri", "cid"],
|
||||
"properties": {
|
||||
"uri": { "type": "string", "format": "at-uri" },
|
||||
"cid": { "type": "string", "format": "cid" },
|
||||
"validationStatus": {
|
||||
"type": "string",
|
||||
"knownValues": ["valid", "unknown"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"deleteResult": {
|
||||
"type": "object",
|
||||
"required": [],
|
||||
"properties": {}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user