JobFront Docs

Account types

What each kind of JobFront account means — product plan, rate tier and the data tier it carries, and how billing works. A monthly included allowance plus top-up credits. No prices; those live on jobfront.com/pricing.

An account type in JobFront is not one setting. It is three independent dimensions, and they compose freely — which is why two customers on the same named plan can behave completely differently through the API.

Product plan

Free · Entry · Premium · Enterprise. What you signed up for. Governs product features and workspace limits.

Rate tier

Default · Tier 1 · Tier 2 · Tier 3. How fast you can read it, and how much of each record you get back.

Billing mode

A monthly included allowance, plus credits you can top up. How you pay for it.

There is no data-access dimension

Every account reads the whole JobFront dataset. There used to be a fourth dimension — a data_access mode of organization or global that scoped a job-board customer to their subscribed sources — and it is gone, along with the data_access key on GET /v4/me. Every account reads the same index, so there were no longer two different things to separate. The only thing that narrows what you can see is your own blocked sources and hidden jobs.

This page is about types, not prices

What each type costs is on jobfront.com/pricing ↗. Prices change; documentation goes stale. Nothing on this page quotes a number you would have to trust.

Find out what you are

One call answers every question below, and it is free on every plan and in every billing mode:

curl https://api.jobfront.com/v4/me \
  -H "Authorization: Bearer YOUR_API_TOKEN"
{
  "organization_id": "O_abc",
  "rate_limit": 600,
  "period_seconds": 60,
  "remaining": 593,
  "rate_limit_5h": 50000,
  "period_seconds_5h": 18000,
  "remaining_5h": 49821,
  "billing_mode": "subscription",
  "fields": {
    "tier": "default",
    "jobs":    ["categories", "commitment", "created_at", "description", "..."],
    "sources": ["brand_name", "id", "industry", "jobboard_format", "..."],
    "filters": ["categories", "cbsa", "commitments", "industries", "..."],
    "facets":  ["categories", "cbsas", "commitments", "industries",
                "jobboard_formats", "levels", "types"]
  }
}

The four lists are alphabetical and complete for your tier — the "..." above is this page eliding, not the API. Read them rather than hard-coding a list: a field moving tier changes this response and nothing you would have to be told about.

Field Tells you
rate_limit / rate_limit_5h Which dimension 2 you are on, as the two window sizes rather than a tier name.
fields.tier Your data tiermin, default or max — and fields.jobs / sources / filters / facets list exactly what it includes. Ask here rather than inferring from absent keys.
billing_mode credits if your plan is metered against an allowance and balance, subscription if it is unmetered.
credit_balance Credits plans only. Omitted otherwise.

Your product plan is deliberately not in this response: it governs the dashboard product, not the API. Read it in the dashboard under Settings → Billing.

Everything that is in this response — rate tier, field tier, billing mode, and any balance — is shown together in the dashboard under API → Billing (app.jobfront.com/api/billing ↗). The two are separate purchases: changing one never changes the other.


1. Product plan

The named plan on your organization, and the one the pricing page is organised around.

Plan Who it is for
Free The default on a new organization. Explore the product and the data.
Entry The first paid tier.
Premium The mid tier.
Enterprise Custom terms, agreed with a JobFront representative rather than checked out online.

Your plan governs product features and workspace limits — how many active jobs and sources you can hold, how many collections and admin accounts, how many leads and subscribers, and which surfaces (data, hiring signals, job boards, sales agent) are switched on for you.

It is a separate axis from your API plan. An organization can be on a paid product plan with no API access at all, or hold API access as an add-on. Feature access is granted per capability rather than bundled rigidly into a plan name, so jobfront.com/pricing ↗ is the authority on what a given plan includes today.


2. Rate tier — how fast you can read it

REPORTED AS rate_limit AND rate_limit_5h

Four tiers, each carrying two independently enforced windows — a 1-minute burst floor and a 5-hour budget that is your real allowance.

Tier Per minute Per 5 hours
Default (no API plan) 60 5,000
Tier 1 60 5,000
Tier 2 600 50,000
Tier 3 6,000 500,000

Limits are enforced per organization, shared across every token it holds, so minting more tokens does not buy more requests.

Full detail — the two windows, the X-RateLimit-* headers, and how to self-throttle — is on rate limits & billing.

The same tier also sets your data tier

Your rate tier carries a data tier with it — how much of each record you get back. One plan dimension, not two to provision:

Rate tier Data tier What it adds to a job
Tier 1 (and no API plan) min Identity, status, posted location, remote flag, and the lifecycle timestamps.
Tier 2 default Adds the description, level, commitment, work model, structured locations, categories and tags.
Tier 3 max Adds compensation, the full post body, benefits and requirements, the granular workplace_details object, the whole AI enrichment set, and contacts.

Tiers are cumulative — default includes everything in min, max everything in default. GET /v4/me reports yours as fields.tier, with the exact field lists alongside it.

Field by field, on the Job object:

Tier Job fields it adds
min id · title · job_status · url_job · remote · onet_code · jobboard_format · source · created_at · created · first_seen_at · enriched_at · updated_at · verified_active_at · verified_inactive_at · source_job_id · description · post · salary · offers_visa_sponsorship · locations (the posted place — see below)
default level · commitment · internship · work_model · industry · tags · tag · responsibilities · post_language · department · workplace_details (the headline — see below)
max benefits · requirements · problems · technologies · categories · workplace_details (the full block) · locations (Census cells + coordinates) · contacts · visa_sponsorship · relocation_assistance · level_type · schedule_details · contract_details · experience_details · benefit_types · compensation_types · education_requirements · certification_requirements · security_requirements · authorization_requirements · language_requirements · other_requirements · brands · declared_details

Two fields span tiers by child, exactly as they do in the collection exports — the two ladders are one:

Field min default max
locations[] city, state, country, zip, street, text, place_name cbsa[], latitude, longitude
workplace_details model, text, travel.required, travel.text the full block (arrangements, geo, cadence, timezone, confidence, travel detail)

The max step is the large one — 24 fields — and most of it is the AI enrichment layer: the structured requirement family, the schedule / contract / experience blocks, and the visa and relocation signals. The max filters that read those fields come with it.

Jobs are what the tiers divide — companies are not

The table is about the job record. The company record is not tiered: every plan receives all 22 fields of it, wherever a company appears — company search, the single-company lookups, the related routes, the source object embedded on a job, and every autocomplete suggestion.

What is tiered on the company side is searching: ?industries=saas, ?hq_countries=… and the rest need a tier, and so do the matching facets on /v4/sources/options. Reading a company is free of tier; narrowing millions of them down to the ones you want is what a plan buys. The per-filter tiers are on Search & filters.

Same three names as the exports, on purpose

File exports have always called their payload levels min / default / max, and the API now uses the same three names for the same idea. So "contacts are a max-tier field" is one sentence that is true of an API response and an export file alike.

They remain separately configured: your data tier comes from your API plan, while an export's level is set per collection in the dashboard. One organization can be on the max API tier and still have a min export, or the reverse.

Fields outside your tier are omitted, not null — the response is self-describing about what your plan includes, and a filter your tier cannot justify is rejected with an explanation rather than silently ignored.


3. Billing mode — how you pay for it

REPORTED AS billing_mode

Your plan carries a monthly included allowance of credits, and you can top up with credit packs whenever you need more. One record returned costs one credit; discovery is free.

Mode What it means Calls stop when
credits Your plan is metered. The allowance refreshes each billing period; purchased credits sit on top and never expire. The balance reaches 0402
subscription default Unmetered — no allowance and no balance. This is what an account reads as before any API plan is applied. You exceed a rate-limit window → 429

To start, talk to your JobFront representative — begin at jobfront.com/pricing ↗. Once you are on a plan, managing it (changing tier, buying credits, cancelling, invoices) is self-serve under API → Billing in the dashboard.

subscription — unmetered

What an account reads as before an API plan has been applied to it. Nothing counts records and there is no balance to run out of; the only thing that can stop a call is a rate limit. If this is your billing_mode, the credit sections below are informational.

credits — prepaid

You buy a balance in advance, and each returned record costs 1 credit. Discovery is free, which is the point: you can always find out how much something will cost before paying for it.

Call Cost
Search or list — per page, up to 25 records 1 credit per record returned
A single job or company 1 credit
Autocomplete 1 credit flat — a type-ahead helper, not per suggestion
A count (?count=true) Free
GET /v4/me, GET /v4/usage, any …/options Free

Two protections come with prepaid mode:

  • A page is capped to what you can afford. 10 credits left and limit=25 returns 10 records, not a 402. You are never served more than you can pay for.
  • X-Credit-Balance rides on every response, and X-Credit-Low appears before you hit zero, so you can top up without polling a separate endpoint.

At 0, metered calls return 402 — but GET /v4/me, GET /v4/usage, the …/options facets and ?count=true on the list endpoints that support it keep working, so you can always inspect your account and size your next pull before topping up. (count is ignored on routes that do not return a list, and those calls are metered as usual — so at 0 they return 402 too.)

Where a balance comes from

Two sources, and they behave differently at the end of a billing period:

Included allowance Purchased credits
Arrives With each billing period, when your subscription renews When you buy a top-up pack
At period end Resets — unused allowance does not roll over Survives, until actually spent
Bought Comes with your plan Self-serve under API → Billing

Your balance is the two combined, and spending draws down the allowance first — so a pack you bought is still there next period. API → Billing shows the split, along with the history of every grant and purchase.

MCP is billed identically to /v4 — a JSON-RPC batch is charged per operation, each call is capped at 25 records, and initialize, tools/list, ping and account_usage are free. Going through MCP is never cheaper or more expensive than the equivalent HTTP calls.


Roles inside an account

Distinct from everything above: the people in your organization each have a role, and it is a permission, not a billing type.

Role Can
Admin Manage billing, API tokens, collections, sources and the other accounts in the organization.
Member Use the product within the organization's plan, without managing it.

Roles do not affect API scope or quota. Any token, created by any admin, resolves to the same organization plan.


How they combine

Three dimensions, so an account is described by a combination rather than a single word:

Shape Product plan Rate tier Billing mode
Someone evaluating the product Free Default subscription
A job board running on its own sources Entry / Premium Tier 1–2 subscription
A data customer building on the full corpus Enterprise Tier 3 subscription
A pay-as-you-go integration any Tier 1–2 credits
A high-volume enterprise pipeline Enterprise Tier 3 credits

The shapes above are illustrative combinations, not a fixed catalog — the dimensions are set independently, so anything sensible is possible.

Changing your account type

Your API tier, billing mode and balance are shown in the dashboard under API → Billing (app.jobfront.com/api/billing ↗). Organization admins can change tier, top up credits, or cancel there; enterprise terms go through your JobFront representative. (Settings → Billing is a different screen — it manages your product plan, not your API access.) Three things are worth knowing:

  • Changes propagate within about a minute — plans are cached briefly, so a new tier or mode is live across every one of your tokens within roughly 60 seconds, with no redeploy and no new credential.
  • Rotating a token does not change any of this. All of an organization's tokens share one plan, one quota and one billing mode, so a new token inherits everything immediately. See authentication.
  • Your API plan and your product plan are independent. Cancelling one leaves the other untouched, and you can hold either without the other.

For what each of these costs today, see jobfront.com/pricing ↗.