API Reference
REST API documentation for programmatic access to ZhenSkill
Endpoints
Base URL
All API requests should be made to:
Authentication
Most marketplace catalog endpoints are publicly accessible. Authenticated buyer and developer flows currently use the signed-in web session rather than self-issued API keys from this site.
Current Auth Model
- Buyer delivery uses the logged-in website session.
- Developer publishing uses the logged-in website session plus subscription checks.
- Managed API credentials will converge through the shared platform console later, not this main site.
Session-Based Requests
For browser-based authenticated requests, keep the session cookie and send requests with credentials.
Private Integrations
If you need a private integration path before the platform console is unified, contact support instead of relying on an in-site API key workflow.
GET /api/skills
Retrieve a list of all skills.
Request
Query Parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
category | string | Filter by category slug | - |
search | string | Search query | - |
featured | boolean | Show only featured skills | false |
sort | string | Sort by: downloads, rating, date | downloads |
limit | number | Number of results (max 100) | 20 |
offset | number | Pagination offset | 0 |
Example Request
Response
GET /api/skills/[name]
Get detailed information about a specific skill.
Request
Parameters
| Parameter | Type | Description |
|---|---|---|
name | string | Skill name (URL path parameter) |
Example Request
Response
Error Response (404)
GET /api/categories
Get all skill categories.
Request
Example Request
Response
Rate Limits
To ensure fair usage and service stability, the ZhenSkill API implements rate limiting.
Limits
| Endpoint Type | Unauthenticated | Authenticated |
|---|---|---|
| Read operations (GET) | 100 requests/hour | 1000 requests/hour |
| Write operations (POST/PUT) | N/A | 100 requests/hour |
Rate Limit Headers
Every API response includes rate limit information:
Exceeding Rate Limits
If you exceed the rate limit, you'll receive a 429 Too Many Requests response:
Error Handling
The API uses standard HTTP status codes and returns errors in a consistent format.
HTTP Status Codes
| Code | Description |
|---|---|
200 | Success |
201 | Created |
400 | Bad Request - Invalid parameters |
401 | Unauthorized - Invalid or missing API key |
403 | Forbidden - Insufficient permissions |
404 | Not Found - Resource doesn't exist |
429 | Too Many Requests - Rate limit exceeded |
500 | Internal Server Error |
503 | Service Unavailable |
Error Response Format
All errors follow this format:
Common Error Codes
| Code | Description |
|---|---|
SKILL_NOT_FOUND | Requested skill doesn't exist |
INVALID_PARAMETERS | Request parameters are invalid |
UNAUTHORIZED | Authentication required or failed |
RATE_LIMIT_EXCEEDED | Too many requests |
VALIDATION_ERROR | Input validation failed |
SDK and Libraries
Official SDKs are available for popular languages:
- JavaScript/TypeScript:
npm install @zhenskill/sdk - Python:
pip install zhenskill - Go:
go get github.com/ZhenRobotics/zhenskill-go
JavaScript Example
Webhooks (Coming Soon)
Webhook support is planned for future releases. You'll be able to subscribe to events like:
- New skill published
- Skill updated
- New review posted
- Download milestone reached
Need Help?
If you have questions about the API:
- Join our Discord community
- Check API examples on GitHub
- Report issues on GitHub