PHP client for the PolyLingo translation API.
Requires PHP 7.4 or newer.
composer require usepolylingo/polylingo<?php
use PolyLingo\PolyLingo;
$client = new PolyLingo([
'apiKey' => getenv('POLYLINGO_API_KEY'),
// 'baseURL' => 'https://api.usepolylingo.com/v1',
// 'timeout' => 120_000,
]);
$r = $client->translate([
'content' => '# Hello',
'targets' => ['es', 'fr'],
'format' => 'markdown',
]);
echo $r['translations']['es'];| Method | Notes |
|---|---|
$client->health() |
GET /health |
$client->languages() |
GET /languages |
$client->translate([...]) |
POST /translate |
$client->batch([...]) |
POST /translate/batch |
$client->usage() |
GET /usage |
$client->jobs->create([...]) |
POST /jobs (202) |
$client->jobs->get($jobId) |
GET /jobs/:id |
$client->jobs->translate([...]) |
Submit job, poll until done (pollInterval, timeout, onProgress) |
Responses are associative arrays matching the JSON API (e.g. translations, usage).
PolyLingo\Errors\PolyLingoException is the base type (getHttpStatus(), getErrorCode(), getMessage()). Subclasses: AuthException (401), RateLimitException (429, optional getRetryAfter()), JobFailedException (failed or timed-out job, includes getJobId()).
github.com/UsePolyLingo/polylingo-php
MIT