dyninc/dyn-php

Dyn PHP SDK - for interaction with Dyn's product APIs

Maintainers

👁 tfountain

Package info

github.com/dyninc/dyn-php

pkg:composer/dyninc/dyn-php

Statistics

Installs: 111 797

Dependents: 3

Suggesters: 0

Stars: 21

Open Issues: 5

0.12.0 2021-12-04 14:16 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

BSD-3-Clause 83e256e37e345a2d3087435b99ea37a0866a8012

emailsdkdnsdynectdyn

This package is not auto-updated.

Last update: 2026-06-28 12:53:41 UTC


README

This SDK allows PHP developers to interact with Dyn's product APIs from within their PHP applications. Feedback is welcome - please reach out via pull request, GitHub issue, or via. our Community forum.

Requirements

Requires PHP 7.4 or above. The cURL extension is recommended (although not required), and will be used if present.

Installation

The best way to install this SDK is with Composer. With Composer installed, run:

composer require dyninc/dyn-php

from the command line.

Quickstart - DNS

use Dyn\TrafficManagement;
use Dyn\TrafficManagement\Record\A;

$tm = new TrafficManagement('customerName', 'username', 'password');

// login
$tm->createSession();

// retrieve zone
$zone = $tm->getZone('example.com');

// configure a new record
$record = new A();
$record->setAddress('127.0.0.1');

// create the new record
$zone->createRecord($record, 'test.example.com');

// publish zone changes
$zone->publish();

// logout
$tm->deleteSession();

Quickstart - Email

use Dyn\MessageManagement;
use Dyn\MessageManagement\Mail;

$mm = new MessageManagement('YOUR API KEY');

// setup the message
$mail = new Mail();
$mail->setFrom('user@example.com', 'Joe Bloggs')
 ->setTo('janedoe@example.com')
 ->setSubject('Email sent via. Dyn SDK')
 ->setBody('The text of the email');

// send it
$mm->send($mail);

More detailed examples can be found in the examples folder.

API Endpoints Supported

  • Traffic Management - Session API: create/destroy/refresh
  • Traffic Management - Record API: AAAA A CERT CNAME DHCID DNSKEY DS IPSECKEY KEY LOC MX NAPTR NS NSAP PTR PX RP SOA SPF SRV SSHFP TXT
  • Traffic Management - Zone API: list/get/publish/freeze/thaw/getChanges/discardChanges
  • Traffic Management - HTTP Redirect service: create/update/list/destroy
  • Traffic Management - Dynamic DNS service: create/update/list/destroy
  • Message Management - All endpoints supported

Testing

With the Composer packages installed, unit tests can be run from this folder using the command:

./vendor/bin/phpunit --configuration test/phpunit.xml