Skip to main content

Wallet and billing

Current prices, wallet top-ups, and subscription options live on the pricing page and in the dashboard.
Jobo bills per delivered job, not per request — whether the jobs come from Search, Feed, Export, or Outbound delivery. Three terms cover the whole model:
  • The pay-as-you-go rate$3.00 per 1,000 jobs, prepaid from your wallet. It applies when you have no plan, and again after a plan’s included jobs are used. Accounts on their original pricing see their rate in the dashboard.
  • Included jobs — the monthly amount that comes with a Job Search plan: one pool shared across Search, Feed, Export, and Outbound.
  • Wallet — your prepaid balance, shown in dollars. On the wire, the API meters the wallet in credits: 1,000 credits = $1.00, so the pay-as-you-go rate is 3 credits per job. That definition is the one place credits are defined — every credit figure in an API header or error maps back to dollars through it.

One pool of included jobs

A Job Search plan includes a set number of jobs each month, shared by Search, Feed API, Export, and Outbound Feed. The products do not keep separate pools. Once the included jobs are used, all four continue at the pay-as-you-go rate while the wallet has funds. An Unlimited plan works differently: Feed API, managed feeds, Export, and Outbound Feed carry no per-job charge, while Search stays pay as you go. Package names and API routes are unchanged.

Metered Endpoints

These endpoint families can charge the wallet depending on your plan:

Job access

Full-text and advanced search across job listings. Search-style endpoints meter by delivered results, so a request that returns fewer records than the requested page size only bills for what was delivered.Search, Feed API, dashboard Export, and Outbound delivery draw from the same pool of included jobs, then bill at the pay-as-you-go rate.

Feed API

Cursor-paginated streams for high-volume job sync. Included jobs and the pay-as-you-go rate apply just as they do to Search. The Unlimited plan drops per-job charges on Feed and managed feeds.POST /api/jobs/feed

Geocode

Convert raw location strings into structured city, region, country, and coordinate data. Geocoding is a flat metered lookup.GET /api/locations/geocode

Auto Apply

Coming soon. The profileless, synchronous API is an invite-only beta today. Pricing will be announced at launch.POST /api/auto-apply/applications
Search, Feed, Export, and Outbound use included jobs first, then charge the wallet only for jobs beyond them. Without a Job Search plan or Unlimited plan coverage, the pay-as-you-go rate applies. Flat metered endpoints debit before work begins, and that debit is automatically refunded whenever the request ends in a 4xx / 5xx response — you only ever pay for calls that succeed.

Free Endpoints

These endpoints never charge the wallet:

Auto Apply availability

Auto Apply is an invite-only beta. Accounts without access get HTTP 403 with problem code auto_apply_not_enabled from create. Sandbox applications are capped per hour and are not billed.

Request Flow

Every metered API request goes through this pipeline before a response is returned:
1

Authenticate

The API validates your X-Api-Key header when the endpoint requires one. If the key is missing or invalid, you receive 401 Unauthorized and no wallet activity occurs.
2

Rate Limit Check

Your request is checked against the rate-limit windows for your plan. If a window is exhausted, you receive 429 Too Many Requests with a Retry-After header. Nothing is charged on rate-limited requests.
3

Included Jobs and Wallet Check

Job endpoints first apply any included jobs or Unlimited plan coverage. Only the uncovered jobs need wallet funds. If they cannot be covered, you receive 402 Payment Required with the included jobs remaining, the credits required, and your current balance.
4

Debit and Response

Metered Search and Feed responses include X-Credits-Deducted after settlement, including 0 when included jobs cover every delivered job. X-Credits-Balance appears when the wallet is touched. Unlimited-plan responses and zero-result responses may omit credit headers. A rare X-Billing-Status: Unconfirmed means the jobs were delivered but wallet settlement could not be verified; do not automatically replay that page.
See Response headers for the full inventory and exactly when each header appears.

Wire names vs customer terms

Header names, JSON field names, and enum values are frozen wire contracts — they keep their historical names even where these docs use different words. This table bridges them:

Business billing details

Stripe Checkout collects your billing address, and businesses can optionally add a company name and a VAT/GST/tax ID at checkout. Both appear on every invoice, and you can edit them later from the billing portal in the dashboard.

FAQ

Use jobo.world/pricing for public pricing and the dashboard for your wallet, subscription, and billing status.
Metered endpoints return HTTP 402 Payment Required. The response includes X-Credits-Required and X-Credits-Balance so you can decide whether to top up your wallet and retry.
No. The wallet is only charged when a metered request successfully completes and produces billable work. Rate limits, validation errors, authentication failures, and server errors never charge the wallet.
Yes. Rate limits apply per minute, per hour, and per day to protect service quality. The wallet is charged only after rate-limit checks pass. See the Rate Limits page for details.
Job Search uses one pool of included jobs across Search, Feed, Export, and Outbound, then the pay-as-you-go rate from the wallet. the Unlimited plan drops per-job charges on Feed, managed feeds, Export, and Outbound, but Search stays pay as you go. Rate limits still apply in every case.
Use the dashboard to review wallet and billing settings. You can also monitor spend programmatically by reading X-Credits-Deducted and X-Credits-Balance on metered responses.