Core concepts
Every noun in buy3 call tracking, defined in a paragraph: workspaces, campaigns, numbers, publishers, buyers, targets, routing plans, tags, reason codes, pings and books-only money.
Each term below means exactly one thing across the console, the API, webhooks and these docs. Where a term has a field name in the API, it is given in code.
Your account
Workspace
The account that owns everything else: numbers, campaigns, publishers, buyers, keys, the team and the wallet. One business is usually one workspace. Every record is scoped to a workspace, and asking the API for another workspace's record answers 404, never a hint that it exists.
Wallet
The balance platform usage is drawn from — connected minutes and number rent. It is not where your buyers' money goes. A workspace whose wallet is empty stops routing until it is funded. See Wallet.
Team
The people who can sign in to the workspace, and what each of them may do. See Team.
Supply: where calls come from
Tracking number
A phone number you rent through the platform. It always belongs to one campaign, and may also be tied to one publisher or sit in one number pool. The number a caller dialled is how the platform knows which campaign, and which source, a call belongs to.
Number pool
A set of tracking numbers shared out among the visitors to a website, for dynamic number insertion (DNI). A pool has a public key that the DNI snippet uses to ask for a number.
DNI session
One visitor's lease on one pool number. It carries the visitor's landing-page parameters — campaign, keyword, click id — so that when they call, those values arrive on the call as tags.
Publisher
A partner who sends you calls, either by advertising a number you gave them or by pinging you for a bid first. Media you run yourself has no publisher.
Lane
One publisher on one campaign. The lane is where that publisher's payout terms, caps and key live, so the same publisher can be paid differently on two campaigns. See Payout terms.
Publisher key
The credential a publisher's system uses to ping you. It is issued per lane, can require signed requests, and can be limited to a list of IP ranges. See Keys and security.
Demand: where calls go
Buyer
A company you sell calls to. A buyer owns targets and can carry caps of its own — concurrency, hourly, daily, monthly and daily revenue — that apply across all of them. Pausing a buyer pauses every target it owns.
Target
One destination a call can be sent to: a phone number, a SIP address, or a bidding endpoint that answers with a price and a destination. A target has its own revenue, duration threshold, hours, accepted states, caps and duplicate window. See Targets.
External RTB target
A target whose price is not fixed: the platform pings the buyer's endpoint with the call's details and the buyer answers with a bid. See External RTB targets.
Delivery endpoint
The record behind a phone or SIP target that holds the address itself, the caller-id policy and the ring time-out. You never create one: a target's form writes both rows in one transaction. It can carry hours and a concurrency limit of its own, and the tighter of the two applies.
Health
What the platform has observed about a destination — unknown, healthy, degraded or down — as opposed to its status, which is what somebody chose. Three consecutive failures degrade it and six mark it down. On a bidding target that also suppresses it for a minute, and every plan skips it with suppressed; on a phone or SIP target health is a warning only, and nothing is skipped unless the buyer's own equipment asks to be left alone. One success clears it. See Targets.
Routing
Campaign
One stream of calls with one set of rules. A campaign holds the settings that apply before any buyer is considered — hours, caps, the repeat-caller and anonymous-caller policies, whether calls are recorded — and what happens to a call nobody could take.
Routing plan
The campaign's ordered list of targets. Each row has a priority, a weight and optional overrides for that campaign alone. See Routing plans.
Routing mode
How the plan is put in order for a given call: priority (lowest priority number first), weighted (traffic shared by weight) or highest_bid (the best price first).
Failover
What happens when a dialled target does not answer, is busy or rejects the call: its reservation is released and the next target in the plan is dialled, until the campaign's failover budget runs out.
Unrouted
A call that ended without reaching a buyer, under one of eleven reason codes. It is still a call: it is logged, it appears in every report and it can be shown to the publisher who sent it. A call answered on your fallback forward number counts as unrouted too — an answer there is not a buyer connection.
Unrouted action
What the caller gets when the campaign wanted the call and could not place it: a hang-up, a spoken message, or a forward to a number of yours. It applies to five of the eleven unrouted reasons — a blocked, anonymous or repeat caller is refused outright instead. See The unrouted action.
Hours and caps
Hours of operation say when a campaign or target takes calls; caps say how many. Both exist at several levels and a call must pass all of them. A cap of 0 always means unlimited. See Hours and caps.
Tag
A key and a value attached to a call — utm_source, zip, age_band. Every tag records its source: publisher (sent on a ping), dni (from the visitor's session), number (set on the tracking number), system (worked out by the platform) or api (added afterwards). A value a partner supplied is never confused with one the platform measured.
Tag filter
A rule that compares a tag with a value and decides whether a target may take the call — or changes what the call is worth. A filter belongs to the campaign, so it is judged for every target on its plan. See Filters and tags.
Duplicate window
Two settings share the name. On a campaign it bounds how far back the repeat-caller policy looks; 0 means for ever. On a target it is how long after reaching that target the same caller is skipped for it with duplicate; 0 switches it off. Both count only calls that were actually answered. See Repeat and blocked callers.
Cap window
The period an hourly, daily or monthly cap counts inside. A target's, a buyer's and a lane's windows roll on UTC boundaries, whatever time zone anything else is in, and a window nobody has written to today reads as zero. See Windows roll over in UTC.
Calls
Call
One inbound call to a tracking number, from the first ring to the final books. It keeps the caller, the number, the campaign, the publisher, its tags, the buyer and target that took it, its duration and its money.
Waterfall
The call's own account of what happened to it: every gate, every target considered and why it was skipped, every dial attempt and its result. It is written while the call happens, not reconstructed afterwards. See The call waterfall.
Dial attempt
One try at one target. An attempt records who was dialled, how long it rang, how it ended and the price that was frozen for it. When failover moves on, the last attempt's price is the one the call settles at.
Reason code
A short, stable code for why something did not happen, always paired with a plain sentence. There are two families: unrouted reasons end the call (campaign_closed, no_eligible_target), and skip reasons pass over one target while the call carries on (capped, tag_filter, no_bid). Codes are never renamed, so you can build reports and alerts on them. The full list is in Reason codes.
Connected
A call is connected from the moment the buyer's leg answers — not when the caller's leg is picked up by the platform. Duration thresholds and usage are both measured from there.
Conversion
The point at which a call becomes billable to the buyer. By default that is the buyer's leg lasting at least the target's duration threshold; a buyer can also post a conversion back. See Conversions and adjustments.
Real-time bidding
Ping
A request that asks "what would you pay for this call?" before the call is sent. Publishers ping you; you ping buyers whose targets bid in real time. A ping carries the caller's state and tags, and never has to carry the caller's number.
Bid
The answer to a ping: a price, the terms it depends on (a minimum duration, say) and how long the offer stands. A bid that wins is claimed with a post, which returns where to send the call.
Ping ledger
The record of every ping in both directions — request, response, latency, outcome and reject code. You read your workspace's; each publisher reads their own. See The ping ledger.
Money
Revenue, payout and margin
Revenue is what the buyer owes you for a call. Payout is what you owe the publisher for it. Margin is the difference. All three are stored per call as whole cents.
Books-only money
Tracking calls settle on the books only. When a call converts, the platform stamps its revenue and payout so every report adds up — but no wallet is debited or credited for them, because your buyers pay you and you pay your publishers outside the platform. buy3 keeps the record; it never holds the money.
Usage
What the platform itself charges: a per-minute fee on connected talk time, counted per started minute, plus rent for each number. The rate is frozen on the call when it starts. A call that never connects costs nothing, and pings are never charged. Current rates are on the pricing page.
Integrations
Webhook
A signed HTTP request the platform sends to your server when something happens — call.connected, call.completed, target.capped. See Webhooks and the list of events.
Pixel
A URL the platform requests on an event, with values from the call filled in. It is how you tell an ad platform or a partner's tracker that a call converted. See Pixels and macros.
Macro
A placeholder of the form {{namespace.field}} — {{call.id}}, {{caller.state}}, {{tag.utm_source}} — that is replaced with the call's value when a pixel fires or a bid request is built. A macro with no value becomes an empty string. The full list is in Macros.
API key
A credential for the REST API. It acts as the workspace, never as a person, and is limited to the scopes you give it. See API keys.
Scope
What an API key is allowed to do, written resource:verb — calls:read, targets:write. A write scope includes its read, and * is everything. Each scope's description says exactly what it opens and nothing more. Creating things, launching them and re-pointing where calls go are deliberately not scopes: they are a person's acts in the console.
Activity log
A permanent record of every configuration change in the workspace: who or what made it, when, and the value before and after. Rows cannot be edited. See Activity log.
