Loading...
Loading...
Ready-to-use code examples in Python, JavaScript, Go, and curl.
Retrieve all 32 data fields for a domain.
curl -H "X-API-Key: sk_live_YOUR_KEY" \ "https://api.storaged.io/gw/v1/domains/shopify.com"
import requests
resp = requests.get(
"https://api.storaged.io/gw/v1/domains/shopify.com",
headers={"X-API-Key": "sk_live_YOUR_KEY"}
)
data = resp.json()
print(f"Domain: {data['domain']}")
print(f"CMS: {data['cms_name']} {data['cms_version']}")
print(f"Server: {data['web_server_name']}")
print(f"Country: {data['geo_country']}")const resp = await fetch(
"https://api.storaged.io/gw/v1/domains/shopify.com",
{ headers: { "X-API-Key": "sk_live_YOUR_KEY" } }
);
const data = await resp.json();
console.log(`Domain: ${data.domain}`);
console.log(`CMS: ${data.cms_name} ${data.cms_version}`);req, _ := http.NewRequest("GET",
"https://api.storaged.io/gw/v1/domains/shopify.com", nil)
req.Header.Set("X-API-Key", "sk_live_YOUR_KEY")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))Search with multiple filters.
curl -H "X-API-Key: sk_live_YOUR_KEY" \ "https://api.storaged.io/gw/v1/search?cms=WordPress&geo_country=DE&status=200&limit=10"
import requests
resp = requests.get(
"https://api.storaged.io/gw/v1/search",
headers={"X-API-Key": "sk_live_YOUR_KEY"},
params={
"cms": "WordPress",
"geo_country": "DE",
"status": 200,
"limit": 10
}
)
results = resp.json()
print(f"Total: {results['total']} domains")
for d in results['data']:
print(f" {d['domain']} - {d['cms_name']} {d['cms_version']}")const params = new URLSearchParams({
cms: "WordPress",
geo_country: "DE",
status: "200",
limit: "10"
});
const resp = await fetch(
`https://api.storaged.io/gw/v1/search?${params}`,
{ headers: { "X-API-Key": "sk_live_YOUR_KEY" } }
);
const { data, total } = await resp.json();
console.log(`Found ${total} WordPress sites in Germany`);// Use url.Values for query parameters
params := url.Values{
"cms": {"WordPress"}, "geo_country": {"DE"},
"status": {"200"}, "limit": {"10"},
}
reqURL := "https://api.storaged.io/gw/v1/search?" + params.Encode()Look up multiple domains in one request.
curl -X POST \
-H "X-API-Key: sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"domains":["google.com","github.com","facebook.com"]}' \
"https://api.storaged.io/gw/v1/domains/batch"resp = requests.post(
"https://api.storaged.io/gw/v1/domains/batch",
headers={"X-API-Key": "sk_live_YOUR_KEY"},
json={"domains": ["google.com", "github.com", "facebook.com"]}
)
for d in resp.json()["data"]:
print(f"{d['domain']}: {d['web_server_name']} / {d['geo_country']}")const resp = await fetch(
"https://api.storaged.io/gw/v1/domains/batch",
{
method: "POST",
headers: {
"X-API-Key": "sk_live_YOUR_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
domains: ["google.com", "github.com", "facebook.com"]
})
}
);body := bytes.NewBufferString(
`{"domains":["google.com","github.com","facebook.com"]}`)
req, _ := http.NewRequest("POST",
"https://api.storaged.io/gw/v1/domains/batch", body)
req.Header.Set("X-API-Key", "sk_live_YOUR_KEY")
req.Header.Set("Content-Type", "application/json")Create an export job and download the results.
# Create export
curl -X POST \
-H "X-API-Key: sk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"filters":{"cms":"WordPress","geo_country":"DE"},"format":"csv","limit":50000}' \
"https://api.storaged.io/gw/v1/export"
# Check status (returns id from above)
curl -H "X-API-Key: sk_live_YOUR_KEY" \
"https://api.storaged.io/gw/v1/export/EXPORT_ID"
# Download when completed
curl -H "X-API-Key: sk_live_YOUR_KEY" \
"https://api.storaged.io/gw/v1/export/EXPORT_ID/download" -o export.csvimport time
# Create export
resp = requests.post(
"https://api.storaged.io/gw/v1/export",
headers={"X-API-Key": "sk_live_YOUR_KEY"},
json={
"filters": {"cms": "WordPress", "geo_country": "DE"},
"format": "csv",
"limit": 50000
}
)
export_id = resp.json()["id"]
# Poll until done
while True:
status = requests.get(
f"https://api.storaged.io/gw/v1/export/{export_id}",
headers={"X-API-Key": "sk_live_YOUR_KEY"}
).json()
if status["status"] == "completed":
break
time.sleep(5)
# Download
data = requests.get(
f"https://api.storaged.io/gw/v1/export/{export_id}/download",
headers={"X-API-Key": "sk_live_YOUR_KEY"}
)
with open("export.csv", "wb") as f:
f.write(data.content)// Create export
const resp = await fetch("https://api.storaged.io/gw/v1/export", {
method: "POST",
headers: {
"X-API-Key": "sk_live_YOUR_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
filters: { cms: "WordPress", geo_country: "DE" },
format: "csv", limit: 50000
})
});
const { id } = await resp.json();
console.log(`Export created: ${id}`);// Similar pattern: POST to create, GET to check status, GET to download