StarSling
CLICommands

Billing

bill and bill history — read-only budget snapshots for the open period and prior finalized invoices

View Markdown

Two read-only commands. Plan and payment changes stay in the dashboard; sling never mutates billing state.

sling bill

sling bill [--org <slug>] [--month <YYYY-MM>] [--json | --agent]

A budget snapshot for the current open billing period: runner minutes, cost, credits, amount due, per-runner-label line items, and a run-rate month-end projection.

FlagMeaning
--orgScope. Defaults to your default org.
--month <YYYY-MM>A past month, resolving to its finalized invoice. Omit for the current open period.
--json, --agentMachine mode — the /api/bill envelope on stdout, wrapped with a local block.
sling bill --org partcleda
StarSling bill — current period
Billing period · 2026-07-02 → 2026-08-02
Invoice: pending (issued when the period closes)

Runner minutes        45390.0
Amount                $396.91
Projected month-end   $848.43

RUNNER LABEL                          TIME          COST

starsling-ubuntu-24.04        41166.0 min       $329.33
starsling-ubuntu-24.04-8       4224.0 min        $67.58

Plan & payment changes live in the dashboard — this command is read-only.

Other window flags — --window, --from, --to — are rejected here. A bill covers a fixed billing period, so an arbitrary range is meaningless. Use sling usage for arbitrary ranges.

A closed month

Passing --month for a closed period resolves to its finalized invoice: a real invoice id, a status, and Credit / Amount due in place of the run-rate projection.

sling bill --month 2026-06 --org partcleda
StarSling bill — invoice
Billing period · 2026-06-02 → 2026-07-02
Invoice: in_1ToapkFSjWlUgKNBIKavWGIJ

Runner minutes        120978.0
Amount                $1055.56
Credit                −$527.78
Amount due            $0.00
Status                paid

Response fields

FieldMeaning
invoice_idOmitted for the open period; a Stripe invoice id for a finalized month.
statusopen for the current period; the Stripe status (paid, open, …) for a finalized month.
amount_usdGross billed — the Stripe subtotal for an invoice, in-house run-rate cost for the open period.
credits_usdAll reductions off the gross: a partner discount and/or the free grant.
amount_due_usdStill outstanding. $0 once an invoice is paid.
free_credit_total_usd / free_credit_remaining_usdFree orgs only — the one-time lifetime grant. Omitted otherwise.
line_itemsPer-runner-label minutes and cost.
projected_month_end_usdRun-rate projection for the open period; the finalized net billed for an invoice.

A field the org does not have — a paid org's grant fields — is omitted rather than erroring. Calls GET /api/bill.

sling bill history

sling bill history [--org <slug>] [-n <count>] [--after <invoice_id>] [--json | --agent]

Prior finalized invoices, newest first. Each carries Stripe's authoritative id, status, and amount, joined with per-label usage.

FlagMeaning
-n, --limitHow many invoices — 1 to 100, default 6.
--after <invoice_id>Cursor. Pages to invoices older than the given id; follow has_more.
--json, --agentMachine mode — { invoices, has_more } on stdout.
sling bill history --org partcleda
StarSling bill — prior invoices (newest first)

INVOICE                      PERIOD                  STATUS   RUNNER MIN     AMOUNT     CREDIT       DUE
in_1ToapkFSjWlUgKNBIKavWGIJ  2026-06-02 → 2026-07-02 paid       120978.0   $1055.56   −$527.78     $0.00
  RUNNER LABEL                     MINUTES          COST
  starsling-ubuntu-24.04          112049.0       $896.39
  starsling-ubuntu-24.04-8          8775.0       $140.40

AMOUNT is Stripe's gross (before −CREDIT); DUE is what's still outstanding ($0 once paid).

Note that --after takes an invoice id, not the opaque cursor the listing endpoints use. Calls GET /api/bill/history.

Exit codes

Both commands: 0 ok · 2 usage error · 4 not signed in · 5 control-plane failure. The human view is chrome and goes to stderr, so sling bill --json | jq is safe to pipe unconditionally. See Pricing for how the rates are set.

On this page