Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/workflows/validate-frontmatter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Validate frontmatter

on:
push:
branches: [main]
paths:
- "**/*.mdx"
- "scripts/validate-frontmatter.mjs"
- "package.json"
pull_request:
paths:
- "**/*.mdx"
- "scripts/validate-frontmatter.mjs"
- "package.json"

jobs:
validate:
name: Frontmatter SEO check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "20"
- name: Run frontmatter validator
run: node scripts/validate-frontmatter.mjs
142 changes: 0 additions & 142 deletions CLAUDE.md

This file was deleted.

4 changes: 2 additions & 2 deletions changelog/2026-03-20.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Documentation site launch 2026-03-20"
description: "Rendobar documentation is now live at rendobar.com/docs with a raw.ffmpeg reference, webhook guide, and MCP integration docs."
title: "Documentation site launch, 2026-03-20"
description: "Explore the initial docs launch: raw.ffmpeg reference, webhook guide, and MCP integration docs. Powered by Mintlify with an AI-optimized content layer."
icon: "sparkles"
---

Expand Down
2 changes: 2 additions & 0 deletions cli/installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -121,3 +121,5 @@ The uninstaller removes the binary and the PATH entry. Add `RENDOBAR_PURGE=1` to
- [Authentication](/cli/authentication)
- [CI/CD](/cli/ci-cd)
- [Troubleshooting](/cli/troubleshooting)

For version history and release notes, see the [changelog](https://rendobar.com/changelog/).
3 changes: 2 additions & 1 deletion cli/overview.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
title: "CLI overview"
title: "CLI overview and quickstart"
sidebarTitle: "Overview"
description: "Run FFmpeg in the cloud from your terminal. Pass real ffmpeg flags; the CLI uploads local files, runs the job, and downloads the result."
icon: "terminal"
keywords: ["rb cli", "rendobar command line", "ffmpeg cli", "cloud ffmpeg"]
Expand Down
81 changes: 61 additions & 20 deletions concepts/credits.mdx
Original file line number Diff line number Diff line change
@@ -1,30 +1,41 @@
---
title: "How credits work"
description: "Why Rendobar bills in nanodollars from a prepaid balance instead of tier-based minute quotas. The lifecycle, the tradeoff, the cost model."
title: "Credits and billing"
sidebarTitle: "Credits"
description: "Get per-job nanodollar billing from a prepaid balance. Free plan ships with $5, Pro is $9/mo. Credits never expire and failed jobs cost nothing."
icon: "coins"
---

Rendobar bills every job in nanodollars (one-billionth of a US dollar) drawn from your organization's prepaid balance. This page is the why; for the how-to (plans, balance, top-up), see [Credits & billing](/credits).
Per-job billing from a prepaid credit balance. New accounts get $5 free. Failed jobs are never charged.

## The two billing models
## Plans

Usage-metered APIs pick one:
| | Free | Pro |
|---|---|---|
| Price | $0/mo | $9/mo |
| Signup credits | $5 (one-time) | — |
| Monthly credits included | — | $5 |
| Credit-purchase bonus | — | +20% |
| Concurrent jobs | 1 | 25 |
| API requests/min | 30 | 300 |
| Max input file | 100 MB | 2 GB |
| Job timeout | 5 min | 15 min |
| Output retention | 7 days | 30 days |
| Priority queue | No | Yes |

1. **Tier-based quotas** — you buy a plan, get a bucket of minutes or operations, overage bills flat. Easy to understand, hard to price varying workloads.
2. **Credit-based nanodollars** — every job has a cost formula, the balance is prepaid, charges are per-job with sub-cent precision. Precise, composable, takes a sentence to explain.
`raw.ffmpeg`, MCP, and webhooks are on both plans. Full limits table: [Limits](/support/limits).

We picked nanodollars.
For a full pricing breakdown and plan comparison, see [rendobar.com/pricing/](https://rendobar.com/pricing/).

## Why
## Credit packs

- **Cost matches resources used.** A 30-second watermark on 1080p shouldn't cost the same as a 10-minute H.265 transcode of a 4K master. Nine decimal places of precision means the bill matches the work.
- **Prepaid means predictable budgets.** You top up when you want, jobs run only if affordable, no end-of-month surprise bill. The dashboard shows formatted dollars; the nanodollar abstraction stays internal.
$10 / $25 / $50 / $100 (or custom, $10 minimum). Pro adds **+20%** to every purchase — buy $25, get $30. Credits never expire.

## What you give up
## How it works: nanodollar billing

- **You think in dollars, not operations.** "Can I run this?" becomes "Do I have enough credits?" — not "Do I have enough quota?". Every job response shows both `cost.nanodollars` and `cost.formatted`.
- **Pricing can change.** Per-job formulas mean we can adjust pricing when underlying infra changes. When that happens, it's announced in the changelog 30 days ahead.
Every job is billed in nanodollars (one-billionth of a US dollar) drawn from your prepaid balance. This differs from tier-based quotas where you buy a plan with a bucket of minutes:

- **Cost matches resources used.** A 30-second watermark on 1080p shouldn't cost the same as a 10-minute H.265 transcode of a 4K master.
- **Prepaid means predictable budgets.** You top up when you want; jobs run only if affordable. No end-of-month surprise bill.

## Credit lifecycle

Expand All @@ -33,18 +44,48 @@ We picked nanodollars.
3. **Debit.** On success, actual cost is computed (real compute time or output duration) and atomically deducted.
4. **Refund.** Failure or cancellation never deducts. Failed jobs cost zero.

## Cost models in flight
## Cost model

`raw.ffmpeg` bills per compute second — wall-clock time FFmpeg ran your command, excluding upload/download. Typical cost: ~$0.05/min.

Before submitting, the API checks your balance covers the estimated cost. If not:

```json
{ "error": { "code": "INSUFFICIENT_CREDITS", "message": "Not enough credits for this job" } }
```

HTTP `402`. Top up at [app.rendobar.com/billing](https://app.rendobar.com/billing).

## Check your balance

```bash
curl https://api.rendobar.com/billing/balance \
-H "Authorization: Bearer rb_live_YOUR_KEY"
```

```json
{ "data": { "balance": 5000000000, "rollover": 0 } }
```

`balance` is in nanodollars (1 USD = 1,000,000,000). The dashboard shows it in dollars.

## Usage tracking

```bash
curl "https://api.rendobar.com/billing/usage?start=2026-02-01&end=2026-02-09" \
-H "Authorization: Bearer rb_live_YOUR_KEY"
```

Today only one model is live: per-compute-time for `raw.ffmpeg` (~$0.05/min). As dedicated job types ship, they'll add per-input-duration, per-output-duration, and flat-rate models — each documented on the job type's reference page.
Returns daily usage by job type: count, amount charged, and compute seconds.

## Practical advice

- **Start on Free.** $5 signup grant is enough for many hundreds of small jobs.
- **Use `rb_test_*` keys while building.** Test-mode runs the full pipeline, returns real output, doesn't deduct credits.
- **Start on Free.** $5 signup grant covers many hundreds of small jobs.
- **Use `rb_test_*` keys while building.** Test-mode runs the full pipeline, returns real output, and doesn't deduct credits.
- **Store `cost.nanodollars` from every response.** Reconcile against your monthly invoice.

## See also

- [Credits & billing](/credits) — plans, packs, top-up, dashboard
- [Job lifecycle](/concepts/job-lifecycle) — where the debit happens
- [Raw FFmpeg](/job-types/raw-ffmpeg) — the live cost model
- [Limits](/support/limits) — full quota table
- [raw.ffmpeg reference](/job-types/raw-ffmpeg) — the live cost model
2 changes: 1 addition & 1 deletion concepts/job-lifecycle.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Job lifecycle"
description: "Status transitions from waiting to complete, what triggers each one, timeouts, retries, and how to consume real-time updates."
description: "Explore job status transitions from waiting to complete, what triggers each state, timeout behavior, retries, and real-time update consumption."
sidebarTitle: "Job lifecycle"
icon: "rotate"
---
Expand Down
72 changes: 0 additions & 72 deletions credits.mdx

This file was deleted.

Loading
Loading