Crea una traduzione
Invia il file in uno di questi tre modi: JSON con content (il file come testo UTF-8, solo per formati testuali, è il percorso più semplice per gli agenti), JSON con file_url (HTTPS, recuperato lato server, senza reindirizzamenti) o multipart/form-data con un campo file (obbligatorio per XLSX e ZIP). filename è opzionale: se omesso, viene generato un nome predefinito pulito e il formato è dedotto automaticamente dal contenuto. Includi instruction per ricevere il piano completo e protetto nella stessa risposta (richiede alcuni secondi); omettila per ricevere quattro suggested_instructions basate sul contesto e procedi con l'endpoint plan. La qualità viene scelta al momento dell'approvazione, non qui: il piano indica i costi per entrambi i tier. I limiti di dimensione per formato sono disponibili in /v1/account come entitlements.max_upload_bytes_by_format. Il caricamento appare anche nella web app.
POST/v1/batches
Richiede batches:create. Creare una traduzione non costa nulla: i crediti vengono riservati solo quando approvi un piano.
Scegliere come inviare il file
Sono disponibili tre metodi di invio, e la scelta corretta dipende dal formato e non dalle preferenze.
| Metodo di invio | Utilizzo | Note |
|---|---|---|
JSON con content | Qualsiasi formato di testo | Il file stesso come testo UTF-8. La soluzione più semplice per un agente che ha già il contenuto in memoria. |
JSON con file_url | Un file già ospitato | Solo HTTPS, recuperato lato server. I reindirizzamenti non vengono seguiti, quindi fornisci l’URL finale. |
multipart/form-data | XLSX e ZIP | Obbligatorio per i formati binari: non possono essere inviati come testo JSON. |
filename è facoltativo ma consigliato. L’estensione determina l’identificazione del formato, quindi un nome come strings.xml e uno come export.csv faranno intervenire parser diversi su byte identici.
Cosa succede dopo
La risposta restituisce un batch_id. Da qui la sequenza è sempre la stessa:
POST /v1/batches/{batch_id}/plan: descrivi cosa tradurre, con parole tue.POST /v1/batches/{batch_id}/approve: scala i crediti e avvia la traduzione.GET /v1/batches/{batch_id}: effettua il polling fino al completamento.GET /v1/batches/{batch_id}/result: recupera il risultato. Restituisce un link firmato, non il file vero e proprio.
Risposta
Crea una traduzione da un file
dataobjectrequiredrequest_idstringrequiredCodici possibili: invalid_request, unknown_field, invalid_parameter, invalid_cursor
errorobjectrequiredrequest_idstringrequiredCodici possibili: authentication_required, invalid_api_key, api_key_expired, api_key_revoked
errorobjectrequiredrequest_idstringrequiredCodici possibili: insufficient_credits
errorobjectrequiredrequest_idstringrequiredCodici possibili: insufficient_scope, feature_not_available, admin_required, file_retention_expired
errorobjectrequiredrequest_idstringrequiredCodici possibili: batch_not_found, glossary_not_found, resource_not_found
errorobjectrequiredrequest_idstringrequiredCodici possibili: glossary_already_exists, result_not_ready, batch_not_editable, no_plan_yet, batch_not_awaiting_approval
errorobjectrequiredrequest_idstringrequiredCodici possibili: file_expired
errorobjectrequiredrequest_idstringrequiredCodici possibili: request_too_large, file_too_large, result_too_large
errorobjectrequiredrequest_idstringrequiredCodici possibili: language_not_supported, invalid_language_pair, glossary_term_limit_reached, glossary_limit_reached, invalid_glossary_terms, unsupported_format, file_fetch_failed, plan_invalid
errorobjectrequiredrequest_idstringrequiredCodici possibili: rate_limited
errorobjectrequiredrequest_idstringrequiredCodici possibili: internal_error
errorobjectrequiredrequest_idstringrequiredCodici possibili: service_unavailable
errorobjectrequiredrequest_idstringrequired