Files
codex/codex-rs/app-server-protocol/schema/json/v2/GatewayOAuthReadResponse.json
T
smurching-oai d8c42ecf8f Add device authorization to app-server gateway OAuth (#60486)
## What changed

- Advertise `supportsDeviceAuth` in `account/gatewayOAuth/read` and accept `deviceAuth: true` in `account/gatewayOAuth/login`.
- Return a device prompt with `verificationUrl`, `userCode`, and `loginId` before approval, then notify the initiating connection of success or failure with the matching `loginId`.
- Reuse or refresh saved credentials when possible, returning `prompt: null` without another device authorization. Update protocol schemas, generated bindings, and documentation.

## Testing

Add an integration test covering the device prompt, correlated completion notification, capability reporting, and token refresh without another device grant.

GitOrigin-RevId: 6ecc38c9baadcfda3272654ed71e4aaa431421bf
2026-11-10 01:28:45 +00:00

56 lines
1.2 KiB
JSON
Generated

{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"GatewayOAuthStatus": {
"enum": [
"notReady",
"started",
"succeeded",
"failed"
],
"type": "string"
}
},
"description": "Current effective gateway policy and credential readiness; never contains credentials.",
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"providerId": {
"type": "string"
},
"providerName": {
"type": "string"
},
"required": {
"description": "Whether the selected provider uses gateway OAuth, even when already signed in.",
"type": "boolean"
},
"status": {
"anyOf": [
{
"$ref": "#/definitions/GatewayOAuthStatus"
},
{
"type": "null"
}
],
"description": "Null when the effective provider does not use gateway OAuth."
},
"supportsDeviceAuth": {
"default": false,
"description": "Whether the administrator configured a device authorization endpoint.",
"type": "boolean"
}
},
"required": [
"providerId",
"providerName",
"required"
],
"title": "GatewayOAuthReadResponse",
"type": "object"
}