Skip to main content
POST
Estimate Export

Credits and plans

PAYG is Pay-as-you-go. AYCE is All-you-can-eat. Estimate creates no credit hold or export job. Use Estimate to forecast the cost of a contact export after you have counted the audience and checked a free sample. Send the same filter, row cap, columns, and reveal choices you plan to send to Export.

Choose what to retrieve

Set maxRows to the number of contacts you want. Use reveal to choose which contact details you retrieve; columns controls which fields appear in the file.
  • PAYG exports add 10 credits per SmartSearch filter node, once per request. This means each semantic or lookalike node; ordinary field conditions add no search fee.
  • SmartSearch adds 0 credits on AYCE and is free on Count and View on both plans.
  • Per-request and rate limits apply to both plans, including unlimited AYCE retrieval.
Omitting reveal, or sending null, selects both email and mobile. Removing those fields from columns does not remove their reveal charges. Set reveal explicitly to control the cost.

Example: estimate 100 contacts with email

Set your API key as REVENUEBASE_API_KEY. This reuses the Count/View audience, caps the export at 100 rows, and excludes mobile charges.
Response captured from the local test API on October 13, 2026. Results can change as the dataset or account changes.
AYCE response for the same request:

Estimate, hold, and final charge

These are three different amounts: For the example above, maxRows: 100 and reveal: ["email"] require a hold of up to 200 credits. If the file contains 100 contacts but only 80 have an email, the final charge is 180 credits. With both details selected, 100 contacts and one SmartSearch node require a hold of up to 1,210 credits. If 80 have email and 20 have mobile, the final charge is 390 credits: 100 + 80 + (20 × 10) + 10.
Your balance must cover the hold, even when the expected final charge is smaller. Export returns 402 INSUFFICIENT_CREDITS if it cannot reserve that amount; it does not automatically export a smaller subset.

Keep the request within a budget

Read your balance with GET /v2/account/balance. Current unit prices are available from the free GET /v2/contact/credits/prices endpoint. For an upper bound, allow 1, 2, 11, or 12 credits per contact row according to the reveal table, plus 10 per SmartSearch node. With 200 credits and no SmartSearch nodes, an email-only export can cap at 100 rows. Using both details would cap at 16 rows. Always send a positive maxRows; 0 does not mean a zero-row export.

Errors and next step

A 503 ESTIMATE_UNAVAILABLE means the count used for the forecast timed out. Do not interpret it as a zero-credit export. You can retry after Retry-After, narrow the filter, or decide to proceed with an explicit affordable maxRows and reveal upper bound. A 422 means the request or filter needs correction. Estimate does not validate every file-format, filename, or requested-column choice; choose fields from the column catalog before starting the export. On a 429, wait for the rate-limit reset. No estimate response starts a paid job. When the choices and budget are right, send the same body to Export. Changing the filter, row cap, or reveal choices requires a new estimate.

Authorizations

X-Key
string
header
required

Body

application/json
filter
GroupNode · object | null

Audience filter, shared with Count and View. Omitted/null selects the entire dataset. Each semantic/lookalike node adds 10 credits on a paid export.

columns
string[] | null

Fields written to the file. Omitted/null uses the default set; ["*"] requests all. Removing email/mobile columns does not remove reveal charges.

format
string
default:json

File format: csv, json (default), or parquet. Does not change unit credit prices.

compression
string
default:gz

gz (default), zip, or none. Does not change unit credit prices.

maxRows
integer | null
Caps rows and credit hold

Positive row cap, up to 1,000,000. With an explicit cap, the hold assumes every selected contact detail is populated on every capped row. Omitted/null or 0 uses the maximum; 0 does not mean zero rows.

filename
string | null

Optional base filename: 1–150 letters, digits, spaces, or . _ ( ) -. The API adds the selected file/compression extension.

reveal
string[] | null
Changes credit cost

Buy email (+1 per populated value), mobile (+10), both, or neither ([]), in addition to 1 per contact row. Omitted/null buys both. Columns do not change these charges. Unselected requested fields become availability booleans.

Response

Successful Response

The response is of type Response Estimate Export V1 Exports Estimate Post · object.