# General Translation Platform: translate URL: https://generaltranslation.com/es/docs/platform/core/reference/gt-class-methods/translation/translate.mdx --- title: translate description: Traduce una cadena o una entrada de contenido estructurado a una configuración regional de destino con General Translation. Referencia de la API de translate. --- Traduce una sola cadena o una entrada de contenido estructurado desde una configuración regional de origen a una configuración regional de destino. Este es el método principal de traducción de una instancia de [GT](/docs/platform/core/reference/gt-class/constructor). ## Descripción general [#overview] Usa `translate` en una instancia configurada de [`GT`](/docs/platform/core/reference/gt-class/constructor) para traducir una entrada. Pasa el contenido que quieres traducir y una cadena de configuración regional de destino (forma abreviada) o un objeto de opciones. Devuelve una promesa que se resuelve con un [`TranslationResult`](/docs/platform/core/reference/types/translation-result). ```typescript const gt = new GT({ apiKey: 'your-api-key', projectId: 'your-project-id' }); const result = await gt.translate('Hello, world!', 'es'); ``` Firma: ```typescript translate( source: TranslateManyEntry, options: string | TranslateOptions, timeout?: number ): Promise ``` *Nota: `translate` requiere un `apiKey` (o `devApiKey`) y `projectId` en la instancia de GT. Internamente, llama a [`translateMany`](/docs/platform/core/reference/gt-class-methods/translation/translate-many) con una sola entrada.* ## Cómo funciona [#how-it-works] * **Detección de contenido.** El `source` se detecta como texto sin formato, un mensaje ICU, un mensaje con formato i18next o contenido JSX estructurado, según su estructura y los metadatos `dataFormat` que proporciones. * **Resolución de la configuración regional.** La configuración regional de destino se valida conforme a BCP 47. Se aplica cualquier [`customMapping`](/docs/platform/core/reference/types/custom-mapping) de la instancia y se envía el código de configuración regional canónico a la API. * **Sintaxis abreviada de opciones.** Pasar una cadena para `options` es una sintaxis abreviada de `{ targetLocale: string }`, por lo que `gt.translate('Hello', 'es')` y `gt.translate('Hello', { targetLocale: 'es' })` son equivalentes. ## Parámetros [#parameters] | Parámetro | Descripción | Tipo | Opcional | Predeterminado | | --------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------- | -------------- | | [`source`](#source) | Contenido que se va a traducir: una `string` o un objeto con `source` y `metadata` opcional. | [`TranslateManyEntry`](/docs/platform/core/reference/types/translate-many-entry) | No | — | | [`options`](#options) | `string` con la configuración regional de destino, o un objeto de opciones. | `string \| TranslateOptions` | No | — | | [`timeout`](#timeout) | Tiempo de espera de la solicitud en milisegundos. | `number` | Sí | — | ### `source` [#source] **Tipo** [`TranslateManyEntry`](/docs/platform/core/reference/types/translate-many-entry) · **Obligatorio** El contenido que se va a traducir. Pasa una cadena de texto simple o un objeto con `source` (el [`Content`](/docs/platform/core/reference/types/content)) y `metadata` opcional (un [`EntryMetadata`](/docs/platform/core/reference/types/entry-metadata) que aporta contexto, `dataFormat` y otras indicaciones para la traducción). ### `options` [#options] **Tipo** `string | TranslateOptions` · **Obligatorio** Una cadena con la configuración regional de destino, como `'es'`, o un objeto de opciones: ```typescript type TranslateOptions = { targetLocale: string; // configuración regional a la que traducir sourceLocale?: string; // reemplaza el sourceLocale de la instancia modelProvider?: string; // sugerencia opcional de proveedor de modelo }; ``` ### `timeout` [#timeout] **Type** `number` · **Opcional** Tiempo de espera de la solicitud en milisegundos. Si se omite, se usa el valor predeterminado de la instancia. ## Devuelve [#returns] **Tipo** `Promise` Se resuelve con un [`TranslationResult`](/docs/platform/core/reference/types/translation-result): una unión discriminada de un resultado correcto (con `translation` y `locale`) y un resultado de error (con `error` y `code`). Comprueba siempre `success` antes de leer la traducción. ## Ejemplos [#examples] ```typescript // Traducción de cadenas simple (shorthand de configuración regional) const result = await gt.translate('Welcome to our application', 'fr'); if (result.success) { console.log(result.translation); // "Bienvenue dans notre application" } else { console.error(`Translation failed: ${result.error}`); } ``` ```typescript // Con un objeto de opciones y configuración regional de origen explícita const result = await gt.translate('Welcome to our application', { targetLocale: 'fr', sourceLocale: 'en', }); ``` ```typescript // Con metadatos de origen (plural ICU + contexto) const result = await gt.translate( { source: '{count, plural, other {{count} items}}', metadata: { dataFormat: 'ICU', context: 'Item count display' }, }, { targetLocale: 'es' } ); ```