Aller à la documentation
Ouvrir le tableau de bord
Sur cette page

Ajouter un plan

tong_director_shot_add

Créez une ressource enregistrée dans votre compte Tong avec les champs ci-dessous.

POST/v1/tools/tong_director_shot_add/operations

Exemple de requête#

curl -X POST 'https://platform.tongai.io/v1/tools/tong_director_shot_add/operations' \  -H "Authorization: Bearer $TONG_API_KEY" \  -H "Content-Type: application/json" \  -H "Idempotency-Key: 45be69f1-c266-4a09-a82c-bf3c6303eb03" \  -d '{  "input": {    "params": {      "id": "aaaaaaaaaaaaaaaaaaaaaaaa"    },    "body": {      "revision": 0,      "shot": {        "title": "aaaa",        "action": "aaaa",        "startPrompt": "aaaa",        "endPrompt": "aaaa"      }    }  }}'
Configuration
curl --version

Autorisations#

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.

films:write

Corps de la requête#

Les requêtes REST placent les arguments dans input. Les appels MCP envoient ces mêmes arguments directement.

paramsobjectObligatoire
Afficher les champs imbriqués
idstringObligatoire

Un identifiant hexadécimal de 24 caractères.

Exemple"aaaaaaaaaaaaaaaaaaaaaaaa"
bodyobjectObligatoire
Afficher les champs imbriqués
revisionintegerObligatoire

Minimum : 0.

Maximum : 9007199254740991.

Exemple0
requestIdstringFacultatif

Un UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.

afterShotIdstring | nullFacultatif

Utilisez des lettres, chiffres, tirets bas ou traits d’union.

Longueur minimale : 1 caractères.

Longueur maximale : 120 caractères.

shotobjectObligatoire
Afficher les champs imbriqués
titlestringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 100 caractères.

Exemple"aaaa"
actionstringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 1800 caractères.

Exemple"aaaa"
camerastringFacultatif

Longueur maximale : 400 caractères.

startPromptstringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 1800 caractères.

Exemple"aaaa"
endPromptstringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 1800 caractères.

Exemple"aaaa"
durationSecondsintegerFacultatif

Minimum : 2.

Maximum : 30.

referenceAssetIdsstring[]Facultatif

Utilisez les ID de ressources de votre compte compatibles avec les références du modèle choisi.

Nombre maximal d’éléments : 5.

audiostringFacultatif

Longueur maximale : 1600 caractères.

negativePromptstring | nullFacultatif

Longueur maximale : 2000 caractères.

storyboardNegativePromptstring | nullFacultatif

Longueur maximale : 2000 caractères.

locationobjectFacultatif
Afficher les champs imbriqués
namestringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 100 caractères.

descriptionstringObligatoire

Longueur minimale : 1 caractères.

Longueur maximale : 1800 caractères.

continuitystringObligatoire
Valeurs autorisées"NEW""REUSE""RELATED"
sourceSceneinteger | nullObligatoire

Minimum : 1.

Maximum : 60.

En-têtes de requête#

HTTP
Authorization: Bearer $TONG_API_KEYContent-Type: application/jsonIdempotency-Key: 45be69f1-c266-4a09-a82c-bf3c6303eb03

Conservez un UUID par action et réutilisez-le après un délai ou une nouvelle tentative. Une entrée différente avec le même UUID est refusée.

Champs de réponse#

Une requête acceptée n’est pas une génération terminée. Suivez le travail jusqu’à ce que le résultat soit prêt.

Acceptée signifie que la requête a été enregistrée. Consultez l’opération pour suivre son exécution.

JSON
{  "id": "e8aa0a87-6cd9-42eb-975a-b72bf43218c8",  "tool": "tong_director_shot_add",  "category": "director",  "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": null,  "detail_expired": false,  "timing": {    "dispatch_started_at": null,    "acknowledged_at": null,    "completed_at": null,    "dispatch_acknowledgement_ms": null,    "end_to_end_ms": null  },  "review": null,  "result": null,  "error": null,  "billing": {    "status": "pending",    "usage_credits": "0.000000",    "wallet_debited_credits": "0.000000"  }}
idstringObligatoire

L’identifiant unique de l’opération enregistrée.

Un UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.

toolstringObligatoire
categorystringObligatoire
channelstringObligatoire
Valeurs autorisées"api""mcp"
statestringObligatoire

L’état d’exécution actuel du travail enregistré.

Valeurs autorisées"queued""running""waiting""needs_review""paused""reconciling""succeeded""failed""cancelled"
statusstringObligatoire

Le statut global à utiliser pour suivre l’opération.

Valeurs autorisées"accepted""running""needs_review""paused""reconciling""succeeded""failed""cancelled"
stagestringObligatoire

La phase actuelle de l’opération.

Valeurs autorisées"admission""dispatch""review""generation""reconciliation""complete"
dispatch_statusstringObligatoire

Indique si l’outil a accepté la requête. Un accusé de réception ne signifie pas que la génération est terminée.

Valeurs autorisées"pending""unknown""acknowledged"
created_atstringObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

updated_atstringObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

detail_expires_atstring | nullObligatoire

Date 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_expiredbooleanObligatoire

Indique si les détails enregistrés ont expiré.

timingobjectObligatoire

Horodatages et durées pour suivre cette opération.

Afficher les champs imbriqués
dispatch_started_atstring | nullObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

acknowledged_atstring | nullObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

completed_atstring | nullObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

dispatch_acknowledgement_msnumber | nullObligatoire

Minimum : 0.

end_to_end_msnumber | nullObligatoire

Minimum : 0.

reviewJSON | nullObligatoire

Informations de validation si une intervention humaine est requise ; sinon null.

resultJSON | nullObligatoire

La sortie de cet outil, ou null si aucune sortie n’est disponible.

errorobject | nullObligatoire

Le code d’erreur public si l’opération a échoué ; sinon null.

Afficher les champs imbriqués
codestringObligatoire
billingobjectObligatoire

Utilisation 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
Valeurs autorisées"none""pending""settled""released""reconciling"
usage_creditsstringObligatoire

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

wallet_debited_creditsstringObligatoire

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

released_creditsstringFacultatif

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

refunded_creditsstringFacultatif

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

unfunded_creditsstringFacultatif

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

pending_creditsstringFacultatif

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

tokensobjectFacultatif
Afficher les champs imbriqués
inputnumberFacultatif

Minimum : 0.

outputnumberFacultatif

Minimum : 0.

cachednumberFacultatif

Minimum : 0.

cache_writenumberFacultatif

Minimum : 0.

componentsobject[]Facultatif
Afficher les champs imbriqués
idstringFacultatif
source_idstringObligatoire
toolstringObligatoire
modelstring | nullObligatoire
channelstringObligatoire
Valeurs autorisées"api""mcp"
credential_idstringObligatoire
kindstringObligatoire
Valeurs autorisées"text_pool""reasoning""generation"
usage_creditsstringObligatoire

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

wallet_debited_creditsstringObligatoire

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

evidence_atstringFacultatif

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

updated_atstringFacultatif

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

quoteobjectFacultatif

La configuration, le prix et les valeurs de soumission lorsqu’un devis est disponible.

Afficher les champs imbriqués
idstringObligatoire

Un UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.

operation_idstringObligatoire

Un UUID, par exemple e8aa0a87-6cd9-42eb-975a-b72bf43218c8.

toolstringObligatoire
operationstring | nullObligatoire
modelstring | nullObligatoire
configurationobjectObligatoire
submit_valuestringObligatoire
submit_fieldstringObligatoire
quoted_creditsstring | nullObligatoire

Une chaîne décimale avec six chiffres après la virgule, par exemple 1.250000.

expires_atstring | nullObligatoire

Date et heure ISO 8601, par exemple 2026-10-22T09:00:00Z.

Appel MCP#

JSON
{  "jsonrpc": "2.0",  "id": 1,  "method": "tools/call",  "params": {    "name": "tong_director_shot_add",    "arguments": {      "params": {        "id": "aaaaaaaaaaaaaaaaaaaaaaaa"      },      "body": {        "revision": 0,        "shot": {          "title": "aaaa",          "action": "aaaa",          "startPrompt": "aaaa",          "endPrompt": "aaaa"        }      }    },    "_meta": {      "io.tongai/idempotency-key": "45be69f1-c266-4a09-a82c-bf3c6303eb03"    }  }}

Les requêtes REST placent les arguments dans input. Les appels MCP envoient ces mêmes arguments directement.

Réponse

JSON
{  "jsonrpc": "2.0",  "id": 1,  "result": {    "structuredContent": {      "id": "e8aa0a87-6cd9-42eb-975a-b72bf43218c8",      "tool": "tong_director_shot_add",      "category": "director",      "channel": "mcp",      "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": null,      "detail_expired": false,      "timing": {        "dispatch_started_at": null,        "acknowledged_at": null,        "completed_at": null,        "dispatch_acknowledgement_ms": null,        "end_to_end_ms": null      },      "review": null,      "result": null,      "error": null,      "billing": {        "status": "pending",        "usage_credits": "0.000000",        "wallet_debited_credits": "0.000000"      }    },    "content": [      {        "type": "text",        "text": "{\"id\":\"e8aa0a87-6cd9-42eb-975a-b72bf43218c8\",\"tool\":\"tong_director_shot_add\",\"category\":\"director\",\"channel\":\"mcp\",\"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\":null,\"detail_expired\":false,\"timing\":{\"dispatch_started_at\":null,\"acknowledged_at\":null,\"completed_at\":null,\"dispatch_acknowledgement_ms\":null,\"end_to_end_ms\":null},\"review\":null,\"result\":null,\"error\":null,\"billing\":{\"status\":\"pending\",\"usage_credits\":\"0.000000\",\"wallet_debited_credits\":\"0.000000\"}}"      }    ]  }}

Erreurs et limites#

HTTPErreurReprise
400Requête invalideREQUEST_INVALIDCorrigez les champs indiqués par l’erreur avant de réessayer.
401Identifiant invalideCREDENTIAL_INVALIDVérifiez l’identifiant, son expiration et son éventuelle révocation.
402Crédits insuffisantsINSUFFICIENT_CREDITSAjoutez des crédits au compte de l’identifiant, puis poursuivez le travail enregistré.
403Autorisation refuséeSCOPE_REQUIREDUtilisez un identifiant disposant des autorisations requises et de l’accès à la ressource choisie.
404Ressource indisponibleRESOURCE_UNAVAILABLEVérifiez l’ID de la ressource et son appartenance au compte autorisé.
409Conflit d’intentionIDEMPOTENCY_CONFLICTRéutilisez une intention uniquement avec sa requête initiale. Utilisez un nouvel UUID pour une autre action.
429Limite de débit atteinteRATE_LIMITEDAttendez le délai Retry-After avant de répéter la même requête.
503Temporairement indisponibleDEPENDENCY_UNAVAILABLEAttendez Retry-After et réessayez avec la même intention. Vérifiez l’opération enregistrée après un délai dépassé.