io.atcr.hold.exportUserData

atcr.io

{
  "id": "io.atcr.hold.exportUserData",
  "defs": {
    "main": {
      "type": "query",
      "errors": [
        {
          "name": "AuthRequired"
        }
      ],
      "output": {
        "schema": {
          "type": "object",
          "required": [
            "exportedAt",
            "holdDid",
            "userDid",
            "isCaptain",
            "layerRecords",
            "statsRecords",
            "blueskyPosts"
          ],
          "properties": {
            "holdDid": {
              "type": "string",
              "format": "did",
              "description": "DID of this hold service"
            },
            "userDid": {
              "type": "string",
              "format": "did",
              "description": "DID of the user whose data was exported"
            },
            "isCaptain": {
              "type": "boolean",
              "description": "Whether the user is the captain (owner) of this hold"
            },
            "crewRecord": {
              "ref": "#crewExport",
              "type": "ref",
              "description": "User's crew record (if they are a crew member)"
            },
            "exportedAt": {
              "type": "string",
              "format": "datetime",
              "description": "RFC3339 timestamp of when the export was generated"
            },
            "blueskyPosts": {
              "type": "array",
              "items": {
                "ref": "#postExport",
                "type": "ref"
              },
              "description": "Bluesky posts that mention the user"
            },
            "layerRecords": {
              "type": "array",
              "items": {
                "ref": "#layerExport",
                "type": "ref"
              },
              "description": "Layer records uploaded by the user"
            },
            "statsRecords": {
              "type": "array",
              "items": {
                "ref": "#statsExport",
                "type": "ref"
              },
              "description": "Repository stats records owned by the user"
            }
          }
        },
        "encoding": "application/json"
      },
      "parameters": {
        "type": "params",
        "properties": {}
      },
      "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."
    },
    "crewExport": {
      "type": "object",
      "properties": {
        "role": {
          "type": "string",
          "maxLength": 32
        },
        "tier": {
          "type": "string",
          "maxLength": 32
        },
        "addedAt": {
          "type": "string",
          "format": "datetime"
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 64
          }
        }
      }
    },
    "postExport": {
      "type": "object",
      "properties": {
        "uri": {
          "type": "string",
          "format": "at-uri"
        },
        "text": {
          "type": "string",
          "maxLength": 30000,
          "maxGraphemes": 3000
        },
        "createdAt": {
          "type": "string",
          "format": "datetime"
        }
      }
    },
    "layerExport": {
      "type": "object",
      "properties": {
        "size": {
          "type": "integer"
        },
        "digest": {
          "type": "string",
          "maxLength": 128
        },
        "manifest": {
          "type": "string",
          "format": "at-uri"
        },
        "createdAt": {
          "type": "string",
          "format": "datetime"
        },
        "mediaType": {
          "type": "string",
          "maxLength": 256
        }
      }
    },
    "statsExport": {
      "type": "object",
      "properties": {
        "lastPull": {
          "type": "string",
          "format": "datetime"
        },
        "lastPush": {
          "type": "string",
          "format": "datetime"
        },
        "pullCount": {
          "type": "integer"
        },
        "pushCount": {
          "type": "integer"
        },
        "updatedAt": {
          "type": "string",
          "format": "datetime"
        },
        "repository": {
          "type": "string",
          "maxLength": 256
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against io.atcr.hold.exportUserData

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:wfj5kyialpmcv2fzk6uqwsln
CID
bafyreicstoas6yz7a2qsf5shobx4olu523qqy2uc7opjaewopain7kemey
Indexed At
2026-02-13 13:56 UTC
AT-URI
at://did:plc:wfj5kyialpmcv2fzk6uqwsln/com.atproto.lexicon.schema/io.atcr.hold.exportUserData

Lexicon Garden

@