APIs Overview
API Reference Documentation
Every action performed in the user interface is fully supported by our REST API. CORS headers are enabled globally to allow programmatic downloads and metadata querying from external build scripts or CLI pipelines.
GET
List available SDK tools/packages/api/toolsRetrieve all tools with optional filtering by type/name, OS, version, and architecture. Supports paginated results.
Query Parameters
| Name | Type | Requirement | Description |
|---|---|---|---|
| name | string | OPTIONAL | Filter by category name (e.g. ndk, cmake, build-tools) |
| version | string | OPTIONAL | Filter by exact version number |
| os | string | OPTIONAL | Filter by OS compatibility (windows, macosx, linux) |
| arch | string | OPTIONAL | Filter by target CPU architecture (x86_64, arm64, x86) |
| q | string | OPTIONAL | General keyword query to search across name and version (e.g. 26.2.11394342) |
| page | integer | OPTIONAL | Page index (starts at 1, defaults to 1) |
| limit | integer | OPTIONAL | Items per page (max 100, defaults to 20) |
CURL Request Example
curl "http://localhost:3000/api/tools?name=cmake&os=linux"
JSON Response Schema
{
"success": true,
"data": [
{
"name": "cmake",
"version": "3.22.1",
"os": "linux",
"arch": "x86_64",
"downloadUrl": "https://dl.google.com/android/repository/cmake-3.22.1-linux-x86_64.zip",
"checksum": "a394e3e41e7044e1dba2e89ff5187479451eabf01fb78af6dfcb131a6481ee6620",
"sizeBytes": 82194829,
"lastUpdated": "2026-06-05T18:10:00.000Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1,
"totalPages": 1
}
}GET
Get available versions of a tool/api/tools/versionsList all unique versions available for a tool by name, optionally filtered by platform and architecture.
Query Parameters
| Name | Type | Requirement | Description |
|---|---|---|---|
| name | string | REQUIRED | Category name (e.g. ndk, cmake) |
| os | string | OPTIONAL | Filter by OS target |
| arch | string | OPTIONAL | Filter by CPU architecture |
CURL Request Example
curl "http://localhost:3000/api/tools/versions?name=ndk&os=macosx"
JSON Response Schema
{
"success": true,
"name": "ndk",
"versions": [
"26.1.10909125",
"25.2.9519653"
]
}GET
Download a tool package/api/tools/downloadLogs the download statistics and redirects the client directly to the raw Google CDN zip package.
Query Parameters
| Name | Type | Requirement | Description |
|---|---|---|---|
| name | string | REQUIRED | Name of the tool (e.g. ndk) |
| version | string | REQUIRED | Version string (e.g. 26.1.10909125) |
| os | string | REQUIRED | Target OS (windows, macosx, linux) |
| arch | string | REQUIRED | Target architecture (x86_64, arm64) |
CURL Request Example
curl -L -o "ndk.zip" "http://localhost:3000/api/tools/download?name=ndk&version=26.1.10909125&os=macosx&arch=arm64"
JSON Response Schema
HTTP/1.1 302 Found Location: https://dl.google.com/android/repository/android-ndk-r26b-darwin.zip
GET
Get download metrics & telemetry summary/api/statsReturns aggregated statistics counts grouped by name, operating system, CPU architecture, and daily download frequency.
CURL Request Example
curl "http://localhost:3000/api/stats"
JSON Response Schema
{
"success": true,
"data": {
"totalDownloads": 319,
"topTools": [
{ "_id": "ndk", "count": 124 },
{ "_id": "cmake", "count": 85 }
],
"osBreakdown": [
{ "_id": "linux", "count": 180 },
{ "_id": "macosx", "count": 95 }
],
"archBreakdown": [
{ "_id": "x86_64", "count": 210 },
{ "_id": "arm64", "count": 109 }
],
"trends": [
{ "_id": "2026-06-05", "count": 25 }
]
}
}