---
title: "Preview an automatic top-up rule"
method: POST
path: "/v1/billing/funding/auto-top-up/preview"
---

# Preview an automatic top-up rule

`POST /v1/billing/funding/auto-top-up/preview`

## Request

- Base URL: `https://docs.greatwait.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.greatwait.dev/v1/billing/funding/auto-top-up/preview`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer and API key in header `Greatwait-Environment` and API key in header `Greatwait-Project`

Previews one complete automatic execution-credit top-up rule without changing payment authority or contacting the payment provider. Enable and edit replace the fixed credit amount, usable-balance trigger and UTC-month gross ceiling together; disable and resume name those exact intents. The preview reports the current and proposed rule, whether authority expands, existing monthly commitments and separate recurring project fees. USD 10 below USD 2 within USD 50 is a suggested editable rule, not a platform maximum or target-balance refill.

## Request body

- object
  - `action` 'enable' | 'edit' | 'disable' | 'resume', required
  - `ceiling` object
    - `currency` 'USD', required
    - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
    - `scale` 6, required
  - `credit` object
    - `currency` 'USD', required
    - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
    - `scale` 6, required
  - `expectedRevision` integer, required
  - `triggerBelow` object
    - `currency` 'USD', required
    - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
    - `scale` 6, required

## Response `200`

Preview an automatic top-up rule

- object
  - `action` 'enable' | 'edit' | 'disable' | 'resume', required
  - `after` object, nullable, required
    - `ceiling` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
    - `credit` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
    - `triggerBelow` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
  - `before` object, nullable, required
    - `ceiling` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
    - `credit` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
    - `triggerBelow` object, required
      - `currency` 'USD', required
      - `microdollars` string, required: A canonical nonnegative integer multiple of 10,000 microdollars, no greater than 9,223,372,036,854,770,000.
      - `scale` 6, required
  - `currentPeriod` object, required
    - `end` string, required
    - `pending` object, required
      - `currency` 'USD', required
      - `microdollars` string, required
      - `scale` 6, required
    - `remaining` object, nullable, required
      - `currency` 'USD', required
      - `microdollars` string, required
      - `scale` 6, required
    - `settled` object, required
      - `currency` 'USD', required
      - `microdollars` string, required
      - `scale` 6, required
    - `start` string, required
  - `expectedRevision` integer, required
  - `expandsAuthority` boolean, required
  - `expiresAt` string, required
  - `preview` string, required
  - `subscribedProjectFees` object, required
    - `currency` 'USD', required
    - `microdollars` string, required
    - `scale` 6, required

## Other responses

- `400`: Problem document. Possible codes at this status: invalid_request.
- `401`: Problem document. Possible codes at this status: authentication_required, credential_expired, credential_revoked.
- `403`: Problem document. Possible codes at this status: scope_missing, test_to_live_escalation.
- `409`: Problem document. Possible codes at this status: project_archived, revision_conflict, state_conflict.
- `429`: Problem document. Possible codes at this status: rate_limited.
- `503`: Problem document. Possible codes at this status: capability_not_configured, service_unavailable.

---

[API](https://skmtc.dev/greatwait/apis/greatwait-v1.md) · [All operations](https://skmtc.dev/greatwait/apis/greatwait-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/greatwait/apis/greatwait-v1/revisions/6855bce23e72?raw)
