{"id":"full-natural-voice","kind":"complete","name":{"he":"עברית טבעית ושיבוט קול","en":"Natural Hebrew in your own voice"},"one_line":{"he":"הקול שלכם, בעברית שנשמעת כמו בן אדם ולא כמו מכונה שקוראת מדף — ממה שהרילים של הבעלים עצמו עשויים, לכולם.","en":"Your own voice, in Hebrew that sounds like a person and not like a machine reading a page — what the owner's own reels were made of, for everyone."},"listed":true,"version":"1.0","updated":"2026-10-09","when_to_use":["A finished video in one skill: your voice cloned once from 1–3 minutes of you talking, a script written for the ear, not for the page, a voice director inside every take: niqqud only where a voice misreads, a delivery tag per line, the right stability, three takes, and Gemini listens to all of them before one is chosen, every word right — a misread word is fixed and re-read.","The customer's own voice should carry the video, in Hebrew that sounds human."],"when_not_to_use":["Only captions or only a title are wanted: a caption or hook skill is many times cheaper.","The person in the video has not agreed to their voice or face being used."],"example":{"video_url":"https://media.gpt.org.il/lookbook/examples/natural-voice-he.mp4","credits":104,"seconds":22.17},"preview":null,"price":{"unit":"minute","from":240,"to":280,"note":"per finished minute; 30 s ≈ 125–150 credits — generated media is priced per asset, so half a minute is not half the price"},"inputs":[{"name":"voice sample","type":"audio","required":true,"limits":"a few minutes of the customer talking, once (the clone is kept for the account)","notes":null},{"name":"topic or script","type":"text","required":true,"limits":null,"notes":"what the reel says — the script is written for the ear"},{"name":"consent","type":"consent","required":true,"limits":null,"notes":"the voice's owner agrees to the clone"}],"outputs":[{"name":"output.url","type":"video","required":true,"limits":"mp4, 9:16 1080p unless the request says otherwise","notes":"the file is deleted 24 hours after it is made: download it and tell the customer"},{"name":"cost","type":"number","required":true,"limits":null,"notes":"GET /v1/usage?tag=<job name> → totals.credits: quote this, not the estimate"}],"steps":[{"method":"POST","path":"/v1/ai/voices/clone","what":"Clone a voice","body":{"name":"<name — from the recipe>","audio_urls":["https://media.gpt.org.il/u/…/me-2min.mp3"]},"async":false,"optional":false},{"method":"POST","path":"/v1/ai/voice","what":"Voice-over (text to speech)","body":{"text":"<text — from the recipe>"},"async":false,"optional":false},{"method":"POST","path":"/v1/ai/text","what":"Generate text (chat)","body":{"model":"gemini-3.5-flash","system":"<system — from the recipe>","prompt":"<prompt — from the recipe>"},"async":false,"optional":false},{"method":"POST","path":"/v1/studio/convert","what":"Convert, compress, change speed, extract audio","body":{"video_url":"<video url — from the recipe>"},"async":true,"optional":false},{"method":"POST","path":"/v1/studio/kinetic","what":"Plan a kinetic-typography edit (CapCut style)","body":{"video_url":"<video url — from the recipe>"},"async":false,"optional":false},{"method":"POST","path":"/v1/ai/sound-effects","what":"Generate a sound effect","body":{"text":"<text — from the recipe>"},"async":false,"optional":false},{"method":"POST","path":"/v1/ai/music","what":"Generate music","body":{"prompt":"<prompt — from the recipe>","duration":30,"instrumental":true},"async":false,"optional":false},{"method":"POST","path":"/v1/stock/broll-plan","what":"Plan a video's stock B-roll","body":{"style":"cutaways","words":[{"i":0,"text":"איזה","start":0.12,"end":0.4},{"i":1,"text":"מגניב","start":0.4,"end":0.9}],"count":3,"edit":{"video_url":"https://…/clip.mp4","texts":[],"output":{"aspect_ratio":"9:16","resolution":"720"}}},"async":false,"optional":false},{"method":"POST","path":"/v1/studio/edit","what":"Full edit in one render","body":{"video_url":"<video url — from the recipe>"},"async":true,"optional":false},{"method":"GET","path":"/v1/executions/{id}","what":"Poll a call that answered processing until it is completed (the file is output.url)","body":null,"async":false,"optional":false},{"method":"GET","path":"/v1/usage","what":"?tag=<job name>: what the whole job cost — quote it to the customer","body":null,"async":false,"optional":false}],"rules":["Show the customer the price (POST <path>/estimate with the same body, or the price above) and wait for their OK before any paid call.","Send Idempotency-Key: <job>-<step> on every POST. After a timeout send the same call with the SAME key — you get the same job back, never a second charge.","A long call answers status processing: poll GET /v1/executions/{id} every 5–10 s (or send x-wait-ms, up to 90000). Never send the job again to see whether it finished.","Send the same X-Tag: <job name> on every call of one job; GET /v1/usage?tag=<job name> is then what it really cost.","On-screen text is in the video's language and taken from what is actually said (a carousel: from the customer's brief). Never invent facts, names, prices or numbers.","A real person's face or voice needs their consent: send consent { accepted: true, subject: self | other, basis: own | consent | licensed } as the customer declares it — ask them; never fill it in yourself.","Hebrew has no capitals: keep uppercase false (it only breaks the Latin words inside a Hebrew line).","Keep text inside the middle 80% of the frame: side_margin ≥ 6, margin ≥ 12 — the platform's buttons cover the rest.","Check the words against the speech before burning them in: a phrase lost by the speech model is transcribed again with speech_models [\"universal-2\"] and the words sent as `words`."],"common_errors":[{"code":"invalid_input","why":"400: a field is missing, misspelled or out of range — the message names it","fix":"Fix exactly that field and send again; send only the fields the recipe or the docs show."},{"code":"unauthorized","why":"401: the API key is missing, wrong or revoked","fix":"Ask the customer for a valid key (keys are made at /api-keys); never print it back."},{"code":"insufficient_credits","why":"402: the balance does not cover the estimate (details.required_credits)","fix":"Tell the customer the price and that the balance is short; do not retry until they top up."},{"code":"rate_limited","why":"429: too many calls a minute","fix":"Wait the retry-after seconds, then send the same call with the same Idempotency-Key."},{"code":"failed","why":"the execution's status is failed or timeout — nothing is charged for failed work","fix":"Read error.message, fix the input, and start again with a NEW Idempotency-Key."},{"code":"upload_too_large","why":"413: the file is bigger than the call takes","fix":"Upload the original through POST /v1/studio/uploads and send its output.url; never shrink the picture's shape."},{"code":"consent_required","why":"400: a face or a voice was sent without the person's consent declaration","fix":"Ask the customer who is in it and on what basis, then send consent { accepted, subject, basis }."},{"code":"skill_not_found","why":"404: no skill with this id or slug","fix":"Take the id from GET /v1/skills (items[].id or slug)."},{"code":"skill_not_available","why":"409: the skill is not on offer right now","fix":"Tell the customer and pick another skill from GET /v1/skills."},{"code":"skill_input_length","why":"422: the video is shorter or longer than the skill takes","fix":"Trim the video (POST /v1/studio/trim) or pick a skill that takes its length."},{"code":"duplicate_client_key","why":"409: a run with this client_key already exists","fix":"Do not start another: find it with GET /v1/agent/runs and follow it."}],"quality_check":["The voice is clearly above the music all the way through.","The captions and every line on screen match what is said.","Watch the start, the middle and the end of the result before handing it over — not only its status.","Read `warnings` in the answer (a font swapped for the language, a picture that had to be enlarged) and tell the customer what they mean."],"tags":{"domain":"voice-music","level":"ai","hebrew":true,"recommended":false,"new":true,"creator":false,"topics":["complete","captions","hook","music","broll","voice"]},"links":{"recipe":"/skills/full-natural-voice.md","docs":"/docs?tool=video-studio","run":"/v1/skills/apihub-natural-voice/run"}}