Run any Skill in Manus
with one click
with one click
Run any Skill in Manus with one click
Get StartedREST API
API Documentation
Access SkillsMP Skills data programmatically through our REST API. Supports keyword search plus category, occupation, and detected Skill content-language filters.
table_of_contents.md
Authentication
Endpoints
GET /api/v1/skills/search
Search skills using keywords
| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | ✓ | Search query |
| page | number | - | Page number (default: 1) |
| limit | number | - | Items per page (default: 20, max: 100) |
| sortBy | string | - | Sort order: stars | recent (default: stars) |
| category | string | - | Filter by category slug (e.g. data-ai, devops). |
| occupation | string | - | Filter by SOC occupation slug (e.g. software-developers). |
| language | string | - | Filter by detected Skill content language. Use an ISO code such as en, zh, or ja; mul selects mixed-language content and und selects undetermined content. |
Rate Limits
- *Anonymous (no API key): 50 requests/day, 10 requests/min — keyword search only
- *Authenticated (with API key): 500 requests/day, 30 requests/min — keyword search
- *Wildcard searches (e.g. *) are not supported
Every API response includes the following headers to help you track quota usage:
| Header | Description |
|---|---|
| X-RateLimit-Daily-Limit | Your daily request limit |
| X-RateLimit-Daily-Remaining | Remaining requests for today |
Code Examples
Keyword Search
curl -X GET "https://skillsmp.com/api/v1/skills/search?q=SEO" \
-H "Authorization: Bearer sk_live_your_api_key"Search with occupation filter
curl -X GET "https://skillsmp.com/api/v1/skills/search?q=automation&occupation=software-developers&language=zh&sortBy=stars" \
-H "Authorization: Bearer sk_live_your_api_key"Error Handling
The API uses standard HTTP status codes and returns error details in JSON format.
| Error Code | HTTP | Description |
|---|---|---|
| INVALID_API_KEY | 401 | Invalid API key |
| MISSING_QUERY | 400 | Missing required query parameter |
| INVALID_OCCUPATION | 400 | Unknown occupation slug |
| INVALID_LANGUAGE | 400 | Unknown content language code |
| DAILY_QUOTA_EXCEEDED | 429 | Daily API quota exceeded |
| INTERNAL_ERROR | 500 | Internal server error |
Error Response Example:
json
{
"success": false,
"error": {
"code": "INVALID_API_KEY",
"message": "The provided API key is invalid"
}
}more.md