{"id":"carousel-tips","kind":"carousel","name":{"he":"טיפים","en":"Tips"},"one_line":{"he":"רשימת טיפים קצרה, טיפ בכל שקף. הפוסט ששומרים.","en":"A short list of tips, one per slide. The post people save."},"listed":true,"version":"1.0","updated":"2026-10-09","when_to_use":["An Instagram carousel of the \"Tips\" kind from a short brief: A short list of tips, one per slide. The post people save.","A post made of pictures and words, not a video."],"when_not_to_use":["The customer has a video to post: a video skill fits better.","Another kind of carousel fits the brief better — or let the planner pick: /skills/carousel.md (archetype auto)."],"example":{"video_url":null,"slides":["https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-01.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-02.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-03.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-04.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-05.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-06.jpg","https://media.gpt.org.il/lookbook/examples/carousel/dentist-stock-photo/square/slide-07.jpg"],"credits":36,"seconds":38},"preview":null,"price":{"unit":"carousel","from":36,"to":36,"note":"per carousel — what its real example took; stock photos are free, a generated picture is paid per picture"},"inputs":[{"name":"brief","type":"text","required":true,"limits":"3–4,000 characters","notes":"the topic or the customer's own text — facts, prices and dates are taken only from here"},{"name":"language","type":"language","required":false,"limits":"he · en · uk · ru","notes":"he unless said"},{"name":"slides","type":"number","required":false,"limits":"5–10","notes":null}],"outputs":[{"name":"output.slides[].url","type":"images","required":true,"limits":"5–10 slides, 1080×1080 (1:1) or 1080×1350 (4:5)","notes":"deleted after 24 hours: download them"},{"name":"output.caption · output.hashtags · alt text","type":"text","required":true,"limits":null,"notes":"Instagram takes at most 5 hashtags on publish"},{"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/carousel/estimate","what":"The price (the same body)","body":{"brief":"<what the carousel is about>","language":"he","slides":7,"archetype":"tips","look":"photo","images":"stock"},"async":false,"optional":false},{"method":"POST","path":"/v1/carousel","what":"The carousel: archetype tips, the brief written in","body":{"brief":"<what the carousel is about>","language":"he","slides":7,"archetype":"tips","look":"photo","images":"stock"},"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":"POST","path":"/v1/carousel/render","what":"Fix a slide: the plan with the edit, only the slides that changed","body":{"plan":{"version":1,"language":"he","aspect":"1:1","look":"card","archetype":"tips","brand":{"primary":"#0B3C5D","accent":"#5EEAD4","font":"Heebo"},"caption":"","hashtags":[],"slides":[{"role":"hook","headline":"5 טעויות בצחצוח שיניים","body":"כך תשמרו על חיוך בריא"},{"role":"point","number":1,"headline":"מברשת רכה, לא קשה"},{"role":"cta","headline":"הגיע הזמן לבדיקה","button":"שלחו לנו הודעה"}]}},"async":true,"optional":true},{"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.","Publish, post or send only when the customer asked for exactly that — never on your own."],"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."}],"quality_check":["Every slide's text comes from the brief: no invented price, date, name or number.","The text fits its slide (a square slide: headline ≤ 6 words, body ≤ 18) and reads in the brief's language.","Fix one slide with POST /v1/carousel/render { plan, only: [n] } — never make the whole carousel again for one word."],"tags":{"domain":"create","level":"basic","hebrew":true,"recommended":false,"new":true,"creator":false,"topics":["carousel","instagram","tips","photo","stock"]},"links":{"recipe":"/skills/carousel-tips.md","docs":"/docs?tool=carousel","run":null}}