Riferimento API PTC
L'API PTC utilizza REST e ti consente di integrare la localizzazione del software nel tuo processo di sviluppo. Gli endpoint API ti permettono di aggiungere e aggiornare i file di origine, recuperare informazioni, gestire le traduzioni e molto altro.
L'API PTC può essere utilizzata solo in modalità live. Supporta i metodi HTTP standard e restituisce risposte in formato JSON. L'autenticazione è basata su token e specifica per progetto.
Snippet di codice
curl -X GET "https://app.ptc.wpml.org/api/v1/source_files/supported_extensions" \
-H "Authorization: Bearer YOUR_API_TOKEN"require 'net/http'
require 'uri'
uri = URI('https://app.ptc.wpml.org/api/v1/source_files/supported_extensions')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.bodyimport requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN'
}
response = requests.get('https://app.ptc.wpml.org/api/v1/source_files/supported_extensions', headers=headers)
print(response.json())<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://app.ptc.wpml.org/api/v1/source_files/supported_extensions',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer YOUR_API_TOKEN'
],
]);
$response = curl_exec($curl);
curl_close($curl);
print_r(json_decode($response, true));
?>import okhttp3.*;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://app.ptc.wpml.org/api/v1/source_files/supported_extensions")
.addHeader("Authorization", "Bearer YOUR_API_TOKEN")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://app.ptc.wpml.org/api/v1/source_files/supported_extensions", nil)
req.Header.Add("Authorization", "Bearer YOUR_API_TOKEN")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
using System;
using System.Net.Http;
using System.Threading.Tasks;
var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", "YOUR_API_TOKEN");
var response = await client.GetAsync("https://app.ptc.wpml.org/api/v1/source_files/supported_extensions");
var content = await response.Content.ReadAsStringAsync();
Console.WriteLine(content);const axios = require('axios');
const response = await axios.get('https://app.ptc.wpml.org/api/v1/source_files/supported_extensions', {
headers: { 'Authorization': 'Bearer YOUR_API_TOKEN' }
});
console.log(response.data);La documentazione utilizza cURL per mostrare come effettuare richieste HTTP all'API PTC, ma puoi cambiare scheda per vedere la stessa richiesta in altri linguaggi.
Autenticazione
La creazione di token API è una funzionalità Pro. Diventa disponibile quando attivi il Pay-As-You-Go.
Per iniziare:
-
Accedi al tuo account PTC. Se non ne hai ancora uno, inizia una prova e carica il tuo primo file manualmente.
-
Per spostare un progetto esistente su API integration, vai su Impostazioni → Gestisci token API e aggiungi un access token. Per i progetti successivi, puoi selezionare API integration nella configurazione guidata.
Tutte le richieste all'API PTC richiedono l'autenticazione tramite un token che ti fornisce l'accesso a un singolo progetto in PTC.
Includi il token nell'header Authorization di ogni richiesta utilizzando il formato Bearer:
Bearer <AUTHENTICATION_TOKEN>
Codici di risposta
L'API PTC utilizza i codici di risposta HTTP standard per indicare il successo o il fallimento di una richiesta.
Codici di stato di autenticazione
La richiesta ha funzionato come previsto.
Non è stato fornito alcun token API valido. Controlla se il tuo token è corretto, non è scaduto ed è incluso nell'header Authorization.
Rate limiting
L'API PTC implementa il rate limiting per garantire un utilizzo equo e mantenere la qualità del servizio. I limiti vengono applicati per organizzazione e monitorati attraverso specifiche operazioni API.
| Tipo di limite | Richieste | Arco temporale | Ambito |
|---|---|---|---|
| Operazioni sui file | 10 | 1 minuto | Per organizzazione |
Endpoint interessati
POST /api/v1/source_files– Creare i file di originePUT /api/v1/source_files/process– Elabora i file di originePOST /api/v1/source_files/bulk– Caricamento in blocco dei file di origine
Quando i limiti di frequenza delle richieste vengono superati
Se una richiesta supera la frequenza consentita, l'API restituisce:
Status: 429 Too Many Requests
{
"error": "Rate limit exceeded"
}
Categorie API disponibili
Caricare e gestire i file di origine tramite l'API
Usa questi endpoint per caricare, sostituire e organizzare i tuoi file di origine. Questo include:
- Caricare un singolo file o effettuare il caricamento in blocco di più file in un archivio ZIP
- Sostituire o aggiornare un file di origine esistente con nuovi contenuti
- Elencare i file con opzioni di filtraggio, ordinamento e paginazione
Vai a Caricare e gestire i file di origine →
Ottenere i formati di file supportati e le lingue di destinazione tramite l'API
Usa questi endpoint per verificare:
- I codici ISO corretti da usare durante la creazione di job di traduzione o il caricamento di traduzioni
- Quali lingue supporta il tuo progetto
- Tutte le estensioni dei file di origine che puoi caricare su PTC, insieme a eventuali file di traduzione aggiuntivi che PTC può generare per quegli input
Vai a Formati di file disponibili e lingue di destinazione →
Richiedere e recuperare le traduzioni tramite l'API
Usa questi endpoint per inviare contenuti per la traduzione, monitorarne i progressi e recuperare le traduzioni. Questo include:
- Creare job di traduzione per contenuti strutturati in JSON
- Verificare lo stato dei job di traduzione
- Recuperare le traduzioni completate
Vai a Richiedere e recuperare le traduzioni →
Integrare la localizzazione nella tua pipeline CI/CD con l'API PTC
Usa questa guida per automatizzare le traduzioni come parte del tuo processo di build. Questo include:
- Configurare PTC con GitHub Actions, GitLab CI/CD o altri sistemi CI/CD utilizzando file di configurazione pronti all'uso
- Eseguire le traduzioni in modo automatico e sicuro durante ogni build
Prova PTC per 30 giorni
Traduci fino a 20.000 parole in 2 lingue senza costi, poi passa a Pro per sbloccare ogni funzionalità.
Inclusa nel tuo account Pro
Apri il tuo pannello di controllo per metterla all'opera.