naftiko: 1.0.0-alpha2 info: label: Account Management OpenAPI Specification — Allowance Transactions description: 'Allowance Transactions. 3 operations. Lead operation: operations. Self-contained Naftiko capability covering one EPA business surface.' tags: - EPA - Allowance Transactions created: '2026-05-29' modified: '2026-05-29' binds: - namespace: env keys: EPA_APIKEY_KEY: EPA_APIKEY_KEY capability: consumes: - type: http namespace: cam-account-allowance-transactions baseUri: https://api.epa.gov/easey description: Account Management OpenAPI Specification — Allowance Transactions business capability. Self-contained, no shared references. authentication: type: apikey key: x-api-key value: '{{env.EPA_APIKEY_KEY}}' placement: header resources: - name: account-mgmt-allowance-transactions path: /account-mgmt/allowance-transactions operations: - name: allowanceTransactionsControllergetAllowanceTransactions method: GET description: allowanceTransactionsControllergetAllowanceTransactions inputParameters: - name: accountType in: query type: array required: false description: Type of allowance account (Facility, General, etc.). - name: accountNumber in: query type: array required: false description: The unique identification number of an account. - name: facilityId in: query type: array required: false description: The Facility ID code assigned by the Department of Energy's Energy Information Administration. The Energy Information Administration Plant ID code is also referred to as the "ORIS code", "ORISPL code" - name: stateCode in: query type: array required: false description: Two letter abbreviation for the State. - name: programCodeInfo in: query type: array required: false description: Statutory or regulatory based options for tracking and reducing air pollution emissions. - name: ownerOperator in: query type: array required: false description: The name of any company that owns an allowance account or an affected unit.The name of any company that operates an affected unit. - name: transactionBeginDate in: query type: string required: true description: Begin date for a given period of an account's allowance transaction history. - name: transactionEndDate in: query type: string required: true description: End date for a given period of an account's allowance transaction history. - name: transactionType in: query type: array required: false description: The type of allowance transaction (e.g. initial allocation, private transaction, etc.). - name: vintageYear in: query type: array required: false description: Year allowance becomes eligible for use in compliance. - name: page in: query type: number required: true description: Page number of data being requested. - name: perPage in: query type: number required: true description: Number of results per page. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: account-mgmt-allowance-transactions-attributes-applicable path: /account-mgmt/allowance-transactions/attributes/applicable operations: - name: allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes method: GET description: allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes inputParameters: - name: transactionBeginDate in: query type: string required: true description: Begin date for a given period of an account's allowance transaction history. - name: transactionEndDate in: query type: string required: true description: End date for a given period of an account's allowance transaction history. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: account-mgmt-allowance-transactions-owner-operators path: /account-mgmt/allowance-transactions/owner-operators operations: - name: allowanceTransactionsControllergetAllOwnerOperators method: GET description: allowanceTransactionsControllergetAllOwnerOperators inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: cam-account-allowance-transactions-rest port: 8080 description: REST adapter for Account Management OpenAPI Specification — Allowance Transactions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/account-mgmt/allowance-transactions name: account-mgmt-allowance-transactions description: REST surface for allowanceTransactionsControllergetAllowanceTransactions. operations: - method: GET name: allowanceTransactionsControllergetAllowanceTransactions description: allowanceTransactionsControllergetAllowanceTransactions call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllowanceTransactions with: accountType: rest.accountType accountNumber: rest.accountNumber facilityId: rest.facilityId stateCode: rest.stateCode programCodeInfo: rest.programCodeInfo ownerOperator: rest.ownerOperator transactionBeginDate: rest.transactionBeginDate transactionEndDate: rest.transactionEndDate transactionType: rest.transactionType vintageYear: rest.vintageYear page: rest.page perPage: rest.perPage outputParameters: - type: object mapping: $. - path: /v1/account-mgmt/allowance-transactions/attributes/applicable name: account-mgmt-allowance-transactions-attributes-applicable description: REST surface for allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes. operations: - method: GET name: allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes description: allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes with: transactionBeginDate: rest.transactionBeginDate transactionEndDate: rest.transactionEndDate outputParameters: - type: object mapping: $. - path: /v1/account-mgmt/allowance-transactions/owner-operators name: account-mgmt-allowance-transactions-owner-operators description: REST surface for allowanceTransactionsControllergetAllOwnerOperators. operations: - method: GET name: allowanceTransactionsControllergetAllOwnerOperators description: allowanceTransactionsControllergetAllOwnerOperators call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllOwnerOperators with: {} outputParameters: - type: object mapping: $. - type: mcp namespace: cam-account-allowance-transactions-mcp port: 9090 transport: http description: MCP adapter for Account Management OpenAPI Specification — Allowance Transactions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: allowancetransactionscontroller-getallowancetransactions description: allowancetransactionscontroller-getallowancetransactions hints: readOnly: true destructive: false idempotent: true call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllowanceTransactions with: accountType: tools.accountType accountNumber: tools.accountNumber facilityId: tools.facilityId stateCode: tools.stateCode programCodeInfo: tools.programCodeInfo ownerOperator: tools.ownerOperator transactionBeginDate: tools.transactionBeginDate transactionEndDate: tools.transactionEndDate transactionType: tools.transactionType vintageYear: tools.vintageYear page: tools.page perPage: tools.perPage outputParameters: - type: object mapping: $. - name: allowancetransactionscontroller-getallapplicableallowancetransactionsattributes description: allowancetransactionscontroller-getallapplicableallowancetransactionsattributes hints: readOnly: true destructive: false idempotent: true call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllApplicableAllowanceTransactionsAttributes with: transactionBeginDate: tools.transactionBeginDate transactionEndDate: tools.transactionEndDate outputParameters: - type: object mapping: $. - name: allowancetransactionscontroller-getallowneroperators description: allowancetransactionscontroller-getallowneroperators hints: readOnly: true destructive: false idempotent: true call: cam-account-allowance-transactions.allowanceTransactionsControllergetAllOwnerOperators with: {} outputParameters: - type: object mapping: $.