> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mountsea.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Studio Editing

> Timeline editing — crop, remove, duplicate, and add sections

Suno **Studio** APIs edit an existing clip on the same Suno account (resolved from `clip_id`) and export a new song.

Most Studio operations are **free (0 credits)**. The exception is [Add Section](/api-reference/suno/studioAddSection), which runs an infill generation (billed like music creation) and then a free commit step.

## Account binding

All Studio endpoints resolve the Suno account from `clip_id`. The clip must belong to an account available to your API key.

## Endpoints

| Endpoint                           | Method | Credits | Description                           |
| ---------------------------------- | ------ | ------- | ------------------------------------- |
| `/suno/v2/studio/crop`             | POST   | Free    | Keep `[start_s, end_s)` and export    |
| `/suno/v2/studio/removeSection`    | POST   | Free    | Delete one or more ranges             |
| `/suno/v2/studio/duplicate`        | POST   | Free    | Copy a range and insert it            |
| `/suno/v2/studio/addSection`       | POST   | Billed  | Phase 1 — generate 2 candidate fills  |
| `/suno/v2/studio/addSectionCommit` | POST   | Free    | Phase 2 — commit a selected candidate |

## Add Section workflow (two phases)

<Steps>
  <Step title="Generate candidates">
    Call [Add Section](/api-reference/suno/studioAddSection) with `clip_id` and `insert_at_s`. Poll [Get Task Status](/api-reference/suno/task) until `success`. The result includes candidate `clips` plus Studio project context.
  </Step>

  <Step title="Commit selection">
    Call [Add Section Commit](/api-reference/suno/studioAddSectionCommit) with the phase-1 `taskId` and the chosen `candidate_clip_id`. Account reuse comes from phase 1 — do not pass the original song `taskId` for account binding.
  </Step>
</Steps>

## Quick example — crop

```bash theme={null}
curl -X POST https://api.mountsea.ai/suno/v2/studio/crop \
  -H "Authorization: Bearer your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "clip_id": "5a3c023f-d1ed-4a85-b61e-168dde2b6659",
    "start_s": 0,
    "end_s": 45,
    "title": "Summer Vibes (Cropped)"
  }'
```

Then poll `GET /suno/v2/status?taskId=...` until complete.
