โ† All skills
Tencent SkillHub ยท Developer Tools

Freepik

Generate images, videos, icons, audio, and more using Freepik's AI API. Supports Mystic, Flux, Kling, Hailuo, Seedream, RunWay, Magnific upscaling, stock con...

skill openclawclawhub Free
0 Downloads
0 Stars
0 Installs
0 Score
High Signal

Generate images, videos, icons, audio, and more using Freepik's AI API. Supports Mystic, Flux, Kling, Hailuo, Seedream, RunWay, Magnific upscaling, stock con...

โฌ‡ 0 downloads โ˜… 0 stars Unverified but indexed

Install for OpenClaw

Quick setup
  1. Download the package from Yavira.
  2. Extract the archive and review SKILL.md first.
  3. Import or place the package into your OpenClaw setup.

Requirements

Target platform
OpenClaw
Install method
Manual import
Extraction
Extract archive
Prerequisites
OpenClaw
Primary doc
SKILL.md

Package facts

Download mode
Yavira redirect
Package format
ZIP package
Source platform
Tencent SkillHub
What's included
CLAUDE.md, README.md, SKILL.md, _meta.json, models-reference.md

Validation

  • Use the Yavira download entry.
  • Review SKILL.md after the package is downloaded.
  • Confirm the extracted package contains the expected setup assets.

Install with your agent

Agent handoff

Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.

  1. Download the package from Yavira.
  2. Extract it into a folder your agent can access.
  3. Paste one of the prompts below and point your agent at the extracted folder.
New install

I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.

Upgrade existing

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. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.

Trust & source

Release facts

Source
Tencent SkillHub
Verification
Indexed source record
Version
1.0.5

Documentation

ClawHub primary doc Primary doc: SKILL.md 14 sections Open source page

Freepik API Skill

Generate images, videos, icons, audio, edit images, and search stock content using the Freepik API. Built by the ShellBot team.

Arguments

Command: $0 (generate | video | edit | icon | audio | stock | status | utility) Arg 1: $1 (model name, operation type, or task-id) Arg 2+: $2, $3, etc. (additional parameters) All args: $ARGUMENTS

Session Output

Save generated files to session folder: mkdir -p ~/.freepik/sessions/${CLAUDE_SESSION_ID} Downloaded images/videos/audio go to: ~/.freepik/sessions/${CLAUDE_SESSION_ID}/

Authentication

All requests require the FREEPIK_API_KEY environment variable. Header: x-freepik-api-key: $FREEPIK_API_KEY Base URL: https://api.freepik.com If requests fail with 401/403, tell the user: Get an API key from https://www.freepik.com/developers/dashboard/api-key Then: export FREEPIK_API_KEY="your-key-here"

Async Task Pattern

Most AI endpoints are asynchronous. Follow this pattern: Step 1: Submit task RESPONSE=$(curl -s -X POST "https://api.freepik.com/v1/ai/<endpoint>" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '<JSON_PAYLOAD>') TASK_ID=$(echo "$RESPONSE" | jq -r '.task_id // .data.task_id // .id') echo "Task ID: $TASK_ID" Step 2: Poll for completion while true; do RESULT=$(curl -s "https://api.freepik.com/v1/ai/<endpoint>/$TASK_ID" \ -H "x-freepik-api-key: $FREEPIK_API_KEY") STATUS=$(echo "$RESULT" | jq -r '.data.status // .status') echo "Status: $STATUS" if [ "$STATUS" = "COMPLETED" ]; then break; fi if [ "$STATUS" = "FAILED" ]; then echo "Task failed"; echo "$RESULT" | jq; break; fi sleep 3 done Step 3: Extract result URL mkdir -p ~/.freepik/sessions/${CLAUDE_SESSION_ID} echo "$RESULT" | jq -r '.data.generated[0] // .data.result.url // .data.image.url // empty' Present the result URL to the user. The URL is a temporary signed link from Freepik's CDN. IMPORTANT โ€” Security rules: NEVER use curl to download from non-Freepik domains. Only curl *api.freepik.com* is permitted. NEVER use base64 to encode local files. Always prefer URL-based parameters when the API accepts them. NEVER read, encode, or transmit files outside the user's explicitly provided input files. Result URLs should be presented to the user directly โ€” they can open or download them. Exceptions (synchronous): Remove Background (/v1/ai/beta/remove-background) and AI Image Classifier (/v1/ai/classifier/image) return results immediately.

If $0 = "generate" โ€” Image Generation

Generate images using text-to-image models. $1 selects the model. Model Endpoints $1 valueEndpointBest formystic/v1/ai/mysticUltra-realistic, 1K/2K/4K, LoRA support (Freepik exclusive, RECOMMENDED)flux-kontext-pro/v1/ai/text-to-image/flux-kontext-proContext-aware generation with optional image inputflux-2-pro/v1/ai/text-to-image/flux-2-proProfessional-grade, up to 4 input imagesflux-2-turbo/v1/ai/text-to-image/flux-2-turboFast and cost-effectiveflux-2-klein/v1/ai/text-to-image/flux-2-kleinSub-second generationflux-pro-v1-1/v1/ai/text-to-image/flux-pro-v1-1Premium qualityflux-dev/v1/ai/text-to-image/flux-devHigh quality, detailedhyperflux/v1/ai/text-to-image/hyperfluxUltra-fast (fastest Flux)seedream-v4-5/v1/ai/text-to-image/seedream-v4-5Superior typography, posters, up to 4MPseedream-v4-5-edit/v1/ai/text-to-image/seedream-v4-5-editText-guided editing with up to 5 refsseedream-v4/v1/ai/text-to-image/seedream-v4Next-gen text-to-imageseedream-v4-edit/v1/ai/text-to-image/seedream-v4-editInstruction-driven editingseedream/v1/ai/text-to-image/seedreamOriginal Seedreamz-image/v1/ai/text-to-image/z-imageFast, LoRA + ControlNet supportrunway/v1/ai/text-to-image/runwayRunWay Gen4 image generation Default: Use mystic if user doesn't specify a model. Mystic Example curl -s -X POST "https://api.freepik.com/v1/ai/mystic" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "a futuristic cityscape at sunset, photorealistic", "resolution": "2k", "styling": { "style": "photo" } }' Mystic parameters: prompt (string, required) โ€” what to generate resolution ("1k" | "2k" | "4k", default "2k") num_images (1-4, default 1) styling.style ("photo" | "digital_art" | "none") structure_reference (object) โ€” use an image to guide composition: {image_url, strength: 0-100} style_reference (object) โ€” use an image to guide style: {image_url, strength: 0-100} loras (array) โ€” LoRA IDs from /v1/ai/loras seed (int) โ€” for reproducibility webhook_url (string) โ€” receive notification on completion Get available LoRAs: curl -s "https://api.freepik.com/v1/ai/loras" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '.data[] | {id, name, type}' Train custom LoRA (character): curl -s -X POST "https://api.freepik.com/v1/ai/loras/characters" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"name": "my-character", "images": ["<base64_or_url>", ...]}' Flux 2 Klein Example (sub-second) curl -s -X POST "https://api.freepik.com/v1/ai/text-to-image/flux-2-klein" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "a cat wearing sunglasses", "aspect_ratio": "square_1_1", "resolution": "1k", "output_format": "png" }' Flux 2 Klein parameters: prompt (string, required) aspect_ratio ("square_1_1" | "widescreen_16_9" | "social_story_9_16" | "portrait_2_3" | "traditional_3_4" | "vertical_1_2" | "horizontal_2_1" | "social_post_4_5" | "standard_3_2" | "classic_4_3") resolution ("1k" | "2k") seed (0-4294967295) input_image (base64) โ€” optional reference input_image_2, input_image_3, input_image_4 (base64) safety_tolerance (0-5, default 2) output_format ("png" | "jpeg") Flux Kontext Pro Example curl -s -X POST "https://api.freepik.com/v1/ai/text-to-image/flux-kontext-pro" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "a modern logo design", "aspect_ratio": "square_1_1", "guidance": 3.0, "steps": 50 }' Flux Kontext Pro parameters: prompt (string, required) input_image (URL, optional) โ€” for context-aware editing prompt_upsampling (bool) seed (int) guidance (1-10, default 3.0) steps (1-100, default 50) aspect_ratio ("square_1_1" | "classic_4_3" | "traditional_3_4" | "widescreen_16_9" | "social_story_9_16" | "standard_3_2") Seedream 4.5 Example (great for text-in-image and posters) curl -s -X POST "https://api.freepik.com/v1/ai/text-to-image/seedream-v4-5" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "A poster for \"Summer Music Festival 2025\" with bold typography" }' Classic Fast Image Generation curl -s -X POST "https://api.freepik.com/v1/ai/text-to-image" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"prompt": "a beautiful sunset"}'

If $0 = "video" โ€” Video Generation

Generate videos from text and/or images. $1 selects the model. Model Endpoints $1 valueEndpointTypeBest forkling-v3-omni-pro/v1/ai/video/kling-v3-omni-proT2V/I2VMulti-modal, multi-shot, audio, voice (RECOMMENDED)kling-v3-omni-std/v1/ai/video/kling-v3-omni-stdT2V/I2VStandard tier of abovekling-v3-pro/v1/ai/video/kling-v3-proT2V/I2VMulti-shot, element consistencykling-v3-std/v1/ai/video/kling-v3-stdT2V/I2VStandard tierkling-v2-6-pro/v1/ai/image-to-video/kling-v2-6-proI2VMotion controlkling-v2-6-motion-pro/v1/ai/video/kling-v2-6-motion-control-proV2VTransfer motion from reference videokling-v2-6-motion-std/v1/ai/video/kling-v2-6-motion-control-stdV2VStandard motion transferkling-v2-5-pro/v1/ai/image-to-video/kling-v2-5-proI2VSmooth motion, sharp detailkling-v2-1-pro/v1/ai/image-to-video/kling-v2-1-proI2VHigh-fidelitykling-v2-1-std/v1/ai/image-to-video/kling-v2-1-stdI2VStandard tierkling-v2-1-master/v1/ai/image-to-video/kling-v2-1-masterI2VTop-tier qualitykling-o1-pro/v1/ai/image-to-video/kling-o1-proI2VFirst/last frame interpolationkling-o1-std/v1/ai/image-to-video/kling-o1-stdI2VStandard frame interpolationkling-elements-pro/v1/ai/image-to-video/kling-elements-proI2VElement-basedkling-elements-std/v1/ai/image-to-video/kling-elements-stdI2VStandard elementshailuo-02-1080p/v1/ai/image-to-video/minimax-hailuo-02-1080pT2V/I2VHigh quality 1080phailuo-02-768p/v1/ai/image-to-video/minimax-hailuo-02-768pT2V/I2V768phailuo-2-3-1080p/v1/ai/image-to-video/minimax-hailuo-2-3-1080pT2V/I2VLatest MiniMax 1080phailuo-2-3-1080p-fast/v1/ai/image-to-video/minimax-hailuo-2-3-1080p-fastT2V/I2VFast 1080phailuo-2-3-768p/v1/ai/image-to-video/minimax-hailuo-2-3-768pT2V/I2V768phailuo-2-3-768p-fast/v1/ai/image-to-video/minimax-hailuo-2-3-768p-fastT2V/I2VFast 768phailuo-live/v1/ai/image-to-video/minimax-liveI2VLive illustrations, camera movementswan-2-6-1080p/v1/ai/image-to-video/wan-v2-6-1080pI2V1080p I2Vwan-2-6-720p/v1/ai/image-to-video/wan-v2-6-720pI2V720p I2Vwan-2-6-t2v-1080p/v1/ai/text-to-video/wan-v2-6-1080pT2V1080p T2Vwan-2-6-t2v-720p/v1/ai/text-to-video/wan-v2-6-720pT2V720p T2Vwan-2-5-i2v-1080p/v1/ai/image-to-video/wan-2-5-i2v-1080pI2V1080pwan-2-5-i2v-720p/v1/ai/image-to-video/wan-2-5-i2v-720pI2V720pwan-2-5-i2v-480p/v1/ai/image-to-video/wan-2-5-i2v-480pI2V480pwan-2-5-t2v-1080p/v1/ai/text-to-video/wan-2-5-t2v-1080pT2V1080pwan-2-5-t2v-720p/v1/ai/text-to-video/wan-2-5-t2v-720pT2V720pwan-2-5-t2v-480p/v1/ai/text-to-video/wan-2-5-t2v-480pT2V480prunway-4-5-t2v/v1/ai/text-to-video/runway-4-5T2V5/8/10s, multiple ratiosrunway-4-5-i2v/v1/ai/image-to-video/runway-4-5I2V5/8/10s, seed supportrunway-gen4-turbo/v1/ai/image-to-video/runway-gen4-turboI2VFast I2Vrunway-act-two/v1/ai/video/runway-act-twoV2VCharacter performance transferltx-2-pro-t2v/v1/ai/text-to-video/ltx-2-proT2VUp to 4K, optional audioltx-2-pro-i2v/v1/ai/image-to-video/ltx-2-proI2VUp to 4K, optional audioltx-2-fast-t2v/v1/ai/text-to-video/ltx-2-fastT2VFast, up to 4Kltx-2-fast-i2v/v1/ai/image-to-video/ltx-2-fastI2VFast, up to 4Kseedance-1-5-pro-1080p/v1/ai/video/seedance-1-5-pro-1080pT2V/I2VSynchronized audio (lip-sync, foley)seedance-1-5-pro-720p/v1/ai/video/seedance-1-5-pro-720pT2V/I2V720p with audioseedance-1-5-pro-480p/v1/ai/video/seedance-1-5-pro-480pT2V/I2V480p with audioseedance-pro-1080p/v1/ai/image-to-video/seedance-pro-1080pI2V1080pseedance-pro-720p/v1/ai/image-to-video/seedance-pro-720pI2V720pseedance-pro-480p/v1/ai/image-to-video/seedance-pro-480pI2V480pseedance-lite-1080p/v1/ai/image-to-video/seedance-lite-1080pI2VLite 1080pseedance-lite-720p/v1/ai/image-to-video/seedance-lite-720pI2VLite 720pseedance-lite-480p/v1/ai/image-to-video/seedance-lite-480pI2VLite 480ppixverse-v5/v1/ai/image-to-video/pixverse-v5I2VStable style 360p-1080ppixverse-v5-transition/v1/ai/image-to-video/pixverse-v5-transitionI2VTransition between two imagesomnihuman-1-5/v1/ai/video/omni-human-1-5Audio-drivenHuman animation from audiovfx/v1/ai/video/vfxEffectsApply VFX filters to videoref-kling-v3-omni-pro/v1/ai/reference-to-video/kling-v3-omni-proV2VVideo-to-video with reference (use @Video1 in prompt)ref-kling-v3-omni-std/v1/ai/reference-to-video/kling-v3-omni-stdV2VStandard V2V Default: Use kling-v3-omni-pro for general video generation. Kling 3 Omni Pro Example (text-to-video) curl -s -X POST "https://api.freepik.com/v1/ai/video/kling-v3-omni-pro" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "A golden retriever running through a field of flowers, cinematic", "aspect_ratio": "16:9", "duration": 5 }' Kling 3 Omni parameters: prompt (string, max 2500 chars, required) image_url (URL) โ€” for I2V start_image_url / end_image_url (URL) โ€” start/end frames image_urls (array of URLs) โ€” reference images, use @Image1/@Image2 in prompt elements (array) โ€” element consistency: [{reference_image_urls: [...], frontal_image_url: "..."}], use @Element1/@Element2 in prompt multi_prompt (array, max 6 shots) โ€” multi-shot: [{prompt: "...", duration: 3}] aspect_ratio ("16:9" | "9:16" | "1:1") duration (3-15, seconds) generate_audio (bool) โ€” auto-generate audio voice_ids (array) โ€” use <<<voice_1>>> in prompt webhook_url (string) Poll status: curl -s "https://api.freepik.com/v1/ai/video/kling-v3-omni/$TASK_ID" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" Kling 3 Example (with multi-shot) curl -s -X POST "https://api.freepik.com/v1/ai/video/kling-v3-pro" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "A cat walks across a room", "negative_prompt": "blurry, low quality", "aspect_ratio": "16:9", "duration": 5, "cfg_scale": 0.5, "multi_shot": true, "multi_prompt": [ {"index": 1, "prompt": "Cat enters from left", "duration": 3}, {"index": 2, "prompt": "Cat sits and looks at camera", "duration": 2} ] }' RunWay Gen 4.5 Example (text-to-video) curl -s -X POST "https://api.freepik.com/v1/ai/text-to-video/runway-4-5" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "A time-lapse of a flower blooming", "ratio": "1280:720", "duration": 10 }' RunWay 4.5 T2V parameters: prompt (string, max 2000 chars, required) ratio ("1280:720" | "720:1280" | "1104:832" | "960:960" | "832:1104", default "1280:720") duration (5 | 8 | 10) webhook_url RunWay Gen 4.5 I2V Example curl -s -X POST "https://api.freepik.com/v1/ai/image-to-video/runway-4-5" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "prompt": "The person waves and smiles", "ratio": "1280:720", "duration": 5 }' WAN 2.6 T2V Example curl -s -X POST "https://api.freepik.com/v1/ai/text-to-video/wan-v2-6-1080p" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "Ocean waves at sunset, cinematic 4K", "duration": "5", "enable_prompt_expansion": true }' Hailuo Live Example (animated illustrations) curl -s -X POST "https://api.freepik.com/v1/ai/image-to-video/minimax-live" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image_url": "https://example.com/illustration.png", "prompt": "[Push in] The character turns and smiles" }' Hailuo Live camera movements: [Truck left], [Pan right], [Push in], [Pull out], [Zoom in], [Tracking shot], [Static shot] VFX Video Effects Example curl -s -X POST "https://api.freepik.com/v1/ai/video/vfx" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "video": "https://example.com/video.mp4", "filter_type": 4, "fps": 24 }' VFX filter_type values: 1=Film Grain, 2=Motion Blur, 3=Fish Eye, 4=VHS, 5=Shake, 6=VGA, 7=Bloom, 8=Anamorphic Lens VFX cost: $0.017 per second of video.

If $0 = "edit" โ€” Image Editing

Edit, enhance, and transform images. $1 selects the operation. Operations $1 valueEndpointDescriptionupscale-creative/v1/ai/image-upscalerPrompt-guided upscaling with detail enhancement (Magnific). 2x/4x/8x/16x.upscale-precision-v2/v1/ai/image-upscaler-precision-v2Faithful upscaling with granular controls (Magnific)upscale-precision/v1/ai/image-upscaler-precisionHigh-fidelity upscaling without hallucinationsrelight/v1/ai/image-relightChange image lighting via prompt, reference, or lightmapstyle-transfer/v1/ai/image-style-transferApply artistic styles from reference imagesremove-bg/v1/ai/beta/remove-backgroundRemove background (SYNC, returns immediately)expand-flux/v1/ai/image-expand/flux-proOutpainting with Flux Proexpand-ideogram/v1/ai/image-expand/ideogramOutpainting with Ideogramexpand-seedream/v1/ai/image-expand/seedream-v4-5Outpainting with Seedreaminpaint/v1/ai/ideogram-image-editMask-based inpainting with Ideogramchange-camera/v1/ai/image-change-cameraTransform camera angle/perspectiveskin-creative/v1/ai/skin-enhancer/creativeArtistic skin enhancementskin-faithful/v1/ai/skin-enhancer/faithfulNatural skin preservationskin-flexible/v1/ai/skin-enhancer/flexibleTargeted skin optimization Upscale Creative Example (Magnific) curl -s -X POST "https://api.freepik.com/v1/ai/image-upscaler" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "prompt": "high quality photograph, sharp details", "scale_factor": 4 }' Upscale Precision V2 Example curl -s -X POST "https://api.freepik.com/v1/ai/image-upscaler-precision-v2" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "scale_factor": 4, "sharpen": 7, "smart_grain": 7, "ultra_detail": 30, "flavor": "photo" }' Precision V2 parameters: image (URL or base64, required) scale_factor (2-16) sharpen (0-100, default 7) smart_grain (0-100, default 7) ultra_detail (0-100, default 30) flavor ("sublime" | "photo" | "photo_denoiser") webhook_url Remove Background Example (SYNCHRONOUS) RESULT=$(curl -s -X POST "https://api.freepik.com/v1/ai/beta/remove-background" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"image_url": "https://example.com/photo.jpg"}') # Result contains: original, high_resolution, preview URLs (expire in 5 min!) echo "$RESULT" | jq -r '{high_resolution: .data.high_resolution, preview: .data.preview}' # Present the URLs to the user โ€” they can open or download directly Image Expand Example (Outpainting) For Image Expand, the user must provide an image URL. Use the Seedream or Ideogram expand endpoints which accept URLs, or ask the user to host the image first. curl -s -X POST "https://api.freepik.com/v1/ai/image-expand/seedream-v4-5" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "prompt": "extend the landscape naturally", "left": 512, "right": 512, "top": 0, "bottom": 0 }' Image Expand parameters: image (URL or base64 โ€” prefer URL, required) prompt (optional, auto-generated for Ideogram/Seedream) left, right, top, bottom (0-2048 pixels each) seed (int, for Ideogram/Seedream) webhook_url Note: For Flux Pro expand, the image param requires base64. Prefer using Seedream V4.5 or Ideogram expand endpoints which accept URLs. Inpainting Example (Ideogram) curl -s -X POST "https://api.freepik.com/v1/ai/ideogram-image-edit" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "mask": "<base64_of_mask>", "prompt": "a red sports car", "rendering_speed": "DEFAULT", "magic_prompt": "AUTO", "style_type": "REALISTIC" }' Inpainting parameters: image (URL or base64, max 10MB, required) mask (B&W image, same size, required โ€” black = areas to edit) prompt (required) rendering_speed ("TURBO" | "DEFAULT" | "QUALITY") magic_prompt ("AUTO" | "ON" | "OFF") style_type ("AUTO" | "GENERAL" | "REALISTIC" | "DESIGN") style_codes (array), style_reference_images (array), character_reference_images (array) color_palette (object) seed (0-2147483647) webhook_url Change Camera Example curl -s -X POST "https://api.freepik.com/v1/ai/image-change-camera" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/photo.jpg", "horizontal_angle": 45, "vertical_angle": 15, "zoom": 5, "output_format": "png" }' Change Camera parameters: image (HTTPS URL, JPG/PNG/WebP, required) horizontal_angle (0-360, default 0) vertical_angle (-30 to 90, default 0) zoom (0-10, default 5) output_format ("png" | "jpeg") seed (min 1) webhook_url Image Relight Example curl -s -X POST "https://api.freepik.com/v1/ai/image-relight" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/portrait.jpg", "prompt": "warm golden hour lighting from the left side" }' Skin Enhancer Example # Flexible mode with targeted optimization curl -s -X POST "https://api.freepik.com/v1/ai/skin-enhancer/flexible" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "image": "https://example.com/portrait.jpg", "optimized_for": "enhance_skin", "sharpen": 20, "smart_grain": 5 }' Skin Enhancer optimized_for options: "enhance_skin" | "improve_lighting" | "enhance_everything" | "transform_to_real" | "no_make_up"

If $0 = "icon" โ€” Icon Generation

Generate icons from text prompts in PNG or SVG format. Endpoint: /v1/ai/text-to-icon curl -s -X POST "https://api.freepik.com/v1/ai/text-to-icon" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "shopping cart", "style": "outline", "format": "svg", "num_inference_steps": 25, "guidance_scale": 7, "webhook_url": "" }' Parameters: prompt (string, required) โ€” icon description style ("solid" | "outline" | "color" | "flat" | "sticker", default "solid") format ("png" | "svg", default "png") num_inference_steps (10-50, default 10) guidance_scale (0-10, default 7) webhook_url (string, required but can be empty "") Preview (quick preview before full render): curl -s -X POST "https://api.freepik.com/v1/ai/text-to-icon/preview" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"prompt": "shopping cart", "style": "outline"}' Download rendered icon: curl -s -X POST "https://api.freepik.com/v1/ai/text-to-icon/$TASK_ID/render/svg" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -o ~/.freepik/sessions/${CLAUDE_SESSION_ID}/icon_$(date +%s).svg

If $0 = "audio" โ€” Audio Generation

Generate music, sound effects, voiceover, or isolate audio. $1 selects the type. $1 valueEndpointDescriptionmusic/v1/ai/music-generationText-to-music (10-240s, MP3)sfx/v1/ai/sound-effectsSound effects (0.5-22s)voiceover/v1/ai/voiceover/elevenlabs-turbo-v2-5Text-to-speech (ElevenLabs)isolate/v1/ai/audio-isolationIsolate specific sounds from audio/video Music Example curl -s -X POST "https://api.freepik.com/v1/ai/music-generation" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "upbeat electronic music for a product video", "music_length_seconds": 30 }' Music parameters: prompt (string, required) music_length_seconds (10-240, required) webhook_url (HTTPS URL) Sound Effects Example curl -s -X POST "https://api.freepik.com/v1/ai/sound-effects" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "text": "thunderstorm with heavy rain", "duration_seconds": 10, "loop": true, "prompt_influence": 0.5 }' Sound Effects parameters: text (string, max 2500 chars, required) duration_seconds (0.5-22, required) loop (bool, default false) โ€” seamless looping prompt_influence (0-1, default 0.3) webhook_url (HTTPS URL) Voiceover Example (ElevenLabs TTS) curl -s -X POST "https://api.freepik.com/v1/ai/voiceover/elevenlabs-turbo-v2-5" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "text": "Welcome to our product demonstration.", "voice_id": "21m00Tcm4TlvDq8ikWAM", "stability": 0.5, "similarity_boost": 0.2, "speed": 1.0 }' Voiceover parameters: text (1-40000 chars, UTF-8, required) voice_id (ElevenLabs voice ID, required) model (default "eleven_turbo_v2_5") stability (0-1, default 0.5) similarity_boost (0-1, default 0.2) speed (0.7-1.2, default 1.0) use_speaker_boost (bool, default true) webhook_url Audio Isolation Example curl -s -X POST "https://api.freepik.com/v1/ai/audio-isolation" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "description": "piano melody", "audio": "https://example.com/song.mp3" }' Audio Isolation parameters: description (string, required) โ€” what sound to isolate audio (URL or base64 โ€” WAV/MP3/FLAC/OGG/M4A) OR video (URL or base64 โ€” MP4/MOV/WEBM/AVI) x1, y1, x2, y2 (bounding box for video, default 0) sample_fps (1-5, default 2) reranking_candidates (1-8, default 1) predict_spans (bool, default false) webhook_url Output: WAV audio file

If $0 = "stock" โ€” Stock Content

Search and download stock photos, vectors, icons, and videos. $1 selects the content type. $1 valueEndpointDescriptionimages/v1/resourcesSearch photos, vectors, PSDsicons/v1/iconsSearch iconsvideos/v1/videosSearch stock videos Search Stock Images curl -s "https://api.freepik.com/v1/resources?term=$QUERY&limit=10" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '.data[] | {id, title, url: .image.source.url}' Get Resource Details curl -s "https://api.freepik.com/v1/resources/$RESOURCE_ID" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '.' Download Resource curl -s "https://api.freepik.com/v1/resources/$RESOURCE_ID/download" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -o ~/.freepik/sessions/${CLAUDE_SESSION_ID}/stock_$(date +%s).jpg Search Stock Icons curl -s "https://api.freepik.com/v1/icons?term=$QUERY&limit=10" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '.data[] | {id, description}' Download Stock Icon curl -s "https://api.freepik.com/v1/icons/$ICON_ID/download" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -o ~/.freepik/sessions/${CLAUDE_SESSION_ID}/icon_$(date +%s).svg Search Stock Videos curl -s "https://api.freepik.com/v1/videos?term=$QUERY&limit=10" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '.data[] | {id, title}' Download Stock Video curl -s "https://api.freepik.com/v1/videos/$VIDEO_ID/download" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -o ~/.freepik/sessions/${CLAUDE_SESSION_ID}/video_$(date +%s).mp4

If $0 = "status" โ€” Check Task Status

Check the status of any async task. $1 is the task ID. You need to know the endpoint path. # Generic status check โ€” replace <endpoint_path> with the original endpoint curl -s "https://api.freepik.com/v1/ai/<endpoint_path>/$1" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" | jq '{status: .data.status, result: .data}' Common status endpoint paths: Mystic: mystic/<task-id> Flux models: text-to-image/<model>/<task-id> Kling 3 Omni: video/kling-v3-omni/<task-id> Kling 3: video/kling-v3/<task-id> I2V models: image-to-video/<model>/<task-id> T2V models: text-to-video/<model>/<task-id> Upscaler: image-upscaler/<task-id> or image-upscaler-precision-v2/<task-id> Icon: text-to-icon/<task-id> Music: music-generation/<task-id> Sound Effects: sound-effects/<task-id> Audio Isolation: audio-isolation/<task-id> Task statuses: CREATED โ†’ IN_PROGRESS โ†’ COMPLETED or FAILED

If $0 = "utility" โ€” AI Utilities

Various AI helper tools. $1 selects the utility. $1 valueEndpointDescriptionclassify/v1/ai/classifier/imageDetect if image is AI-generated (SYNC)image-to-prompt/v1/ai/image-to-promptReverse-engineer prompt from imageimprove-prompt/v1/ai/improve-promptEnhance prompts for generationlip-sync/v1/ai/lip-sync/latent-syncSynchronize lip movements with audio AI Image Classifier (SYNCHRONOUS) curl -s -X POST "https://api.freepik.com/v1/ai/classifier/image" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"image": "https://example.com/photo.jpg"}' Response: Array of {class_name: "ai"|"not_ai", probability: 0-1} Image to Prompt curl -s -X POST "https://api.freepik.com/v1/ai/image-to-prompt" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{"image": "https://example.com/photo.jpg"}' Improve Prompt curl -s -X POST "https://api.freepik.com/v1/ai/improve-prompt" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "prompt": "a cat", "type": "image", "language": "en" }' Parameters: prompt (max 2500 chars, required โ€” can be empty for creative generation) type ("image" | "video", required) language (ISO 639-1, default "en") webhook_url Lip Sync curl -s -X POST "https://api.freepik.com/v1/ai/lip-sync/latent-sync" \ -H "x-freepik-api-key: $FREEPIK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "audio": "https://example.com/speech.mp3", "video": "https://example.com/face.mp4" }'

Model Selection Guide

For image generation: Want ultra-realistic? โ†’ mystic (Freepik exclusive, recommended) Need text in image / poster? โ†’ seedream-v4-5 Want fastest? โ†’ flux-2-klein (sub-second) or hyperflux Need high quality? โ†’ flux-2-pro or flux-kontext-pro Budget-friendly? โ†’ flux-2-turbo For video generation: General purpose / best quality? โ†’ kling-v3-omni-pro Need multi-shot? โ†’ kling-v3-pro or kling-v3-omni-pro Character performance? โ†’ runway-act-two Animated illustrations? โ†’ hailuo-live With synchronized audio? โ†’ seedance-1-5-pro-1080p Budget / fast? โ†’ kling-v3-omni-std or wan-2-6-720p Up to 4K? โ†’ ltx-2-pro-t2v or ltx-2-pro-i2v Human animation from audio? โ†’ omnihuman-1-5 For image editing: Creative upscale? โ†’ upscale-creative Faithful upscale? โ†’ upscale-precision-v2 Change lighting? โ†’ relight Remove background? โ†’ remove-bg Extend canvas? โ†’ expand-flux or expand-ideogram Edit specific area? โ†’ inpaint Change perspective? โ†’ change-camera For icons: Always use icon command โ€” choose style (solid/outline/color/flat/sticker) and format (png/svg) For audio: Background music? โ†’ music (10-240s) Sound effect? โ†’ sfx (0.5-22s) Narration/speech? โ†’ voiceover Extract specific sound? โ†’ isolate

Category context

Code helpers, APIs, CLIs, browser automation, testing, and developer operations.

Source: Tencent SkillHub

Largest current source with strong distribution and engagement signals.

Package contents

Included in package
4 Docs1 Config
  • SKILL.md Primary doc
  • CLAUDE.md Docs
  • models-reference.md Docs
  • README.md Docs
  • _meta.json Config