> ## Documentation Index
> Fetch the complete documentation index at: https://www.pulsarpay.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# List Charges

> Retrieve a paginated list of all charges processed by the authenticated agent. Useful for reconciliation and auditing.



## OpenAPI

````yaml GET /api/v1/agents/charges
openapi: 3.1.0
info:
  title: Pulsarpay API
  description: >-
    Pulsarpay is an automated payment infrastructure designed specifically for
    APIs and autonomous agents. It allows users to top up credits while agents
    execute charges for their services.
  version: 1.0.0
servers:
  - url: https://pulsarpay.io
    description: Production Server
security: []
paths:
  /api/v1/agents/charges:
    get:
      tags:
        - Payments
      summary: List Charges
      description: >-
        Retrieve a paginated list of all charges processed by the authenticated
        agent. Useful for reconciliation and auditing.
      operationId: listCharges
      parameters:
        - name: x-agent-key
          in: header
          required: true
          schema:
            type: string
          example: ag_live_9Uhh0NzB7ZrdWQNSAPd1nsLn
          description: The unique API key of the agent used for authentication.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
          example: 1
          description: >-
            The page number to retrieve. Used for navigating through large
            datasets.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 50
          description: Maximum number of charge records to return per page.
      responses:
        '200':
          description: Successful retrieval of the charges list.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChargeListResponse'
        '401':
          description: Unauthorized - Invalid or missing agent key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: invalid or disabled agent key
components:
  schemas:
    ChargeListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ChargeItem'
        pagination:
          $ref: '#/components/schemas/Pagination'
    Error:
      type: object
      properties:
        error:
          type: string
          example: invalid or disabled agent key
    ChargeItem:
      type: object
      properties:
        id:
          type: string
          example: cmnf6jwup00091rcvo4qevr42
          description: Unique identifier for the charge record.
        idempotencyKey:
          type: string
          example: 2207f602-c751-4b9b-98ae-456653bfe7b7
          description: >-
            The unique string provided during creation to prevent duplicate
            processing.
        amount:
          type: number
          example: 50
          description: The transaction amount in decimal format (e.g., 50.00).
        currency:
          type: string
          enum:
            - USDC
            - USD
          example: USDC
          description: The currency used for the transaction.
        description:
          type: string
          example: AI Inference Service
          description: The purpose of the charge as defined by the agent.
        status:
          type: string
          enum:
            - PENDING
            - SUCCESS
            - FAILED
            - EXPIRED
          example: FAILED
          description: The current state of the charge in its lifecycle.
        createdAt:
          type: string
          format: date-time
          example: '2026-03-31T22:20:03.217Z'
          description: Timestamp when the charge was first initialized.
    Pagination:
      type: object
      properties:
        total:
          type: integer
          example: 2
        page:
          type: integer
          example: 1
        limit:
          type: integer
          example: 50
        totalPages:
          type: integer
          example: 1

````