From
bafyreicstoas6yz7a2qsf5shobx4olu523qqy2uc7opjaewopain7kemey
indexed 2026-08-27 01:50 UTC
View this version
To
bafyreicstoas6yz7a2qsf5shobx4olu523qqy2uc7opjaewopain7kemey
indexed 2026-08-27 01:50 UTC
View this version
Compatibility
backward compatible No changes detected.
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"crewExport": {55
"properties": {66
"addedAt": {77
"format": "datetime",88
"type": "string"99
},1010
"permissions": {1111
"items": {1212
"maxLength": 64,1313
"type": "string"1414
},1515
"type": "array"1616
},1717
"role": {1818
"maxLength": 32,1919
"type": "string"2020
},2121
"tier": {2222
"maxLength": 32,2323
"type": "string"2424
}2525
},2626
"type": "object"2727
},2828
"layerExport": {2929
"properties": {3030
"createdAt": {3131
"format": "datetime",3232
"type": "string"3333
},3434
"digest": {3535
"maxLength": 128,3636
"type": "string"3737
},3838
"manifest": {3939
"format": "at-uri",4040
"type": "string"4141
},4242
"mediaType": {4343
"maxLength": 256,4444
"type": "string"4545
},4646
"size": {4747
"type": "integer"4848
}4949
},5050
"type": "object"5151
},5252
"main": {5353
"description": "Export all user data from this hold (GDPR compliance). Returns all records stored on this hold's PDS that reference the authenticated user's DID.",5454
"errors": [5555
{5656
"name": "AuthRequired"5757
}5858
],5959
"output": {6060
"encoding": "application/json",6161
"schema": {6262
"properties": {6363
"blueskyPosts": {6464
"description": "Bluesky posts that mention the user",6565
"items": {6666
"ref": "#postExport",6767
"type": "ref"6868
},6969
"type": "array"7070
},7171
"crewRecord": {7272
"description": "User's crew record (if they are a crew member)",7373
"ref": "#crewExport",7474
"type": "ref"7575
},7676
"exportedAt": {7777
"description": "RFC3339 timestamp of when the export was generated",7878
"format": "datetime",7979
"type": "string"8080
},8181
"holdDid": {8282
"description": "DID of this hold service",8383
"format": "did",8484
"type": "string"8585
},8686
"isCaptain": {8787
"description": "Whether the user is the captain (owner) of this hold",8888
"type": "boolean"8989
},9090
"layerRecords": {9191
"description": "Layer records uploaded by the user",9292
"items": {9393
"ref": "#layerExport",9494
"type": "ref"9595
},9696
"type": "array"9797
},9898
"statsRecords": {9999
"description": "Repository stats records owned by the user",100100
"items": {101101
"ref": "#statsExport",102102
"type": "ref"103103
},104104
"type": "array"105105
},106106
"userDid": {107107
"description": "DID of the user whose data was exported",108108
"format": "did",109109
"type": "string"110110
}111111
},112112
"required": [113113
"exportedAt",114114
"holdDid",115115
"userDid",116116
"isCaptain",117117
"layerRecords",118118
"statsRecords",119119
"blueskyPosts"120120
],121121
"type": "object"122122
}123123
},124124
"parameters": {125125
"properties": {},126126
"type": "params"127127
},128128
"type": "query"129129
},130130
"postExport": {131131
"properties": {132132
"createdAt": {133133
"format": "datetime",134134
"type": "string"135135
},136136
"text": {137137
"maxGraphemes": 3000,138138
"maxLength": 30000,139139
"type": "string"140140
},141141
"uri": {142142
"format": "at-uri",143143
"type": "string"144144
}145145
},146146
"type": "object"147147
},148148
"statsExport": {149149
"properties": {150150
"lastPull": {151151
"format": "datetime",152152
"type": "string"153153
},154154
"lastPush": {155155
"format": "datetime",156156
"type": "string"157157
},158158
"pullCount": {159159
"type": "integer"160160
},161161
"pushCount": {162162
"type": "integer"163163
},164164
"repository": {165165
"maxLength": 256,166166
"type": "string"167167
},168168
"updatedAt": {169169
"format": "datetime",170170
"type": "string"171171
}172172
},173173
"type": "object"174174
}175175
},176176
"id": "io.atcr.hold.exportUserData",177177
"lexicon": 1178178
}