Download OpenAPI specification:
This API is used to provision and manage customer accounts, products and credentials on the Webpros Cloud platform.
All calls to the API are authenticated by credentials presented by the caller in two HTTP headers, both of which must be presented with every call:
X-WPC-API-TOKENID
- must contain the ID of a valid API token. This value is a UUID and it
is not considered to be a secret.X-WPC-API-TOKENSECRET
- contains the secret associated with the token. This is a
64-character string consisting entirely of characters from the RFC 4648 base64
repertoire
and the value is considered to be a secret.API tokens may be created, listed, modified and deleted using the endpoints under the /token
path. Note that the secret associated with a token is only returned to the caller in the
response of the POST call that creates the token. It is not possible to retrieve the secret
string later. Secret strings and token IDs are generated by the system; the caller may not
specify their own IDs or secrets.
The token presented by the API caller determine the endpoints, and the level of access, available to the caller. Each token is associated with a set of privileges, specified when the token is created. These privileges define the actions that may be performed using the token.
Tokens with the "api_token:create" privilege may be used to create other tokens. Any token created in this way may have any (or all) of the privileges of the token used to create it; it is not possible to assign additional permissions to a new token.
The access requirements are noted in the documentation for each endpoint.
API endpoints which return multiple objects use a common 'envelope' format. This is a JSON object containing:
data
member containing an array of objectsnext
member containing the ID of the first object in the next 'page' of results, or null
if there are no more results to retrieve.To support pagination, objects are always returned in the order of their id
field. Two
optional query arguments, start
and count
, enable pages of results to be retrieved. To
obtain the first page of results, the start
argument may be omitted or given as null
.
Subsequent pages may be retrieved by taking the value of the next
member in the result
envelope and passing it as the value of the start
argument. The optional count
argument
specifies the maximum number of records to be returned. The server may return up to this
number of records.
A user is a direct customer of Webpros Cloud, or an internal (system) user. Users interact with Webpros Cloud through the API. Most users are direct customers who have at some point bought at least one Webpros Cloud product.
An entitlement is an instance of a product, bought by a customer. For example, when Webpros sells a customer a WP Squared product consisting of 1,000 sites and 1,000GB of storage space, that customer receives an entitlement to create up to 1,000 sites and consume up to 1,000GB of storage space. When the customer resells web sites and storage space, they consume resources against an entitlement. The customer has a user account in Webpros Cloud, through which they manage their entitlements.
A WP Squared package is a defined quantity of resources taken from a WP Squared entitlement. Webpros customers buy entitlements and then divide them up into packages to resell to their own customers. A package would typically be created by a Webpros customer whenever they complete a sale, e.g. of a hosting package, to one of their own customers.
Get information about the entitlements (blocks of resources, like web sites) paid for by the user who owns the API credentials used to make the request. Entitlement objects are returned in order of entitlementId
.
start | string or null (EntitlementIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: an |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "productId": "cpanel-server-small",
- "suspended": false,
- "serviceId": "wpsquared",
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e",
- "usedSites": 0,
- "usedDiskKb": 0,
- "usedBandwidthKbps": 0,
- "allocatedSites": 1000,
- "allocatedDiskKb": 1000,
- "allocatedWorkers": 100,
- "allocatedMemory": 1024
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Create a new entitlement for a user. An entitlement is a block of resources paid for by a user, and is normally completed following a successful purchase.
Create a new entitlement, specifying resource limits
userId required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for a user |
productId required | string (ProductIdType) [ 1 .. 255 ] characters A unique identifier for a product |
suspended | boolean Default: false Whether the entitlement, and all resources within it, is suspended |
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "suspended": false
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "productId": "cpanel-server-small",
- "suspended": false,
- "serviceId": "wpsquared",
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e",
- "usedSites": 0,
- "usedDiskKb": 0,
- "usedBandwidthKbps": 0,
- "allocatedSites": 1000,
- "allocatedDiskKb": 1000,
- "allocatedWorkers": 100,
- "allocatedMemory": 1024
}
}
Get information about the entitlements (blocks of resources, like web sites) paid for by a specific user. Note: this endpoint is only available to callers authorised as administrators. Entitlement objects are returned in order of entitlementId
.
id required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of a user |
start | string or null (EntitlementIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: an |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "productId": "cpanel-server-small",
- "suspended": false,
- "serviceId": "wpsquared",
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e",
- "usedSites": 0,
- "usedDiskKb": 0,
- "usedBandwidthKbps": 0,
- "allocatedSites": 1000,
- "allocatedDiskKb": 1000,
- "allocatedWorkers": 100,
- "allocatedMemory": 1024
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Get information about the specified entitlement, including resource limits and current resource usage. Callers authorised as administrators may request information about any existing entitlement; other callers may only request information about entitlements they own.
id required | string (EntitlementIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of an entitlement |
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "productId": "cpanel-server-small",
- "suspended": false,
- "serviceId": "wpsquared",
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e",
- "usedSites": 0,
- "usedDiskKb": 0,
- "usedBandwidthKbps": 0,
- "allocatedSites": 1000,
- "allocatedDiskKb": 1000,
- "allocatedWorkers": 100,
- "allocatedMemory": 1024
}
}
Change elements of an entitlement, e.g. resource limits and suspension status. Only administrators may use this endpint. Note that resource limits cannot be reduced below the current level of resource usage.
id required | string (EntitlementIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of the entitlement to modify |
Modify an entitlement. Resource limits may be altered, but cannot be reduced below the current level of resource usage - i.e. the entitlement cannot be "overdrawn". The entitlement may be suspended; this operation will take all of its resources (e.g. web sites) offline. Note that the userId
and productId
fields are optional, and any values supplied in these fields will be ignored. It is therefore not possible to change the product associated with an entitlement, or to reassign an entitlement to a different user.
userId required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for a user |
suspended | boolean Default: false Whether the entitlement, and all resources within it, is suspended |
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "suspended": false
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "productId": "cpanel-server-small",
- "suspended": false,
- "serviceId": "wpsquared",
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e",
- "usedSites": 0,
- "usedDiskKb": 0,
- "usedBandwidthKbps": 0,
- "allocatedSites": 1000,
- "allocatedDiskKb": 1000,
- "allocatedWorkers": 100,
- "allocatedMemory": 1024
}
}
Delete an entitlement, and delete all associated resources (e.g. web sites). Only callers with administrator authorisation may delete entitlements.
id required | string (EntitlementIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of an entitlement |
{- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef"
}
Operations relating to packages of WP Squared sites and resources created by a customer
Get information about all WP Squared packages created by the current user. If the user's credentials have administrator access, return information about all WP Squared packages. Package objects are returned in order of packageId
.
start | string or null (PackageIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Create a WP Squared package using resources from a specific entitlement
Create a new WP Squared package, consuming resources from the specified entitlement. The maximum number of sites and the limit on disk space within the package must also be specified. If no region is specified, the package will be created in the user's default region.
entitlementId required | string (EntitlementIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for an entitlement |
zoneId | string (ZoneIdType) [ 1 .. 64 ] characters The unique name of a zone |
suspended | boolean Default: false Whether the package is suspended, e.g. inaccessible to the end-user |
object |
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
Get information about all WP Squared packages created by the specified user. If the caller does not have administrative privilege, they may only retrieve details about their own packages. Package objects are returned in order of packageId
.
id required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of a user |
start | string or null (PackageIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Modify the resource allocations or suspended status of a WP Squared package
id required | string (PackageIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of WP Squared package to modify |
Modify a WP Squared package, e.g. to suspend or unsuspend it or to modify the limits on the number of sites or amount of disk space allocated. Note that the limits cannot be reduced below the amount of resource currently consumed by the package.
entitlementId required | string (EntitlementIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for an entitlement |
zoneId | string (ZoneIdType) [ 1 .. 64 ] characters The unique name of a zone |
suspended | boolean Default: false Whether the package is suspended, e.g. inaccessible to the end-user |
object |
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "entitlementId": "01234567-89ab-cdef-0123-456789abcdef",
- "serviceId": "wpsquared",
- "zoneId": "eu-central-de1",
- "suspended": false,
- "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null,
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
Delete a WP Squared package, and all associated web sites and resources
id required | string (PackageIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of WP Squared package to be deleted |
{- "packageId": "01234567-89ab-cdef-0123-456789abcdef"
}
Get information about the specified region.
id required | string (RegionIdType) Examples: eu-central sa-central us-south ID of the region to be retrieved |
{- "id": "eu-central"
}
If authenticated as a user, return an array of all API access tokens belonging to that user. If authenticated as a manger, return all API access tokens known to the system. Tokens are returned in order of tokenId
.
start | string or null (TokenIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "tokenId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "lastSeen": "2025-04-15T12:57:34Z",
- "creationDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Create a new API access token.
Create an API access token. Values for the enabled
and expiryDate
fields may be specified. If the caller is authenticated as a user, the userId
field is optional and, if present, must contain the user's own ID.
userId | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for a user |
enabled | boolean Default: false Whether API calls may be made using this token |
object (PermissionsShortType) |
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "tokenId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "lastSeen": "2025-04-15T12:57:34Z",
- "creationDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}, - "secret": "x0vXlnot5pffRoa+QmD1OXGq9WQp3U+ZWiBnAR5zScq9bd6QV2sYRqho3614tKDU"
}
Return details of the specified token, or 404 if it does not exist. Note that the token's secret is not returned.
id required | string (TokenIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of the token to be retrieved |
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "tokenId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "lastSeen": "2025-04-15T12:57:34Z",
- "creationDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
Enable or disable the specified token, or modify its expiry date.
id required | string (TokenIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of the token to modify |
Modify an API access token. The token may be enabled or disabled by setting the value of the enabled
field; its expiry date may be modified by supplying a value for the expiryDate
field. The token's ID and secret may not be modified.
userId | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... A unique identifier for a user |
enabled | boolean Default: false Whether API calls may be made using this token |
object (PermissionsShortType) |
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
{- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "tokenId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "lastSeen": "2025-04-15T12:57:34Z",
- "creationDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
Delete the specified token, returning 404 if it does not exist. The ID of the deleted token is returned in the response body.
id required | string (TokenIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of the token to be retrieved |
{- "tokenId": [
- "01234567-89ab-cdef-0123-456789abcdef"
]
}
Given a user ID, return all API tokens associated with that user. If the caller does not have administrative permissions, they may only supply their own user ID as the userID
argument. Tokens are returned in order of tokenId
.
id required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of a user |
start | string or null (TokenIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "userId": "01234567-89ab-cdef-0123-456789abcdef",
- "tokenId": "01234567-89ab-cdef-0123-456789abcdef",
- "enabled": true,
- "expiryDate": "2025-04-15T12:57:34Z",
- "lastSeen": "2025-04-15T12:57:34Z",
- "creationDate": "2025-04-15T12:57:34Z",
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Given a user ID, delete all API tokens associated with that user. If the caller does not have administrative permissions, they may only supply their own user ID in the userID
argument.
id required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef Unique identifier of a user |
{- "tokenIds": [
- "01234567-89ab-cdef-0123-456789abcdef"
]
}
Get a list of users known to the platform. If the caller is authorised as an administrator, return all users; otherwise, return only the user record associated with the caller's credentials. Objects are returned ordered by userId
.
start | string or null (UserIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "defaultZone": "eu-central-de1",
- "enabled": true,
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}, - "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null
}
], - "next": "01234567-89ab-cdef-0123-456789abcdef"
}
Create a new user record. Only callers authenticated as administrators may use this endpoint.
Create a new user record
defaultZone | string (ZoneIdType) [ 1 .. 64 ] characters The unique name of a zone |
name | any |
enabled | boolean Default: false |
object (PermissionsShortType) |
{- "defaultZone": "eu-central-de1",
- "name": null,
- "enabled": true,
- "permissions": {
- "groupName": [
- "permission1",
- "permission2"
]
}
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "defaultZone": "eu-central-de1",
- "enabled": true,
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}, - "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null
}
Get a specific user record. If the caller is authorised as an administrator, any user record may be retrieved. Otherwise, only the record associated with caller's API credentials may be retrieved.
id required | string (UserIdType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: 01234567-89ab-cdef-0123-456789abcdef ID of user whose details are to be retrieved. Or you can use id "current" - and get info about current user |
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "defaultZone": "eu-central-de1",
- "enabled": true,
- "permissions": {
- "code": "view_list:all",
- "description": "View a list of all users",
- "group": {
- "code": "entitlement",
- "description": "Operations relating to entitlements, i.e. resources paid for by a customer"
}
}, - "permissionsShort": {
- "groupName": [
- "permission1",
- "permission2"
]
}, - "creationDate": "2025-04-15T12:57:34Z",
- "modificationDate": null
}
Get a list of Webpros Cloud zones, including information about which services are available in each zone and whether the caller is permitted to create new resources in the zone.
{- "data": [
- {
- "id": "eu-central-de1",
- "regionId": "eu-central",
- "countryCode": "DE",
- "available": true,
- "services": [
- "wpsquared"
]
}
], - "next": "eu-central-de1"
}
Get information about the services available in the specified zone, and whether the caller may provision new resources in the zone.
id required | string (ZoneIdType) [ 1 .. 64 ] characters Examples: eu-central-de1 us-south-tx1 sa-central-br1 ID of the zone to be retrieved |
{- "id": "eu-central-de1",
- "regionId": "eu-central",
- "countryCode": "DE",
- "available": true,
- "services": [
- "wpsquared"
]
}
Get a list of products available on the Webpros Cloud platform. Products are returned ordered by their id
.
start | string or null (ProductIdNullableType) ^[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-f... Examples: start=01234567-89ab-cdef-0123-456789abcdef For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "cpanel-server-small",
- "serviceId": "wpsquared",
- "name": "WP Squared Basic",
- "version": 1,
- "available": true,
- "description": "Managed WP Squared with 2500 sites and 2500GB included",
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
], - "next": null
}
Get detailed information about a specific product.
id required | string (ProductIdType) [ 1 .. 255 ] characters Examples: cpanel-server-small cpanel-server-medium ID of the product to be retrieved |
{- "id": "cpanel-server-small",
- "serviceId": "wpsquared",
- "name": "WP Squared Basic",
- "version": 1,
- "available": true,
- "description": "Managed WP Squared with 2500 sites and 2500GB included",
- "data": {
- "maxSites": 1000,
- "maxMemKb": 1024,
- "maxDiskKb": 1000,
- "maxWorkers": 100,
- "domain": "e"
}
}
Get a list of Webpros Cloud services, including information about which zones they are available in.
start | string or null (ServiceIdNullableType) Examples: start=wpsquared start=cpanel start=whmcs start=plesk For pagination: a |
count | integer (RecordCountType) >= 1 Examples: count=10 Maximum number of records to return in the response |
{- "data": [
- {
- "id": "wpsquared",
- "description": "WP Squared",
- "zones": [
- "eu-central-de1"
], - "templates": [
- "cloudlinux8-wp2-v1"
]
}
], - "next": null
}
Get information about the specified service, including which zones it is available in.
id required | string (ServiceIdType) Examples: wpsquared cpanel whmcs plesk ID of the service to be retrieved |
{- "id": "wpsquared",
- "description": "WP Squared",
- "zones": [
- "eu-central-de1"
], - "templates": [
- "cloudlinux8-wp2-v1"
]
}
Generate a single-use, time-limited SSO token that can be used to log in to a WP Squared package without providing credentials. The token is valid for a configured period of time (default 5 minutes) and can only be used once.
Create a new SSO token for a specific package
{- "packageId": "01234567-89ab-cdef-0123-456789abcdef"
}
{- "id": "01234567-89ab-cdef-0123-456789abcdef",
- "packageId": "01234567-89ab-cdef-0123-456789abcdef",
- "expiresAt": "2025-04-15T12:57:34Z"
}
This endpoint is used by the WP Squared system to validate a token when a user attempts to log in using an SSO link. If the token is valid (not expired and not used), it is marked as used and the user is granted access. If the token is invalid, unauthorized, or has already been used, an error is returned.
Validate an SSO token
token required | string SSO token string to validate |
{- "token": "string"
}
{- "packageId": "01234567-89ab-cdef-0123-456789abcdef",
- "userId": "01234567-89ab-cdef-0123-456789abcdef"
}