GET / voice/list

Base URL: https://backend.easify.app/api/v2


This endpoint is used to retrieve a paginated list of voice files uploaded to your account.

The returned voice file IDs can be used with the Voice Broadcast and Ringless Voicemail APIs through the voice_id parameter.

If you exceed the allowed rate limit, you will receive a 429 Too Many Requests status, along with a message indicating when you can try again.

The authenticated user must have access to the Voice Outreach (voice-outreach) module. Requests made without the proper module permissions will receive a 403 Forbidden response.

Authentication

The Easify API token used for authentication is passed in the header as a Bearer token, which can be obtained from the easify app under Settings > API Settings.

Headers

Authorization string required Bearer << YOUR_EASIFY_API_TOKEN_HERE >>

Query Parameters

limit integer Number of records to return per page (Min: 1, Max: 100, Default: 10) Optional
page integer The page number to retrieve (Min: 1, Default: 1) Optional

Sample Params and Success Response:

Params:

{
  "limit": 10,
  "page": 1
}

Success Response:

{
  "status": true,
  "message": "Voices retrieved successfully",
  "data": [
    {
      "id": 123,
      "name": "Campaign Recording",
      "voice_full_url": "https://s3.amazonaws.com/bucket/voices/file.mp3",
      "created_at": "2026-07-28T00:00:00.000000Z"
    }
  ]
}

Api Response Status

Case Status Code Response
If the user does not provide a token in the header or provides an invalid token 401 { "status":false, "message":"Unauthenticated", "errors":[] }
Invalid limit or page 422 { "message": "The limit field must be between 1 and 100.", "errors": { "limit": ["The limit field must be between 1 and 100."] } }
If the user exceeds the allowed rate limit for requests 429 { "status":false, "message":"Too many requests. Try again in 59 seconds", "errors":[] }
If the user's subscription has ended 402 { "status":false,"message":"You need to recharge your account to proceed","errors":[] }
When the user account is inactive 403 { "status": false, "message": "Your account is currently inactive.", "errors": [] }

Response Explanation

  • id: Unique identifier of the voice file (use this as voice_id when sending a broadcast or ringless voicemail).
  • name: The name of the voice file.
  • voice_full_url: The publicly accessible URL of the uploaded audio file.
  • created_at: The timestamp of when the voice file was uploaded.

PHP-cURL

php
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => 'https://backend.easify.app/api/v2/voice/list?limit=10&page=1',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => [
    'Accept: application/json',
    'Authorization: Bearer 1955|43da5bb5-5c2b-4059-a4de-d44bf5****'
  ],
]);
$response = curl_exec($curl);
curl_close($curl);

echo $response;

pixel for linkedin