{
"id": "dev.roe.invite",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"encrypted",
"isActive",
"createdAt"
],
"properties": {
"isActive": {
"type": "boolean",
"description": "Whether this invite is currently honoured. Inactive invites stay around for audit but don't get wired up in the route table."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"encrypted": {
"type": "string",
"maxLength": 8192,
"description": "AES-256-GCM envelope holding `{ slug, repo }` as JSON. Opaque to anyone without the server key."
}
}
},
"description": "An invitation link that grants access to a private GitHub repository. Both the URL slug and the repo name are sensitive (knowing the slug equals being granted access), so the entire payload is encrypted server-side before being written to the PDS."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}