Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.
POST
/
v1
/
head-swap
Python
from magic_hour import Clientfrom os import getenvclient = Client(token=getenv("MAGIC_HOUR_API_KEY"))res = client.v1.head_swap.generate( assets={ "body_file_path": "/path/to/body.png", "head_file_path": "/path/to/head.png", }, max_resolution=1024, name="My Head Swap image", wait_for_completion=True, download_outputs=True, download_directory=".",)
import { Client } from "magic-hour";
const client = new Client({ token: process.env["MAGIC_HOUR_API_KEY"] });
const res = await client.v1.headSwap.create({
assets: {
bodyFilePath: "api-assets/id/1234.png",
headFilePath: "api-assets/id/5678.png",
},
maxResolution: 1024,
name: "My Head Swap image",
});
Bearer authentication header of the form Bearer <api_key>, where <api_key> is your API key. To get your API key, go to Developer Hub and click "Create new API Key".
Constrains the larger dimension (height or width) of the output. Omit to use the maximum allowed for your plan (capped at 2048px). Values above your plan maximum are clamped down to your plan's maximum.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Magic Hour API Docs","description":"Easily generate videos, images, and audio using Magic Hour's API. Follow our documentation to seamlessly integrate AI content creation into your applications.","colors":{"primary":"#3b82f6","light":"#0564ff","dark":"#3b82f6"},"logo":{"light":"https://mintcdn.com/magichour/5sgGJpuuipkw5s5v/icons/logo-light.svg?fit=max\u0026auto=format\u0026n=5sgGJpuuipkw5s5v\u0026q=85\u0026s=1f167e30baf11927bc2e0932411e455b","dark":"https://mintcdn.com/magichour/5sgGJpuuipkw5s5v/icons/logo-dark.svg?fit=max\u0026auto=format\u0026n=5sgGJpuuipkw5s5v\u0026q=85\u0026s=15c8bda28931ac4e1e2fab2c0ba6f0d5"},"favicon":"https://mintcdn.com/magichour/kbUwXh9ksnVyRSci/icons/favicon.png?fit=max\u0026auto=format\u0026n=kbUwXh9ksnVyRSci\u0026q=85\u0026s=c4fda903b24dd7067dadd1bb75508987","appearance":{"default":"dark","strict":false},"background":{"decoration":"gradient"},"navbar":{"links":[{"href":"mailto:support@magichour.ai","label":"Support"}],"primary":{"type":"button","label":"Get API key","href":"https://magichour.ai/developer?tab=api-keys\u0026ref=docs-navbar\u0026utm_source=docs\u0026utm_medium=referral\u0026utm_campaign=navbar"}},"footer":{"socials":{"website":"https://magichour.ai/?utm_source=docs\u0026utm_medium=referral\u0026utm_campaign=footer","x":"https://x.com/magichourai","github":"https://github.com/magichourhq","linkedin":"https://linkedin.com/company/magichour","instagram":"https://instagram.com/magichourai","youtube":"https://youtube.com/@magichourai"}},"seo":{"metatags":{"og:image":"https://d28dkohlqf5vwj.cloudfront.net/open-graph/logo-social-noisy-spectrum.jpg","twitter:image":"https://d28dkohlqf5vwj.cloudfront.net/open-graph/logo-social-noisy-spectrum.jpg"}},"integrations":{"ga4":{"measurementId":"G-CZ9Q9NBZB3"},"posthog":{"apiKey":"phc_EmzSy2RU0TOPhpouazMzxFedNdMyhze8HakyjffW2Wr","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["chatgpt","claude","perplexity","mcp","cursor","vscode","copy","view"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"API quickstart","icon":"forward-fast","href":"/get-started/quick-start"},{"anchor":"API pricing","icon":"credit-card","href":"/billing/overview"},{"anchor":"Community","icon":"discord","href":"https://discord.com/invite/JX5rgsZaJp"},{"anchor":"Status","icon":"wave-pulse","href":"https://status.magichour.ai"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"magichour","hasAudioNarration":false,"actualSubdomain":"magichour","customDomains":["docs.magichour.ai"],"gitSource":{"type":"github","owner":"magichourhq","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aecb80c7e2a3b454e467e7f","collectionId":"f70f10c6-0e08-430b-8d45-0b00e28cff62","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aecb80c7e2a3b454e467e7f"},"feedback":{"thumbs":true,"issues":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aecb80c7e2a3b454e467e7f","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"Documentation","count":97},{"language":"default","tag":"Integration","count":56},{"language":"default","tag":"API Reference","count":46},{"language":"default","tag":"Tools","count":30},{"language":"default","tag":"Image Projects","count":16},{"language":"default","tag":"Video Projects","count":16},{"language":"default","tag":"Images","count":15},{"language":"default","tag":"Video","count":12},{"language":"default","tag":"Webhook Reference","count":10},{"language":"default","tag":"Get Started","count":7}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#sidebar,#table-of-contents-content{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-gutter:none;scrollbar-color:gray transparent}"}],"page":{"pagePath":"api-reference/image-projects/head-swap","slug":"/api-reference/image-projects/head-swap","pageMetadata":{"openapi":"post /v1/head-swap","title":"Head Swap API Reference - Magic Hour Docs","sidebarTitle":"Head Swap","description":"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set `max_resolution` lower than your plan maximum if desired.","href":"/api-reference/image-projects/head-swap"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set \", _jsx(_components.code, {\n children: \"max_resolution\"\n }), \" lower than your plan maximum if desired.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /v1/head-swap","title":"Head Swap API Reference - Magic Hour Docs","sidebarTitle":"Head Swap","description":"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set `max_resolution` lower than your plan maximum if desired.","href":"/api-reference/image-projects/head-swap"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set `max_resolution` lower than your plan maximum if desired.","summary":"Head Swap","tags":["Image Projects"],"parameters":[],"operationId":"headSwap.createImage","requestBody":"10eed625-4ab9-4327-9cd6-cbff4d75f968","responses":{"200":"d0e3ad92-4895-43fd-91f8-8a8d9824ae6e","400":"7f1e3400-fcad-4373-bfcd-be81b473fad6","401":"e392dfe3-a067-4b37-b042-fb21a0096261","402":"aeff8f1f-9e94-446f-a2ed-64eede260630","404":"20bcf49c-51c8-4400-beb0-b94d08d9e496","422":"18d485a0-794d-4450-94af-31a196c7dbf2","500":"741c43a5-66f1-4112-995c-e59ae148bdff"},"security":["a7d5632b-8484-45f5-bc56-4287d427bb5b"],"x-codeSamples":[{"lang":"python","source":"from magic_hour import Client\nfrom os import getenv\n\nclient = Client(token=getenv(\"MAGIC_HOUR_API_KEY\"))\nres = client.v1.head_swap.generate(\n assets={\n \"body_file_path\": \"/path/to/body.png\",\n \"head_file_path\": \"/path/to/head.png\",\n },\n max_resolution=1024,\n name=\"My Head Swap image\",\n wait_for_completion=True,\n download_outputs=True,\n download_directory=\".\",\n)"},{"lang":"javascript","source":"import { Client } from \"magic-hour\";\n\nconst client = new Client({ token: process.env[\"MAGIC_HOUR_API_KEY\"] });\nconst res = await client.v1.headSwap.create({\n assets: {\n bodyFilePath: \"api-assets/id/1234.png\",\n headFilePath: \"api-assets/id/5678.png\",\n },\n maxResolution: 1024,\n name: \"My Head Swap image\",\n});"},{"lang":"go","source":"package main\n\nimport (\n\tos \"os\"\n\n\tsdk \"github.com/magichourhq/magic-hour-go/client\"\n\tnullable \"github.com/magichourhq/magic-hour-go/nullable\"\n\thead_swap \"github.com/magichourhq/magic-hour-go/resources/v1/head_swap\"\n\ttypes \"github.com/magichourhq/magic-hour-go/types\"\n)\n\nfunc main() {\n\tclient := sdk.NewClient(\n\t\tsdk.WithBearerAuth(os.Getenv(\"MAGIC_HOUR_API_KEY\")),\n\t)\n\tres, err := client.V1.HeadSwap.Create(head_swap.CreateRequest{\n\t\tAssets: types.V1HeadSwapCreateBodyAssets{\n\t\t\tBodyFilePath: \"api-assets/id/1234.png\",\n\t\t\tHeadFilePath: \"api-assets/id/5678.png\",\n\t\t},\n\t\tMaxResolution: nullable.NewValue(1024),\n\t\tName: nullable.NewValue(\"My Head Swap image\"),\n\t})\n}"},{"lang":"rust","source":"let client = magic_hour::Client::default()\n .with_bearer_auth(\u0026std::env::var(\"MAGIC_HOUR_API_KEY\").unwrap());\nlet res = client\n .v1()\n .head_swap()\n .create(magic_hour::resources::v1::head_swap::CreateRequest {\n assets: magic_hour::models::V1HeadSwapCreateBodyAssets {\n body_file_path: \"api-assets/id/1234.png\".to_string(),\n head_file_path: \"api-assets/id/5678.png\".to_string(),\n },\n max_resolution: Some(1024),\n name: Some(\"My Head Swap image\".to_string()),\n })\n .await;"},{"lang":"curl","source":"curl --request POST \\\n --url https://api.magichour.ai/v1/head-swap \\\n --header 'accept: application/json' \\\n --header \"authorization: Bearer $MAGIC_HOUR_API_KEY\" \\\n --header 'content-type: application/json' \\\n --data '\n{\n \"name\": \"My Head Swap image\",\n \"max_resolution\": 1024,\n \"assets\": {\n \"body_file_path\": \"api-assets/id/1234.png\",\n \"head_file_path\": \"api-assets/id/5678.png\"\n }\n}\n'"},{"lang":"php","source":"\u003c?php\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n CURLOPT_URL => \"https://api.magichour.ai/v1/head-swap\",\n CURLOPT_RETURNTRANSFER => true,\n CURLOPT_ENCODING => \"\",\n CURLOPT_MAXREDIRS => 10,\n CURLOPT_TIMEOUT => 30,\n CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n CURLOPT_CUSTOMREQUEST => \"POST\",\n CURLOPT_POSTFIELDS => json_encode([\n 'name' => 'My Head Swap image',\n 'max_resolution' => 1024,\n 'assets' => [\n 'body_file_path' => 'api-assets/id/1234.png',\n 'head_file_path' => 'api-assets/id/5678.png'\n ]\n ]),\n CURLOPT_HTTPHEADER => [\n \"accept: application/json\",\n \"authorization: Bearer \u003ctoken>\",\n \"content-type: application/json\"\n ],\n]);\n\n$response = curl_exec($curl);\n$err = curl_error($curl);\n\ncurl_close($curl);\n\nif ($err) {\n echo \"cURL Error #:\" . $err;\n} else {\n echo $response;\n}"},{"lang":"java","source":"HttpResponse\u003cString> response = Unirest.post(\"https://api.magichour.ai/v1/head-swap\")\n .header(\"accept\", \"application/json\")\n .header(\"content-type\", \"application/json\")\n .header(\"authorization\", \"Bearer \u003ctoken>\")\n .body(\"{\\\"name\\\":\\\"My Head Swap image\\\",\\\"max_resolution\\\":1024,\\\"assets\\\":{\\\"body_file_path\\\":\\\"api-assets/id/1234.png\\\",\\\"head_file_path\\\":\\\"api-assets/id/5678.png\\\"}}\")\n .asString();"}],"method":"post","type":"path","servers":["28f6fa01-b971-4608-9922-fbb0960b0329"],"path":"/v1/head-swap","baseUrlOptions":["https://api.magichour.ai"],"title":"Head Swap","codeSamples":[{"lang":"python","source":"from magic_hour import Client\nfrom os import getenv\n\nclient = Client(token=getenv(\"MAGIC_HOUR_API_KEY\"))\nres = client.v1.head_swap.generate(\n assets={\n \"body_file_path\": \"/path/to/body.png\",\n \"head_file_path\": \"/path/to/head.png\",\n },\n max_resolution=1024,\n name=\"My Head Swap image\",\n wait_for_completion=True,\n download_outputs=True,\n download_directory=\".\",\n)"},{"lang":"javascript","source":"import { Client } from \"magic-hour\";\n\nconst client = new Client({ token: process.env[\"MAGIC_HOUR_API_KEY\"] });\nconst res = await client.v1.headSwap.create({\n assets: {\n bodyFilePath: \"api-assets/id/1234.png\",\n headFilePath: \"api-assets/id/5678.png\",\n },\n maxResolution: 1024,\n name: \"My Head Swap image\",\n});"},{"lang":"go","source":"package main\n\nimport (\n\tos \"os\"\n\n\tsdk \"github.com/magichourhq/magic-hour-go/client\"\n\tnullable \"github.com/magichourhq/magic-hour-go/nullable\"\n\thead_swap \"github.com/magichourhq/magic-hour-go/resources/v1/head_swap\"\n\ttypes \"github.com/magichourhq/magic-hour-go/types\"\n)\n\nfunc main() {\n\tclient := sdk.NewClient(\n\t\tsdk.WithBearerAuth(os.Getenv(\"MAGIC_HOUR_API_KEY\")),\n\t)\n\tres, err := client.V1.HeadSwap.Create(head_swap.CreateRequest{\n\t\tAssets: types.V1HeadSwapCreateBodyAssets{\n\t\t\tBodyFilePath: \"api-assets/id/1234.png\",\n\t\t\tHeadFilePath: \"api-assets/id/5678.png\",\n\t\t},\n\t\tMaxResolution: nullable.NewValue(1024),\n\t\tName: nullable.NewValue(\"My Head Swap image\"),\n\t})\n}"},{"lang":"rust","source":"let client = magic_hour::Client::default()\n .with_bearer_auth(\u0026std::env::var(\"MAGIC_HOUR_API_KEY\").unwrap());\nlet res = client\n .v1()\n .head_swap()\n .create(magic_hour::resources::v1::head_swap::CreateRequest {\n assets: magic_hour::models::V1HeadSwapCreateBodyAssets {\n body_file_path: \"api-assets/id/1234.png\".to_string(),\n head_file_path: \"api-assets/id/5678.png\".to_string(),\n },\n max_resolution: Some(1024),\n name: Some(\"My Head Swap image\".to_string()),\n })\n .await;"},{"lang":"curl","source":"curl --request POST \\\n --url https://api.magichour.ai/v1/head-swap \\\n --header 'accept: application/json' \\\n --header \"authorization: Bearer $MAGIC_HOUR_API_KEY\" \\\n --header 'content-type: application/json' \\\n --data '\n{\n \"name\": \"My Head Swap image\",\n \"max_resolution\": 1024,\n \"assets\": {\n \"body_file_path\": \"api-assets/id/1234.png\",\n \"head_file_path\": \"api-assets/id/5678.png\"\n }\n}\n'"},{"lang":"php","source":"\u003c?php\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n CURLOPT_URL => \"https://api.magichour.ai/v1/head-swap\",\n CURLOPT_RETURNTRANSFER => true,\n CURLOPT_ENCODING => \"\",\n CURLOPT_MAXREDIRS => 10,\n CURLOPT_TIMEOUT => 30,\n CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n CURLOPT_CUSTOMREQUEST => \"POST\",\n CURLOPT_POSTFIELDS => json_encode([\n 'name' => 'My Head Swap image',\n 'max_resolution' => 1024,\n 'assets' => [\n 'body_file_path' => 'api-assets/id/1234.png',\n 'head_file_path' => 'api-assets/id/5678.png'\n ]\n ]),\n CURLOPT_HTTPHEADER => [\n \"accept: application/json\",\n \"authorization: Bearer \u003ctoken>\",\n \"content-type: application/json\"\n ],\n]);\n\n$response = curl_exec($curl);\n$err = curl_error($curl);\n\ncurl_close($curl);\n\nif ($err) {\n echo \"cURL Error #:\" . $err;\n} else {\n echo $response;\n}"},{"lang":"java","source":"HttpResponse\u003cString> response = Unirest.post(\"https://api.magichour.ai/v1/head-swap\")\n .header(\"accept\", \"application/json\")\n .header(\"content-type\", \"application/json\")\n .header(\"authorization\", \"Bearer \u003ctoken>\")\n .body(\"{\\\"name\\\":\\\"My Head Swap image\\\",\\\"max_resolution\\\":1024,\\\"assets\\\":{\\\"body_file_path\\\":\\\"api-assets/id/1234.png\\\",\\\"head_file_path\\\":\\\"api-assets/id/5678.png\\\"}}\")\n .asString();"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"description":"Body","content":{"application/json":{"schema":{"type":"object","properties":{"assets":{"type":"object","properties":{"body_file_path":{"type":"string","minLength":1,"description":"Image that receives the swapped head. This value is either\n- a direct URL to the file. The URL path must end in a supported file extension.\n- `file_path` field from the response of the [upload urls API](https://docs.magichour.ai/api-reference/files/generate-asset-upload-urls).\n\nSee the [file upload guide](https://docs.magichour.ai/api-reference/files/generate-asset-upload-urls#input-file) for details.\n","example":"api-assets/id/1234.png","isRequired":true,"uniqueKey":"assets.body_file_path","typeLabel":"string"},"head_file_path":{"type":"string","minLength":1,"description":"Image of the head to place on the body. This value is either\n- a direct URL to the file. The URL path must end in a supported file extension.\n- `file_path` field from the response of the [upload urls API](https://docs.magichour.ai/api-reference/files/generate-asset-upload-urls).\n\nSee the [file upload guide](https://docs.magichour.ai/api-reference/files/generate-asset-upload-urls#input-file) for details.\n","example":"api-assets/id/5678.png","isRequired":true,"uniqueKey":"assets.head_file_path","typeLabel":"string"}},"required":["body_file_path","head_file_path"],"description":"Provide the body and head images for head swap","isRequired":true,"uniqueKey":"assets","typeLabel":"object"},"name":{"type":"string","description":"Give your image a custom name for easy identification.","example":"My Head Swap image","default":"Head Swap - dateTime","uniqueKey":"name","typeLabel":"string"},"max_resolution":{"type":"integer","description":"Constrains the larger dimension (height or width) of the output. Omit to use the maximum allowed for your plan (capped at 2048px). Values above your plan maximum are clamped down to your plan's maximum.","example":1024,"uniqueKey":"max_resolution","typeLabel":"integer"}},"required":["assets"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"assets":{"body_file_path":"api-assets/id/1234.png","head_file_path":"api-assets/id/5678.png"},"name":"My Head Swap image","max_resolution":1024}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"d0e3ad92-4895-43fd-91f8-8a8d9824ae6e":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","example":"cuid-example","description":"Unique ID of the image. Use it with the [Get image Project API](https://docs.magichour.ai/api-reference/image-projects/get-image-details) to fetch status and downloads.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"credits_charged":{"type":"integer","description":"The amount of credits deducted from your account to generate the image. We charge credits right when the request is made. \n\nIf an error occurred while generating the image(s), credits will be refunded and this field will be updated to include the refund.","example":10,"isRequired":true,"uniqueKey":"credits_charged","typeLabel":"integer"}},"required":["id","credits_charged"],"description":"Success","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"cuid-example","credits_charged":10}}},"exampleType":"generated"}},"exampleType":"generated"},"7f1e3400-fcad-4373-bfcd-be81b473fad6":{"description":"Invalid Request","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["invalid_request"],"description":"Machine-readable error code.\n\n- `invalid_request`: Fix request syntax or validation errors before retrying.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"invalid_request","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"e392dfe3-a067-4b37-b042-fb21a0096261":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["unauthorized"],"description":"Machine-readable error code.\n\n- `unauthorized`: Provide a valid API key before retrying.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"unauthorized","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"aeff8f1f-9e94-446f-a2ed-64eede260630":{"description":"Payment Required","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["insufficient_credits","subscription_required","plan_upgrade_required"],"description":"Machine-readable error code.\n\n- `insufficient_credits`: Purchase credits before retrying.\n\n- `subscription_required`: Start a subscription before retrying.\n\n- `plan_upgrade_required`: Upgrade the subscription plan before retrying.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"insufficient_credits","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"20bcf49c-51c8-4400-beb0-b94d08d9e496":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["not_found"],"description":"Machine-readable error code.\n\n- `not_found`: Check the route or resource identifier.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"not_found","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"18d485a0-794d-4450-94af-31a196c7dbf2":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["unprocessable_entity"],"description":"Machine-readable error code.\n\n- `unprocessable_entity`: Change the request values before retrying.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"unprocessable_entity","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"741c43a5-66f1-4112-995c-e59ae148bdff":{"description":"Internal Server Error","content":{"application/json":{"schema":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["internal_server_error"],"description":"Machine-readable error code.\n\n- `internal_server_error`: Retry later or contact support if the error continues.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable error message.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"internal_server_error","message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a7d5632b-8484-45f5-bc56-4287d427bb5b":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Bearer authentication header of the form `Bearer \u003capi_key>`, where `\u003capi_key>` is your API key. To get your API key, go to [Developer Hub](https://magichour.ai/developer?tab=api-keys\u0026utm_source=docs\u0026utm_medium=referral\u0026utm_campaign=api-reference) and click \"Create new API Key\".","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"28f6fa01-b971-4608-9922-fbb0960b0329":{"url":"https://api.magichour.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Bearer authentication header of the form `Bearer \u003capi_key>`, where `\u003capi_key>` is your API key. To get your API key, go to [Developer Hub](https://magichour.ai/developer?tab=api-keys\u0026utm_source=docs\u0026utm_medium=referral\u0026utm_campaign=api-reference) and click \"Create new API Key\".","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003capi_key>`, where `\u003capi_key>` is your API key. To get your API key, go to [Developer Hub](https://magichour.ai/developer?tab=api-keys\u0026utm_source=docs\u0026utm_medium=referral\u0026utm_campaign=api-reference) and click \"Create new API Key\".","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"magichour","siteName":"Magic Hour API Docs","title":"Head Swap API Reference - Magic Hour Docs - Magic Hour API Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T17:08:41.920Z","originalFileLocation":"api-reference/image-projects/head-swap.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Magic Hour API Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Head Swap API Reference - Magic Hour Docs - Magic Hour API Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Magic Hour API Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.magichour.ai/api-reference/image-projects/head-swap\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://d28dkohlqf5vwj.cloudfront.net/open-graph/logo-social-noisy-spectrum.jpg\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Head Swap API Reference - Magic Hour Docs - Magic Hour API Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://d28dkohlqf5vwj.cloudfront.net/open-graph/logo-social-noisy-spectrum.jpg\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/magichour/pV2W72GIHTaiOFzk/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Magic Hour API Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3b82f6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.magichour.ai/api-reference/image-projects/head-swap\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/image-projects/head-swap.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.magichour.ai/#organization\",\"name\":\"Magic Hour API Docs\",\"url\":\"https://docs.magichour.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/magichour/5sgGJpuuipkw5s5v/icons/logo-light.svg?fit=max\u0026auto=format\u0026n=5sgGJpuuipkw5s5v\u0026q=85\u0026s=1f167e30baf11927bc2e0932411e455b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.magichour.ai#website\",\"name\":\"Magic Hour API Docs\",\"url\":\"https://docs.magichour.ai\",\"publisher\":{\"@id\":\"https://docs.magichour.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap#webpage\",\"url\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap\",\"name\":\"Head Swap API Reference - Magic Hour Docs\",\"description\":\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.\",\"dateModified\":\"2026-11-05T17:08:41.920Z\",\"isPartOf\":{\"@id\":\"https://docs.magichour.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Image Projects\",\"item\":\"https://docs.magichour.ai/api-reference/image-projects/get-image-details\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Head Swap API Reference - Magic Hour Docs\",\"item\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap#apireference\",\"headline\":\"Head Swap API Reference - Magic Hour Docs\",\"name\":\"Head Swap API Reference - Magic Hour Docs\",\"description\":\"Swap a head onto a body image. Each image costs 10 credits. Output resolution depends on your subscription; you may set max_resolution lower than your plan maximum if desired.\",\"url\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap\",\"mainEntityOfPage\":{\"@id\":\"https://docs.magichour.ai/api-reference/image-projects/head-swap#webpage\"},\"image\":\"https://d28dkohlqf5vwj.cloudfront.net/open-graph/logo-social-noisy-spectrum.jpg\",\"dateModified\":\"2026-11-05T17:08:41.920Z\",\"publisher\":{\"@id\":\"https://docs.magichour.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.magichour.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Magic Hour API Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Magic Hour API Docs","nav":{"global":{"anchors":[{"anchor":"API quickstart","icon":"forward-fast","href":"/get-started/quick-start"},{"anchor":"API pricing","icon":"credit-card","href":"/billing/overview"},{"anchor":"Community","icon":"discord","href":"https://discord.com/invite/JX5rgsZaJp"},{"anchor":"Status","icon":"wave-pulse","href":"https://status.magichour.ai"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/overview"},{"title":"Models and Credit Costs","sidebarTitle":"Models","href":"/api-reference/models"},{"title":"Historical API Processing Times","sidebarTitle":"Processing Times","href":"/api-reference/processing-times"},{"group":"Account","pages":[{"openapi":"get /v1/account","title":"Get account details","href":"/api-reference/account/get-account-details"}]},{"group":"Files","pages":[{"openapi":"get /v1/saved-items","title":"List saved items","href":"/api-reference/files/list-saved-items"},{"openapi":"post /v1/files/upload-urls","title":"Generate Asset Upload Urls API Reference - Magic Hour Docs","sidebarTitle":"Generate Asset Upload Urls","href":"/api-reference/files/generate-asset-upload-urls"},{"openapi":"get /v1/face-detection/{id}","title":"Get Face Detection Details API Reference - Magic Hour Docs","sidebarTitle":"Get Face Detection Details","href":"/api-reference/files/get-face-detection-details"},{"openapi":"post /v1/face-detection","title":"Face Detection API Reference - Magic Hour Docs","sidebarTitle":"Face Detection","href":"/api-reference/files/face-detection"}]},{"group":"Video Projects","pages":[{"openapi":"get /v1/video-projects/{id}","title":"Get Video Details API Reference - Magic Hour Docs","sidebarTitle":"Get Video Details","href":"/api-reference/video-projects/get-video-details"},{"openapi":"delete /v1/video-projects/{id}","title":"Delete Video API Reference - Magic Hour Docs","sidebarTitle":"Delete Video","href":"/api-reference/video-projects/delete-video"},{"openapi":"post /v1/ai-talking-photo","title":"AI Talking Photo API Reference - Magic Hour Docs","sidebarTitle":"AI Talking Photo","href":"/api-reference/video-projects/ai-talking-photo"},{"openapi":"post /v1/ai-ugc-ad","title":"AI UGC Ad Generator","href":"/api-reference/video-projects/ai-ugc-ad-generator"},{"openapi":"post /v1/ai-video-editor","title":"AI Video Editor","href":"/api-reference/video-projects/ai-video-editor"},{"openapi":"post /v1/ai-video-translator","title":"AI Video Translator","href":"/api-reference/video-projects/ai-video-translator"},{"openapi":"post /v1/ai-video-upscaler","title":"AI Video Upscaler","href":"/api-reference/video-projects/ai-video-upscaler"},{"openapi":"post /v1/animation","title":"Animation API Reference - Magic Hour Docs","sidebarTitle":"Animation","href":"/api-reference/video-projects/animation"},{"openapi":"post /v1/audio-to-video","title":"Audio-to-Video","href":"/api-reference/video-projects/audio-to-video"},{"openapi":"post /v1/auto-subtitle-generator","title":"Auto Subtitle Generator API Reference - Magic Hour Docs","sidebarTitle":"Auto Subtitle Generator","href":"/api-reference/video-projects/auto-subtitle-generator"},{"openapi":"post /v1/character-replace","title":"Character Replace API Reference - Magic Hour Docs","sidebarTitle":"Character Replace","href":"/api-reference/video-projects/character-replace"},{"openapi":"post /v1/face-swap","title":"Face Swap Video API Reference - Magic Hour Docs","sidebarTitle":"Face Swap Video","href":"/api-reference/video-projects/face-swap-video"},{"openapi":"post /v1/image-to-video","title":"Image-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Image-to-Video","href":"/api-reference/video-projects/image-to-video"},{"openapi":"post /v1/lip-sync","title":"Lip Sync API Reference - Magic Hour Docs","sidebarTitle":"Lip Sync","href":"/api-reference/video-projects/lip-sync"},{"openapi":"post /v1/text-to-video","title":"Text-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Text-to-Video","href":"/api-reference/video-projects/text-to-video"},{"openapi":"post /v1/video-to-video","title":"Video-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Video-to-Video","href":"/api-reference/video-projects/video-to-video"}]},{"group":"Image Projects","pages":[{"openapi":"get /v1/image-projects/{id}","title":"Get Image Details API Reference - Magic Hour Docs","sidebarTitle":"Get Image Details","href":"/api-reference/image-projects/get-image-details"},{"openapi":"delete /v1/image-projects/{id}","title":"Delete Image API Reference - Magic Hour Docs","sidebarTitle":"Delete Image","href":"/api-reference/image-projects/delete-image"},{"openapi":"post /v1/ai-clothes-changer","title":"AI Clothes Changer API Reference - Magic Hour Docs","sidebarTitle":"AI Clothes Changer","href":"/api-reference/image-projects/ai-clothes-changer"},{"openapi":"post /v1/ai-face-editor","title":"AI Face Editor API Reference - Magic Hour Docs","sidebarTitle":"AI Face Editor","href":"/api-reference/image-projects/ai-face-editor"},{"openapi":"post /v1/ai-gif-generator","title":"AI GIF Generator API Reference - Magic Hour Docs","sidebarTitle":"AI GIF Generator","href":"/api-reference/image-projects/ai-gif-generator"},{"openapi":"post /v1/ai-image-editor","title":"AI Image Editor API Reference - Magic Hour Docs","sidebarTitle":"AI Image Editor","href":"/api-reference/image-projects/ai-image-editor"},{"openapi":"post /v1/ai-headshot-generator","title":"AI Headshot Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Headshot Generator","href":"/api-reference/image-projects/ai-headshot-generator"},{"openapi":"post /v1/ai-image-generator","title":"AI Image Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Image Generator","href":"/api-reference/image-projects/ai-image-generator"},{"openapi":"post /v1/ai-image-upscaler","title":"AI Image Upscaler API Reference - Magic Hour Docs","sidebarTitle":"AI Image Upscaler","href":"/api-reference/image-projects/ai-image-upscaler"},{"openapi":"post /v1/ai-meme-generator","title":"AI Meme Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Meme Generator","href":"/api-reference/image-projects/ai-meme-generator"},{"openapi":"post /v1/ai-qr-code-generator","title":"AI QR Code Generator API Reference - Magic Hour Docs","sidebarTitle":"AI QR Code Generator","href":"/api-reference/image-projects/ai-qr-code-generator"},{"openapi":"post /v1/body-swap","title":"Body Swap","href":"/api-reference/image-projects/body-swap"},{"openapi":"post /v1/face-swap-photo","title":"Face Swap Photo API Reference - Magic Hour Docs","sidebarTitle":"Face Swap Photo","description":"Create a face swap photo. Each photo costs 10 credits. The height/width of the output image depends on your subscription. Please refer to our [pricing](https://magichour.ai/pricing) page for more details","href":"/api-reference/image-projects/face-swap-photo"},{"openapi":"post /v1/head-swap","title":"Head Swap API Reference - Magic Hour Docs","sidebarTitle":"Head Swap","href":"/api-reference/image-projects/head-swap"},{"openapi":"post /v1/image-background-remover","title":"Image Background Remover API Reference - Magic Hour Docs","sidebarTitle":"Image Background Remover","description":"Remove background from image. Each image costs 5 credits.","href":"/api-reference/image-projects/image-background-remover"},{"openapi":"post /v1/photo-colorizer","title":"Photo Colorizer API Reference - Magic Hour Docs","sidebarTitle":"Photo Colorizer","href":"/api-reference/image-projects/photo-colorizer"}]},{"group":"Audio Projects","pages":[{"openapi":"get /v1/voices","title":"List voices","href":"/api-reference/audio-projects/list-voices"},{"openapi":"get /v1/audio-projects/{id}","title":"Get Audio Details API Reference - Magic Hour Docs","sidebarTitle":"Get Audio Details","href":"/api-reference/audio-projects/get-audio-details"},{"openapi":"delete /v1/audio-projects/{id}","title":"Delete Audio API Reference - Magic Hour Docs","sidebarTitle":"Delete Audio","href":"/api-reference/audio-projects/delete-audio"},{"openapi":"post /v1/ai-music-generator","title":"AI Music Generator","href":"/api-reference/audio-projects/ai-music-generator"},{"openapi":"post /v1/ai-voice-generator","title":"AI Voice Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Voice Generator","href":"/api-reference/audio-projects/ai-voice-generator"},{"openapi":"post /v1/ai-voice-cloner","title":"AI Voice Cloner API Reference - Magic Hour Docs","sidebarTitle":"AI Voice Cloner","href":"/api-reference/audio-projects/ai-voice-cloner"}]}],"groups":[{"group":"Account","pages":[{"openapi":"get /v1/account","title":"Get account details","href":"/api-reference/account/get-account-details"}]},{"group":"Files","pages":[{"openapi":"get /v1/saved-items","title":"List saved items","href":"/api-reference/files/list-saved-items"},{"openapi":"post /v1/files/upload-urls","title":"Generate Asset Upload Urls API Reference - Magic Hour Docs","sidebarTitle":"Generate Asset Upload Urls","href":"/api-reference/files/generate-asset-upload-urls"},{"openapi":"get /v1/face-detection/{id}","title":"Get Face Detection Details API Reference - Magic Hour Docs","sidebarTitle":"Get Face Detection Details","href":"/api-reference/files/get-face-detection-details"},{"openapi":"post /v1/face-detection","title":"Face Detection API Reference - Magic Hour Docs","sidebarTitle":"Face Detection","href":"/api-reference/files/face-detection"}]},{"group":"Audio Projects","pages":[{"openapi":"get /v1/voices","title":"List voices","href":"/api-reference/audio-projects/list-voices"},{"openapi":"get /v1/audio-projects/{id}","title":"Get Audio Details API Reference - Magic Hour Docs","sidebarTitle":"Get Audio Details","href":"/api-reference/audio-projects/get-audio-details"},{"openapi":"delete /v1/audio-projects/{id}","title":"Delete Audio API Reference - Magic Hour Docs","sidebarTitle":"Delete Audio","href":"/api-reference/audio-projects/delete-audio"},{"openapi":"post /v1/ai-music-generator","title":"AI Music Generator","href":"/api-reference/audio-projects/ai-music-generator"},{"openapi":"post /v1/ai-voice-cloner","title":"AI Voice Cloner API Reference - Magic Hour Docs","sidebarTitle":"AI Voice Cloner","href":"/api-reference/audio-projects/ai-voice-cloner"},{"openapi":"post /v1/ai-voice-generator","title":"AI Voice Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Voice Generator","href":"/api-reference/audio-projects/ai-voice-generator"}]},{"group":"Video Projects","pages":[{"openapi":"get /v1/video-projects/{id}","title":"Get Video Details API Reference - Magic Hour Docs","sidebarTitle":"Get Video Details","href":"/api-reference/video-projects/get-video-details"},{"openapi":"delete /v1/video-projects/{id}","title":"Delete Video API Reference - Magic Hour Docs","sidebarTitle":"Delete Video","href":"/api-reference/video-projects/delete-video"},{"openapi":"post /v1/ai-talking-photo","title":"AI Talking Photo API Reference - Magic Hour Docs","sidebarTitle":"AI Talking Photo","href":"/api-reference/video-projects/ai-talking-photo"},{"openapi":"post /v1/ai-ugc-ad","title":"AI UGC Ad Generator","href":"/api-reference/video-projects/ai-ugc-ad-generator"},{"openapi":"post /v1/ai-video-editor","title":"AI Video Editor","href":"/api-reference/video-projects/ai-video-editor"},{"openapi":"post /v1/ai-video-translator","title":"AI Video Translator","href":"/api-reference/video-projects/ai-video-translator"},{"openapi":"post /v1/ai-video-upscaler","title":"AI Video Upscaler","href":"/api-reference/video-projects/ai-video-upscaler"},{"openapi":"post /v1/animation","title":"Animation API Reference - Magic Hour Docs","sidebarTitle":"Animation","href":"/api-reference/video-projects/animation"},{"openapi":"post /v1/audio-to-video","title":"Audio-to-Video","href":"/api-reference/video-projects/audio-to-video"},{"openapi":"post /v1/auto-subtitle-generator","title":"Auto Subtitle Generator API Reference - Magic Hour Docs","sidebarTitle":"Auto Subtitle Generator","href":"/api-reference/video-projects/auto-subtitle-generator"},{"openapi":"post /v1/character-replace","title":"Character Replace API Reference - Magic Hour Docs","sidebarTitle":"Character Replace","href":"/api-reference/video-projects/character-replace"},{"openapi":"post /v1/face-swap","title":"Face Swap Video API Reference - Magic Hour Docs","sidebarTitle":"Face Swap Video","href":"/api-reference/video-projects/face-swap-video"},{"openapi":"post /v1/image-to-video","title":"Image-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Image-to-Video","href":"/api-reference/video-projects/image-to-video"},{"openapi":"post /v1/lip-sync","title":"Lip Sync API Reference - Magic Hour Docs","sidebarTitle":"Lip Sync","href":"/api-reference/video-projects/lip-sync"},{"openapi":"post /v1/text-to-video","title":"Text-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Text-to-Video","href":"/api-reference/video-projects/text-to-video"},{"openapi":"post /v1/video-to-video","title":"Video-to-Video API Reference - Magic Hour Docs","sidebarTitle":"Video-to-Video","href":"/api-reference/video-projects/video-to-video"}]},{"group":"Image Projects","pages":[{"openapi":"get /v1/image-projects/{id}","title":"Get Image Details API Reference - Magic Hour Docs","sidebarTitle":"Get Image Details","href":"/api-reference/image-projects/get-image-details"},{"openapi":"delete /v1/image-projects/{id}","title":"Delete Image API Reference - Magic Hour Docs","sidebarTitle":"Delete Image","href":"/api-reference/image-projects/delete-image"},{"openapi":"post /v1/ai-clothes-changer","title":"AI Clothes Changer API Reference - Magic Hour Docs","sidebarTitle":"AI Clothes Changer","href":"/api-reference/image-projects/ai-clothes-changer"},{"openapi":"post /v1/ai-face-editor","title":"AI Face Editor API Reference - Magic Hour Docs","sidebarTitle":"AI Face Editor","href":"/api-reference/image-projects/ai-face-editor"},{"openapi":"post /v1/ai-gif-generator","title":"AI GIF Generator API Reference - Magic Hour Docs","sidebarTitle":"AI GIF Generator","href":"/api-reference/image-projects/ai-gif-generator"},{"openapi":"post /v1/ai-image-editor","title":"AI Image Editor API Reference - Magic Hour Docs","sidebarTitle":"AI Image Editor","href":"/api-reference/image-projects/ai-image-editor"},{"openapi":"post /v1/ai-headshot-generator","title":"AI Headshot Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Headshot Generator","href":"/api-reference/image-projects/ai-headshot-generator"},{"openapi":"post /v1/ai-image-generator","title":"AI Image Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Image Generator","href":"/api-reference/image-projects/ai-image-generator"},{"openapi":"post /v1/ai-image-upscaler","title":"AI Image Upscaler API Reference - Magic Hour Docs","sidebarTitle":"AI Image Upscaler","href":"/api-reference/image-projects/ai-image-upscaler"},{"openapi":"post /v1/ai-meme-generator","title":"AI Meme Generator API Reference - Magic Hour Docs","sidebarTitle":"AI Meme Generator","href":"/api-reference/image-projects/ai-meme-generator"},{"openapi":"post /v1/ai-qr-code-generator","title":"AI QR Code Generator API Reference - Magic Hour Docs","sidebarTitle":"AI QR Code Generator","href":"/api-reference/image-projects/ai-qr-code-generator"},{"openapi":"post /v1/body-swap","title":"Body Swap","href":"/api-reference/image-projects/body-swap"},{"openapi":"post /v1/face-swap-photo","title":"Face Swap Photo API Reference - Magic Hour Docs","sidebarTitle":"Face Swap Photo","description":"Create a face swap photo. Each photo costs 10 credits. The height/width of the output image depends on your subscription. Please refer to our [pricing](https://magichour.ai/pricing) page for more details","href":"/api-reference/image-projects/face-swap-photo"},{"openapi":"post /v1/head-swap","title":"Head Swap API Reference - Magic Hour Docs","sidebarTitle":"Head Swap","href":"/api-reference/image-projects/head-swap"},{"openapi":"post /v1/image-background-remover","title":"Image Background Remover API Reference - Magic Hour Docs","sidebarTitle":"Image Background Remover","description":"Remove background from image. Each image costs 5 credits.","href":"/api-reference/image-projects/image-background-remover"},{"openapi":"post /v1/photo-colorizer","title":"Photo Colorizer API Reference - Magic Hour Docs","sidebarTitle":"Photo Colorizer","href":"/api-reference/image-projects/photo-colorizer"}]}]},{"tab":"Webhook Reference","pages":[{"title":"Webhook Reference","href":"/webhook-reference/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Head Swap API Reference - Magic Hour Docs - Magic Hour API Docs","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","Page-CxAy5y67.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}