title: List i18n Translation Jobs description: Retrieve a list of all i18n translation jobs for the authenticated user

List i18n Translation Jobs

Retrieve a list of all i18n translation jobs for the authenticated user.

Endpoint

GET /v2/translate/i18n/jobs

Description

Retrieve a list of all i18n translation jobs for the authenticated user. This endpoint returns all jobs regardless of their status.

Headers

X-API-KEY string (required) : Your API key for authentication

Example Request

curl -X GET "https://api.translateplus.io/v2/translate/i18n/jobs" \
  -H "X-API-KEY: your_api_key"
import requests

url = "https://api.translateplus.io/v2/translate/i18n/jobs"
headers = {
    "X-API-KEY": "your_api_key"
}

response = requests.get(url, headers=headers)
jobs = response.json()
for job in jobs:
    print(f"Job {job['job_id']}: {job['status']}")
fetch('https://api.translateplus.io/v2/translate/i18n/jobs', {
  headers: {
    'X-API-KEY': 'your_api_key'
  }
})
.then(response => response.json())
.then(jobs => {
  jobs.forEach(job => {
    console.log(`Job ${job.job_id}: ${job.status}`);
  });
})
.catch(error => console.error('Error:', error));
const https = require('https');

const options = {
  hostname: new URL('https://api.translateplus.io').hostname,
  path: '/v2/translate/i18n/jobs',
  method: 'GET',
  headers: {
    'X-API-KEY': 'your_api_key'
  }
};

const req = https.request(options, (res) => {
  let responseData = '';
  res.on('data', (chunk) => {
    responseData += chunk;
  });
  res.on('end', () => {
    const jobs = JSON.parse(responseData);
    jobs.forEach(job => {
      console.log(`Job ${job.job_id}: ${job.status}`);
    });
  });
});

req.on('error', (error) => {
  console.error('Error:', error);
});

req.end();
<?php

$url = 'https://api.translateplus.io/v2/translate/i18n/jobs';
$apiKey = 'your_api_key';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'X-API-KEY: ' . $apiKey
]);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if ($httpCode === 200) {
    $jobs = json_decode($response, true);
    foreach ($jobs as $job) {
        echo "Job {$job['job_id']}: {$job['status']}\n";
    }
} else {
    echo 'Error: ' . $response;
}

Success Response (200 OK)

[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "job_id": "550e8400-e29b-41d4-a716-446655440000",
    "status": "completed",
    "original_filename": "translations.json",
    "file_type": "json",
    "source_language": "en",
    "target_languages": ["fr", "es", "de"],
    "total_keys": 150,
    "translated_keys": 150,
    "failed_keys": 0,
    "error_message": null,
    "created_at": "2025-01-15T10:30:00Z",
    "updated_at": "2025-01-15T10:32:15Z",
    "completed_at": "2025-01-15T10:32:15Z"
  },
  {
    "id": "660e8400-e29b-41d4-a716-446655440001",
    "job_id": "660e8400-e29b-41d4-a716-446655440001",
    "status": "processing",
    "original_filename": "messages.yaml",
    "file_type": "yaml",
    "source_language": "en",
    "target_languages": ["fr"],
    "total_keys": 75,
    "translated_keys": 45,
    "failed_keys": 0,
    "error_message": null,
    "created_at": "2025-01-15T11:00:00Z",
    "updated_at": "2025-01-15T11:01:30Z",
    "completed_at": null
  }
]

Response Fields

| Field | Type | Description | |-------|------|-------------| | id | string (UUID) | Job unique identifier | | job_id | string (UUID) | Job unique identifier (same as id) | | status | string | Current job status: "pending", "processing", "completed", "partial", or "failed" | | original_filename | string | Name of the uploaded file | | file_type | string | File format: "json", "yaml", "po", "properties", "strings", or "xml" | | source_language | string | Source language code | | target_languages | array[string] | List of target language codes | | total_keys | integer | Total number of translatable keys in the file | | translated_keys | integer | Number of successfully translated keys | | failed_keys | integer | Number of keys that failed to translate | | error_message | string | null | Error message if the job failed | | created_at | string (ISO 8601) | Timestamp when the job was created | | updated_at | string (ISO 8601) | Timestamp when the job was last updated | | completed_at | string (ISO 8601) | null | Timestamp when the job was completed, or null if still processing |

Notes

Error Responses

401 Unauthorized / 403 Forbidden

Invalid or missing API key:

{
  "detail": "Invalid API key. Please verify your API key is valid."
}