mamoot40/poeditor-php-sdk

Connect your software to POEditor with this simple API

dev-main 2023-02-27 21:12 UTC

This package is not auto-updated.

Last update: 2025-07-02 06:51:34 UTC


README

Connect your software to POEditor with this simple API

Installation & Usage

Requirements

PHP 7.4 and later. Should also work with PHP 8.0.

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/GIT_USER_ID/GIT_REPO_ID.git"
    }
  ],
  "require": {
    "GIT_USER_ID/GIT_REPO_ID": "*@dev"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

<?php
require_once('/path/to/OpenAPIClient-php/vendor/autoload.php');

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');




$apiInstance = new OpenAPI\Client\Api\ContributorsApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client()
);
$api_token = 'api_token_example'; // string
$id = 'id_example'; // string | The id of project
$name = 'name_example'; // string | The name of contributor
$email = 'email_example'; // string | The email of contributor
$language = 'language_example'; // string | The language code (Required if adding a contributor)
$admin = 56; // int | Set it to 1 for adding as administrator

try {
    $result = $apiInstance->contributorsAddPost($api_token, $id, $name, $email, $language, $admin);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling ContributorsApi->contributorsAddPost: ', $e->getMessage(), PHP_EOL;
}

API Endpoints

All URIs are relative to https://api.poeditor.com/v2

Class Method HTTP request Description
ContributorsApi contributorsAddPost POST /contributors/add Adds a contributor to a project language or an administrator to a project.
ContributorsApi contributorsListPost POST /contributors/list Returns the list of contributors from your projects.
ContributorsApi contributorsRemovePost POST /contributors/remove Removes a contributor from a project language or an admin from a project, if the language is not specified.
LanguagesApi languagesAddPost POST /languages/add Adds a new language to project.
LanguagesApi languagesAvailablePost POST /languages/available Returns project languages, percentage of translation done for each and the datetime (UTC - ISO 8601) when the last change was made.
LanguagesApi languagesDeletePost POST /languages/delete Deletes existing language from project.
LanguagesApi languagesListPost POST /languages/list Returns project languages, percentage of translation done for each and the datetime (UTC - ISO 8601) when the last change was made.
LanguagesApi languagesUpdatePost POST /languages/update Inserts / overwrites translations.
ProjectsApi projectsAddPost POST /projects/add Creates a new project. Returns project details (if successful)
ProjectsApi projectsDeletePost POST /projects/delete Deletes the project from the account. You must be the owner of the project.
ProjectsApi projectsExportPost POST /projects/export Returns the link of the file (expires after 10 minutes). The settings inherited from the project will be the ones at the time of the download.
ProjectsApi projectsListPost POST /projects/list Returns the list of projects owned by user.
ProjectsApi projectsSyncPost POST /projects/sync Syncs your project with the array you send (terms that are not found in the JSON object will be deleted from project and the new ones added). Please use with caution. If wrong data is sent, existing terms and their translations might be irreversibly lost.
ProjectsApi projectsUpdatePost POST /projects/update Updates project settings (name, description, reference language, fallback language). If optional parameters are not sent, their respective fields are not updated.
ProjectsApi projectsUploadPost POST /projects/upload Updates terms / translations - No more than one request every 30 seconds.
ProjectsApi projectsViewPost POST /projects/view Returns projects details
TermsApi termsAddCommentPost POST /terms/add_comment Adds comments to existing terms.
TermsApi termsAddPost POST /terms/add Adds terms to project.
TermsApi termsDeletePost POST /terms/delete Deletes terms from project.
TermsApi termsListPost POST /terms/list Returns project's terms and translations if the argument language is provided.
TermsApi termsUpdatePost POST /terms/update Updates project terms. Lets you change the text, context, reference, plural and tags.
TranslationsApi translationsAddPost POST /translations/add Adds translations to project. If translation exists, it will not overwrite it.
TranslationsApi translationsDeletePost POST /translations/delete Deletes translations from specified language.
TranslationsApi translationsUpdatePost POST /translations/update Updates existing translations.

Models

Authorization

All endpoints do not require authorization.

Tests

To run the tests, use:

composer install
vendor/bin/phpunit

Author

About this package

This PHP package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.3
  • Build package: org.openapitools.codegen.languages.PhpClientCodegen