Start CLI device login
POST
/v1/auth/device/start
const url = 'https://shareout.site/v1/auth/device/start';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"expected_email":"hello@example.com"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://shareout.site/v1/auth/device/start \ --header 'Content-Type: application/json' \ --data '{ "expected_email": "hello@example.com" }'RFC-8628-style device authorization for CLI/agents. No auth required. Optional expected_email pre-selects the Google account and drives a mismatch warning on approval.
Request Body
Section titled “Request Body ” Media type application/json
object
expected_email
Email the user expects to sign in as (e.g. invite address).
string format: email
Example generated
{ "expected_email": "hello@example.com"}Responses
Section titled “ Responses ”Pending device authorization
Media type application/json
object
device_code
required
Secret held by the CLI for polling.
string
user_code
required
Short code shown in the browser (e.g. XXXX-XXXX).
string
verification_uri
required
string format: uri
verification_uri_complete
required
string format: uri
interval
required
Minimum poll interval in seconds.
integer
expires_in
required
Seconds until the code expires.
integer
Example generated
{ "device_code": "example", "user_code": "example", "verification_uri": "https://example.com", "verification_uri_complete": "https://example.com", "interval": 1, "expires_in": 1}