Get Persona Endpoint

Overview

Retrieves persona information and associated clips in a paginated format. Personas are user-created music styles or characters.

🔗 Quick Links

Endpoint

GET /api/persona?id=persona-id&page=1
GET /[accountId]/api/persona?id=persona-id&page=1

Request

Query Parameters

id (string, required)
ID of the persona to retrieve

page (number, optional, default: 1)
Page number for pagination

Example Request

curl "https://your-domain.com/api/persona?id=persona-123&page=1"
const response = await fetch('/api/persona?id=persona-123&page=1');

Response

Success Response (200 OK)

Returns persona information with clips:

{
  "persona": {
    "id": "persona-123",
    "name": "Rock Star",
    "description": "Energetic rock music persona",
    "image_s3_id": "image-id",
    "root_clip_id": "clip-id",
    "user_display_name": "User Name"
  },
  "clips": [
    {
      "id": "clip-1",
      "title": "Rock Song 1",
      "audio_url": "https://cdn.suno.ai/audio1.mp3"
    }
  ],
  "page": 1,
  "total_pages": 5
}

Status Code: 200
Content-Type: application/json

Note: Actual response structure depends on Suno API response format.

Bad Request (400)

When id parameter is missing:

{
  "error": "Missing parameter id"
}

Status Code: 400
Content-Type: application/json

Internal Server Error (500)

When an error occurs:

{
  "error": "Internal server error"
}

Status Code: 500
Content-Type: application/json

Method Not Allowed (405)

When using an unsupported HTTP method:

Status Code: 405
Headers: Allow: GET

Notes

  • Returns persona details and associated audio clips
  • Supports pagination for clips
  • All responses include CORS headers