What This Extension Adds #
Core DDLS has no public REST API. DMSI Advanced API exposes all DDLS data — customers, products, licenses, activations, subscriptions, versions, and downloads — via a comprehensive REST API secured by the extension’s authentication system.
All DMSI Advanced API endpoints are accessible under a single base URL and follow a consistent request and response format.
Base URL #
https://yoursite.com/wp-json/dmsi-api/v1/
All endpoints require HTTPS in production environments.
Request Format #
- Content-Type:
application/jsonfor request bodies - Authentication:
Authorization: Bearer <token>header (API key, JWT, or OAuth access token) - Encoding: UTF-8
Response Format #
All responses use a consistent envelope format:
{
"data": {},
"meta": {
"request_id": "req_abc123",
"version": "1.0.1",
"environment": "production",
"timestamp": "2026-03-31T00:00:00Z"
}
}
List responses include a pagination object:
{
"data": [],
"meta": { "request_id": "req_abc123", "version": "1.0.1", "environment": "production", "timestamp": "2026-03-31T00:00:00Z" },
"pagination": {
"total": 150,
"total_pages": 8,
"page": 1,
"per_page": 20,
"links": {
"first": "https://yoursite.com/wp-json/dmsi-api/v1/licenses?page=1",
"last": "https://yoursite.com/wp-json/dmsi-api/v1/licenses?page=8",
"prev": null,
"next": "https://yoursite.com/wp-json/dmsi-api/v1/licenses?page=2"
}
}
}
Standard Response Headers #
Every API response includes the following headers:
| Header | Description |
|---|---|
X-Request-Id | Unique identifier for the request, useful for support and debugging |
X-API-Version | The API version that handled the request |
X-DMSI-Environment | The environment mode: production or sandbox |
Error Format #
Errors follow a consistent structure:
{
"error": {
"code": "not_found",
"message": "The requested resource was not found.",
"request_id": "req_abc123",
"details": {}
}
}
