hypernode / api-client
Hypernode API Client for PHP
Installs: 1 486
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 11
Forks: 1
Open Issues: 2
Requires
- composer-runtime-api: ^2.0
- ext-curl: *
- ext-json: *
- nesbot/carbon: ^2.0
- php-http/client-common: ^2.5
- php-http/discovery: ^1.14
- psr/http-client-implementation: ^1.0
- symfony/polyfill-php80: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.9
- guzzlehttp/guzzle: ^7.4
- nikic/php-parser: ^4.14
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-10-29 08:22:58 UTC
README
Please note: this project is still in its early stages and the API may be subject to change.
Installation
composer require hypernode/api-client
The API client is HTTP client agnostic, which means that it's compatible with any HTTP client implementing PSR-18 interface.
Popular HTTP client implementations are: Guzzle and Symfony HTTP Client.
A full list of implementations, can be found here.
Usage
Acquiring an API token
Each Hypernode has an API token associated with it, you can use that to talk to the API directly. You can find the token in /etc/hypernode/hypernode_api_token
. For API tokens with special permissions please contact support@hypernode.com.
Using the client
use Hypernode\Api\HypernodeClientFactory; require_once 'vendor/autoload.php'; $client = HypernodeClientFactory::create(getenv('HYPERNODE_API_TOKEN')); // For the Hypernode `johndoe` PHP version to 8.1 and Node.js version to 18 $job = $client->settings->setBatch('johndoe', [ 'php_version' => '8.1', 'nodejs_version' => '18' ]); // If something has changed, wait for the changes to be applied. while ($job && !$job->completed()) { sleep(2); $job->refresh(); }
Supported features
Here's a list of Hypernode API features implemented in the client.
- Listing Hypernodes related to your API key
- Updating one or multiple Hypernode settings at once.
- Querying/polling the logbook for the status of a job.
- Listing, creating, updating and cancelling Brancher Hypernode instances.
Related projects
- The official Hypernode API Python Client
- The official Hypernode Deploy tool
- The official Hypernode Docker image