# Send Use the Content3 Agent API to create short-form videos, manage content libraries, submit reviews for human approval, and draft social media posts. to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "content3",
    "name": "Use the Content3 Agent API to create short-form videos, manage content libraries, submit reviews for human approval, and draft social media posts.",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/dimitriharding/content3",
    "canonicalUrl": "https://clawhub.ai/dimitriharding/content3",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/content3",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=content3",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "_meta.json",
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "content3",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-10T11:58:13.994Z",
      "expiresAt": "2026-05-17T11:58:13.994Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=content3",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=content3",
        "contentDisposition": "attachment; filename=\"content3-1.0.5.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "content3"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/content3"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/content3",
    "downloadUrl": "https://openagent3.xyz/downloads/content3",
    "agentUrl": "https://openagent3.xyz/skills/content3/agent",
    "manifestUrl": "https://openagent3.xyz/skills/content3/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/content3/agent.md"
  }
}
```
## Documentation

### content3

Use the Content3 Agent API to create short-form videos, manage content libraries, submit reviews for human approval, and draft social media posts.

### Setup

Log in to your Content3 dashboard
Navigate to Settings → API Keys
Click Create API Key — copy the key (starts with c3ak_, shown only once)
Store it:

mkdir -p ~/.config/content3
echo "c3ak_your_key_here" > ~/.config/content3/api_key

### API Basics

Base URL: https://api.content3.app/v1

All requests need:

C3_KEY=$(cat ~/.config/content3/api_key)
curl -X GET "https://api.content3.app/v1/..." \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json"

Note: Agent API keys have scopes that control access. Default scopes: content:read, social:generate, social:drafts:read, social:drafts:write. Ask the user to grant additional scopes if needed.

### Authentication

Verify your key:

curl "https://api.content3.app/v1/me" \\
  -H "Authorization: Bearer $C3_KEY"

Returns: { "userId", "keyId", "keyName", "scopes": [...] }

### Scopes Reference

ScopeAccesscontent:readRead content items, render jobs, social connections, short-form optionscontent:writeCreate/modify contentreviews:readRead reviewsreviews:writeCreate reviews and commentssocial:generateGenerate AI social media contentsocial:drafts:readRead social media draftssocial:drafts:writeCreate social media draftsproducts:readRead productsproducts:writeCreate/modify products*Full access (all scopes)

### Short-Form Video Generation

This is the primary agent workflow — generate short-form videos from various sources.

Get available options (voices, sources, aspect ratios):

curl "https://api.content3.app/v1/agents/short-form/options" \\
  -H "Authorization: Bearer $C3_KEY"

Returns source types (quora, reddit, prompt, text), voice options (Kore, Puck, Charon, Fenrir, Zephyr, Aoede, Orbit, Orus), and aspect ratios (9:16, 16:9).

Generate a video from a prompt:

curl -X POST "https://api.content3.app/v1/agents/short-form/generate" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "source": {
      "type": "prompt",
      "prompt": "Explain why cats always land on their feet"
    },
    "voiceId": "Kore",
    "aspectRatio": "9:16",
    "saveToLibrary": true
  }'

Generate from a Reddit post:

curl -X POST "https://api.content3.app/v1/agents/short-form/generate" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "source": {
      "type": "reddit",
      "url": "https://reddit.com/r/..."
    },
    "voiceId": "Puck",
    "aspectRatio": "9:16"
  }'

Generate from a Quora answer:

curl -X POST "https://api.content3.app/v1/agents/short-form/generate" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "source": {
      "type": "quora",
      "url": "https://quora.com/..."
    },
    "voiceId": "Zephyr"
  }'

Generate from raw text:

curl -X POST "https://api.content3.app/v1/agents/short-form/generate" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "source": {
      "type": "text",
      "text": "Your script or content here..."
    },
    "voiceId": "Fenrir",
    "aspectRatio": "16:9"
  }'

Returns: { "success": true, "jobId": "uuid", "status": "queued", "taskName": "..." }

### Render Jobs

Track the status of video generation jobs.

List render jobs:

curl "https://api.content3.app/v1/render-jobs?status=completed&limit=10" \\
  -H "Authorization: Bearer $C3_KEY"

Query params: status (queued, processing, completed, failed), agent_type, job_type, limit (max 100), offset.

Get a specific job:

curl "https://api.content3.app/v1/render-jobs/{job_id}" \\
  -H "Authorization: Bearer $C3_KEY"

Returns full job details including payload, status, output_url, timestamps.

### Content Items

Manage your content library.

List content items:

curl "https://api.content3.app/v1/content-items?type=video&limit=20" \\
  -H "Authorization: Bearer $C3_KEY"

Query params: type, limit (max 100, default 20), offset.

Returns: { "items": [{ "id", "type", "title", "description", "source_url", "thumbnail_url", "created_at" }] }

### Reviews (Human-in-the-Loop)

Submit content for human review and approval before publishing.

Create a review:

curl -X POST "https://api.content3.app/v1/reviews" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "title": "Weekly video batch - Feb 18",
    "description": "5 short-form videos for review before publishing",
    "contentType": "video",
    "attachments": [
      {"url": "https://r2.example.com/video1.mp4", "label": "Cat facts video"},
      {"url": "https://r2.example.com/video2.mp4", "label": "Tech tips video"}
    ],
    "metadata": {
      "tags": ["short-form", "batch"],
      "notes": "Generated from trending Reddit posts"
    }
  }'

Content types: pdf, video, image, slides, markdown.

List reviews:

curl "https://api.content3.app/v1/reviews?status=pending&limit=10" \\
  -H "Authorization: Bearer $C3_KEY"

Status values: pending, approved, rejected, needs_revision.

Get review with comments:

curl "https://api.content3.app/v1/reviews/{review_id}" \\
  -H "Authorization: Bearer $C3_KEY"

Add a comment to a review:

curl -X POST "https://api.content3.app/v1/reviews/{review_id}/comments" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"body": "Revised the thumbnail based on feedback"}'

### Update Review Status

Update a review's status:

curl -X PATCH "https://api.content3.app/v1/reviews/{review_id}" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"status": "in_review"}'

Valid transitions: pending → in_review, in_review → approved / rejected / changes_requested, changes_requested → in_review.

Returns: { "review": { "id": "uuid", "status": "in_review", "updatedAt": "..." } }

### Review Revisions

Submit updated attachments when changes are requested. The platform tracks all versions.

Submit a revision:

curl -X POST "https://api.content3.app/v1/reviews/{review_id}/revisions" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "attachments": [
      {"url": "https://r2.example.com/video1-v2.mp4", "label": "Fixed background color"}
    ],
    "note": "Fixed the background color as requested"
  }'

If no revisions exist yet, revision 1 is automatically created from the current attachments (labeled "Original"). The new revision becomes the latest, and reviews.attachments is updated.

List revisions:

curl "https://api.content3.app/v1/reviews/{review_id}/revisions" \\
  -H "Authorization: Bearer $C3_KEY"

Returns: { "revisions": [{ "revisionNumber": 1, "attachments": [...], "note": "Original", "agentKeyName": "...", "createdAt": "..." }, ...] }

### Shareable Review Links

Generate a public share link for a review so humans can view and comment without logging in.

Create or get a share link:

curl -X POST "https://api.content3.app/v1/reviews/{review_id}/share" \\
  -H "Authorization: Bearer $C3_KEY"

Returns: { "shareToken": "...", "shareUrl": "https://content3.app/review/...", "shareEnabled": true }

If a share link already exists, this returns the existing link and ensures it is enabled.

Toggle share link on/off:

curl -X PATCH "https://api.content3.app/v1/reviews/{review_id}/share" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{"enabled": false}'

When disabled, anyone visiting the share URL sees a "not found" page. Re-enable with {"enabled": true}.

The share URL can be sent to any human for on-demand feedback — no Content3 account required. Public reviewers can view the content, change the review status, and leave comments.

### Promote Review to Content

After a review is approved, promote it to a content item so it can be used with social drafts.

Promote an approved review:

curl -X POST "https://api.content3.app/v1/reviews/{review_id}/promote" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "title": "Optional override title",
    "description": "Optional override description"
  }'

The request body is optional — omit fields to use the review's title/description.

Returns: { "contentItem": { "id": "uuid", "type": "video", "title": "...", "sourceUrl": "...", "status": "ready", "reviewId": "uuid", "createdAt": "..." } }

Returns 201 on first promote, 200 if already promoted (idempotent). Returns 422 if the review is not yet approved. Requires scopes: reviews:read + content:write.

### Social Media

Create drafts and generate AI-powered social media content.

List connected social accounts:

curl "https://api.content3.app/v1/social/connections" \\
  -H "Authorization: Bearer $C3_KEY"

Returns connections for: youtube, tiktok, instagram, pinterest, threads.

Generate AI social content for a content item:

curl -X POST "https://api.content3.app/v1/social/generate-content" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "contentItemId": "content-item-uuid",
    "platforms": ["tiktok", "youtube"],
    "userPrompt": "Make it engaging and use trending hashtags"
  }'

Create a social media draft (format A — canonical):

curl -X POST "https://api.content3.app/v1/social/drafts" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "contentItemId": "content-item-uuid",
    "title": "Why cats always land on their feet",
    "description": "The science behind cat reflexes",
    "hashtags": ["cats", "science", "shorts"],
    "platforms": [
      {
        "connectionId": "connection-uuid",
        "platformTitle": "Cat Physics Explained",
        "platformDescription": "You won'\\''t believe this! #cats #science"
      }
    ]
  }'

Create a social media draft (format B — shorthand):

curl -X POST "https://api.content3.app/v1/social/drafts" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "contentItemId": "content-item-uuid",
    "title": "Why cats always land on their feet",
    "caption": "The science behind cat reflexes #cats #science",
    "hashtags": ["cats", "science", "shorts"],
    "platforms": ["tiktok", "youtube"],
    "connectionIds": ["connection-uuid-1", "connection-uuid-2"]
  }'

Both formats are accepted. caption maps to description if description is not provided. Use GET /v1/social/connections to get valid connection IDs.

List drafts:

curl "https://api.content3.app/v1/social/drafts?limit=20" \\
  -H "Authorization: Bearer $C3_KEY"

Publish a draft:

curl -X POST "https://api.content3.app/v1/social/drafts/{draft_id}/publish" \\
  -H "Authorization: Bearer $C3_KEY"

Enqueues the draft for publishing to all configured platforms. Only drafts with status draft can be published. Returns 422 if the post is not a draft or is missing content/platforms.

Returns: { "postId": "uuid", "jobId": "uuid", "status": "pending" }

Poll GET /render-jobs/{jobId} to track publishing progress.

### Products

Manage products for content generation.

Create a product:

curl -X POST "https://api.content3.app/v1/products" \\
  -H "Authorization: Bearer $C3_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "name": "My SaaS Product",
    "description": "A tool that helps you do X",
    "url": "https://myproduct.com"
  }'

List products:

curl "https://api.content3.app/v1/products?limit=20" \\
  -H "Authorization: Bearer $C3_KEY"

### Generate and Review a Video

Generate a video: POST /agents/short-form/generate
Poll job status: GET /render-jobs/{jobId} until status: "completed"
Submit for review: POST /reviews with the video URL from the completed job
Create a share link: POST /reviews/{reviewId}/share — send the shareUrl to a human for feedback
Check review status: GET /reviews/{reviewId} — wait for approved
If changes_requested: fix the content and submit a revision with POST /reviews/{reviewId}/revisions, then go back to step 5
Promote to content: POST /reviews/{reviewId}/promote — creates a content item from the approved review
Create social draft: POST /social/drafts with the contentItem.id from step 7
Publish draft: POST /social/drafts/{draftId}/publish — enqueues the draft for publishing

### Batch Content Generation

Get short-form options: GET /agents/short-form/options
Generate multiple videos with different sources/voices
Monitor all jobs: GET /render-jobs?status=processing
Submit a batch review with all completed video URLs
After approval, promote each review: POST /reviews/{reviewId}/promote
Generate social content and create drafts for each platform using the contentItem.id from step 5
Publish each draft: POST /social/drafts/{draftId}/publish

### Notes

Job IDs are UUIDs returned when creating render jobs
Video generation is async — poll /render-jobs/{id} for completion
Review statuses can be set by humans in the dashboard or via the public share link
Agents can generate share URLs with POST /reviews/{id}/share and send them to humans for on-demand feedback
Rate limits apply — avoid rapid-fire requests
The saveToLibrary flag on video generation automatically creates a content item
Default aspect ratio is 9:16 (vertical/portrait) for short-form content
Voice selection affects the TTS narration of generated videos
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: dimitriharding
- Version: 1.0.5
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-10T11:58:13.994Z
- Expires at: 2026-05-17T11:58:13.994Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/content3)
- [Send to Agent page](https://openagent3.xyz/skills/content3/agent)
- [JSON manifest](https://openagent3.xyz/skills/content3/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/content3/agent.md)
- [Download page](https://openagent3.xyz/downloads/content3)