---
title: "Top up via x402 challenge"
method: POST
path: "/api/v1/billing/topups/usdc"
tags: ["General"]
---

# Top up via x402 challenge

`POST /api/v1/billing/topups/usdc`

## Request

- Base URL: `https://botsee.io`
- URL: `https://botsee.io/api/v1/billing/topups/usdc`
- Auth: none required

Discovery call without payment headers returns 402 and does not require auth. Final paid retry requires API key (Authorization, x-api-key, or api_key query param) and supports both `payment` and `payment-signature` headers. Method-compatible with POST, PUT, PATCH, and DELETE.

## Query parameters

- `api_key` string

## Headers

- `authorization` string
- `x-api-key` string
- `payment` string
- `payment-signature` string

## Request body

- object
  - `amount_cents` integer: Amount in USD cents (250-100000, i.e., $2.50-$1000). Optional for discovery-only 402 challenge (defaults to configured discovery amount).

## Response `201`

Resource created.

- object
  - `accepts` object[]
    - `amount` string
    - `asset` string
    - `extra` object
      - `name` string
      - `version` string
    - `maxTimeoutSeconds` integer
    - `network` string
    - `payTo` string
    - `scheme` string
  - `amount_cents` integer
  - `error` object
    - `code` string
    - `message` string
  - `payment_requirements` object[]
    - `amount` string
    - `asset` string
    - `extra` object
      - `name` string
      - `version` string
    - `maxTimeoutSeconds` integer
    - `network` string
    - `payTo` string
    - `scheme` string
  - `x402Version` integer

## Other responses

- `401`: Missing, invalid, or revoked API key.
- `404`: The requested resource does not exist or is not accessible.
- `422`: Request body or parameters failed validation.
- `429`: Too many requests. Wait and retry per Retry-After header.

---

[API](https://skmtc.dev/botsee/apis/botsee-api.md) · [All operations](https://skmtc.dev/botsee/apis/botsee-api/llms.txt) · [OpenAPI document](https://skmtc.dev/botsee/apis/botsee-api/revisions/f815b844e73b?raw)
