checkFileTranslations
Referencia de API del método checkFileTranslations para verificar el estado de las traducciones sin descargar archivos
Descripción general
El método checkFileTranslations verifica el estado de traducción de los archivos sin descargar su contenido.
Esto resulta útil para monitorear el progreso de la traducción, comprobar el estado de finalización y determinar qué traducciones están disponibles.
const gt = new GT({ projectId: 'your-project-id', apiKey: 'your-api-key' });
const status = await gt.checkFileTranslations([
  {
    versionId: 'version-123',
    fileName: 'app.json',
    locale: 'es'
  }
]);Referencias
Parámetros
| Nombre | Tipo | Descripción | 
|---|---|---|
| data | FileTranslationQuery[] | Matriz de consultas de traducción de archivos para comprobar | 
| options? | CheckFileTranslationsOptions | Configuración opcional de la solicitud | 
FileTranslationQuery
| Nombre | Tipo | Descripción | 
|---|---|---|
| versionId | string | ID de versión del archivo que se desea comprobar | 
| fileName? | string | Identificador del nombre de archivo (obligatorio si no se proporciona fileId) | 
| fileId? | string | Identificador del ID del archivo (obligatorio si no se proporciona fileName) | 
| locale | string | Locale de destino para comprobar el estado de la traducción | 
CheckFileTranslationsOptions
| Nombre | Tipo | Descripción | 
|---|---|---|
| timeout? | number | Tiempo de espera de la solicitud en milisegundos | 
Valores de retorno
Promise<CheckFileTranslationsResult> - Contiene información sobre el estado de las traducciones.
type CheckFileTranslationsResult = {
  translations: CompletedFileTranslationData[];
}| Propiedad | Tipo | Descripción | 
|---|---|---|
| translations | CompletedFileTranslationData[] | Matriz de datos de estado de traducción | 
Estructura de CompletedFileTranslationData
type CompletedFileTranslationData = {
  id: string;
  fileId: string;
  versionId: string;
  fileName: string;
  locale: string;
  status: 'completed' | 'pending' | 'failed';
  completedAt: string | null;
  approvedAt: string | null;
  publishedAt: string | null;
  createdAt: string;
  updatedAt: string;
}Ejemplos
Uso básico
Comprueba el estado de la traducción para archivos y locales específicos:
// (1) Crear una instancia de GT
const targetLocales = ['es', 'fr', 'de'];
const gt = new GT({
  projectId: 'your-project-id',
  apiKey: 'your-api-key',
});
// (2) Subir el archivo
const fileUpload = {
  content: fileContents,
  fileName: filePath,
  fileFormat: 'JSON',
  locale: 'en',
};
const files = [ { source: fileUpload } ];
const { uploadedFiles } = await gt.uploadSourceFiles(
  files,
  { sourceLocale: 'en' }
);
// (3) Encolar el trabajo de traducción del archivo
const enqueueResult = await gt.enqueueFiles(
  uploadedFiles,
  {
  sourceLocale: 'en',
  targetLocales: targetLocales,
});
// (4) Esperar a que se completen todas las traducciones
let translationIds = [];
const statusQuery = Object.values(enqueueResult.data).flatMap(({fileName, versionId}) => {
  return targetLocales.map((locale) => ({locale, fileName, versionId}));
});
while (true) {
  const status = await gt.checkFileTranslations(statusQuery);
  if (status.translations.length === statusQuery.length) {
    translationIds = status.translations.map(translation => translation.id);
    break;
  }
  await new Promise(resolve => setTimeout(resolve, 1000));
}Notas
- El estado de la traducción incluye los estados pending,completedyfailed
- Las traducciones completadas pueden requerir aprobación antes de publicarse
- Use este método para comprobar el estado de forma eficiente al monitorear múltiples trabajos de traducción
Próximos pasos
- Consulta la Guía de inicio rápido para ver un ejemplo completo de cómo usar este método
- Consulta downloadTranslatedFilepara descargar traducciones finalizadas
- Consulta enqueueFilespara crear trabajos de traducción
- Consulta querySourceFilepara obtener información del archivo de origen y de la traducción
¿Qué te ha parecido esta guía?

