Requirements #
| Requirement | Minimum Version |
|---|---|
| PHP | 7.4 |
| ext-curl | Any |
| ext-json | Any |
The SDK has no Composer dependencies beyond PHP itself. It uses the bundled cURL and JSON extensions that ship with standard PHP installations.
Installation #
Via Composer:
composer require dmsi/advanced-api-sdk
Manual installation:
Copy the sdk/php/src/ directory into your project and include the autoloader or require the class files directly.
Namespace #
All SDK classes are under the DMSI\AdvancedApi namespace:
DMSI\AdvancedApi\Client
DMSI\AdvancedApi\HttpClient
DMSI\AdvancedApi\OAuth\OAuthHelper
DMSI\AdvancedApi\Pagination\PageIterator
DMSI\AdvancedApi\Resources\Customers
DMSI\AdvancedApi\Resources\Products
DMSI\AdvancedApi\Resources\Licenses
DMSI\AdvancedApi\Resources\Versions
DMSI\AdvancedApi\Resources\Subscriptions
DMSI\AdvancedApi\Resources\Downloads
DMSI\AdvancedApi\Resources\Activations
DMSI\AdvancedApi\Exceptions\ApiException
DMSI\AdvancedApi\Exceptions\AuthenticationException
DMSI\AdvancedApi\Exceptions\RateLimitException
DMSI\AdvancedApi\Exceptions\ValidationException
DMSI\AdvancedApi\Exceptions\NotFoundException
Quick Start #
use DMSI\AdvancedApi\Client;
use DMSI\AdvancedApi\Exceptions\ApiException;
$client = new Client(
apiKey: 'dmsi_key_<your-40-hex-chars>',
baseUrl: 'https://yoursite.com',
timeout: 30
);
// List all active licenses
$result = $client->licenses->list(['filter' => ['status' => 'active']]);
foreach ($result['data'] as $license) {
echo $license['id'] . ': ' . $license['status'] . PHP_EOL;
}
