A better Rust ATProto crate
1{
2 "lexicon": 1,
3 "id": "com.atproto.repo.createRecord",
4 "defs": {
5 "main": {
6 "type": "procedure",
7 "description": "Create a new record in a repository.",
8 "input": {
9 "encoding": "application/json",
10 "schema": {
11 "type": "object",
12 "required": ["repo", "collection", "record"],
13 "properties": {
14 "repo": {
15 "type": "string",
16 "format": "at-identifier",
17 "description": "The handle or DID of the repo"
18 },
19 "collection": {
20 "type": "string",
21 "format": "nsid"
22 },
23 "rkey": {
24 "type": "string",
25 "format": "record-key"
26 },
27 "validate": {
28 "type": "boolean",
29 "default": true
30 },
31 "record": {
32 "type": "unknown",
33 "description": "The record to create"
34 },
35 "swapCommit": {
36 "type": "string",
37 "format": "cid"
38 }
39 }
40 }
41 },
42 "output": {
43 "encoding": "application/json",
44 "schema": {
45 "type": "object",
46 "required": ["uri", "cid"],
47 "properties": {
48 "uri": {
49 "type": "string",
50 "format": "at-uri"
51 },
52 "cid": {
53 "type": "string",
54 "format": "cid"
55 }
56 }
57 }
58 },
59 "errors": [
60 {"name": "InvalidSwap"},
61 {"name": "InvalidRecord"}
62 ]
63 }
64 }
65}