The ThriveTech Platform API is a RESTful API for managing licenses, subscriptions, customers, and products programmatically.
Base URL: https://api.thrivetechservice.com
API Version: v1
All API requests require authentication via API key:
Authorization: Bearer YOUR_API_KEY
| Type | Permissions | Use Case |
|---|
| Admin Key | Full access | Server-side integrations |
| Read-Only Key | Read operations only | Analytics, reporting |
| Channel Key | Activation only | Client applications |
| Plan | Requests/Minute | Requests/Hour |
|---|
| Starter | 60 | 1,000 |
| Growth | 300 | 10,000 |
| Enterprise | Custom | Custom |
Rate limit headers included in all responses:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1640000000
{
"success": true,
"data": { ... },
"meta": { "timestamp": "2026-01-26T12:00:00Z", "request_id": "req_abc123" }
}
{
"success": false,
"error": { "code": "VALIDATION_ERROR", "message": "Invalid license key format" },
"meta": { "timestamp": "2026-01-26T12:00:00Z", "request_id": "req_abc123" }
}
| Code | Meaning |
|---|
| 200 | Success |
| 201 | Created |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 409 | Conflict |
| 429 | Rate Limited |
| 500 | Server Error |
| Method | Endpoint | Description |
|---|
| GET | /api/v1/platform/plans | List all available plans |
| GET | /api/v1/platform/plans/:planCode | Get plan by code |
| Method | Endpoint | Description |
|---|
| GET | /api/v1/billing/subscription | Get current subscription |
| POST | /api/v1/billing/subscribe | Create subscription |
| PUT | /api/v1/billing/upgrade | Upgrade plan |
| PUT | /api/v1/billing/downgrade | Downgrade plan |
| POST | /api/v1/billing/cancel | Cancel subscription |
| Method | Endpoint | Description |
|---|
| GET | /api/v1/billing/usage | Get current usage |
| GET | /api/v1/billing/usage/history | Get usage history |
| GET | /api/v1/billing/invoices | List invoices |
| GET | /api/v1/billing/invoices/:invoiceId | Get invoice |
| Method | Endpoint | Description |
|---|
| POST | /api/v1/licenses | Create license |
| GET | /api/v1/licenses | List licenses (filterable) |
| GET | /api/v1/licenses/:licenseId | Get license |
| PUT | /api/v1/licenses/:licenseId | Update license |
| POST | /api/v1/licenses/:licenseId/revoke | Revoke license |
| Method | Endpoint | Description |
|---|
| POST | /api/v1/activate | Activate license |
| POST | /api/v1/activate/validate | Validate license |
| POST | /api/v1/activate/deactivate | Deactivate device |
| POST | /api/v1/activate/trial | Activate trial |
See Activation API for full endpoint documentation.
| Method | Endpoint | Description |
|---|
| GET | /api/v1/products | List products |
| POST | /api/v1/products | Create product |
| GET | /api/v1/products/:productId | Get product |
| PUT | /api/v1/products/:productId | Update product |
| DELETE | /api/v1/products/:productId | Delete product |
| Method | Endpoint | Description |
|---|
| GET | /api/v1/customers | List customers |
| POST | /api/v1/customers | Create customer |
| GET | /api/v1/customers/:customerId | Get customer |
| PUT | /api/v1/customers/:customerId | Update customer |
| GET | /api/v1/customers/:customerId/licenses | Get customer licenses |
| Event | Description |
|---|
license.created | New license created |
license.activated | License activated on device |
license.deactivated | Device deactivated |
license.expired | License expired |
license.revoked | License revoked |
subscription.created | New subscription |
subscription.updated | Plan changed |
subscription.canceled | Subscription canceled |
subscription.renewed | Subscription renewed |
payment.succeeded | Payment successful |
payment.failed | Payment failed |
{
"id": "evt_abc123",
"type": "license.activated",
"created_at": "2026-01-26T12:00:00Z",
"data": {
"license_id": "lic_xyz789",
"device_id": "dev_123",
"customer_email": "customer@example.com"
}
}
Webhooks include an X-Webhook-Signature header for verification.
| Code | Description |
|---|
AUTHENTICATION_REQUIRED | No valid authentication provided |
INVALID_TOKEN | Token is invalid or expired |
PERMISSION_DENIED | Insufficient permissions |
RESOURCE_NOT_FOUND | Requested resource doesn't exist |
VALIDATION_ERROR | Request validation failed |
RATE_LIMIT_EXCEEDED | Too many requests |
LICENSE_EXPIRED | License has expired |
LICENSE_REVOKED | License has been revoked |
DEVICE_LIMIT_REACHED | Maximum devices activated |
PLAN_LIMIT_REACHED | Plan limit exceeded |
PAYMENT_REQUIRED | Payment method required |
SUBSCRIPTION_INACTIVE | Subscription not active |
| Platform | Install |
|---|
| JavaScript/TypeScript | npm install @thrivetech/sdk |
| Python | pip install thrivetech-sdk |
| .NET | Install-Package ThriveTech.SDK |
| Java | Maven/Gradle available |
| Go | go get github.com/thrivetech/sdk-go |