openapi: 3.0.1 info: title: Monta Public Authentication Wallet Transactions API description: 'The Monta Public API lets developers connect to the Monta EV-charging platform to read charge points, start and stop charges (charging sessions), inspect EVSE availability and pricing, and read wallet transactions. Authentication uses OAuth2 client-credentials: exchange a clientId and clientSecret for a short-lived bearer access token (and a longer-lived refresh token) and send it as a Bearer token on each request.' termsOfService: https://monta.com/en/terms-conditions/ contact: name: Monta Support url: https://docs.public-api.monta.com/ version: '2023-09-14' servers: - url: https://public-api.monta.com/api/v1 description: Monta Public API production security: - bearerAuth: [] tags: - name: Wallet Transactions paths: /wallet-transactions: get: operationId: listWalletTransactions tags: - Wallet Transactions summary: List wallet transactions. description: 'Returns a paginated list of wallet transactions. Required scope: `wallet-transactions`.' security: - bearerAuth: [] parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PerPage' responses: '200': description: A paginated list of wallet transactions. content: application/json: schema: $ref: '#/components/schemas/WalletTransactionList' /wallet-transactions/{id}: get: operationId: getWalletTransaction tags: - Wallet Transactions summary: Get a single wallet transaction. description: 'Returns a single wallet transaction by its identifier. Required scope: `wallet-transactions`.' security: - bearerAuth: [] parameters: - name: id in: path required: true schema: type: integer format: int64 responses: '200': description: A wallet transaction. content: application/json: schema: $ref: '#/components/schemas/WalletTransaction' '404': description: Wallet transaction not found. /personal-wallet: get: operationId: getPersonalWallet tags: - Wallet Transactions summary: Get the personal wallet. description: 'Returns the personal wallet for the authenticated user. Required scope: `wallet-transactions`.' security: - bearerAuth: [] responses: '200': description: The personal wallet. content: application/json: schema: $ref: '#/components/schemas/Wallet' components: schemas: WalletTransactionList: type: object properties: data: type: array items: $ref: '#/components/schemas/WalletTransaction' pagination: $ref: '#/components/schemas/Pagination' Wallet: type: object properties: id: type: integer format: int64 balance: type: number format: double currency: type: string WalletTransaction: type: object properties: id: type: integer format: int64 amount: type: number format: double currency: type: string type: type: string createdAt: type: string format: date-time Pagination: type: object properties: page: type: integer format: int32 perPage: type: integer format: int32 total: type: integer format: int64 parameters: PerPage: name: perPage in: query description: Number of items per page (between 1 and 100, default 10). required: false schema: type: integer format: int32 default: 10 minimum: 1 maximum: 100 Page: name: page in: query description: Page number to retrieve (starts with 0). required: false schema: type: integer format: int32 default: 0 securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth2 client-credentials bearer token obtained from POST /auth/token.