Storage ID (raw file)
curl --request POST \
--url https://findly.icu/api/v1/search/storage-id \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general"
}
'import requests
url = "https://findly.icu/api/v1/search/storage-id"
payload = {
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
storage_id: 'a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1',
bucket: 'leaks.private.general'
})
};
fetch('https://findly.icu/api/v1/search/storage-id', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"module": "storage-id",
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general",
"file": {
"name": "storage-a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1.txt",
"bytes": 54,
"lines": 2,
"truncated": false,
"total_bytes": 54,
"text": "john.doe@example.com:hunter2\njane@example.com:letmein\n"
},
"billed": true,
"usage": {
"plan": "Professional",
"plan_expires_at": "2026-10-16T12:00:00.000Z",
"daily_quota": 500,
"used": 13,
"remaining": 487,
"resets_at": "2026-09-17T00:00:00.000Z"
}
}API reference
Storage ID (raw file)
Downloads a raw file by its storage ID and bucket. The file text (first 8 MB) comes back in JSON, or as a text/plain attachment with ?format=txt.
POST
/
api
/
v1
/
search
/
storage-id
Storage ID (raw file)
curl --request POST \
--url https://findly.icu/api/v1/search/storage-id \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general"
}
'import requests
url = "https://findly.icu/api/v1/search/storage-id"
payload = {
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
storage_id: 'a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1',
bucket: 'leaks.private.general'
})
};
fetch('https://findly.icu/api/v1/search/storage-id', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"module": "storage-id",
"storage_id": "a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1",
"bucket": "leaks.private.general",
"file": {
"name": "storage-a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1a3f1.txt",
"bytes": 54,
"lines": 2,
"truncated": false,
"total_bytes": 54,
"text": "john.doe@example.com:hunter2\njane@example.com:letmein\n"
},
"billed": true,
"usage": {
"plan": "Professional",
"plan_expires_at": "2026-10-16T12:00:00.000Z",
"daily_quota": 500,
"used": 13,
"remaining": 487,
"resets_at": "2026-09-17T00:00:00.000Z"
}
}Authorizations
bearerAuthapiKeyHeader
Authorization: Bearer fly_live_…. Takes precedence when both headers are sent.
Query Parameters
json (default) or txt. Same search, same price, different output.
Available options:
json, txt Body
application/json
128 or 129 hexadecimal characters. Whitespace and line breaks are removed first; 1,000 characters max as sent.
Maximum string length:
1000Exact bucket value.
Available options:
leaks.private.general, leaks.private, leaks.logs, leaks.public, documents.public, web.public, pastes, darknet, dns, whois, usenet, dumpster Response
Search served (billed). JSON by default; with ?format=txt, the file itself as a text/plain attachment, with X-File-Truncated and X-File-Total-Bytes.
Allowed value:
"storage-id"Available options:
leaks.private.general, leaks.private, leaks.logs, leaks.public, documents.public, web.public, pastes, darknet, dns, whois, usenet, dumpster null when the file is empty or was not found.
Show child attributes
Show child attributes
Quota of the account, after the call.
Show child attributes
Show child attributes