FluxA API

FluxA API as documented publicly: 16 operations. Contract generated from the documentation by API Evangelist (2026-11-04); not the provider's own document.

Operations 16

POST /agent/update Update an agent name #
POST /agent/vc/issue Issue an agent Verifiable Credential #
GET /api/mandates List agent mandates #
GET /api/mandates/agent/{mandateid} Get mandate by ID #
POST /api/mandates/create-intent Create intent mandate #
POST /api/payment-links/refunds/initiate Create a pending refund for a settled payment and get a refundUrl (valid 24 h) to pay over x402. #
POST /api/payment-links/refunds/{refundid}/cancel Cancel refund #
POST /api/payment/{paymentid} Authorize a single x402 payment #
POST /api/payouts Create payout #
POST /api/v2/payment/x402-payment Pay x402 v2 payment requirements with a mandate #
POST /refresh Refresh the login JWT #
POST /register Register an agent #
POST /verify-vc Verify an agent VC #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fluxapay-xyz:fluxapay-xyz-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fluxapay-xyz-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: FluxA API
  version: '2026-11-04'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-11-04: 16 operation(s) read from 17 public documentation page(s) (each
    operation names its page in x-source). This is not the provider''s published contract; FluxA has published no machine-readable contract that
    the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 0
    documentation: 16
    pages-with-code: 0
    pages-read: 17
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-11-04'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://docs.fluxapay.xyz/wallet/api/refunds/get-refund.html
  - https://docs.fluxapay.xyz/wallet/api/refunds/list-refunds.html
  - https://docs.fluxapay.xyz/wallet/api/payouts/create-payout.html
  - https://docs.fluxapay.xyz/wallet/api/refunds/cancel-refund.html
  - https://docs.fluxapay.xyz/wallet/api/mandates/list-mandates.html
  - https://docs.fluxapay.xyz/wallet/api/refunds/initiate-refund.html
  - https://docs.fluxapay.xyz/wallet/api/refunds/pay-refund-link.html
  - https://docs.fluxapay.xyz/wallet/api/agent-identity/verify-vc.html
  - https://docs.fluxapay.xyz/wallet/api/agent-identity/refresh-jwt.html
  - https://docs.fluxapay.xyz/wallet/api/mandates/get-mandate-by-id.html
  - https://docs.fluxapay.xyz/wallet/api/agent-identity/update-agent.html
  - https://docs.fluxapay.xyz/wallet/api/agent-identity/issue-agent-vc.html
  - https://docs.fluxapay.xyz/wallet/api/agent-identity/register-agent.html
  - https://docs.fluxapay.xyz/wallet/api/x402-payments/x402-v1-payment.html
  - https://docs.fluxapay.xyz/wallet/api/x402-payments/x402-v2-payment.html
  - https://docs.fluxapay.xyz/wallet/api/x402-payments/x402-v3-payment.html
  - https://docs.fluxapay.xyz/wallet/api/mandates/create-intent-mandate.html
servers:
- url: https://walletapi.fluxapay.xyz
paths:
  /agent/update:
    post:
      operationId: post_agent_update
      tags:
      - Agent
      summary: Update an agent name
      x-source: https://docs.fluxapay.xyz/wallet/api/agent-identity/update-agent.html
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
        description: 'Agent login JWT from /register or /refresh (not an Agent VC). Send as Authorization: Bearer <agent-jwt>.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostAgentUpdateRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostAgentUpdateResponse'
      x-evidence:
        kind: documentation
  /agent/vc/issue:
    post:
      operationId: post_agent_vc_issue
      tags:
      - Agent
      summary: Issue an agent Verifiable Credential
      x-source: https://docs.fluxapay.xyz/wallet/api/agent-identity/issue-agent-vc.html
      parameters:
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
        description: 'Agent login JWT from /register or /refresh (not an Agent VC). Send as Authorization: Bearer <agent-jwt>.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostAgentVcIssueRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostAgentVcIssueResponse'
      x-evidence:
        kind: documentation
  /api/mandates:
    get:
      operationId: get_api_mandates
      tags:
      - Api
      summary: List agent mandates
      x-source: https://docs.fluxapay.xyz/wallet/api/mandates/list-mandates.html
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMandatesResponse'
      x-evidence:
        kind: documentation
  /api/mandates/agent/{mandateid}:
    get:
      operationId: get_api_mandates_agent_mandateid
      tags:
      - Api
      summary: Get mandate by ID
      x-source: https://docs.fluxapay.xyz/wallet/api/mandates/get-mandate-by-id.html
      parameters:
      - name: mandateid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMandatesAgentMandateidResponse'
      x-evidence:
        kind: documentation
  /api/mandates/create-intent:
    post:
      operationId: post_api_mandates_create_intent
      tags:
      - Api
      summary: Create intent mandate
      description: Mandate created; awaiting the user's signature.
      x-source: https://docs.fluxapay.xyz/wallet/api/mandates/create-intent-mandate.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiMandatesCreateIntentRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiMandatesCreateIntentResponse'
      x-evidence:
        kind: documentation
  /api/payment-links/refunds:
    get:
      operationId: get_api_payment_links_refunds
      tags:
      - Api
      summary: List refunds
      x-source: https://docs.fluxapay.xyz/wallet/api/refunds/list-refunds.html
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiPaymentLinksRefundsResponse'
      x-evidence:
        kind: documentation
  /api/payment-links/refunds/initiate:
    post:
      operationId: post_api_payment_links_refunds_initiate
      tags:
      - Api
      summary: Create a pending refund for a settled payment and get a refundUrl (valid 24 h) to pay over x402.
      x-source: https://docs.fluxapay.xyz/wallet/api/refunds/initiate-refund.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPaymentLinksRefundsInitiateRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPaymentLinksRefundsInitiateResponse'
      x-evidence:
        kind: documentation
  /api/payment-links/refunds/{refundid}:
    get:
      operationId: get_api_payment_links_refunds_refundid
      tags:
      - Api
      summary: Get refund detail
      x-source: https://docs.fluxapay.xyz/wallet/api/refunds/get-refund.html
      parameters:
      - name: refundid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiPaymentLinksRefundsRefundidResponse'
      x-evidence:
        kind: documentation
  /api/payment-links/refunds/{refundid}/cancel:
    post:
      operationId: post_api_payment_links_refunds_refundid_cancel
      tags:
      - Api
      summary: Cancel refund
      x-source: https://docs.fluxapay.xyz/wallet/api/refunds/cancel-refund.html
      parameters:
      - name: refundid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPaymentLinksRefundsRefundidCancelResponse'
      x-evidence:
        kind: documentation
  /api/payment/{paymentid}:
    post:
      operationId: post_api_payment_paymentid
      tags:
      - Api
      summary: Authorize a single x402 payment
      x-source: https://docs.fluxapay.xyz/wallet/api/x402-payments/x402-v1-payment.html
      parameters:
      - name: paymentid
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPaymentPaymentidRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPaymentPaymentidResponse'
      x-evidence:
        kind: documentation
        collapsed_from: 2 example path(s) differing only at paymentId
  /api/payouts:
    post:
      operationId: post_api_payouts
      tags:
      - Api
      summary: Create payout
      x-source: https://docs.fluxapay.xyz/wallet/api/payouts/create-payout.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiPayoutsRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiPayoutsResponse'
      x-evidence:
        kind: documentation
  /api/v2/payment/x402-payment:
    post:
      operationId: post_api_v2_payment_x402_payment
      tags:
      - Api
      summary: Pay x402 v2 payment requirements with a mandate
      x-source: https://docs.fluxapay.xyz/wallet/api/x402-payments/x402-v2-payment.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiV2PaymentX402PaymentRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiV2PaymentX402PaymentResponse'
      x-evidence:
        kind: documentation
  /refresh:
    post:
      operationId: post_refresh
      tags:
      - Refresh
      summary: Refresh the login JWT
      x-source: https://docs.fluxapay.xyz/wallet/api/agent-identity/refresh-jwt.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostRefreshRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostRefreshResponse'
      x-evidence:
        kind: documentation
  /refundlink/{refundid}:
    get:
      operationId: get_refundlink_refundid
      tags:
      - Refundlink
      summary: Pay a refund link (public x402)
      x-source: https://docs.fluxapay.xyz/wallet/api/refunds/pay-refund-link.html
      parameters:
      - name: refundid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRefundlinkRefundidResponse'
      x-evidence:
        kind: documentation
  /register:
    post:
      operationId: post_register
      tags:
      - Register
      summary: Register an agent
      x-source: https://docs.fluxapay.xyz/wallet/api/agent-identity/register-agent.html
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostRegisterRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostRegisterResponse'
      x-evidence:
        kind: documentation
  /verify-vc:
    post:
      operationId: post_verify_vc
      tags:
      - Verify Vc
      summary: Verify an agent VC
      x-source: https://docs.fluxapay.xyz/wallet/api/agent-identity/verify-vc.html
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostVerifyVcRequest'
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostVerifyVcResponse'
      x-evidence:
        kind: documentation
components:
  schemas:
    PostAgentUpdateRequest:
      type: object
      properties:
        agent_name:
          type: string
          description: New non-empty display name for the agent.
      required:
      - agent_name
    PostAgentUpdateResponse:
      type: object
      properties:
        agent_id:
          type: string
          description: The authenticated agent's identifier.
        agent_name:
          type: string
          description: Updated agent display name.
        message:
          type: string
          description: Result message.
    PostAgentVcIssueRequest:
      type: object
      properties:
        challenge:
          type: string
          description: Whatever the third party gave you — a nonce, a user id, or a JSON blob. Non-empty; at most 4096 UTF-8 bytes.
        audience:
          type: string
          description: The third party's audience identifier, usually its origin. Non-empty.
        ttl_seconds:
          type: integer
          description: Lifetime of the VC in seconds. Minimum 1, maximum 86400.
      required:
      - challenge
      - audience
      - ttl_seconds
    PostAgentVcIssueResponse:
      type: object
      properties:
        vc:
          type: string
          description: The VC (an RS256 JWT with header.typ = agent-vc) to hand to the third party.
        jti:
          type: string
          description: Unique identifier for this VC.
        issued_at:
          type: integer
          description: Issuance time as a Unix timestamp (seconds).
        expires_at:
          type: integer
          description: Expiry time as a Unix timestamp (seconds).
        kid:
          type: string
          description: Key id of the signing key; matches a key in the JWKS.
        wallet_claims:
          type: string
          description: Whether the VC includes the optional wallet ownership claims. Valid values "included" "unavailable".
    GetApiMandatesResponse:
      type: object
      properties:
        status:
          type: string
          description: Always ok
        mandates:
          type: array
          description: Mandate list.
    GetApiMandatesAgentMandateidResponse:
      type: object
      properties:
        status:
          type: string
          description: Always ok
        mandate:
          type: object
          description: Mandate detail
        mandate.mandateId:
          type: string
        mandate.status:
          type: string
        mandate.naturalLanguage:
          type: string
        mandate.category:
          type: string
        mandate.currency:
          type: string
        mandate.limitAmount:
          type: string
        mandate.spentAmount:
          type: string
        mandate.pendingSpentAmount:
          type: string
        mandate.remainingAmount:
          type: string
        mandate.validFrom:
          type: string
        mandate.validUntil:
          type: string
        mandate.signedAt:
          type: string
        mandate.createdAt:
          type: string
        mandate.updatedAt:
          type: string
        mandate.signUrl:
          type: string
    PostApiMandatesCreateIntentRequest:
      type: object
      properties:
        body:
          type: object
          description: Create‑intent request.
      required:
      - body
    PostApiMandatesCreateIntentResponse:
      type: object
      properties:
        status:
          type: string
          description: Always ok.
        mandateId:
          type: string
          description: Mandate ID.
        authorizationUrl:
          type: string
          description: Link for the user to link the agent (if needed) and sign the mandate.
        expiresAt:
          type: string
          description: When authorizationUrl expires (about 6 hours). Not the mandate validity end.
        agentStatus:
          type: string
          description: Whether the agent is already linked to the wallet. Valid values "ready" "needs_wallet_authorization"
    GetApiPaymentLinksRefundsResponse:
      type: object
      properties:
        refunds:
          type: object
          description: Array of refund objects
        refundId:
          type: string
          description: Refund identifier
        refundUrl:
          type: string
          description: URL of the refund
        paymentId:
          type: integer
          description: Associated payment identifier
        linkId:
          type: string
          description: Payment link identifier
        sourceType:
          type: string
          description: Source type of the refund
        amount:
          type: string
          description: Refund amount
        currency:
          type: string
          description: Currency of the refund
        network:
          type: string
          description: Network used for the refund
        refundFrom:
          type: string
          description: Origin of the refund
        refundTo:
          type: string
          description: Destination of the refund
        status:
          type: string
          description: Current status of the refund
        refundTxHash:
          type: string
          description: Transaction hash of the refund
        refundType:
          type: string
          description: Type of the refund
        reason:
          type: string
          description: Reason for the refund
        originalAmount:
          type: string
          description: Original payment amount
        originalTxHash:
          type: string
          description: Original transaction hash
        agentName:
          type: string
          description: Name of the agent
        expiresAt:
          type: string
          description: Expiration timestamp
        createdAt:
          type: string
          description: Creation timestamp
    PostApiPaymentLinksRefundsInitiateRequest:
      type: object
      properties:
        paymentId:
          type: integer
          description: Original payment ID.
        amount:
          type: string
          description: Atomic; omit for full remaining refund.
        reason:
          type: string
          description: Reason.
      required:
      - paymentId
    PostApiPaymentLinksRefundsInitiateResponse:
      type: object
      properties:
        refundId:
          type: string
          description: Refund ID ( plr_… ).
        refundUrl:
          type: string
          description: Refund link (valid 24 h).
        paymentId:
          type: integer
          description: Original payment ID.
        amount:
          type: string
          description: Atomic.
        currency:
          type: string
        network:
          type: string
        refundFrom:
          type: string
          description: Your receiving address.
        refundTo:
          type: string
          description: Original payer.
        refundType:
          type: string
          description: Valid values "full" "partial".
        reason:
          type: string
          description: Reason.
        status:
          type: string
        expiresAt:
          type: string
          description: Refund link expiry.
        createdAt:
          type: string
          description: Created at.
    GetApiPaymentLinksRefundsRefundidResponse:
      type: object
      properties:
        refundId:
          type: string
          description: Refund ID ( plr_… ).
        refundUrl:
          type: string
          description: Refund link; set only while pending.
        paymentId:
          type: integer
          description: Original payment ID.
        linkId:
          type: string
          description: Payment Link ID; null for UPL.
        sourceType:
          type: string
          description: Valid values "payment_link" "unify_payment_link".
        amount:
          type: string
          description: Atomic.
        currency:
          type: string
        network:
          type: string
        refundFrom:
          type: string
          description: Your receiving address.
        refundTo:
          type: string
          description: Original payer.
        status:
          type: string
          description: Refund status; treat unknown values as processing. Valid values "pending" "processing" "settled" "failed" "expired" "cancelled".
        refundTxHash:
          type: string
          description: Refund transaction hash.
        refundType:
          type: string
          description: Valid values "full" "partial".
        reason:
          type: string
          description: Reason.
        originalAmount:
          type: string
          description: Original payment amount.
        originalTxHash:
          type: string
          description: Original transaction hash.
        agentName:
          type: string
          description: Initiating agent.
        expiresAt:
          type: string
          description: Refund link expiry.
        createdAt:
          type: string
          description: Created at.
    PostApiPaymentLinksRefundsRefundidCancelResponse:
      type: object
      properties:
        success:
          type: boolean
        refundId:
          type: string
        status:
          type: string
        updatedAt:
          type: string
    PostApiPaymentPaymentidRequest:
      type: object
      properties:
        scheme:
          type: string
          description: Payment scheme. Valid values "exact"
        network:
          type: string
          description: base , base-sepolia (or CAIP-2), fluxa-monetize-credits , or xrpl-mainnet (where enabled).
        amount:
          type: string
          description: Amount in atomic units.
        currency:
          type: string
          description: Currency. Valid values "USDC" "FLUXA_MONETIZE_CREDITS" "XRP" Default "USDC"
        assetAddress:
          type: string
          description: Token contract (USDC).
        payTo:
          type: string
          description: 'Recipient (for credits: monetize.fluxapay.xyz ).'
        host:
          type: string
          description: Host of the resource being paid.
        resource:
          type: string
          description: Full resource URL.
        description:
          type: string
          description: Shown to the user.
        tokenName:
          type: string
          description: EIP-712 domain name ( extra.name ).
        tokenVersion:
          type: string
          description: EIP-712 domain version ( extra.version ).
        validityWindowSeconds:
          type: integer
          description: Signature validity; default 60, clamped to 30–300. Minimum 30 Maximum 300 Default 60
        approvalId:
          type: string
          description: approvalId from a previous need_approval response, after the user approved.
        intentNaturalLanguage:
          type: string
          description: Optional suggested mandate description.
        intentCategory:
          type: string
          description: Optional suggested mandate label.
        intentLimitAmount:
          type: string
          description: Optional suggested mandate budget (atomic).
        intentValidFrom:
          type: string
          description: Optional ISO timestamp.
        intentValidUntil:
          type: string
          description: Optional ISO timestamp.
      required:
      - scheme
      - network
      - amount
      - payTo
      - host
      - resource
    PostApiPaymentPaymentidResponse:
      type: object
      properties:
        status:
          type: string
          description: ok or need_approval / need_manual_signature
        xPaymentB64:
          type: string
          description: Send as the X-Payment header when retrying the resource.
        xPayment:
          type: object
          description: Decoded X-Payment.
        paymentRecordId:
          type: integer
          description: FluxA payment record ID.
        expiresAt:
          type: integer
          description: Signature expiry (Unix seconds).
        message:
          type: string
          description: Human-readable note.
        payment_model_context:
          type: object
          description: Guidance for LLM agents.
    PostApiPayoutsRequest:
      type: object
      properties:
        payoutId:
          type: string
          description: Your idempotency key (max 128 chars).
        toAddress:
          type: string
          description: Destination EVM address (not the zero address).
        amount:
          type: string
          description: Positive integer string, atomic units (1000000 = 1 USDC).
        mandateId:
          type: string
          description: Signed USDC mandate for automatic approval.
        bizId:
          type: string
          description: Business reference; one live payout per bizId.
        network:
          type: string
          description: Network. Valid values "base" "base-sepolia" "eip155:8453" "eip155:84532" Default "base"
        currency:
          type: string
          description: Only USDC. Valid values "USDC" Default "USDC"
        assetAddress:
          type: string
          description: Must be the USDC contract for the network if provided.
        description:
          type: string
          description: Memo shown to the user (max 500 chars).
        metadata:
          type: object
          description: Your own JSON metadata.
        ttlSeconds:
          type: integer
          description: Approval window, 60–604800 seconds. Minimum 60 Maximum 604800 Default 604800
      required:
      - payoutId
      - toAddress
      - amount
    PostApiPayoutsResponse:
      type: object
      properties:
        payoutId:
          type: string
          description: Your payoutId.
        txHash:
          type: string
          description: Transaction hash once sent.
        approvalUrl:
          type: string
          description: FluxA Wallet page for this payout (share with the user when no mandate is used).
        expiresAt:
          type: integer
          description: Approval deadline (Unix seconds).
        mandateId:
          type: string
          description: Mandate used, if any.
        bizId:
          type: string
          description: Business reference.
        description:
          type: string
          description: Memo.
    PostApiV2PaymentX402PaymentRequest:
      type: object
      properties:
        mandateId:
          type: string
          description: Signed USDC mandate.
        paymentRequest:
          type: object
          description: 'x402 v2 PaymentRequired object ( x402Version: 2 ).'
        paymentRequestB64:
          type: string
          description: Base64 of the PaymentRequired object (e.g. the Payment-Required header).
        preferredAssets:
          type: array
          description: Restrict selection to these options.
      required:
      - mandateId
    PostApiV2PaymentX402PaymentResponse:
      type: object
      properties:
        status:
          type: string
          description: ok .
        paymentPayloadB64:
          type: string
          description: Base64 v2 PaymentPayload to send to the resource.
        paymentPayload:
          type: object
          description: Decoded v2 PaymentPayload.
        paymentRecordId:
          type: integer
          description: FluxA payment record ID.
        expiresAt:
          type: integer
          description: Signature expiry (Unix seconds).
    PostRefreshRequest:
      type: object
      properties:
        agent_id:
          type: string
          description: The agent_id returned at registration.
        token:
          type: string
          description: The token returned at registration.
      required:
      - agent_id
      - token
    PostRefreshResponse:
      type: object
      properties:
        jwt:
          type: string
          description: The new login JWT. Replace the old one in your secure store.
    GetRefundlinkRefundidResponse:
      type: object
      properties:
        status:
          type: string
          description: status string
        refund:
          type: object
          description: refund object
        refund.refundId:
          type: string
        refund.txHash:
          type: string
        refund.amount:
          type: string
        refund.currency:
          type: string
        refund.refundTo:
          type: string
    PostRegisterRequest:
      type: object
      properties:
        agent_name:
          type: string
          description: Human-readable name for the agent.
        client_info:
          type: string
          description: Free-form information about the client registering the agent.
    PostRegisterResponse:
      type: object
      properties:
        agent_id:
          type: string
          description: Required Unique identifier for the agent.
        token:
          type: string
          description: Required Persistent secret used with /refresh. Returned only once — store securely.
        jwt:
          type: string
          description: 'Required Short-lived login JWT (payload carries only agent_id). Send as Authorization: Bearer when calling FluxA Wallet
            APIs; renew with /refresh.'
        agent_name:
          type: string
          description: The supplied agent name, when one was provided.
        message:
          type: string
          description: Reminder that the persistent token is returned only once.
    PostVerifyVcRequest:
      type: object
      properties:
        vc:
          type: string
          description: The VC to verify.
        expected_audience:
          type: string
          description: If provided, must equal payload.aud exactly.
        expected_challenge:
          type: string
          description: If provided, must equal payload.challenge exactly.
      required:
      - vc
    PostVerifyVcResponse:
      type: object
      properties:
        valid:
          type: boolean
          description: Whether the VC is valid and all provided expectations matched.
        payload:
          type: object
          description: Decoded VC payload.
        error:
          type: string
          description: Failure reason when valid is false.
tags:
- name: Agent
- name: Api
- name: Refresh
- name: Refundlink
- name: Register
- name: Verify Vc