transip/transip-api-php

TransIP Rest API Library

6.53.2 2024-11-18 14:00 UTC

README

RestAPI library for PHP

This library is a complete implementation for communicating with the TransIP RestAPI. It covers all resource calls available in the TransIP RestAPI Docs and it allows your project(s) to connect to the TransIP RestAPI easily. Using this library you can order, update and remove products from your TransIP account.

Latest Stable Version Total Downloads License

Deprecated SOAP API library (v5.x)

As of version 6.0 this library is no longer compatible with TransIP SOAP API because the library is now organized around REST. The SOAP API library versions 5.* are now deprecated and will no longer receive future updates.

Requirements

The PHP RestAPI library requires the following in order to work properly:

  • PHP 7.2.0 or later.
  • json (php extension)
  • openssl (php extension)

Composer

You can install the RestAPI library using Composer. Run the following command:

composer require transip/transip-api-php

To use the library in your code, use Composer's autoloader:

require_once('vendor/autoload.php');

Getting started

How to get authenticated:

use Transip\Api\Library\TransipAPI;

require_once(__DIR__ . '/vendor/autoload.php');

// Your login name on the TransIP website.
$login = '';

// If the generated token should only be usable by whitelisted IP addresses in your Controlpanel
$generateWhitelistOnlyTokens = true;

// One of your private keys; these can be requested via your Controlpanel
$privateKey = '';

$api = new TransipAPI(
    $login,
    $privateKey,
    $generateWhitelistOnlyTokens
);

// Create a test connection to the api
$response = $api->test()->test();

if ($response === true) {
    echo 'API connection successful!';
}

Get all domains

$allDomains = $api->domains()->getAll();

Update a single DNS record

$homeIpAddress = '37.97.254.1'; 

$dnsEntry = new \Transip\Api\Library\Entity\Domain\DnsEntry();
$dnsEntry->setName('homeip'); // subdomain
$dnsEntry->setExpire(300);
$dnsEntry->setType('A');
$dnsEntry->setContent($homeIpAddress);

$api->domainDns()->updateEntry('example.com', $dnsEntry);

For basic examples, please take a look into the examples/ directory. You can also see all resource calls implemented in our command line application