Récupérer l’état de génération musicale
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.phaseo.app/v1/music/generate/{music_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.phaseo.app/v1/music/generate/{music_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.phaseo.app/v1/music/generate/{music_id} \
--header 'Authorization: Bearer <token>'package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.phaseo.app/v1/music/generate/{music_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.phaseo.app/v1/music/generate/{music_id}")
.header("Authorization", "Bearer <token>")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phaseo.app/v1/music/generate/{music_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.phaseo.app/v1/music/generate/{music_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "music",
"status": "queued",
"model": "<string>",
"provider": "<string>",
"nativeResponseId": "<string>",
"audio_url": "<string>",
"audio_base64": "<string>",
"result": "<unknown>",
"output": [
{}
],
"usage": {}
}Génération de musique
Récupérer une génération musicale
Récupérez une génération musicale à l’aide de son identifiant de requête Phaseo.
GET
/
music
/
generate
/
{music_id}
Récupérer l’état de génération musicale
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.phaseo.app/v1/music/generate/{music_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.phaseo.app/v1/music/generate/{music_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.phaseo.app/v1/music/generate/{music_id} \
--header 'Authorization: Bearer <token>'package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.phaseo.app/v1/music/generate/{music_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.phaseo.app/v1/music/generate/{music_id}")
.header("Authorization", "Bearer <token>")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phaseo.app/v1/music/generate/{music_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.phaseo.app/v1/music/generate/{music_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "music",
"status": "queued",
"model": "<string>",
"provider": "<string>",
"nativeResponseId": "<string>",
"audio_url": "<string>",
"audio_base64": "<string>",
"result": "<unknown>",
"output": [
{}
],
"usage": {}
}Récupérez un résultat musical créé avec
POST /music/generate. Ce point de terminaison renvoie le résultat normalisé stocké lorsque le fournisseur a terminé et interroge le fournisseur amont si la tâche est encore asynchrone.
Structure de la réponse
{
"id": "req_01JY6MUSIC123",
"object": "music",
"status": "completed",
"provider": "suno",
"model": "V4_5PLUS",
"nativeResponseId": "task_123",
"output": [
{
"index": 0,
"id": "clip_1",
"audio_url": "https://...",
"stream_audio_url": "https://...",
"image_url": "https://...",
"title": "Midnight Blue",
"tags": "jazz, piano",
"duration": 8
}
],
"usage": {
"output_audio_count": 1,
"output_audio_seconds": 8
}
}
Remarques
statuspeut prendre les valeursqueued,in_progress,completedoufailed.usageest inclus lorsque la génération est terminée.- Transmettez l’
idPhaseo renvoyé parPOST /music/generate, et nonnativeResponseId. - Ce point de terminaison gère en interne les API d’état et de récupération propres aux fournisseurs.
Autorisations
Authentification par jeton Bearer
Paramètres de chemin
ID de requête Phaseo stable renvoyé par POST /music/generate.
Réponse
200 - application/json
Réponse sur l’état de génération musicale
ID de requête Phaseo stable à utiliser avec GET /music/generate/{music_id}.
Options disponibles:
music Options disponibles:
queued, in_progress, completed, failed Identifiant du fournisseur amont pour la corrélation et l’assistance.
Métadonnées du résultat fournisseur normalisées par Phaseo.
Dernière modification le 2 octobre 2026
Cette page vous a-t-elle été utile ?