Skip to main content

Upsun SDK PHP

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.

Installation

Install the SDK via Composer:
composer require upsun/upsun-sdk-php
Then include Composer’s autoloader in your PHP application:
require __DIR__ . '/vendor/autoload.php';

Authentication

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);

Usage

Example: List organizations

$organizations = $upsunClient->organizations->list();

Example: List projects in an organization

$projects = $upsunClient->projects->list('<organizationId>');

Example: Redeploy an environment

$response = $upsunClient->environments->redeploy('<projectId>', '<environmentId>');

Development

Clone the repository and install dependencies:
git clone git@github.com:upsun/upsun-sdk-php.git
composer install

Architecture of this SDK

The SDK is built as follows:

Regenerating API & Model classes

API and Model classes are generated using openapi-generator-cli from the Upsun OpenAPI spec.
composer run spec:install
composer run spec:full

Contributing

Contributions are welcome!
Please open a pull request or an issue for any improvements, bug fixes, or new features.

Tests

To run the tests, use:
composer install
composer run test

License

This project is licensed under the Apache License 2.0. See the LICENSE and NOTICE files for details.
Last modified on March 10, 2026