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

# 延長とアップロード

> extend 延長、uploadTask/uploadCover/uploadExtend アップロード素材

4 つの操作が同一エンドポイントを共有し、`{operation}` で動作が決まります:

```
POST https://toapis.com/v1/music/generations/{operation}
```

## Authorizations

<ParamField header="Authorization" type="string" required>
  Bearer Token。API Key:[API Key 管理ページ](https://toapis.com/console/token)
</ParamField>

## extend — 曲の延長($0.05,Max $0.10)

既存タスクの指定時点から続きを生成。`custom` は既定で `true`。

<ParamField body="model" type="string" required>固定 `"suno"`</ParamField>
<ParamField body="task_id" type="string" required>元タスク ID</ParamField>
<ParamField body="continue_at" type="number" required>再開位置(秒)</ParamField>
<ParamField body="audio_index" type="number">トラック番号</ParamField>
<ParamField body="prompt" type="string">続きの歌詞(custom モード)</ParamField>
<ParamField body="title" type="string">タイトル</ParamField>
<ParamField body="style" type="string">スタイルタグ</ParamField>
<ParamField body="max_mode" type="boolean">Max ティア \$0.10</ParamField>

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/music/generations/extend \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{"model":"suno","task_id":"tsk_aud_xxx","continue_at":60,"prompt":"[Chorus] ..."}'
```

## uploadTask — アップロード登録(\$0.004)

公開音声 URL をタスクとして登録。生成物は `sample`/`addVocals`/`addInstrumental`/`addStem` の**必須ソース**です。

<ParamField body="model" type="string" required>固定 `"suno"`</ParamField>
<ParamField body="audioFilePath" type="string" required>公開アクセス可能な音声 URL</ParamField>

<Warning>`model` と `audioFilePath` のみ送信。`version` 等の余計なフィールドは上流で拒否されます。</Warning>

```bash theme={null}
curl --request POST \
  --url https://toapis.com/v1/music/generations/uploadTask \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{"model":"suno","audioFilePath":"https://example.com/my-vocals.mp3"}'
```

## uploadCover — アップロード+カバー($0.05,Max $0.10)

<ParamField body="model" type="string" required>固定 `"suno"`</ParamField>
<ParamField body="audio_url" type="string" required>元音声 URL</ParamField>
<ParamField body="custom" type="boolean">カスタム歌詞モード</ParamField>
<ParamField body="prompt" type="string">歌詞(custom=true)/ 説明</ParamField>
<ParamField body="gpt_description" type="string">インスピレーション説明(custom=false 時必須)</ParamField>
<ParamField body="style" type="string">目標スタイル</ParamField>
<ParamField body="persona_id" type="string">ボーカルペルソナ。`custom_model_id` と排他</ParamField>
<ParamField body="max_mode" type="boolean">Max ティア</ParamField>

## uploadExtend — アップロード+延長($0.05,Max $0.10)

音声をアップロードし、指定時点から延長。常にカスタムモードとして処理。

<ParamField body="model" type="string" required>固定 `"suno"`</ParamField>
<ParamField body="audio_url" type="string" required>元音声 URL</ParamField>
<ParamField body="continue_at" type="number" required>再開位置(秒)</ParamField>
<ParamField body="prompt" type="string">続きの歌詞</ParamField>
<ParamField body="style" type="string">スタイル</ParamField>
<ParamField body="max_mode" type="boolean">Max ティア</ParamField>

## Response

<ResponseField name="task_id" type="string">タスク ID</ResponseField>
<ResponseField name="status" type="string">`submitted`</ResponseField>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.