# Skill: effect/emoji-burst — "פיצוץ אימוג׳ים" (Emoji burst)

Emojis burst out of a point, float up or rain down — hearts, fire, claps, 100.
אימוג׳ים מתפוצצים מנקודה, מרחפים למעלה או יורדים כמו גשם — לבבות, אש, מחיאות כפיים, 100.

Category: Overlays & graphics · שכבות וגרפיקה · a real preview: https://media.gpt.org.il/lookbook/effects/emoji-burst.mp4?v=mv19exzc
Price: **60 credits per finished minute**: the render itself — 1 credit per second of 1080p output. Combined with captions, a hook or other effects: still one render, nothing more for combining.

Base URL: `https://apihub.co.il` · Auth: `Authorization: Bearer <API key>` · Docs: `/docs` (group "Video Effects")
Send `X-Tag: <job name>` on every call of one video; `GET /v1/usage?tag=<job name>` returns what it cost.
**Files are kept 24 hours** — download the finished video.

---

## 1. On its own — one call

```jsonc
POST /v1/effects/emoji-burst             // x-wait-ms: 110000
{
  "video_url": "https://media.gpt.org.il/samples/sample-he.mp4",
  "start": 1,
  "duration": 2.4,
  "params": {
    "origin": {
      "x": 50,
      "y": 60
    }
  }
}
```

A normal render: `status: processing` → poll `GET /v1/executions/{id}` until `completed`, then read `output.url`.

When it plays: a stretch: `start` + `duration` (seconds of the finished video), or `at` (a word id) + `duration`, or `during` { from, to } (word ids).

## 2. With captions, a hook and other effects — the same render

```jsonc
POST /v1/studio/edit               // x-wait-ms: 110000
{
  "video_url": "<the video>",
  "language_code": "he",
  "captions": {
    "style": "classic"
  },
  "effects": [
    {
      "id": "emoji-burst",
      "params": {
        "origin": {
          "x": 50,
          "y": 60
        }
      },
      "start": 1,
      "duration": 2.4
    }
  ],
  "audio": {
    "normalize": true
  },
  "output": {
    "aspect_ratio": "9:16",
    "resolution": "1080",
    "fit": "crop",
    "quality": "high"
  }
}
```

`effects` is a list: add more entries for more effects. The engine applies them by pipeline stage (cuts and time →
camera → grade and looks → overlays → text and captions → sound), never by their order in the list. An edit has one
`transition`, one `color` grade, one `music` bed, one `speed` and one caption style: two effects that set the same
one are refused with a message that names them.

## 3. Params

| param | default | range / options | what it does |
|---|---|---|---|
| `emojis` | `["red-heart","fire","clapping-hands"]` | list | The emoji (1–6): red-heart, fire, clapping-hands, face-with-tears-of-joy, smiling-face-with-heart-eyes, star-struck, hundred-points, party-popper, thumbs-up, sparkles, rocket, money-bag, exploding-head, face-with-open-mouth, raising-hands, flexed-biceps, light-bulb, bullseye, check-mark-button, cross-mark, eyes, smiling-face-with-sunglasses, glowing-star, crown — or the emoji character itself |
| `mode` | `"burst"` | `burst` · `float` · `rain` | burst = thrown out from a point · float = rising · rain = falling |
| `count` | `14` | 3–24 | How many |
| `size` | `14` | 4–30 | Size, % of the frame width |
| `origin` | `{"x":50,"y":55}` | object | burst: where they burst from, % of the frame |
| `sound` | `true` | boolean | A pop as they burst |

GET `/v1/effects/emoji-burst` returns the same as JSON (with the full body schema). Every field has a default; numbers
outside their range are refused with the field's name.
