The official Upsun SDK for PHP. This SDK provides a PHP interface that maps to the Upsun CLI commands.
For more information, read the documentation.
CAUTION: This project is currently in Beta, meaning features and APIs may evolve over time.
Please report bugs or request new features by creating a GitHub issue.
Install the SDK via Composer:
composer require upsun/upsun-sdk-phpThen include Composer's autoloader in your PHP application:
require __DIR__ . '/vendor/autoload.php';You will need an Upsun API token to use this SDK. Store it securely, preferably in an environment variable.
use Upsun\UpsunConfig;
use Upsun\UpsunClient;
$config = new UpsunConfig(apiToken: getenv('UPSUN_API_TOKEN'));
$upsunClient = new UpsunClient($config);$organizations = $upsunClient->organizations->list();$projects = $upsunClient->projects->list('<organizationId>');$response = $upsunClient->environments->redeploy('<projectId>', '<environmentId>');Clone the repository and install dependencies:
git clone git@github.com:upsun/upsun-sdk-php.git
composer installThe SDK is built as follows:
- From the JSON specs of our API
- Using
@openapitools/openapi-generator-cli - Which generates:
- PHP Models (in
src/Model/) - PHP APIs (in
src/Api/)
- PHP Models (in
- Higher-level PHP (Facade) oriented Tasks (in
src/Core/Tasks/)
API and Model classes are generated using openapi-generator-cli from the Upsun OpenAPI spec.
composer run spec:install
composer run spec:fullContributions are welcome!
Please open a pull request or an issue
for any improvements, bug fixes, or new features.
To run the tests, use:
composer install
composer run testThis project is licensed under the Apache License 2.0. See the LICENSE and NOTICE files for details.