Credentials
Credential sets hold secret metadata used by subscriptions, actions, and other configured integrations. The HTTP API returns metadata only. Secret values are written through dedicated key-management routes and are never returned in responses.
All paths are prefixed with /api/repos/:orgName/:repoName.
POST /credentials/sets
Section titled “POST /credentials/sets”Create a credential set.
Auth: Required.
Request Body
Section titled “Request Body”| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Credential set name |
scope | string | No | "repo" or "org". Defaults to "repo". |
description | string | No | Human-readable description |
Response 201
Section titled “Response 201”{ "name": "webhook-keys", "scope": "repo", "description": "Webhook auth secrets", "keyNames": []}Errors
Section titled “Errors”| Code | Status | Description |
|---|---|---|
ALREADY_EXISTS | 409 | A credential set with this name already exists in the org |
VALIDATION_ERROR | 400 | Invalid or empty credential set name |
RATE_LIMITED | 429 | Too many credential set creation requests. Honor Retry-After before retrying. |
Example
Section titled “Example”curl -X POST https://api.warmhub.ai/api/repos/myorg/myrepo/credentials/sets \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{ "name": "webhook-keys", "scope": "repo", "description": "Webhook auth secrets" }'GET /credentials/sets
Section titled “GET /credentials/sets”List credential sets visible to the current repository.
Auth: Required.
Response 200
Section titled “Response 200”[ { "name": "webhook-keys", "scope": "repo", "description": "Webhook auth secrets", "keyNames": ["WEBHOOK_BEARER_TOKEN"], "createdAt": 1741132800000, "updatedAt": 1741132800000 }]Example
Section titled “Example”curl https://api.warmhub.ai/api/repos/myorg/myrepo/credentials/sets \ -H "Authorization: Bearer <token>"GET /credentials/sets/:name
Section titled “GET /credentials/sets/:name”Get metadata for one credential set.
Auth: Required.
Path Parameters
Section titled “Path Parameters”| Parameter | Type | Description |
|---|---|---|
name | string | Credential set name (URL-encoded) |
Response 200
Section titled “Response 200”{ "name": "webhook-keys", "scope": "repo", "description": "Webhook auth secrets", "keyNames": ["WEBHOOK_BEARER_TOKEN"], "createdAt": 1741132800000, "updatedAt": 1741132800000}Errors
Section titled “Errors”| Code | Status | Description |
|---|---|---|
NOT_FOUND | 404 | Credential set not found or not visible to this repository |
Example
Section titled “Example”curl https://api.warmhub.ai/api/repos/myorg/myrepo/credentials/sets/webhook-keys \ -H "Authorization: Bearer <token>"