The RichAPI call log lists one row for every API call your workspace made. The log lives in the Recent Calls tab of the Usage & Credits page. Each row shows the endpoint, the time, the HTTP status, a Billable or Free badge, and the credits charged. Export CSV emails a file with one row per call for a range of up to 90 days.
This article covers the per-call log and the CSV export. For the credit formulas, the three billing models, and the GET /usage endpoint, read Tracking Credit Usage and Billing.
How to open the call log
The call log is a tab inside the Activity section of the Usage & Credits page.
Open your workspace.
Select Usage & Credits in the navigation.
Scroll to the Activity section.
Select the Recent Calls tab.
Set the date range in the picker at the top right of the page.
The page URL is /home/<workspace-slug>/usage. The log covers every API key in the workspace, not only the key you last used. Every member of the workspace can read the log and request an export. Reading the log and exporting it cost no credits.
What does each call log column mean?
The Recent Calls table shows six columns. Rows are sorted newest first.
Column | Meaning |
Endpoint | The endpoint name, shown in title case. |
Called | Relative time. Under one minute shows just now. Older calls show |
Status | The HTTP status. A green badge marks |
Billable | Billable for a call that consumed credits. Free for a call that consumed none. |
Credits | Credits charged for this one call. A Free row always shows |
Details | Expands the row. Select Details again to collapse it. |
Point at the value in the Called column to read the exact UTC timestamp of the call.
What is in the Details panel of a call?
Details expands one row of the call log into six fields. A field with no value shows an em dash.
Field | Meaning |
Latency | Elapsed milliseconds for the call, for example |
Provider | Not reported. The field always shows an em dash. |
Cache hit | Yes for a response served from cache. No for a fresh response. |
Results | The number of results the response returned. Populated for per-result endpoints. |
Your price | The dollar price of the call, to four decimal places, for example |
Job ID | The asynchronous job the call belongs to. |
Cache hit and Your price are visible only here. Neither field ships in the CSV export.
Which date ranges can the call log show?
The date range picker sits at the top right of the Usage & Credits page, beside Export CSV. The picker drives the call log, the charts, and the totals together. The default range is the last 30 days.
Preset | Range |
Today | The current day. |
Last 7 days | Today and the six days before it. |
Last 30 days | Today and the 29 days before it. |
This month | The first day of the current month through today. |
Last month | The whole previous calendar month. |
For a custom range, select a start date and an end date in the two-month calendar. A future date is not selectable.
CAUTION: A range longer than 90 days fails to load. The page shows Couldn't load usage for this range. Try again or pick a different range. Pick a shorter range.
How to search and filter the call log
The search box and the status control sit above the Recent Calls table. Both filters apply to the rows the page already loaded.
Type an endpoint name in the Search endpoint... box.
Select all, ok, or error in the status control.
Select Load more to add another 25 rows.
Control | Effect |
Search endpoint... | Keeps rows whose endpoint name contains the text. The match runs against the system name, in lower case with underscores. |
all | Keeps every row. |
ok | Keeps rows with a status from |
error | Keeps every other row, including rows with an Unknown status. |
The search matches the system name, so enrich matches Enrich Profile and Enrich Profile matches nothing. Type one word, or type the name with underscores.
How many calls does the call log show?
The call log loads at most 500 calls for the selected range. The table then shows 25 of those rows at a time.
Limit | Value |
Calls loaded per range | 500 |
Rows shown before Load more | 25 |
Rows added by Load more | 25 |
The table shows no total for the range. The search box and the status control filter only those 500 loaded rows. For the complete set of calls, export the range to CSV.
How to read a failure in the call log
A failure is a row with a red Status badge. RichAPI charges no credits for a failure, so the row also shows Free and 0 credits.
Select error in the status control to keep only failures.
Read the number in the Status badge.
Select Details to read Latency and Job ID.
Correct the request with the table below.
Send the request again.
Status | Meaning | What to do |
| The request body failed validation. | Correct the parameter that the error message names. |
| The API key is missing, wrong, or revoked. | Send a valid key in the |
| The organization has too few credits, or the team reached its monthly spend limit. | Ask an organization owner to buy credits on the Plans & Billing page, or to raise the team's spend limit. |
| Endpoint not available on your plan. This key has no access to that endpoint. | Check the key in API Keys. Check the endpoint in the catalog. |
| The endpoint name in the URL is unknown. | Correct the path. |
| The endpoint accepts | Send the request as |
| Too many requests for the rate tier. | Wait, then send the request again. |
| RichAPI failed. | Send the request again. If the failure repeats, write to [email protected]. |
| The data provider failed. | Send the request again. |
| The data provider timed out. | Send the request again. |
Unknown | RichAPI recorded no status for the call. | Match the call by time and endpoint in the CSV export. |
A row with a green status badge and a Free badge is not a failure. RichAPI records 0 credits for an asynchronous job status poll. It also records 0 credits for an email or phone lookup that found nothing. A per-result search with no base price and no results also costs 0.
How to export the call log as a CSV
The export produces one row per API call, oldest first. RichAPI builds the file in the background and emails a download link. Any member of the workspace can request an export.
Open the Usage & Credits page.
Select Export CSV at the top right.
Check the Date range field in the Export Usage dialog.
Select All data in this range, or select Filtered data.
For Filtered data, pick an Endpoint and a Billable value.
Select Export.
The dialog opens with the date range the page currently shows. Change the range inside the dialog for a different period. The dialog range and the page range are independent.
CAUTION: An export range must not exceed 90 days. The dialog counts the days, disables Export, and shows Range is <n> days — exports are limited to 90 days. Pick a shorter range.
After you select Export, a message confirms the address the file goes to. The email arrives at the account email of the person who requested the export. RichAPI takes that address from your signed-in account, so an export never goes to a typed address.
Which filters does the export apply?
The export dialog has two filters. Both filters apply only to a Filtered data export.
Filter | Values | Effect |
Endpoint | Any endpoint, or one endpoint from the catalog. | Keeps calls to that one endpoint. |
Billable | Any, Billable only, Free only. | Keeps calls that consumed credits, or calls that consumed none. |
The dialog states this rule as well: only the endpoint filter and the billable filter apply to an export. The Search endpoint... text and the all / ok / error control in the call log do not carry over. To export a single endpoint, set it in the Endpoint filter.
What is in the export email?
RichAPI sends one email for every export request, for a success and for a failure alike.
Subject on success:
Your usage export for <start> to <end> is readySubject on failure:
Your usage export for <start> to <end> could not be completedFile name:
usage_<start>_<end>.csv.gzFormat: Gzip-compressed CSV
Body: the call count, the file size, the download link, and the expiry date
Link lifetime: 7 days
WARNING: The download link is a password. Anyone who holds the link can download the file with no sign-in and no API key. Do not forward the email.
Which columns does the usage CSV contain?
The export file holds these 11 columns, in this order, with one row per API call.
CSV column | Meaning |
| The time of the call, as an ISO 8601 UTC timestamp. |
| The system name of the endpoint, for example |
| The name of the API key that sent the call. The cell is empty for a key that no longer exists. |
| The HTTP status the call returned. |
|
|
| Credits charged for this one call. |
| The asynchronous job the call belongs to. Empty for a synchronous call. |
| The correlation id for the call. Quote this value in a support request. |
| Elapsed milliseconds for the call. |
| The number of results the response returned. |
| The Enrichment Pass credits that the call used. Empty when bundle credits paid for the whole call. |
Rows run oldest first, because an export is a statement of a period. The file covers every API key in the workspace. Group by api_key_name to split the spend per key.
A cell that starts with =, +, -, @, a tab, or a carriage return arrives with a leading apostrophe. Excel and Google Sheets read such a cell as a formula, and the apostrophe marks it as text instead. The apostrophe is part of the protection, not part of your data.
Which fields does the usage export leave out?
The CSV carries the facts a customer needs to audit a charge. RichAPI leaves out three kinds of field on purpose.
Left out of the CSV | Why | Where to read it instead |
The dollar price of a call |
| Your price in the Details panel of a call log row. |
The cache-hit flag | A cached response is a successful response and costs the same, so the flag changes no charge. | Cache hit in the Details panel. |
The status-poll flag | A job status poll is always non-billable and always | The Free badge and |
credits holds the whole charge for each call. plan_credits shows the part of that charge that Enrichment Pass credits paid. At list price, multiply credits by 0.02 for the dollar value of a range.
How to reconcile the call log against an invoice
A RichAPI invoice charges for credits you bought. The call log accounts for credits you spent. Reconciliation is therefore two comparisons, not one. Read the invoice in the Stripe billing portal, which opens from Manage Payment Method on the Plans & Billing page. Only an organization owner can open the billing portal.
Read the period on the invoice.
Set the date range picker to the same first day and last day.
Read Credits Used in the Overview card.
Select Export CSV, keep the same range, and select All data in this range.
Open the emailed file and sum the
creditscolumn.Compare that sum against Credits Used. The two describe the same calls.
Multiply the sum by
0.02for the dollar value of the spend.Compare the credits the invoice added against the purchase rows in Transaction History on the Plans & Billing page.
The CSV sum and the dashboard total read the same stored rows, so a difference always has one of the causes below.
Symptom | Cause | What to do |
The CSV sum and Credits Used differ in the last decimal. | The dashboard total is rounded to two decimals. The CSV rows are not. | Trust the CSV sum. |
A day at the edge of the range is missing or extra. | RichAPI records and aggregates in UTC. A local-time day starts at a different instant. | Compare |
The invoice total does not equal the credits spent. | An invoice charges for credits bought. Credits carry over between periods. | Compare the invoice against the purchase rows in Transaction History, not against Credits Used. |
The CSV holds far more rows than the call log showed. | The call log loads at most 500 calls per range. The export holds every call. | Use the CSV for any count or any total. |
The spend is higher than one key explains. | The workspace bills every API key together. | Group the CSV by |
Many rows show | RichAPI charges only for a | Filter the CSV to |
A search cost less than the request asked for. | A per-result endpoint charges for the results returned, not the results requested. | Read |
How to fix an export that does not arrive
Symptom | Cause | What to do |
Export stays disabled. | The selected range is longer than 90 days. | Shorten the range. The dialog names the day count. |
The dialog reports too many exports already running. | RichAPI limits how many exports run at one time. | Wait 60 seconds, then request the export again. |
The email says the range holds too many calls. | One export file holds up to 10,000,000 calls. | Split the period into shorter ranges, or set the Endpoint filter. |
The email reports a failure with no reason. | The export failed while RichAPI built the file. | Request the export again. If the failure repeats, write to [email protected]. |
The download link returns "invalid or has expired". | A download link is valid for 7 days. | Request a new export. |
No email arrives at all. | The file goes to the account email of the person who requested it. | Check that address, and check the spam folder. |
The call log shows no rows. | The range holds no calls, or a filter excludes them all. | Select all in the status control and clear the search box. |
Frequently asked questions
Where do I find the RichAPI call log?
The RichAPI call log is the Recent Calls tab in the Activity section of the Usage & Credits page, at /home/<workspace-slug>/usage. The log shows one row per API call, newest first, for every API key in the workspace.
Why does my call log show only 500 calls?
The call log loads at most 500 calls for the selected date range, and shows 25 of them at a time behind a Load more button. Export the range to CSV for every call.
Why does searching the call log for an endpoint name return nothing?
The search box matches the system name of the endpoint, in lower case with underscores. enrich matches Enrich Profile, and Enrich Profile matches nothing. Type a single word, or type the name with underscores.
How long a period can I export from RichAPI?
One export covers up to 90 days. The dialog counts the days, disables the Export button, and names the day count for a longer range. Request several exports to cover a longer period.
Which columns are in the RichAPI usage CSV?
The file holds 11 columns in this order: called_at, api_name, api_key_name, status_code, billable, credits, job_id, request_id, latency_ms, result_count, plan_credits. credits holds the whole charge for each call.
Does the usage export include the dollar cost of each call?
No. credits is the charged amount. At list price, multiply credits by 0.02 for dollars, or read Your price in the Details panel of a call log row.
Can I export only failed calls?
No. The export filters are Endpoint and Billable only. Export the range with All data in this range, then filter the CSV on status_code. A failed call always carries billable = False and credits = 0.
Who receives the RichAPI usage export email?
RichAPI emails the download link to the account email of the person who requested the export. Any workspace member can request one. The link works for 7 days with no sign-in, so treat it as a password.
Related articles


