Skip to main content
Every example reads your key from FINDLY_API_KEY:

Check your key and quotas

Free: never billed, never runs a search.
usage is the IntelX request quota, breach_usage the Breach Search bucket. With jq, print what is left in each:
Keep only the matching lines and their System IDs:

Phonebook as a text file

?format=txt returns one selector per line, at the same price as JSON:
An empty result is 204 No Content with no body. --fail-with-body makes curl exit with an error on a 4xx or 5xx, so a JSON error is never mistaken for the list.

Identity Portal

Download a raw file

Pass a result’s system_id. With ?format=txt, -OJ saves the file under the name from Content-Disposition:
By storage ID and bucket instead:
A single free-text value:
Combined fields, all of which must match:

Stealer Export

Without --fail-with-body, curl writes a JSON error into a file named .zip.

Handle errors and retries

Save the body, then decide from the status code:
On a 429, wait the number of seconds in Retry-After before trying again. -i shows the headers:
Every code and 429 reason is listed in Errors.