{"id":"ba4a5401-4a01-4b37-8990-a6fa9a3aa3af","shortId":"MELuXv","kind":"skill","title":"face-transform","tagline":"Analyze and transform faces via AceDataCloud API. Use when detecting face keypoints, beautifying portraits, aging/de-aging faces, swapping genders, replacing faces between photos, creating cartoon avatars, or detecting liveness. Provides 7 specialized face APIs.","description":"# Face Transform\n\nAnalyze and transform faces through AceDataCloud's Face API suite.\n\n> **Setup:** See [authentication](../_shared/authentication.md) for token setup.\n\n## Quick Start\n\n```bash\ncurl -X POST https://api.acedata.cloud/face/analyze \\\n  -H \"Authorization: Bearer $ACEDATACLOUD_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"image_url\": \"https://example.com/portrait.jpg\"}'\n```\n\n## Available APIs\n\n| Endpoint | Purpose | Description |\n|----------|---------|-------------|\n| `POST /face/analyze` | Face Detection | Detect face keypoints (90+ points per face) |\n| `POST /face/beautify` | Beautification | Apply beauty/decoration effects |\n| `POST /face/change-age` | Age Transform | Make a face look older or younger |\n| `POST /face/change-gender` | Gender Swap | Transform facial gender characteristics |\n| `POST /face/swap` | Face Swap | Replace one person's face with another |\n| `POST /face/cartoon` | Cartoon Style | Convert portrait to animated/cartoon style |\n| `POST /face/detect-live` | Liveness Check | Detect if a face image is from a live person |\n\n## Workflows\n\n### 1. Face Analysis\n\nDetect faces and extract 90+ keypoints per face.\n\n```json\nPOST /face/analyze\n{\n  \"image_url\": \"https://example.com/photo.jpg\"\n}\n```\n\nResponse includes detailed keypoints: `nose`, `mouth`, `left_eye`, `right_eye`, `left_eyebrow`, `right_eyebrow`, `contour` — each as arrays of `{x, y}` coordinates.\n\n### 2. Face Beautification\n\n```json\nPOST /face/beautify\n{\n  \"image_url\": \"https://example.com/portrait.jpg\"\n}\n```\n\n### 3. Age Transformation\n\n```json\nPOST /face/change-age\n{\n  \"image_url\": \"https://example.com/portrait.jpg\"\n}\n```\n\n### 4. Gender Swap\n\n```json\nPOST /face/change-gender\n{\n  \"image_url\": \"https://example.com/portrait.jpg\"\n}\n```\n\n### 5. Face Swap\n\nReplace the face in the target image with the face from the source.\n\n```json\nPOST /face/swap\n{\n  \"source_image_url\": \"https://example.com/source-face.jpg\",\n  \"target_image_url\": \"https://example.com/target-person.jpg\"\n}\n```\n\n### 6. Cartoon Style\n\n```json\nPOST /face/cartoon\n{\n  \"image_url\": \"https://example.com/portrait.jpg\"\n}\n```\n\n### 7. Liveness Detection\n\n```json\nPOST /face/detect-live\n{\n  \"image_url\": \"https://example.com/face-photo.jpg\"\n}\n```\n\n## Parameters\n\n### Common\n\n| Parameter | Required | Description |\n|-----------|----------|-------------|\n| `image_url` | Yes (most endpoints) | Source face image URL |\n\n### `/face/swap`\n\n| Parameter | Required | Description |\n|-----------|----------|-------------|\n| `source_image_url` | Yes | URL of the face to use (replaces the face) |\n| `target_image_url` | Yes | URL of the image to put the face onto |\n| `callback_url` | No | Webhook URL for async delivery |\n| `timeout` | No | Max wait time in seconds (default: 120) |\n\n### `/face/beautify`\n\n| Parameter | Required | Description |\n|-----------|----------|-------------|\n| `image_url` | Yes | Image URL |\n| `smoothing` | No | Skin smoothing 0–100 (default: 10) |\n| `whitening` | No | Whitening 0–100 (default: 30) |\n| `face_lifting` | No | Face slimming 0–100 (default: 70) |\n| `eye_enlarging` | No | Eye enlarging 0–100 (default: 70) |\n\n### `/face/analyze`\n\n| Parameter | Required | Description |\n|-----------|----------|-------------|\n| `image_url` | Yes | Image URL |\n| `mode` | No | `0` = all faces (default), `1` = largest face only |\n| `face_model_version` | No | Algorithm version (recommended: `3.0`) |\n| `need_rotate_detection` | No | `0` = disabled (default), `1` = enabled |\n\n## Gotchas\n\n- All face APIs return results synchronously. `/face/swap` additionally supports an optional `callback_url` parameter for async delivery (pass it to receive the result via webhook instead of waiting inline)\n- Face analyze returns 90+ keypoints per detected face, supporting multiple faces in one image\n- Face swap uses `source_image_url` (the face to apply) and `target_image_url` (the body to apply it to)\n- All APIs are currently in **Alpha** stage — interfaces may evolve\n- Images should contain clearly visible, front-facing faces for best results\n- Liveness detection helps distinguish live photos from printed/screen photos","tags":["face","transform","skills","acedatacloud","acedata-cloud","agent-skills","agentskills","ai-image","ai-music","ai-tools","ai-video","claude-code"],"capabilities":["skill","source-acedatacloud","skill-face-transform","topic-acedata-cloud","topic-agent-skills","topic-agentskills","topic-ai-image","topic-ai-music","topic-ai-tools","topic-ai-video","topic-claude-code","topic-cursor","topic-gemini-cli","topic-github-copilot","topic-mcp"],"categories":["Skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/AceDataCloud/Skills/face-transform","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add AceDataCloud/Skills","source_repo":"https://github.com/AceDataCloud/Skills","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (4,115 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:01.625Z","embedding":null,"createdAt":"2026-05-18T13:21:31.973Z","updatedAt":"2026-05-18T19:14:01.625Z","lastSeenAt":"2026-05-18T19:14:01.625Z","tsv":"'/_shared/authentication.md':52 '/face-photo.jpg':284 '/face/analyze':64,88,171,388 '/face/beautify':99,204,346 '/face/cartoon':135,268 '/face/change-age':105,215 '/face/change-gender':116,226 '/face/detect-live':144,279 '/face/swap':124,250,299,431 '/photo.jpg':176 '/portrait.jpg':81,209,220,231,273 '/source-face.jpg':256 '/target-person.jpg':262 '0':359,366,375,384,399,419 '1':158,403,422 '10':362 '100':360,367,376,385 '120':345 '2':199 '3':210 '3.0':414 '30':369 '4':221 '5':232 '6':263 '7':33,274 '70':378,387 '90':94,165,457 'acedatacloud':9,44,68 'addit':432 'age':106,211 'aging/de-aging':18 'algorithm':411 'alpha':493 'analysi':160 'analyz':4,39,455 'animated/cartoon':141 'anoth':133 'api':10,36,47,69,83,427,489 'api.acedata.cloud':63 'api.acedata.cloud/face/analyze':62 'appli':101,477,485 'application/json':75 'array':194 'async':335,440 'authent':51 'author':66 'avail':82 'avatar':28 'bash':58 'bearer':67 'beautif':100,201 'beautifi':16 'beauty/decoration':102 'best':508 'bodi':483 'callback':329,436 'cartoon':27,136,264 'characterist':122 'check':146 'clear':501 'common':286 'contain':500 'content':73 'content-typ':72 'contour':191 'convert':138 'coordin':198 'creat':26 'curl':59 'current':491 'd':76 'default':344,361,368,377,386,402,421 'deliveri':336,441 'descript':86,289,302,349,391 'detail':179 'detect':13,30,90,91,147,161,276,417,460,511 'disabl':420 'distinguish':513 'effect':103 'enabl':423 'endpoint':84,294 'enlarg':380,383 'evolv':497 'example.com':80,175,208,219,230,255,261,272,283 'example.com/face-photo.jpg':282 'example.com/photo.jpg':174 'example.com/portrait.jpg':79,207,218,229,271 'example.com/source-face.jpg':254 'example.com/target-person.jpg':260 'extract':164 'eye':184,186,379,382 'eyebrow':188,190 'face':2,7,14,19,23,35,37,42,46,89,92,97,110,125,131,150,159,162,168,200,233,237,244,296,310,315,327,370,373,401,405,407,426,454,461,464,468,475,505,506 'face-transform':1 'facial':120 'front':504 'front-fac':503 'gender':21,117,121,222 'gotcha':424 'h':65,71 'help':512 'imag':77,151,172,205,216,227,241,252,258,269,280,290,297,304,317,323,350,353,392,395,467,472,480,498 'includ':178 'inlin':453 'instead':450 'interfac':495 'json':169,202,213,224,248,266,277 'keypoint':15,93,166,180,458 'largest':404 'left':183,187 'lift':371 'live':31,145,155,275,510,514 'look':111 'make':108 'max':339 'may':496 'mode':397 'model':408 'mouth':182 'multipl':463 'need':415 'nose':181 'older':112 'one':128,466 'onto':328 'option':435 'paramet':285,287,300,347,389,438 'pass':442 'per':96,167,459 'person':129,156 'photo':25,515,518 'point':95 'portrait':17,139 'post':61,87,98,104,115,123,134,143,170,203,214,225,249,267,278 'printed/screen':517 'provid':32 'purpos':85 'put':325 'quick':56 'receiv':445 'recommend':413 'replac':22,127,235,313 'requir':288,301,348,390 'respons':177 'result':429,447,509 'return':428,456 'right':185,189 'rotat':416 'second':343 'see':50 'setup':49,55 'skill' 'skill-face-transform' 'skin':357 'slim':374 'smooth':355,358 'sourc':247,251,295,303,471 'source-acedatacloud' 'special':34 'stage':494 'start':57 'style':137,142,265 'suit':48 'support':433,462 'swap':20,118,126,223,234,469 'synchron':430 'target':240,257,316,479 'time':341 'timeout':337 'token':54,70 'topic-acedata-cloud' 'topic-agent-skills' 'topic-agentskills' 'topic-ai-image' 'topic-ai-music' 'topic-ai-tools' 'topic-ai-video' 'topic-claude-code' 'topic-cursor' 'topic-gemini-cli' 'topic-github-copilot' 'topic-mcp' 'transform':3,6,38,41,107,119,212 'type':74 'url':78,173,206,217,228,253,259,270,281,291,298,305,307,318,320,330,333,351,354,393,396,437,473,481 'use':11,312,470 'version':409,412 'via':8,448 'visibl':502 'wait':340,452 'webhook':332,449 'whiten':363,365 'workflow':157 'x':60,196 'y':197 'yes':292,306,319,352,394 'younger':114","prices":[{"id":"2e752d02-a144-413a-914d-36272adbf09c","listingId":"ba4a5401-4a01-4b37-8990-a6fa9a3aa3af","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"AceDataCloud","category":"Skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:31.973Z"}],"sources":[{"listingId":"ba4a5401-4a01-4b37-8990-a6fa9a3aa3af","source":"github","sourceId":"AceDataCloud/Skills/face-transform","sourceUrl":"https://github.com/AceDataCloud/Skills/tree/main/skills/face-transform","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:31.973Z","lastSeenAt":"2026-05-18T19:14:01.625Z"}],"details":{"listingId":"ba4a5401-4a01-4b37-8990-a6fa9a3aa3af","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"AceDataCloud","slug":"face-transform","github":{"repo":"AceDataCloud/Skills","stars":7,"topics":["acedata-cloud","agent-skills","agentskills","ai-image","ai-music","ai-tools","ai-video","claude-code","cursor","gemini-cli","github-copilot","mcp","npm","openai-codex","roo-code"],"license":"other","html_url":"https://github.com/AceDataCloud/Skills","pushed_at":"2026-05-18T07:35:03Z","description":"Agent Skills for AceDataCloud AI services — music, image, video generation, web search, and more. Compatible with Claude Code, GitHub Copilot, Gemini CLI, and all agentskills.io-compatible agents.","skill_md_sha":"228704758bdab4c7fc9abf9b9575b14fcbbe1a0b","skill_md_path":"skills/face-transform/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/AceDataCloud/Skills/tree/main/skills/face-transform"},"layout":"multi","source":"github","category":"Skills","frontmatter":{"name":"face-transform","license":"Apache-2.0","description":"Analyze and transform faces via AceDataCloud API. Use when detecting face keypoints, beautifying portraits, aging/de-aging faces, swapping genders, replacing faces between photos, creating cartoon avatars, or detecting liveness. Provides 7 specialized face APIs.","compatibility":"Requires ACEDATACLOUD_API_TOKEN in .env file (see _shared/authentication.md)."},"skills_sh_url":"https://skills.sh/AceDataCloud/Skills/face-transform"},"updatedAt":"2026-05-18T19:14:01.625Z"}}