Generieren Sie 3D-Modelle aus Text oder Bildern mit Tripo3D und anderen Anbietern. Dies ist eine asynchrone API. Die Create-Response gibt eine Task-ID zurück und kann, wenn verfügbar, auch eine bevorzugte poll_url enthalten.
Die öffentliche 3D-operation wird aus der Request-Form abgeleitet: Requests nur mit prompt werden als text-to-3d behandelt, Requests mit image oder image_url als image-to-3d. Dieser Endpoint stellt kein operation-Request-Feld bereit; senden Sie nicht den legacy-Wert 3d-generation.
Anfragekörper
model
string
Standard: "tripo-h3.1"
Zu verwendendes Modell, zum Beispiel tripo-h3.1 oder tripo-p1.0. Fragen Sie GET /v1/models?recommended_for=3d ab, bevor Sie sich auf einen Eingabetyp oder ein Ausgabeformat verlassen.
Textbeschreibung des zu generierenden 3D-Modells.
Base64-kodiertes Bild für die Image-to-3D-Generierung.
URL des Bildes für die Image-to-3D-Generierung.
Ausgabeformat: glb, fbx, obj oder usdz.
quality
string
Standard: "standard"
Qualitätsstufe: draft, standard oder high.
Stil-Voreinstellung für das Modell.
Seed für reproduzierbare Generierung.
Eine eindeutige Kennung für den Endbenutzer.
Antwort
Task-ID zur Statusabfrage.
Alias der asynchronen Task-ID, wenn vom Adapter zurückgegeben.
Bevorzugte Polling-URL, wenn verfügbar.
Task-Status: pending, processing, completed oder failed.
Unix-Zeitstempel der Task-Erstellung.
cURL
Python
JavaScript
Go
PHP
curl -X POST "https://api.tokenlab.sh/v1/3d/generations" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "tripo-h3.1",
"prompt": "A detailed medieval castle with towers",
"format": "glb",
"quality": "high"
}'
import requests
response = requests.post(
"https://api.tokenlab.sh/v1/3d/generations" ,
headers = { "Authorization" : "Bearer sk-your-api-key" },
json = {
"model" : "tripo-h3.1" ,
"prompt" : "A detailed medieval castle with towers" ,
"format" : "glb" ,
"quality" : "high"
}
)
task_id = response.json()[ "id" ]
print ( f "Task ID: { task_id } " )
const response = await fetch ( 'https://api.tokenlab.sh/v1/3d/generations' , {
method: 'POST' ,
headers: {
'Authorization' : 'Bearer sk-your-api-key' ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ({
model: 'tripo-h3.1' ,
prompt: 'A detailed medieval castle with towers' ,
format: 'glb' ,
quality: 'high'
})
});
const data = await response . json ();
console . log ( `Task ID: ${ data . id } ` );
package main
import (
" bytes "
" encoding/json "
" fmt "
" net/http "
)
func main () {
payload := map [ string ] interface {}{
"model" : "tripo-h3.1" ,
"prompt" : "A detailed medieval castle with towers" ,
"format" : "glb" ,
"quality" : "high" ,
}
body , _ := json . Marshal ( payload )
req , _ := http . NewRequest ( "POST" , "https://api.tokenlab.sh/v1/3d/generations" , bytes . NewBuffer ( body ))
req . Header . Set ( "Authorization" , "Bearer sk-your-api-key" )
req . Header . Set ( "Content-Type" , "application/json" )
client := & http . Client {}
resp , _ := client . Do ( req )
defer resp . Body . Close ()
var result map [ string ] interface {}
json . NewDecoder ( resp . Body ). Decode ( & result )
fmt . Printf ( "Task ID: %s \n " , result [ "id" ])
}
<? php
$ch = curl_init ( 'https://api.tokenlab.sh/v1/3d/generations' );
curl_setopt_array ( $ch , [
CURLOPT_RETURNTRANSFER => true ,
CURLOPT_POST => true ,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json' ,
'Authorization: Bearer sk-your-api-key'
],
CURLOPT_POSTFIELDS => json_encode ([
'model' => 'tripo-h3.1' ,
'prompt' => 'A detailed medieval castle with towers' ,
'format' => 'glb' ,
'quality' => 'high'
])
]);
$response = curl_exec ( $ch );
curl_close ( $ch );
$data = json_decode ( $response , true );
echo "Task ID: " . $data [ 'id' ];
{
"id" : "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ,
"task_id" : "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ,
"poll_url" : "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ,
"status" : "pending" ,
"created" : 1706000000 ,
"model" : "tripo-h3.1"
}