{"skill":{"slug":"ai-video-maker","displayName":"AIVideomaker","summary":"Executes AIVideoMaker API workflows for text-to-video and image-to-video generation, including task creation, status polling, task details retrieval, and can...","description":"---\nname: aivideo-api-executor\ndescription: Executes AIVideoMaker API workflows for text-to-video and image-to-video generation, including task creation, status polling, task details retrieval, and cancellation. Use when users ask to generate videos via API, monitor generation progress, cancel tasks, or automate AIVideoMaker API operations.\nversion: 1.0.14\nrequires:\n  env:\n    - AIVIDEO_API_KEY\n  binaries:\n    - node\nprimaryCredential: AIVIDEO_API_KEY\n---\n\n\n\n\n# AIVideoMaker API Executor\n\n## Purpose\nProvide a production-ready execution workflow for AIVideoMaker API v1:\n- Create generation task\n- Poll task status safely\n- Fetch task details\n- Cancel submitted task\n\n## When To Use\n- User asks to call `aivideomaker.ai` API directly\n- User wants a scriptable generation workflow\n- User needs robust retry/429 handling for task queries\n\n## Required Environment\n- `AIVIDEO_API_KEY` (required) Get an API Key from [https://aivideomaker.ai](https://aivideomaker.ai) .\n- `AIVIDEO_TIMEOUT_MS` (optional, default `30000`) - Request timeout in milliseconds\n- `AIVIDEO_MAX_RETRIES` (optional, default `3`) - Max retries for idempotent read requests\n\n## Supported Actions\n1. `createGeneration`\n2. `getTask`\n3. `getStatus`\n4. `cancelTask`\n\n## Model Whitelist\n- `t2v`\n- `i2v`\n- `lv`\n- `t2v_v3`\n- `i2v_v3`\n\n## Image Input Policy\n- This skill accepts both public image URLs and `data:image/...;base64,...` for `i2v`, `lv`, and `i2v_v3`.\n- Prefer `data:image/...;base64,...` for reliability in OpenClaw environments.\n\n## Standard Workflow\n1. Validate model and payload by contract.\n2. Call `createGeneration`.\n3. Poll `getStatus` with backoff until terminal status.\n4. If `COMPLETED`, call `getTask` and return output.\n5. If `FAILED`, return failure with actionable next steps.\n\n## Error Policy\n- Normalize all responses to:\n  - `ok`, `status`, `taskId`, `data`, `errorCode`, `errorMessage`, `retryAfter`\n- Map API/runtime errors into stable error codes:\n  - `INVALID_MODEL`\n  - `INVALID_PAYLOAD`\n  - `AUTH_FAILED`\n  - `RATE_LIMITED`\n  - `INSUFFICIENT_CREDITS`\n  - `TASK_NOT_FOUND`\n  - `NETWORK_ERROR`\n  - `UNKNOWN_ERROR`\n\n## Execution Commands\n- Run full workflow:\n  - `node scripts/run-workflow.mjs --model <model> --payload '<json_payload>'`\n- Query status:\n  - `node scripts/run-workflow.mjs --action getStatus --taskId <task_id>`\n- Query task details:\n  - `node scripts/run-workflow.mjs --action getTask --taskId <task_id>`\n- Cancel task:\n  - `node scripts/run-workflow.mjs --action cancelTask --taskId <task_id>`\n\n## Security\nThis skill only performs the following actions:\n- Calls the AIVideoMaker API with user-provided parameters\n- Validates input payloads against a defined contract\n- Reads only payload passed via `--payload`\n- Does not read arbitrary host files, credentials, or sensitive system information\n- Does not execute arbitrary code or shell commands\n\nAll network requests are made to `https://aivideomaker.ai` (or an optional custom base URL configured via client options) and include only the API key for authentication. The API key is sent as an HTTP header named `key` (as required by the AIVideoMaker API). While HTTPS encrypts the transmission, intermediaries may log the `key` header. Users should be aware of privacy implications when sending image data and API keys to upstream services.\n\n**Security Best Practices:**\n- Never hardcode API keys in source code, configuration files, or skill archives\n- Always pass the `AIVIDEO_API_KEY` as an environment variable\n- Use secret management tools or platform-specific credential storage\n- Regularly rotate API keys and monitor usage\n\n## Additional Resources\n- Full API matrix: [references/api-reference.md](references/api-reference.md)\n- Usage and failure scenarios: [references/examples.md](references/examples.md)\n","topics":["Video Generation"],"tags":{"latest":"1.0.14"},"stats":{"comments":0,"downloads":714,"installsAllTime":27,"installsCurrent":1,"stars":1,"versions":15},"createdAt":1774254355051,"updatedAt":1778492131891},"latestVersion":{"version":"1.0.14","createdAt":1774427511643,"changelog":"- Added top-level requires, binaries, and primaryCredential fields for clearer environment and dependency specification.\n- Updated security documentation to clarify that the API key is sent as an HTTP header named key, noting potential privacy implications.\n- Enhanced security warning about intermediaries possibly logging the key header and handling of user image data.\n- No feature changes or new functionality—documentation and metadata improvements only.","license":"MIT-0"},"metadata":{"setup":[{"key":"AIVIDEO_API_KEY","required":true}],"os":null,"systems":null},"owner":{"handle":"husu","userId":"s17eggvth5e4dcwgwx63rfw50n83htcp","displayName":"husu","image":"https://avatars.githubusercontent.com/u/8263559?v=4"},"moderation":null}