Files
codex/codex-rs/app-server-protocol/schema/json/v2/AppsReadResponse.json
stevenlee-oai 726b6378d2 Add an app-server API for reading app metadata (#33651)
## What changed

- Add the experimental `app/read` request for fetching metadata for up to 100
  app IDs, with optional display-only tool summaries.
- Preserve first-request order while deduplicating IDs, and report unknown or
  unauthorized apps as partial misses.
- Cache metadata by backend and ChatGPT account/workspace identity, refetch
  metadata-only entries when tools are requested, and preserve cached records
  when a backend request fails.

## Testing

- Cover request serialization, ordering, deduplication, partial misses, caching,
  tool-summary refetches, backend failures, cache isolation, and the ID limit.

GitOrigin-RevId: 55fc3281d99291e76d6c4a581e8d11569d3cb1ac
2026-07-16 17:46:36 +00:00

85 lines
1.6 KiB
JSON
Generated

{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"AppToolSummary": {
"description": "EXPERIMENTAL - metadata returned by app/read.",
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
}
},
"required": [
"description",
"name"
],
"type": "object"
},
"ConnectorMetadata": {
"description": "EXPERIMENTAL - metadata returned by app/read.",
"properties": {
"description": {
"type": [
"string",
"null"
]
},
"iconUrl": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"toolSummaries": {
"items": {
"$ref": "#/definitions/AppToolSummary"
},
"type": [
"array",
"null"
]
}
},
"required": [
"id",
"name"
],
"type": "object"
}
},
"description": "EXPERIMENTAL - app/read response.",
"properties": {
"apps": {
"items": {
"$ref": "#/definitions/ConnectorMetadata"
},
"type": "array"
},
"missingAppIds": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"apps",
"missingAppIds"
],
"title": "AppsReadResponse",
"type": "object"
}