mirror of
https://github.com/openai/codex.git
synced 2026-04-24 14:45:27 +00:00
…ount_id and chatgpt_plan_type ### Summary Following up on external auth mode which was introduced here: https://github.com/openai/codex/pull/10012 Turns out some clients have a differently shaped ID token and don't have a chosen workspace (aka chatgpt_account_id) encoded in their ID token. So, let's replace `id_token` param with `chatgpt_account_id` and `chatgpt_plan_type` (optional) when initializing the external ChatGPT auth mode (`account/login/start` with `chatgptAuthTokens`). The client was able to test end-to-end with a Codex build from this branch and verified it worked!
76 lines
2.0 KiB
JSON
76 lines
2.0 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"oneOf": [
|
|
{
|
|
"properties": {
|
|
"apiKey": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"apiKey"
|
|
],
|
|
"title": "ApiKeyv2::LoginAccountParamsType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"apiKey",
|
|
"type"
|
|
],
|
|
"title": "ApiKeyv2::LoginAccountParams",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"properties": {
|
|
"type": {
|
|
"enum": [
|
|
"chatgpt"
|
|
],
|
|
"title": "Chatgptv2::LoginAccountParamsType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"title": "Chatgptv2::LoginAccountParams",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "[UNSTABLE] FOR OPENAI INTERNAL USE ONLY - DO NOT USE. The access token must contain the same scopes that Codex-managed ChatGPT auth tokens have.",
|
|
"properties": {
|
|
"accessToken": {
|
|
"description": "Access token (JWT) supplied by the client. This token is used for backend API requests and email extraction.",
|
|
"type": "string"
|
|
},
|
|
"chatgptAccountId": {
|
|
"description": "Workspace/account identifier supplied by the client.",
|
|
"type": "string"
|
|
},
|
|
"chatgptPlanType": {
|
|
"description": "Optional plan type supplied by the client.\n\nWhen `null`, Codex attempts to derive the plan type from access-token claims. If unavailable, the plan defaults to `unknown`.",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"chatgptAuthTokens"
|
|
],
|
|
"title": "ChatgptAuthTokensv2::LoginAccountParamsType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"accessToken",
|
|
"chatgptAccountId",
|
|
"type"
|
|
],
|
|
"title": "ChatgptAuthTokensv2::LoginAccountParams",
|
|
"type": "object"
|
|
}
|
|
],
|
|
"title": "LoginAccountParams"
|
|
} |