API Overview¶
The BinDist API is a RESTful API that uses JSON for request and response bodies.
Base URL¶
Authentication¶
All endpoints require API key authentication. See Authentication for details.
Response Format¶
All responses follow this format:
Success Response¶
Error Response¶
Common Error Codes¶
| Code | HTTP Status | Description |
|---|---|---|
UNAUTHORIZED |
401 | Missing or invalid API key |
FORBIDDEN |
403 | Insufficient permissions |
NOT_FOUND |
404 | Resource not found |
VALIDATION_ERROR |
400 | Invalid request parameters |
QUOTA_EXCEEDED |
413 | Storage quota exceeded |
INTERNAL_ERROR |
500 | Server error |
Pagination¶
List endpoints support cursor-based pagination:
Request Parameters:
| Parameter | Type | Description |
|---|---|---|
limit |
number | Maximum items to return (default: 50, max: 100) |
cursor |
string | Cursor for next page |
Response:
{
"success": true,
"data": {
"items": [...],
"pagination": {
"hasMore": true,
"nextCursor": "eyJsYXN0S2V5Ijp7..."
}
}
}
To fetch the next page, include the cursor parameter:
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.bindist.eu/v1/applications?cursor=eyJsYXN0S2V5Ijp7..."
Rate Limiting¶
The API uses rate limiting to ensure fair usage. Current limits:
- Standard tier: 100 requests per minute
- Premium tier: 500 requests per minute
- Enterprise tier: Unlimited
Rate limit headers are included in responses:
Endpoints¶
Customer Endpoints¶
These endpoints are available to all authenticated users:
| Method | Endpoint | Description |
|---|---|---|
| GET | /v1/applications |
List applications |
| GET | /v1/applications/{id} |
Get application |
| GET | /v1/applications/{id}/versions |
List versions |
| GET | /v1/applications/{id}/versions/{v}/files |
List version files |
| GET | /v1/applications/{id}/stats |
Get statistics |
| GET | /v1/downloads/url |
Get download URL |
| POST | /v1/downloads/share |
Create share link |
Admin Endpoints¶
These endpoints require an admin API key:
| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/management/applications |
Create application |
| DELETE | /v1/management/applications/{id} |
Delete application |
| POST | /v1/management/upload |
Upload binary |
| POST | /v1/management/upload/large-url |
Get upload URL |
| POST | /v1/management/upload/large-complete |
Complete upload |
| GET | /v1/management/customers |
List customers |
| PATCH | /v1/management/customers/{id} |
Update customer |
| POST | /v1/management/customers/{id}/apikeys |
Create API key |
| GET | /v1/activity |
List activity |