REST API for integrating with the Headways platform.
The Headways API allows you to programmatically interact with the platform. All endpoints require authentication via API key.
https://api.headways.ai/v1
Include your API key in the Authorization header:
curl -H "Authorization: Bearer hw_your_api_key" \
https://api.headways.ai/v1/me
API keys are managed under Settings > API Keys in the dashboard.
All errors follow a consistent format:
{
"error": {
"code": "invalid_request",
"message": "The request body is missing the required 'email' field.",
"status": 400
}
}
| Status | Code | Description |
|---|
| 400 | invalid_request | Malformed request |
| 401 | unauthorized | Missing or invalid API key |
| 403 | forbidden | Insufficient permissions |
| 404 | not_found | Resource does not exist |
| 429 | rate_limited | Too many requests |
| 500 | internal_error | Server error |
| Method | Path | Description |
|---|
GET | /me | Get the current user |
GET | /me/installs | List skills installed by this user |
| Method | Path | Description |
|---|
GET | /skills | List skills in the org |
POST | /skills | Create a new skill |
GET | /skills/:slug | Get skill details |
PATCH | /skills/:slug | Update skill metadata |
DELETE | /skills/:slug | Archive a skill |
POST | /skills/import | Import a skill from a file |
GET | /skills/:slug/draft | Get the current draft |
PATCH | /skills/:slug/draft | Update draft content |
GET | /skills/:slug/versions | List all published versions |
GET | /skills/:slug/feedback | List feedback on a skill |
POST | /skills/:slug/feedback | Submit feedback on a skill |
GET | /skills/:slug/installs | Get install count and stats |
GET | /skills/:slug/activity | Get activity log for a skill |
| Method | Path | Description |
|---|
POST | /skills/:slug/versions/:v/submit | Submit a draft version for review |
POST | /skills/:slug/versions/:v/approve | Approve a submitted version |
POST | /skills/:slug/versions/:v/reject | Reject a submitted version |
POST | /skills/:slug/versions/:v/publish | Publish an approved version |
POST | /skills/:slug/versions/:v/sample-run | Record a sample run for a version |
| Method | Path | Description |
|---|
GET | /orgs/me/protection-rules | Get org-level protection rules |
PUT | /orgs/me/protection-rules | Update org-level protection rules |
GET | /skills/:slug/protection-rules | Get skill-level protection rule overrides |
PUT | /skills/:slug/protection-rules | Update skill-level rule overrides |
| Method | Path | Description |
|---|
GET | /orgs/me/activity | Org-level audit log |
GET | /orgs/me/audit/export | Export full audit log (CSV) |
| Method | Path | Description |
|---|
GET | /insights/overview | Aggregate skill run counts |
GET | /insights/skills | Per-skill run stats |
GET | /insights/skills/:slug | Run stats for a specific skill |
| Method | Path | Description |
|---|
GET | /connections | List MCP connections for this user |
POST | /connections | Create a new MCP connection |
DELETE | /connections/:id | Remove a connection |
| Method | Path | Description |
|---|
GET | /connectors | List available connector types |