Retrieve generated speech

August 18, 2025

Table of contents

  1. Request Headers
  2. Query Parameters
  3. Responses
  4. Model
  5. Examples
  6. Try It

This endpoint retrieves a list of previously generated speech recordings from your Mureka account. Use pagination with the last_id parameter to browse through all your speech history. The more field indicates whether additional pages are available. Each response includes the generated audio URLs, titles, and metadata for easy playback and management.

https://api.useapi.net/v1/mureka/speech/?…

Request Headers
Authorization: Bearer {API token}
Content-Type: application/json
Query Parameters
  • account is optional when only one account configured. However, if you have multiple accounts configured, this parameter becomes required.

  • last_id is optional. Use it to retrieve the next page of data.
    Set its value to the last_id returned in the previous response.

Responses
  • 200 OK

    {
        "list": [
            {
                "title": "Morning Conversation",
                "preview": "Good morning! How are you doing today? I hope you're having a wonderful start to your day.",
                "cover": "https://static-cos.mureka.ai/cos-prod/res/cover/….png",
                "mp3_url": "https://static-cos.mureka.ai/cos-prod/tts-v2/….mp3",
                "id": 23456789012345,
                "duration_milliseconds": 8500,
                "audio_quality": 2,
                "state": 3
            },
            {
                "title": "Evening Reflection",
                "preview": "As the day comes to an end, let's take a moment to reflect on all the good things that happened.",
                "cover": "https://static-cos.mureka.ai/cos-prod/res/cover/….png",
                "mp3_url": "https://static-cos.mureka.ai/cos-prod/tts-v2/….mp3",
                "id": 34567890123456,
                "duration_milliseconds": 12300,
                "audio_quality": 2,
                "state": 3
            }
        ],
        "last_id": 1755483687,
        "more": true
    }
    
  • 400 Bad Request

    {
        "error": "<Error message>",
        "code": 400
    }
    
  • 401 Unauthorized

    {
      "error": "Unauthorized",
      "code": 401
    }
    
  • 596 Account Error

    Returned when the account has an error state preventing API calls.

    {
        "error": "Session refresh failed 2026-01-19T14:31:15.000Z, manual update required",
        "code": "REFRESH_FAILED"
    }
    

    Possible error codes:

    • ACCOUNT_ERROR - Account has a blocking error
    • REFRESH_FAILED - Automatic token refresh failed
    • REFRESH_IN_PROGRESS - Token refresh already in progress, retry shortly
    • SESSION_EXPIRED - Session expired and no auto-refresh available
    • COOKIE_EXPIRED - Google cookie has expired

    To resolve, update your account configuration via POST /accounts.

Model
{ // TypeScript, all fields are optional
    list: {
        title: string
        preview: string
        cover: string
        mp3_url: string
        id: number
        duration_milliseconds: number
        audio_quality: number
        state: number
    }[]
    last_id: number
    more?: boolean
}
Examples
  • curl "https://api.useapi.net/v1/mureka/speech/" \
       -H "Accept: application/json" \
       -H "Authorization: Bearer …" 
    
  • const token = "API token";
    const apiUrl = "https://api.useapi.net/v1/mureka/speech/"; 
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", {response, result});
    
  • import requests
    token = "API token"
    apiUrl = "https://api.useapi.net/v1/mureka/speech/"
    headers = {
        "Content-Type": "application/json", 
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers)
    print(response, response.json())
    
Try It