intvent/transip-laravel

A Laravel wrapper for the TransIP REST API Client.

Fund package maintenance!
petericebear

v1.3 2022-05-02 14:13 UTC

This package is auto-updated.

Last update: 2024-04-30 00:26:36 UTC


README

A very easy way to use the TransIP Rest API in your Laravel Project.

Latest Version on Packagist Software License Total Downloads

Link to documentation

To make full advantage of this package you can see here what functionality can be used within the API of TransIP.

TransIP RestAPI Docs
TransIP PHP Package

Installation

First add your API credentials into your .env file.

TRANSIP_LOGIN=<your_login_name>
TRANSIP_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----<your_private_key_here-----END PRIVATE KEY-----"

# Use the token only with whitelisted IP's (true or false) defaults to true.  
TRANSIP_WHITELIST_ONLY=false

Install with composer

composer require intvent/transip-laravel

This package will autoload the SrviceProvider and Facade listed below. If it does not automatically you can add it easily with the following steps.

Register the Service Provider:

'providers' => [
    ...
    IntVent\TransIPLaravel\TransIPServiceProvider::class,
];

Optionally the Facade can be registered:

'aliases' => [
	...
    'TransIP' => IntVent\TransIPLaravel\TransIPFacade::class,
    ...
]

You must publish the configuration with this command:

php artisan vendor:publish --provider="IntVent\TransIPLaravel\TransIPServiceProvider"

This will add a configuration file called 'transip.php' in the config folder with the following contents:

return [

    /*
    |--------------------------------------------------------------------------
    | TransIP Laravel Wrapper
    |--------------------------------------------------------------------------
    |
    */

    'login' => env('TRANSIP_LOGIN'),

    'privateKey' => env('TRANSIP_PRIVATE_KEY'),

    'generateWhitelistOnlyTokens' => env('TRANSIP_WHITELIST_ONLY', true),

];

Usage

Using the Facade

<?php

use TransIP;

// Get all VPS from your account.
$allVps = TransIP::vps()->getAll();

Using the auto IoC binding

<?php

use Transip\Api\Library\TransipAPI;

class TransipTestCommand extends Command
{
    protected $signature = 'transip:test';
    
    public function __construct()
    {
        parent::__construct();
    }
    
    public function handle(TransipAPI $api))
    {
        $allVps = $api->vps()->getAll();
    }
}

Security

If you discover any security-related issues, please email info@intvent.nl instead of using the issue tracker.

Support

You can sponsor me, Peter Steenbergen also known as Peter Icebear, on Github sponsors or through this affiliate link.

Credits

License

The MIT License (MIT). Please see License File for more information.