skills/interhuman-authentication/SKILL.md
Wrapper for Interhuman API POST /v1/auth endpoint. Generates short-lived bearer access tokens using API key credentials. Use when the user needs to authenticate before calling Interhuman API endpoints. Returns the exact JSON response from the API without modification.
npx skillsauth add interhumanai/skills interhuman-authenticationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Wrapper for the Interhuman API authentication endpoint that generates short-lived bearer tokens for API access.
Use this skill when:
This skill should be called first, before using interhuman-post-processing.
interhumanai.upload - For /v1/upload/analyze endpointhttps://api.interhuman.ai/v1/authapplication/jsonSend a JSON request body with key_id, key_secret, and scopes array.
curl -X POST https://api.interhuman.ai/v1/auth \
-H "Content-Type: application/json" \
-d '{
"key_id": "your_key_id",
"key_secret": "your_key_secret",
"scopes": ["interhumanai.upload"]
}'
import requests
response = requests.post(
"https://api.interhuman.ai/v1/auth",
json={
"key_id": "your_key_id",
"key_secret": "your_key_secret",
"scopes": ["interhumanai.upload"]
}
)
# Return the raw JSON response
print(response.json())
const response = await fetch("https://api.interhuman.ai/v1/auth", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
key_id: "your_key_id",
key_secret: "your_key_secret",
scopes: ["interhumanai.upload"]
})
});
const json = await response.json();
console.log(json);
The API returns a JSON object with:
Bearer{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 900,
"scope": "interhumanai.upload"
}
On error, the API returns JSON with:
200: Success400: Bad request (invalid credentials or parameters)401: Unauthorized (invalid key_id or key_secret)403: Forbidden (credentials valid but lack required scope)422: Validation error (invalid request format)500: Internal server errorAfter obtaining an access token, use it in the Authorization header for subsequent API calls:
Authorization: Bearer <access_token>
The token expires after the time specified in expires_in (typically 15 minutes). Generate a new token when it expires.
CRITICAL: This skill is a strict wrapper. You MUST:
The response should be the raw JSON object returned by the API, passed through verbatim.
development
--- name: interhuman-stream-analyze description: Connect to Interhuman v1 WebSocket stream analyze for real-time video segment analysis. Use for live streams, chunked video, WebSocket, or /v1/stream/analyze. Returns verbatim JSON event envelopes without modification. --- # Interhuman Stream Analyze (v1) Wrapper for the Interhuman API v1 WebSocket streaming endpoint that analyzes video segments in real time and returns social-intelligence events. Use **v1 only** (`/v1/stream/analyze`). Do no
development
Wrapper for Interhuman API POST /v1/upload/analyze endpoint. Analyzes completed video files and returns raw JSON responses with detected social signals. Use when the user wants to analyze a pre-recorded video file. Returns the exact JSON response from the API without modification.
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.