> ## 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.

# Prepare Upload Session

> Create a batch upload session and bind one Suno account (Step 1)

Selects an available upload account and creates a session. Returns `sessionId` synchronously.

<Info>
  **Synchronous** — no request body. All [Upload Session Item](/api-reference/suno/uploadSessionItem) calls with this `sessionId` use the **same account**.
</Info>

**Response:**

```json theme={null}
{
  "sessionId": "f259907e-32dd-468d-95f9-e3c0baf4f01c"
}
```

<Tip>
  **Step 1** of the [Batch Upload Session](/api-reference/suno/uploadSession) workflow. After uploading items, poll `GET /suno/v2/status?taskId={sessionId}` for aggregated `audioIds`.
</Tip>


## OpenAPI

````yaml POST /suno/v2/audio/upload/session
openapi: 3.0.0
info:
  title: Suno AI
  description: API documentation for Suno AI
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.mountsea.ai
    description: API Gateway
security: []
tags:
  - name: suno
    description: ''
  - name: suno/studio
    description: Studio Song Editor（与 audio/crop|fade|reverse 独立）
paths:
  /suno/v2/audio/upload/session:
    post:
      tags:
        - suno
      summary: prepare batch upload session
      description: >-
        Synchronously select an account and create a session. Returns sessionId.

        All subsequent /audio/upload/session/item calls with this sessionId will
        use the same account,

        ensuring all uploaded clips land on the same Suno account.

        After all items complete, poll /status?taskId={sessionId} to get the
        aggregated audioIds.
      operationId: ApiPublicController_uploadSessionPrepare
      parameters: []
      responses:
        '201':
          description: ''
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````