dev.cocore.devicePair.start
Begin a device-pairing flow (OAuth 2.0 device-authorization style). Returns a `deviceId` plus a short human-typable `userCode` and the `verificationUri` where a signed-in user approves the pairing. The caller then polls `dev.cocore.devicePair.poll` until approval.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | devicePair.cocore.dev |
| Indexed |
Showing version bafyreibupusaow3u5mg7pikgsaarvnfn5u2xuvizwofshi7c4hanob6pnu. Show the latest
Checks
Validunlimited-stringdefs.main.output.schema.properties.deviceIdNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.main.output.schema.properties.userCodeNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Begin a device-pairing flow (OAuth 2.0 device-authorization style). Returns a `deviceId` plus a short human-typable `userCode` and the `verificationUri` where a signed-in user approves the pairing. The caller then polls `dev.cocore.devicePair.poll` until approval.",
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"deviceId": {
"type": "string"
},
"expiresInSecs": {
"description": "Seconds until this pairing attempt expires.",
"type": "integer"
},
"pollIntervalSecs": {
"description": "Minimum seconds between poll calls.",
"type": "integer"
},
"userCode": {
"description": "Short code the user types at the verification URI.",
"type": "string"
},
"verificationUri": {
"format": "uri",
"type": "string"
}
},
"required": [
"deviceId",
"userCode",
"verificationUri",
"pollIntervalSecs",
"expiresInSecs"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "dev.cocore.devicePair.start",
"lexicon": 1
}