generated: '2026-07-15' method: generated source: openapi/monta-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 17 by_action_class: acting: 4 connected: 13 by_consequence: write: 2 read: 13 physical: 1 safety-critical: 1 human_in_the_loop_required: 1 operations: - path: /auth/token method: post operationId: createAccessTokenWithClientCredentials x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /auth/refresh method: post operationId: createAccessTokenWithRefreshToken x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /auth/information method: get operationId: getAuthInformation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /charge-points method: get operationId: listChargePoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /charge-points/{id} method: get operationId: getChargePoint x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /afir-charge-points method: get operationId: listAfirChargePoints x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /evse/{id}/status method: get operationId: getEvseStatus x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /charges method: get operationId: listCharges x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /charges method: post operationId: startCharge x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /charges/{id} method: get operationId: getCharge x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /charges/{id}/stop method: post operationId: stopCharge x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /charges/{id}/kwh-consumption method: get operationId: getChargeKwhConsumption x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /wallet-transactions method: get operationId: listWalletTransactions x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /wallet-transactions/{id} method: get operationId: getWalletTransaction x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /personal-wallet method: get operationId: getPersonalWallet x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /open-data-locations method: get operationId: listOpenDataLocations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /detect-location method: get operationId: detectLocation x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none