POST /v1/assistant/runs
Utilisez les champs et autorisations documentés pour ce point de terminaison HTTP.
Exemple de requête#
curl -X POST 'https://platform.tongai.io/v1/assistant/runs' \ -H "Authorization: Bearer $TONG_API_KEY" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 45be69f1-c266-4a09-a82c-bf3c6303eb03" \ -d '{ "message": "A quiet street at blue hour"}'Configuration
curl --versionAuthentification#
Utilisez une clé API côté serveur pour votre compte, ou OAuth pour chaque client. N’envoyez jamais de clés dans les prompts ou arguments.
assistant:runcredits:spendParamètres#
Idempotency-KeystringObligatoireUn UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.
Corps de la requête#
application/jsonmessagestringObligatoireDécrivez le résultat souhaité.
Longueur minimale : 1 caractères.
Longueur maximale : 32000 caractères.
attachmentsstring[]FacultatifUtilisez les ID de ressources de votre compte compatibles avec les références du modèle choisi.
Nombre maximal d’éléments : 30.
Valeur par défaut : [].
reference_bindingsobject[]FacultatifNombre maximal d’éléments : 30.
Afficher les champs imbriqués
labelstringObligatoireUtilisez un libellé de référence numéroté, par exemple Image1.
assetIdstringObligatoireUtilisez l’identifiant d’une ressource du compte autorisé.
Un identifiant hexadécimal de 24 caractères.
modestringFacultatifLes exécutions guidées attendent une validation dans Tong. Les automatiques continuent. Les deux facturent au fil du travail et s’arrêtent sans crédits.
"guided""automatic"Valeur par défaut : "guided".
conversation_idstringFacultatifUn UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.
model_preferencesobjectFacultatifAfficher les champs imbriqués
imagestring | nullObligatoireUtilisez des lettres, chiffres, tirets bas, points, deux-points, barres obliques ou traits d’union.
Longueur minimale : 1 caractères.
Longueur maximale : 150 caractères.
videostring | nullObligatoireUtilisez des lettres, chiffres, tirets bas, points, deux-points, barres obliques ou traits d’union.
Longueur minimale : 1 caractères.
Longueur maximale : 150 caractères.
sourceobjectFacultatifAfficher les champs imbriqués
kindstringObligatoire"director""text"idstringObligatoireUn identifiant hexadécimal de 24 caractères.
Schéma de réponse#
{ "id": "e8aa0a87-6cd9-42eb-975a-b72bf43218c8", "tool": "example", "category": "example", "channel": "api", "state": "queued", "status": "accepted", "stage": "admission", "dispatch_status": "pending", "created_at": "2026-10-22T09:00:00.000Z", "updated_at": "2026-10-22T09:00:00.000Z", "detail_expires_at": "2026-10-22T09:00:00.000Z", "detail_expired": false, "timing": { "dispatch_started_at": "2026-10-22T09:00:00.000Z", "acknowledged_at": "2026-10-22T09:00:00.000Z", "completed_at": "2026-10-22T09:00:00.000Z", "dispatch_acknowledgement_ms": 0, "end_to_end_ms": 0 }, "review": null, "result": null, "error": { "code": "example" }, "billing": { "status": "none", "usage_credits": "0.000000", "wallet_debited_credits": "0.000000" }}HTTP 202
application/jsonidstringObligatoireL’identifiant unique de l’opération enregistrée.
Un UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.
toolstringObligatoirecategorystringObligatoirechannelstringObligatoire"api""mcp"statestringObligatoireL’état d’exécution actuel du travail enregistré.
"queued""running""waiting""needs_review""paused""reconciling""succeeded""failed""cancelled"statusstringObligatoireLe statut global à utiliser pour suivre l’opération.
"accepted""running""needs_review""paused""reconciling""succeeded""failed""cancelled"stagestringObligatoireLa phase actuelle de l’opération.
"admission""dispatch""review""generation""reconciliation""complete"dispatch_statusstringObligatoireIndique si l’outil a accepté la requête. Un accusé de réception ne signifie pas que la génération est terminée.
"pending""unknown""acknowledged"created_atstringObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
updated_atstringObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
detail_expires_atstring | nullObligatoireDate d’expiration des détails enregistrés. La valeur null indique qu’aucune expiration n’est définie.
Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
detail_expiredbooleanObligatoireIndique si les détails enregistrés ont expiré.
timingobjectObligatoireHorodatages et durées pour suivre cette opération.
Afficher les champs imbriqués
dispatch_started_atstring | nullObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
acknowledged_atstring | nullObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
completed_atstring | nullObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
dispatch_acknowledgement_msnumber | nullObligatoireMinimum : 0.
end_to_end_msnumber | nullObligatoireMinimum : 0.
reviewJSON | nullObligatoireInformations de validation si une intervention humaine est requise ; sinon null.
resultJSON | nullObligatoireLa sortie de cet outil, ou null si aucune sortie n’est disponible.
errorobject | nullObligatoireLe code d’erreur public si l’opération a échoué ; sinon null.
Afficher les champs imbriqués
codestringObligatoirebillingobjectObligatoireUtilisation des crédits et débits du portefeuille. La disponibilité du résultat et le règlement sont distincts.
Afficher les champs imbriqués
statusstringObligatoire"none""pending""settled""released""reconciling"usage_creditsstringObligatoireUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
wallet_debited_creditsstringObligatoireUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
released_creditsstringFacultatifUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
refunded_creditsstringFacultatifUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
unfunded_creditsstringFacultatifUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
pending_creditsstringFacultatifUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
tokensobjectFacultatifAfficher les champs imbriqués
inputnumberFacultatifMinimum : 0.
outputnumberFacultatifMinimum : 0.
cachednumberFacultatifMinimum : 0.
cache_writenumberFacultatifMinimum : 0.
componentsobject[]FacultatifAfficher les champs imbriqués
idstringFacultatifsource_idstringObligatoiretoolstringObligatoiremodelstring | nullObligatoirechannelstringObligatoire"api""mcp"credential_idstringObligatoirekindstringObligatoire"text_pool""reasoning""generation"usage_creditsstringObligatoireUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
wallet_debited_creditsstringObligatoireUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
evidence_atstringFacultatifDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
updated_atstringFacultatifDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
quoteobjectFacultatifLa configuration, le prix et les valeurs de soumission lorsqu’un devis est disponible.
Afficher les champs imbriqués
idstringObligatoireUn UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.
operation_idstringObligatoireUn UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.
toolstringObligatoireoperationstring | nullObligatoiremodelstring | nullObligatoireconfigurationobjectObligatoiresubmit_valuestringObligatoiresubmit_fieldstringObligatoirequoted_creditsstring | nullObligatoireUne chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.
expires_atstring | nullObligatoireDate et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.
Erreurs et limites#
| HTTP | Erreur | Reprise |
|---|---|---|
400 | Requête invalideREQUEST_INVALID | Corrigez les champs indiqués par l’erreur avant de réessayer. |
401 | Identifiant invalideCREDENTIAL_INVALID | Vérifiez l’identifiant, son expiration et son éventuelle révocation. |
402 | Crédits insuffisantsINSUFFICIENT_CREDITS | Ajoutez des crédits au compte de l’identifiant, puis poursuivez le travail enregistré. |
403 | Autorisation refuséeSCOPE_REQUIRED | Utilisez un identifiant disposant des autorisations requises et de l’accès à la ressource choisie. |
404 | Ressource indisponibleRESOURCE_UNAVAILABLE | Vérifiez l’ID de la ressource et son appartenance au compte autorisé. |
409 | Conflit d’intentionIDEMPOTENCY_CONFLICT | Réutilisez une intention uniquement avec sa requête initiale. Utilisez un nouvel UUID pour une autre action. |
429 | Limite de débit atteinteRATE_LIMITED | Attendez le délai Retry-After avant de répéter la même requête. |
503 | Temporairement indisponibleDEPENDENCY_UNAVAILABLE | Attendez Retry-After et réessayez avec la même intention. Vérifiez l’opération enregistrée après un délai dépassé. |