{
"id": "app.didpic.notification.registerPush",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"token",
"platform"
],
"properties": {
"token": {
"type": "string",
"description": "Expo push token of the form `ExponentPushToken[...]`."
},
"platform": {
"type": "string",
"knownValues": [
"ios",
"android"
]
},
"accountsOnDevice": {
"type": "array",
"items": {
"type": "string",
"format": "did"
},
"description": "DIDs the calling device currently has signed in. When provided, the server replaces all (token, *) bindings to match this list: bindings for DIDs absent from it are pruned. Must include the authenticated DID. Lets a multi-account device reconcile after an account is removed without needing the gone account's auth."
}
}
},
"encoding": "application/json"
},
"description": "Bind a device's push token to the authenticated viewer. Idempotent: re-registering the same (token, did) pair refreshes its registered_at. A single token can be bound to multiple DIDs (multi-account device); a single DID can be bound to multiple tokens (multiple devices for one account)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}