PHP5 library for OneSky API
- PHP 5.1 or higher
- CURL extension
Install the latest version with composer require onesky/api-library-php5
Create instance
use Onesky\Api\Client;
$client = new Client();
Set API key and secret
$client->setApiKey('<api-key>')->setSecret('<api-secret>');
Way to make request
// resource => name of resource in camelcase with 's' tailing such as 'projectTypes', 'quotations', 'importTasks'
// action => action to take such as 'list', 'show', 'upload', 'export'
// parameters => parameters passed in the request including URL param such as 'project_id', 'files', 'locale'
$client->{resource}('{action}', array({parameters}));
Sample request and get response in array
// list project groups
$response = $client->projectTypes('list');
$response = json_decode($response, true);
// show a project
$response = $client->projects('show', array('project_id' => 999));
$response = json_decode($response, true);
// upload file
$response = $client->files('upload', array(
'project_id' => 999,
'file' => 'path/to/string.yml',
'file_format' => 'YAML',
'locale' => 'fr'
));
$response = json_decode($response, true);
// export translation
$response = $client->translations('export', array(
'project_id' => 999,
'locale' => 'ja',
'source_file_name' => 'string.yml'
));
file_put_contents('path/to/file', $response);
// create order
$response = $client->orders('create', array(
'project_id' => 999,
'files' => 'string.yml',
'to_locale' => 'de'
));
$response = json_decode($response, true);
Or pick one of the issues and create a PR to solve it.
Note: need to install dependencies using composer to have phpunit.
vendor/bin/phpunit