Download
Answers 302; the bytes come straight from object storage rather than
through this API. Follow the redirect.
Authorization
ApiKeyQueryAuthapikey in query
?apikey=<key>. Convenient in a browser or a curl one-liner, which is
how a database is usually fetched; prefer a header elsewhere.
This is the same v2 key as the other two schemes. A v1 credential is a different vocabulary and fails validation here, as it would anywhere.
ApiKeyHeaderAuthX-Api-Key in header
X-Api-Key: <key>. The same v2 key, for clients that do not set a bearer.
BearerAuthbearer token
Authorization: Bearer <key>, with a key from the console. Keys are
default-deny: each operation names the scope it needs, and an existing
key does not gain an operation until that scope is added to it.
Query parameters
idrequiredstringDatabase identifier (e.g. vpn_ip_v1, resproxy_provider_v1).
Match ^[a-zA-Z0-9_]+$ · Example vpn_ip_v1
formatrequired"csvgz" | "mmdb"Database file format.
Example mmdb
Responses
302
Follow the Location header to object storage.
400application/json
The database is not built in the requested format.
rcrequiredstringA machine-readable result code. Deliberately not an enum: a code added later must stay parseable by a client generated today.
TypeScript type
{
rc: string;
}401application/json
Missing, invalid, revoked or expired key; the key lacks the
db.download scope; or the key belongs to no active organization.
Each answers the same.
rc: UNAUTHORIZED.
rcrequiredstringA machine-readable result code. Deliberately not an enum: a code added later must stay parseable by a client generated today.
TypeScript type
{
rc: string;
}403application/json
Your organization holds no license for this database (NOT_LICENSED),
or its term has ended (LICENSE_EXPIRED); or the request comes from an
address outside the key's or its organization's allowed addresses
(IP_NOT_ALLOWED).
rc: NOT_LICENSED, LICENSE_EXPIRED, IP_NOT_ALLOWED.
rcrequiredstringA machine-readable result code. Deliberately not an enum: a code added later must stay parseable by a client generated today.
TypeScript type
{
rc: string;
}404application/json
No such database.
rc: UNKNOWN_DATASET.
rcrequiredstringA machine-readable result code. Deliberately not an enum: a code added later must stay parseable by a client generated today.
TypeScript type
{
rc: string;
}503application/json
The current build has not been published yet.
rc: NOT_AVAILABLE.
rcrequiredstringA machine-readable result code. Deliberately not an enum: a code added later must stay parseable by a client generated today.
TypeScript type
{
rc: string;
}