Check for Updates Endpoint #
The primary endpoint used by client software to detect and receive updates.
Endpoint #
POST /wp-json/dmsilm/v1/updates/check
Content-Type: application/json
Request Parameters #
| Parameter | Type | Required | Description |
|---|---|---|---|
license_key | string | Yes | Customer's license key |
product_id | integer | Yes | DDLS product ID |
current_version | string | Yes | Version the client is currently running |
channel | string | No | Release channel: stable (default), beta, or alpha |
platform | string | No | Platform identifier (e.g., "wordpress", "desktop") |
environment | object | No | Client environment for compatibility checking |
Environment Object #
The environment parameter passes system information for compatibility checking:
{
"wp_version": "6.4.3",
"php_version": "8.1.0"
}
Response: Update Available #
{
"update_available": true,
"version": "2.0.0",
"download_url": "https://yoursite.com/dmsilm-download/?token=...",
"file_hash": "abc123...",
"file_size": 1234567,
"changelog": "<p>New features...</p>",
"is_critical": false,
"requires_version": "1.5.0",
"release_date": "2026-03-15"
}
| Field | Description |
|---|---|
update_available | Always true in this branch |
version | The version available to download |
download_url | Signed HMAC download URL (valid for token expiration duration) |
file_hash | SHA-256 hash of the release file for integrity verification |
file_size | File size in bytes |
changelog | HTML-formatted changelog content |
is_critical | true if marked as critical security update |
requires_version | Minimum version required to apply this update (empty if none) |
release_date | When this version was published |
Response: No Update Available #
{
"update_available": false,
"current_version": "2.0.0",
"message": "Your software is up to date."
}
This response is returned when:
- The client's current version is equal to or newer than the latest eligible version
- The client's license is not in the rollout bucket for the latest version
- The client's environment fails compatibility requirements
- No published version exists for this product+channel combination
Common Error Responses #
| HTTP Status | Code | Meaning |
|---|---|---|
| 400 | missing_parameters | Required parameters not provided |
| 400 | invalid_license | License key does not exist or is not active |
| 429 | rate_limit_exceeded | Too many requests for this license |
| 500 | update_server_error | Internal server error |
