RetailRank API
Access comprehensive ecommerce store data programmatically
Getting Started
Get up and running with the RetailRank API in minutes
2. Make your first request
Use your API key to make authenticated requests to our endpoints.
curl -X GET "https://retailrank.com/api/v1/store?domain=tonies.com" \ -H "Authorization: Bearer YOUR_API_KEY"
Authentication
All API requests require authentication using your API key
Include your API key in the Authorization header of every request:
Authorization: Bearer YOUR_API_KEY
Note: Keep your API key secure and never expose it in client-side code.
Rate Limits
API usage limits to ensure fair usage
All API keys are limited to 360 requests per hour, regardless of your plan.
Rate limits are enforced per organization (or per user if not part of an organization). All API keys within the same organization share the same rate limit. If you exceed your limit, you'll receive a 429 status code with the message "Rate limit exceeded. Please try again later."
GET /api/v1/store
Get comprehensive data about an ecommerce store
Parameters
Parameter | Type | Required | Description |
---|---|---|---|
domain | string | Yes | The domain name to look up (e.g., "tonies.com") |
Example Request
curl -X GET "https://retailrank.com/api/v1/store?domain=tonies.com" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json"
Success Response
200 OK
when the store is found in our database{ "success": true, "data": { "domain": "https://tonies.com", "title": "tonies® - Screen-Free Audio Player for Kids | Fun & Educational Toys", "description": "tonies® offers the Toniebox, a screen-free audio player for kids! Enjoy fun, educational storytelling with Tonies audio characters to inspire creativity.", "platform": "Shopify", "rank": 682, "productCount": 619, "technologies": [ "MinMaxify", "Yotpo", "Swym", "Consentmo GDPR Compliance - Consentmo GDPR Compliance" ], "socialLinks": [ "https://www.instagram.com/tonies.us/", "https://www.facebook.com/tonies.us", "https://www.youtube.com/c/toniesUS", "https://www.pinterest.com/tonies_official/", "https://www.tiktok.com/@tonies.us" ], "iosApp": null, "androidApp": null, "lastUpdated": "2025-08-10T15:40:05.480Z" } }
Not Found Response
200 OK
when the store is not in our database{ "success": false, "data": null, "message": "This store is not in our ecommerce database" }
Error Responses
400 Bad Request
{ "error": "Domain parameter is required" }
401 Unauthorized
{ "error": "Invalid or inactive API key" }
429 Too Many Requests
{ "error": "Rate limit exceeded. Please try again later." }
Response Fields
Understanding the data returned by the API
Field | Type | Description |
---|---|---|
domain | string | The canonical domain URL |
title | string | null | The store's title |
description | string | null | The store's meta description |
platform | string | null | The ecommerce platform used (e.g., "Shopify", "WooCommerce") |
rank | number | null | The store's RetailRank rank. |
productCount | number | null | The number of products available in the store. It can be null if not available. |
technologies | string[] | List of technologies used by the store |
socialLinks | string[] | Social media URLs associated with the store |
iosApp | string | null | iOS App Store URL if available |
androidApp | string | null | Google Play Store URL if available |
lastUpdated | string | ISO 8601 timestamp of when the data was last updated |
SDKs and Code Examples
Examples in popular programming languages
JavaScript/Node.js
const response = await fetch('https://retailrank.com/api/v1/store?domain=tonies.com', { headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' } }); const data = await response.json(); console.log(data);
Python
import requests url = "https://retailrank.com/api/v1/store" headers = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" } params = {"domain": "tonies.com"} response = requests.get(url, headers=headers, params=params) data = response.json() print(data)
PHP
<?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://retailrank.com/api/v1/store?domain=tonies.com", CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => [ "Authorization: Bearer YOUR_API_KEY", "Content-Type: application/json" ], ]); $response = curl_exec($curl); curl_close($curl); $data = json_decode($response, true); var_dump($data); ?>