overlay: 1.0.0 info: title: API Evangelist enhancements — Pineapple-billing version: 1.0.0 extends: 4paradigm-openaios-billing.yaml x-generated: '2026-09-05' x-method: generated x-source: generated by the API Evangelist enrichment pipeline against the verbatim spec in openapi/_original/; adds only licence/source provenance and derived operationIds — no operation, parameter or schema is invented actions: - target: $.info description: Record the upstream licence and source, which the published spec omits. update: license: name: Apache-2.0 url: https://github.com/4paradigm/openaios-platform/blob/master/LICENSE contact: name: 4Paradigm Open Source Community url: https://github.com/4paradigm/openaios-platform x-api-evangelist-source: https://github.com/4paradigm/openaios-platform/blob/master/doc/api/billing.yaml - target: $.servers[0] description: The published server is a loopback address because OpenAIOS-Platform is self-hosted on the operator's own Kubernetes cluster; it is correct, not a placeholder. update: description: Self-hosted. Replace the loopback host with the address of your own OpenAIOS-Platform deployment; the port and path prefix are the component's shipped defaults. - target: $.paths['/account'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getAccount x-api-evangelist-operation-id: derived - target: $.paths['/account/{userid}'].post description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: postAccountByUserid x-api-evangelist-operation-id: derived - target: $.paths['/account/{userid}'].delete description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: deleteAccountByUserid x-api-evangelist-operation-id: derived - target: $.paths['/account/{userid}'].put description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: putAccountByUserid x-api-evangelist-operation-id: derived - target: $.paths['/account/{userid}/balance'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getAccountByUseridBalance x-api-evangelist-operation-id: derived - target: $.paths['/account/{userid}/balance'].post description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: postAccountByUseridBalance x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/{userid}'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getComputeunitByUserid x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/{userid}'].post description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: postComputeunitByUserid x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/{userid}'].delete description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: deleteComputeunitByUserid x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/{userid}/computeunit_id/{computeunit_id}'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getComputeunitByUseridComputeunitIdByComputeunitId x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/group/{group_name}'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getComputeunitGroupByGroupName x-api-evangelist-operation-id: derived - target: $.paths['/computeunit/price'].get description: Add a derived operationId; the published operation has none, which makes it unaddressable by code generators and by agents. update: operationId: getComputeunitPrice x-api-evangelist-operation-id: derived