Documentation Index
Fetch the complete documentation index at: https://help.soundverse.ai/llms.txt
Use this file to discover all available pages before exploring further.
Recognize Song (v5)
Endpoint
Behavior & Priority
The endpoint accepts one of the following inputs (priority order):
file (multipart upload)
audio_url (query string)
- raw audio bytes in the request body
If none are provided, the API returns a 400 error.
Request Parameters
| Parameter | Type | Location | Description | Required | Default |
|---|
audio_url | string | query | Remote audio file URL | No | N/A |
file | file | multipart/form-data | Audio file upload | No | N/A |
| (raw body) | bytes | body | Raw audio bytes (e.g., audio/mpeg) | No | N/A |
🛈 For audio_url, the server downloads up to 25 MB and may wait up to 120 seconds for slow sources.
Response
Shape
{
"recognized": true,
"data": {
"artist": "ROMA",
"title": "POTETO CHIP",
"album_art": "https://api.soundverse.ai/blob/...",
"album_name": "POTETO CHIP - Single",
"label": "Doodoo Records",
"released": "2025",
"albumadamid": "1846981767",
"isrc": "QT3FE2571493"
}
}
Fields
| Field | Type | Description |
|---|
recognized | bool | true if a match was found |
data | Response | null | Recognized track data (null if no match) |
Response
| Field | Type | Description |
|---|
artist | string | null | Artist name |
title | string | null | Track title |
album_art | string | null | Album art URL |
album_name | string | null | Album name |
label | string | null | Label name |
released | string | null | Release year |
albumadamid | string | null | album ID |
isrc | string | null | ISRC code |
Example Requests
import requests
url = "https://api.soundverse.ai/v5/recognize"
headers = {"Authorization": "Bearer your_api_key_here"}
params = {"audio_url": "https://storage.soundverse.ai/.../audio.mp3"}
response = requests.get(url, headers=headers, params=params)
print(response.json())
No Match Example
{
"recognized": false,
"data": null
}
Possible Errors
Missing Input (400)
{
"detail": "Provide audio_url, file, or raw body bytes"
}
Client Disconnected (499)
{
"detail": "Client disconnected"
}
Server Error (500)
{
"detail": "Unexpected error message"
}