Saltar al contenido principal

API de traducción de texto

Traduce texto con la API de GPT Translator.

Endpoint​

POST https://api.gpttranslator.co/v1/translation/text-translation/api

Autenticación​

Añade tu clave de API en los encabezados de la solicitud:

x-api-key: YOUR_API_KEY
Content-Type: application/json

Cuerpo de la solicitud​

Campos obligatorios:

  • text cadena: texto de origen que se va a traducir
  • sourceLang cadena: código del idioma de origen
  • targetLang cadena: código del idioma de destino
  • model cadena: nombre del modelo de traducción

Campos opcionales:

  • domain cadena: especialización por dominio
  • writingStyle cadena: preferencia de estilo de redacción
  • tone cadena: preferencia de tono
  • customPrompt cadena: instrucciones de traducción personalizadas

Los códigos de idioma se documentan por separado en Idiomas compatibles. Los modelos compatibles se documentan en Modelos compatibles.

Reglas de validación​

  • text: obligatorio. No puede estar vacío.
  • sourceLang, targetLang: deben coincidir con ^[a-zA-Z]+(-[a-zA-Z]+)?$, mínimo 2 caracteres, máximo 11 caracteres. Deben ser un código de Idiomas compatibles.
  • model: debe ser uno de los valores de Modelos compatibles.

Ejemplos​

cURL​

curl --location 'https://api.gpttranslator.co/v1/translation/text-translation/api' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"text": "hello world",
"sourceLang": "en",
"targetLang": "fr",
"model": "gpt-4.1-mini-2025-04-14"
}'

JavaScript​

const response = await fetch(
"https://api.gpttranslator.co/v1/translation/text-translation/api",
{
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
text: "hello world",
sourceLang: "en",
targetLang: "fr",
model: "gpt-4.1-mini-2025-04-14",
}),
},
);

const data = await response.json();
console.log(data);

Python​

import requests

url = "https://api.gpttranslator.co/v1/translation/text-translation/api"
headers = {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"text": "hello world",
"sourceLang": "en",
"targetLang": "fr",
"model": "gpt-4.1-mini-2025-04-14"
}

response = requests.post(url, headers=headers, json=payload)
print(response.json())

Tipos de respuesta​

Correcto 200​

{
"message": "Text translation completed successfully",
"error": null,
"data": {
"translatedText": "bonjour le monde",
"originalText": "hello world",
"totalWords": 2,
"isRTL": false,
"tokensConsumed": 3
},
"statusCode": 200
}

Error de validación de la solicitud 400​

Los errores del middleware de validación se devuelven con este formato:

{
"error": "Invalid source language. Please select a supported language."
}

Otros posibles errores de validación:

  • Invalid target language. Please select a supported language.
  • Invalid model type. Please enter a valid model type e.g. ...
  • Text cannot be empty.
  • Text is required.

Clave de API ausente o encabezado no válido 401​

{
"message": "Invalid api key",
"error": "Invalid api key",
"statusCode": 401,
"data": null
}

Errores de clave de API o de configuración del usuario 400​

Clave no válida en la base de datos:

{
"message": "Invalid api key",
"error": "Invalid api key",
"statusCode": 400,
"data": null
}

Usuario no activo:

{
"message": "User not found or user is not active",
"error": "User not found or user is not active",
"statusCode": 400,
"data": null
}

Falta la organización:

{
"message": "Organization Id not found for the user",
"error": "Organization Id not found for the user",
"statusCode": 400,
"data": null
}

Restricción del plan 402​

{
"message": "only subscribed users are allowed to use this model",
"error": "only subscribed users are allowed to use this model",
"data": null,
"statusCode": 402
}

Límite de tokens alcanzado 402​

{
"message": "You have reached the limit of words for translation. Please upgrade your plan to continue using this feature.",
"error": "You have reached the limit of words for translation. Please upgrade your plan to continue using this feature.",
"data": {
"requiredTokens": 123,
"tokens": 45
},
"statusCode": 402
}

Error de procesamiento o del servidor 500​

{
"message": "Error in text translation for api",
"error": "Detailed server error message",
"data": null,
"statusCode": 500
}