space.highport.manage.grantSpaceAccess
Hand bard a delegation token so it can keep reading a space. Any member may grant; the calling identity must be the token's issuer. Bard exchanges it under its own key, stores the credential, renews the notification registration when due, drains a queued receipt, and runs a head check if the space had lapsed.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | manage.highport.space |
| Indexed |
Showing version bafyreidbvvlptqgvhunon524yanqeftaac6uvtdkdbw33epxpbczzhozde. Show the latest
Checks
Validunlimited-stringdefs.main.input.schema.properties.delegationTokenNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Hand bard a delegation token so it can keep reading a space. Any member may grant; the calling identity must be the token's issuer. Bard exchanges it under its own key, stores the credential, renews the notification registration when due, drains a queued receipt, and runs a head check if the space had lapsed.",
"errors": [
{
"description": "Bard is not connected to that space; call connectSpace first.",
"name": "SpaceNotFound"
},
{
"description": "The delegation token's issuer is not the calling identity.",
"name": "GrantIssuerMismatch"
},
{
"description": "The delegation token is past its lifetime.",
"name": "GrantExpired"
},
{
"description": "The space host refused the exchange.",
"name": "GrantRefused"
},
{
"description": "The space's app access does not admit bard.",
"name": "AppNotAllowed"
},
{
"description": "Space support is disabled on this deployment.",
"name": "SpacesDisabled"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"delegationToken": {
"description": "A delegation token minted by the calling identity for this space; spent immediately and never stored.",
"type": "string"
},
"space": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"space",
"delegationToken"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"accessExpiresAt": {
"description": "When the credential bard now holds expires.",
"format": "datetime",
"type": "string"
},
"drained": {
"description": "Queued notification receipts turned into sync jobs by this grant.",
"type": "integer"
},
"registrationExpiresAt": {
"description": "When bard's notification registration at the space host expires.",
"format": "datetime",
"type": "string"
}
},
"required": [
"accessExpiresAt",
"drained"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "space.highport.manage.grantSpaceAccess",
"lexicon": 1
}