Reseller API
Use these API actions to manage your customers and the hosting plans available to your reseller account.
Where to find it: Documentation > Hosting Manager > API > Reseller API.
Available to: Root and reseller API identities inside delegated scope.
Before you start
Have your API username and key ready. Replace the example server address with your own, keeping port 882. Check the account or website before sending a request that changes or deletes data.
Authentication
Send X-Api-User and X-Api-Key to the SHM Engine on port 882. JSON requests also send Content-Type: application/json. Your API key can only access the accounts and tools allowed for its user.
How to read each endpoint
Choose an action to see its fields and an example request. Required fields must be supplied; optional fields let you refine the request. Conditional fields are needed only for the choices described beside them. If you use the assistant instead, see AI Mode.
Reseller API endpoint reference (98)
Account Packages
GET/v1/account-packagesroot resellerView the hosting plans available to you.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (0)
This endpoint accepts no path, query, or JSON parameters.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/account-packages' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
List account packages and current enforcement capabilities
{
"path_parameters": {},
"query_parameters": {},
"json_body": {}
}Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
count | integer |
packages | object[] |
runtime_capabilities | object{resource_limits:object{state:string,available:boolean,reason:string,cgroup_version:string,systemd_pid1:boolean,supported_fields:string[],missing_controllers:string[],controllers:string[],fields:object},quota:object{mode:string,storage_path:string,available:boolean,reason:string,fields:object}} |
Error response
{
"status": "error",
"code": "access_denied",
"message": "The API key is not authorized for this endpoint, resource, role, or source IP."
}
POST/v1/account-packagesroot resellerCreate a hosting plan to assign to customer accounts.
Before you start
Use -1 for an unlimited allowance. SHM rejects a limit that the server cannot enforce.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (19)
packagenameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PACKAGENAME_FROM_LIST_RESPONSE
Package name. Package display name (1–64 chars; letters, numbers, spaces, hyphens, and underscores).
Validation and use:
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Addon domains limit (-1 unlimited if allowed).
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Databases limit (-1 unlimited if allowed).
Validation and use:
dedicatedipOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
0
Dedicated IP toggle. 1 to require dedicated IP for accounts using this package.
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Disk quota (MB). -1 is unlimited. A finite value requires filesystem user-quota support.
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Email accounts limit (-1 unlimited if allowed).
Validation and use:
feature_profileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile selection. Alias of featureprofile. Prefer featureprofile.
Validation and use:
featureprofileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile id. Alias: feature_profile.
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
FTP accounts limit (-1 unlimited if allowed).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
CPU percent limit. -1 is unlimited. A finite value requires the delegated cgroup v2 cpu controller.
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Max emails per hour (-1 unlimited if allowed).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit. -1 is unlimited. A finite value requires filesystem user-quota support.
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
I/O bandwidth limit in MB/s. -1 or 0 is unlimited. A finite value requires the delegated cgroup v2 io controller.
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit. -1 or 0 is unlimited. A finite value requires the delegated cgroup v2 io controller.
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Memory limit in MB. -1 is unlimited. A finite value requires the delegated cgroup v2 memory controller.
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Task/process limit. -1 is unlimited. A finite value requires the delegated cgroup v2 pids controller.
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Parked domains limit (-1 unlimited if allowed).
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell mode: 0 disabled, 1 bash, 2 jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Subdomains limit (-1 unlimited if allowed).
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"addondomains": "-1",
"databases": "-1",
"dedicatedip": "0",
"diskspacequota": "-1",
"emailaccounts": "-1",
"feature_profile": 1,
"featureprofile": "1",
"ftpaccounts": "-1",
"maxcpuusage": "-1",
"maxemailsperhour": "-1",
"maxinodeslimit": "-1",
"maxiodiskbandwidth": "-1",
"maxiopslimits": "-1",
"maxmemorysize": "-1",
"maxuserprocesses": "-1",
"parkeddomains": "-1",
"shell": "0",
"subdomains": "-1"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/account-packages' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"packagename":"PACKAGENAME_FROM_LIST_RESPONSE","featureprofile":"1","diskspacequota":"-1","addondomains":"-1","parkeddomains":"-1","subdomains":"-1","databases":"-1","emailaccounts":"-1","maxemailsperhour":"-1","ftpaccounts":"-1","maxcpuusage":"-1","maxmemorysize":"-1","maxuserprocesses":"-1","maxinodeslimit":"-1","maxiodiskbandwidth":"-1","maxiopslimits":"-1","shell":"0","dedicatedip":"0"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Create unlimited account package
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"featureprofile": "1",
"diskspacequota": "-1",
"addondomains": "-1",
"parkeddomains": "-1",
"subdomains": "-1",
"databases": "-1",
"emailaccounts": "-1",
"maxemailsperhour": "-1",
"ftpaccounts": "-1",
"maxcpuusage": "-1",
"maxmemorysize": "-1",
"maxuserprocesses": "-1",
"maxinodeslimit": "-1",
"maxiodiskbandwidth": "-1",
"maxiopslimits": "-1",
"shell": "0",
"dedicatedip": "0"
}
}Requires a value returned by another endpoint before QA can execute this request.
Create limited account package
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"featureprofile": "1",
"diskspacequota": "10240",
"addondomains": "10",
"parkeddomains": "10",
"subdomains": "50",
"databases": "20",
"emailaccounts": "50",
"maxemailsperhour": "500",
"ftpaccounts": "10",
"maxcpuusage": "100",
"maxmemorysize": "1024",
"maxuserprocesses": "100",
"maxinodeslimit": "100000",
"maxiodiskbandwidth": "0",
"maxiopslimits": "0",
"shell": "0",
"dedicatedip": "0"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package_id | integer |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/account-packages/{id}root resellerDelete account package (if unused).
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
idRequired- Send in
- URL path
- Type
int- Accepted values
- Any value matching int
- Example
1
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"id": 1
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/account-packages/{id}root resellerView a hosting plan's limits and included features.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
idRequired- Send in
- URL path
- Type
int- Accepted values
- Any value matching int
- Example
1
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": "1"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Read one account package and capability state
{
"path_parameters": {
"id": "1"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/account-packages/{id}root resellerChange the limits or features in a hosting plan.
Before you start
Settings you leave out keep their current values. SHM rejects a limit that the server cannot enforce.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (21)
idRequired- Send in
- URL path
- Type
int- Accepted values
- Any value matching int
- Example
1
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Addon domains limit (-1 unlimited if allowed).
Validation and use:
apply_to_accountsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Apply the package changes to accounts that currently use this package, in addition to updating the reusable package definition.
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Databases limit (-1 unlimited if allowed).
Validation and use:
dedicatedipOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Dedicated IP toggle. 1 to require dedicated IP for accounts using this package.
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Disk quota (MB). -1 unlimited (if allowed).
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Email accounts limit (-1 unlimited if allowed).
Validation and use:
feature_profileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile selection. Alias of featureprofile. Prefer featureprofile.
Validation and use:
featureprofileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile id. Alias: feature_profile.
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
FTP accounts limit (-1 unlimited if allowed).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
CPU limit (-1 unlimited if allowed).
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Max emails per hour (-1 unlimited if allowed).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit (-1 unlimited if allowed).
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IO bandwidth limit (-1 unlimited if allowed).
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit (-1 unlimited if allowed).
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Memory limit (-1 unlimited if allowed).
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Process limit (-1 unlimited if allowed).
Validation and use:
packagenameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PACKAGENAME_FROM_LIST_RESPONSE
Package name. Package display name (1–64 chars; letters, numbers, spaces, hyphens, and underscores).
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Parked domains limit (-1 unlimited if allowed).
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell mode: 0 disabled, 1 bash, 2 jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Subdomains limit (-1 unlimited if allowed).
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1
},
"query_parameters": {},
"json_body": {
"addondomains": -1,
"apply_to_accounts": 1,
"databases": -1,
"dedicatedip": 1,
"diskspacequota": 100,
"emailaccounts": -1,
"feature_profile": 1,
"featureprofile": 1,
"ftpaccounts": -1,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1,
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"parkeddomains": -1,
"shell": 0,
"subdomains": -1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"packagename":"PACKAGENAME_FROM_LIST_RESPONSE","featureprofile":1,"feature_profile":1,"shell":0}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"id": 1
},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"featureprofile": 1,
"feature_profile": 1,
"shell": 0
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package_id | integer |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Accounts
POST/v1/accountsroot resellerCreate a hosting account with its own login, domain and hosting plan.
Before you start
Use the configured shared IP unless this account needs a different address. Wait for account creation to finish before using the new account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (45)
account_domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.test
Primary account domain. Primary domain name. Primary domain (FQDN). Punycode accepted.
Validation and use:
account_emailRequired- Send in
- JSON body
- Type
string|email- Accepted values
- Any value matching string|email
- Example
admin@example.test
Account contact email address. Contact email for the account.
Validation and use:
account_passwordRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
STRONG_PASSWORD
Account or mailbox password. Initial account password. Generate a strong password when the user did not provide one. Initial account password (min 8 chars).
Validation and use:
account_usernameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
exampleacct
Account username. System username to create. System username to create (2–30 chars; letters/numbers only; no hyphen, underscore, dot, or spaces; not all digits).
Validation and use: Minimum length 2. Maximum length 30. Pattern: ^(?=.*[A-Za-z])[A-Za-z0-9]{2,30}$. Generate lowercase letters and digits only, for example testhost8k3m2p. Do not use hyphen, underscore, dot, or spaces.
select_account_ownerRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
0
Account owner selection. Owner identifier. Use `0` or omit for root-owned accounts. Use 0 or root for root-owned accounts. For reseller ownership, use an existing reseller username or positive id only when the user explicitly requests that owner. Never send -1.
Validation and use: Pattern: ^(0|root|[A-Za-z][A-Za-z0-9]{1,29}|[1-9][0-9]*)$. Use 0 or root for root-owned accounts. Use an existing reseller username or positive reseller/account id only when ownership is explicitly requested. Never send -1.
select_account_packageRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Account package selection. Account package id. Use `1` for the protected default package when no other package is requested. Account package id to apply. Use 1 for the protected default package when no package is specified. Never send -1 or the word default.
Validation and use: Minimum 1. Pattern: ^[1-9][0-9]*$. Use package id 1 for the protected default package when no package is specified. Send a positive numeric package id; never send -1 or the word default.
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for addon-domain limit. Override addon domains limit (advanced).
Validation and use:
conflict_dns_policyOptional- Send in
- JSON body
- Type
enum- Accepted values
- keep_existing, overwrite
- Example
keep_existing
Alias of migration_conflict_dns_policy. Prefer migration_conflict_dns_policy. Allowed values: keep_existing, overwrite.
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for MySQL database limit. Override databases limit (advanced).
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Root-only migration override for disk quota in MB; -1 is unlimited. Override disk quota MB for this account at creation time (advanced).
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for email account limit. Override email accounts limit (advanced).
Validation and use:
force_shared_ipOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Set to `1` to use the server’s default shared IP. Set to 1 to use the server’s default shared IP, even if the selected package requires a dedicated IP.
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for FTP account limit. Override FTP accounts limit (advanced).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for CPU limit. Override CPU limit (advanced).
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for outbound messages per hour. Override max emails per hour (advanced).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for inode limit. Override inode limit (advanced).
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for disk bandwidth limit. Override IO bandwidth limit (advanced).
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for IOPS limit. Override IOPS limit (advanced).
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for memory limit. Override memory limit (advanced).
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for process limit. Override max user processes (advanced).
Validation and use:
migrationOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Root-only migration mode flag. Omit it for normal account creation. Root-only migration mode helper.
Validation and use:
migration_conflict_account_policyOptional- Send in
- JSON body
- Type
enum- Accepted values
- skip, overwrite
- Example
skip
Root-only migration conflict policy for existing accounts: `skip` or `overwrite`. Root-only migration conflict policy when an account already exists: skip|overwrite. Allowed values: skip, overwrite.
Validation and use:
migration_conflict_dns_policyOptional- Send in
- JSON body
- Type
enum- Accepted values
- keep_existing, overwrite
- Example
keep_existing
Migration conflict dns policy request field. Allowed values: keep_existing, overwrite. Root-only migration DNS zone conflict policy: `keep_existing` or `overwrite`. Use `overwrite` only when the migration should replace existing local/cluster DNS zones. Root-only migration DNS zone conflict policy: keep_existing|overwrite. overwrite allows replacing existing local or DNS Cluster zones during migration.
Validation and use:
migration_conflict_domain_policyOptional- Send in
- JSON body
- Type
enum- Accepted values
- skip_account, skip_domain
- Example
skip_account
Root-only migration conflict policy for domains: `skip_account` or `skip_domain`. Root-only migration conflict policy for domain collisions: skip_account|skip_domain. Allowed values: skip_account, skip_domain.
Validation and use:
migration_existing_account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
MIGRATION_EXISTING_ACCOUNT_USER_FROM_LIST_RESPONSE
Root-only migration override: existing local account username to reuse when overwrite is allowed. Root-only migration override: existing local account username to reuse when migration_conflict_account_policy=overwrite.
Validation and use:
migration_source_platformOptional- Send in
- JSON body
- Type
enum- Accepted values
- plesk, directadmin
- Example
plesk
Migration source platform request field. Allowed values: plesk, directadmin. Root-only migration source hint (for example `plesk` or `directadmin`). Root-only migration source hint, for example "plesk" or "directadmin".
Validation and use:
opcacheOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Initial OPcache state.
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for parked-domain limit. Override parked domains limit (advanced).
Validation and use:
phpversionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PHPVERSION_FROM_LIST_RESPONSE
Initial installed PHP runtime token, for example php83.
Validation and use:
postgres_databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for PostgreSQL database limit. Override PostgreSQL databases limit (advanced).
Validation and use:
postgres_usersOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Root-only migration override for PostgreSQL user limit. Override PostgreSQL users limit (advanced).
Validation and use:
progress_taskOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
create_account_root_0123456789abcdef0123456789abcdef
Optional live progress id. Use create_account_<caller>_<32 hexadecimal characters>, then poll GET /v1/progress/{task}. Root uses caller root; a reseller must use its own username. Live progress id in the form create_account_<caller>_<32 hexadecimal characters>. Root uses caller root; a reseller uses its own username. Poll GET /v1/progress/{task}.
Validation and use:
resellermaxaccountsOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
-1
Maximum reseller accounts limit. Root-only migration override for the created reseller maximum account count. Reseller max accounts (advanced; reseller accounts only).
Validation and use:
resellermaxdiskspaceOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
-1
Maximum reseller disk space. Root-only migration override for the created reseller disk pool in MB. Reseller max disk space in MB (advanced; reseller accounts only).
Validation and use:
resellerprivilegesOptional- Send in
- JSON body
- Type
enum- Accepted values
- yes
- Example
yes
Reseller privilege toggle. Set to `yes` to create a reseller account (root-only). Set to "yes" to create a reseller account (root-only).
Validation and use: Send yes only when creating a reseller account. Omit this field for normal hosting accounts.
select_account_ipOptional- Send in
- JSON body
- Type
enum- Accepted values
- shared, sharedip, shared_ip, default, server_default, server_shared
- Example
shared
Account IP selection. Allowed values: shared, sharedip, shared_ip, default, server_default, server_shared. Optional. Use `shared`, `default`, or omit for the configured shared server IP. Use "shared", "default", or omit it for the configured shared server IP; the engine may override with shared/dedicated IP based on policy.
Validation and use:
selectreselleripsOptional- Send in
- JSON body
- Type
array|string|string[]- Accepted values
- Any value matching array|string|string[]
- Example
SELECTRESELLERIPS_FROM_LIST_RESPONSE
Selected reseller IP addresses. Optional reseller IP allow-list. Omit for default/shared IP. Reseller IP allow-list (array of IPv4 strings). Used when creating reseller accounts.
Validation and use:
selectresellerpackageOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Selected reseller package. Reseller package id when creating a reseller account. Use `1` for the protected default reseller package when no other package is requested. Reseller package id (required when resellerprivileges="yes").
Validation and use:
setopcacheOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Alias of opcache. Prefer opcache.
Validation and use:
setphpversionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SETPHPVERSION_FROM_LIST_RESPONSE
Alias of phpversion. Prefer phpversion.
Validation and use:
shadowOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SHADOW_FROM_LIST_RESPONSE
Root-only migration password hash for the created system account. Root-only migration password hash to store for the system account (advanced).
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Root-only migration shell override: 0 disabled, 1 bash, 2 jail. Override shell setting (advanced): 0=disabled, 1=bash, 2=jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Root-only migration override for subdomain limit. Override subdomains limit (advanced).
Validation and use:
suspend_reasonOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SUSPEND_REASON_FROM_LIST_RESPONSE
Suspend reason. Optional suspension reason used when suspended is true. Suspend reason shown in UI (if suspended=1).
Validation and use:
suspendedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Create the account suspended when true. Set to 1 to create the account suspended.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"account_domain": "example.test",
"account_email": "admin@example.test",
"account_password": "STRONG_PASSWORD",
"account_username": "exampleacct",
"select_account_owner": 0,
"select_account_package": 1,
"addondomains": -1,
"conflict_dns_policy": "keep_existing",
"databases": -1,
"diskspacequota": 100,
"emailaccounts": -1,
"force_shared_ip": 1,
"ftpaccounts": -1,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1,
"migration": 1,
"migration_conflict_account_policy": "skip",
"migration_conflict_dns_policy": "keep_existing",
"migration_conflict_domain_policy": "skip_account",
"migration_existing_account_user": "MIGRATION_EXISTING_ACCOUNT_USER_FROM_LIST_RESPONSE",
"migration_source_platform": "plesk",
"opcache": 1,
"parkeddomains": -1,
"phpversion": "PHPVERSION_FROM_LIST_RESPONSE",
"postgres_databases": -1,
"postgres_users": 1,
"progress_task": "create_account_root_0123456789abcdef0123456789abcdef",
"resellermaxaccounts": -1,
"resellermaxdiskspace": -1,
"resellerprivileges": "yes",
"select_account_ip": "shared",
"selectresellerips": "SELECTRESELLERIPS_FROM_LIST_RESPONSE",
"selectresellerpackage": 1,
"setopcache": 1,
"setphpversion": "SETPHPVERSION_FROM_LIST_RESPONSE",
"shadow": "SHADOW_FROM_LIST_RESPONSE",
"shell": 0,
"subdomains": -1,
"suspend_reason": "SUSPEND_REASON_FROM_LIST_RESPONSE",
"suspended": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/accounts' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"account_domain":"example.test","account_username":"exampleacct","select_account_package":1,"account_password":"STRONG_PASSWORD","account_email":"admin@example.test","select_account_owner":0,"select_account_ip":"shared","force_shared_ip":1,"progress_task":"create_account_root_0123456789abcdef0123456789abcdef"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Create a root-owned account with progress
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"account_domain": "example.test",
"account_username": "exampleacct",
"select_account_package": 1,
"account_password": "STRONG_PASSWORD",
"account_email": "admin@example.test",
"select_account_owner": 0,
"select_account_ip": "shared",
"force_shared_ip": 1,
"progress_task": "create_account_root_0123456789abcdef0123456789abcdef"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/accounts/{username}root resellerDelete account and associated resources.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
account_usernameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
keepdnsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
off
Keep DNS records after delete. Keep DNS zone records after deleting the account. Set to 1/true/on/yes to keep DNS zone records. Default: off.
Validation and use:
progress_taskOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
delete_account_root_0123456789abcdef0123456789abcdef
Optional live progress id in the form delete_account_<caller>_<32 hexadecimal characters>. Root uses caller root; a reseller must use its own username. Poll GET /v1/progress/{task}. Live deletion progress id in the form delete_account_<caller>_<32 hexadecimal characters>.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"account_username": "demo",
"keepdns": "off",
"progress_task": "delete_account_root_0123456789abcdef0123456789abcdef"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/accounts/demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"keepdns":"off"}'Example note: Requires a documented runtime value before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Delete account (remove DNS)
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"keepdns": "off"
}
}Requires a documented runtime value before QA can execute this request.
Delete account (keep DNS)
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"keepdns": "on"
}
}Requires a documented runtime value before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Core
PATCH/v1/accounts/{username}/feature-flagsroot resellerChoose which hosting tools are available to an account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
aiOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Enable or disable AI Assistant access for this account.
Validation and use:
cloudflare_dnsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
0
Enable or disable Cloudflare DNS access for this account.
Validation and use:
podman_cliOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Enable or disable the isolated Podman CLI mounts and socket inside this account JailShell. The account must use shell=2 for runtime exposure.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ai": 1,
"cloudflare_dns": 0,
"podman_cli": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/feature-flags' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"podman_cli":1}'
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Enable Podman CLI in JailShell
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"podman_cli": 1
}
}Disable Podman CLI without disabling Podman Manager
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"podman_cli": 0
}
}Update multiple feature flags
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ai": 1,
"cloudflare_dns": 0,
"podman_cli": 1
}
}Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Domain
PATCH/v1/accounts/{username}/domainroot resellerRename primary account domain.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
new_domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.net
New primary domain. Alias: domain.
Validation and use:
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name. Alias of `new_domain`. Alias of new_domain. Prefer new_domain.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_domain": "example.net",
"domain": "example.com"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/domain' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"new_domain":"example.net"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Rename primary domain
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"new_domain": "example.net"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Feature Profiles
GET/v1/feature-profilesroot resellerList feature profiles available to you.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (0)
This endpoint accepts no path, query, or JSON parameters.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/feature-profiles' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {},
"query_parameters": {},
"json_body": {}
}Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "access_denied",
"message": "The API key is not authorized for this endpoint, resource, role, or source IP."
}
POST/v1/feature-profilesroot resellerCreate feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (6)
nameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
All Features
Profile name (1–64 chars; letters/numbers/spaces). Alias: profile_name.
Validation and use:
allow_allOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. 1 to allow all features (default). Alias: allowall.
Validation and use:
allowallOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. Alias of allow_all. Prefer allow_all.
Validation and use:
feature_keysOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURE_KEYS_FROM_LIST_RESPONSE
Feature key list. Alias of features. Prefer features.
Validation and use:
featuresOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
["email","dns","ftp"]
Feature key list. When allow_all=0: array of feature keys, or comma-separated string. Alias: feature_keys.
Validation and use:
profile_nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PROFILE_NAME_FROM_LIST_RESPONSE
Profile name. Alias of name. Prefer name.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"name": "All Features",
"allow_all": 1,
"allowall": 1,
"feature_keys": "FEATURE_KEYS_FROM_LIST_RESPONSE",
"features": [
"email",
"dns",
"ftp"
],
"profile_name": "PROFILE_NAME_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/feature-profiles' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"name":"All Features","allow_all":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Allow all features
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"name": "All Features",
"allow_all": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Allow selected features
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"name": "Starter",
"allow_all": 0,
"features": [
"email",
"dns",
"ftp"
]
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/feature-profiles/{id}root resellerDelete feature profile (if unused).
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
idRequired- Send in
- URL path
- Type
int|integer|string- Accepted values
- Any value matching int|integer|string
- Example
2
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
featureprofile_idOptional- Send in
- JSON body
- Type
int|string|integer- Accepted values
- Any value matching int|string|integer
- Example
1
Feature profile ID. Optional alias of path `{id}`. Compatibility alias for id. Prefer the path id.
Validation and use: Use the corresponding list endpoint for this resource and copy the returned featureprofile_id value.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 2
},
"query_parameters": {},
"json_body": {
"featureprofile_id": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/feature-profiles/2' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Delete profile
{
"path_parameters": {
"id": 2
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/feature-profiles/{id}root resellerView feature profile by id.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
idRequired- Send in
- URL path
- Type
int|integer|string- Accepted values
- Any value matching int|integer|string
- Example
2
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
featureprofile_idOptional- Send in
- Query string
- Type
int|string|integer- Accepted values
- Any value matching int|string|integer
- Example
1
Feature profile ID. Optional alias of path `{id}`. Compatibility alias for id. Prefer the path id.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Use the corresponding list endpoint for this resource and copy the returned featureprofile_id value.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 2
},
"query_parameters": {
"featureprofile_id": 1
},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/feature-profiles/2' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Fetch profile
{
"path_parameters": {
"id": 2
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/feature-profiles/{id}root resellerEdit feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (8)
idRequired- Send in
- URL path
- Type
int|integer|string- Accepted values
- Any value matching int|integer|string
- Example
1
Exact resource identifier returned by the related list or context endpoint. Do not guess ids from table position.
Validation and use: Required Replace this placeholder directly in the URL path. Use the corresponding list endpoint for this resource and copy the returned id value.
allow_allOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. 1 to allow all features. Alias: allowall.
Validation and use:
allowallOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. Alias of allow_all. Prefer allow_all.
Validation and use:
feature_keysOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURE_KEYS_FROM_LIST_RESPONSE
Feature key list. Alias of features. Prefer features.
Validation and use:
featureprofile_idOptional- Send in
- JSON body
- Type
int|string|integer- Accepted values
- Any value matching int|string|integer
- Example
1
Feature profile ID. Optional alias of path `{id}`. Compatibility alias for id. Prefer the path id.
Validation and use: Use the corresponding list endpoint for this resource and copy the returned featureprofile_id value.
featuresOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
["email","dns"]
Feature key list. When allow_all=0: array of feature keys, or comma-separated string. Alias: feature_keys.
Validation and use:
nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
Starter v2
Profile name (1–64 chars; letters/numbers/spaces). Alias: profile_name.
Validation and use:
profile_nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PROFILE_NAME_FROM_LIST_RESPONSE
Alias of name. Prefer name.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1
},
"query_parameters": {},
"json_body": {
"allow_all": 1,
"allowall": 1,
"feature_keys": "FEATURE_KEYS_FROM_LIST_RESPONSE",
"featureprofile_id": 1,
"features": [
"email",
"dns"
],
"name": "Starter v2",
"profile_name": "PROFILE_NAME_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/feature-profiles/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"name":"Starter v2"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Rename profile
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"name": "Starter v2"
}
}Requires a value returned by another endpoint before QA can execute this request.
Switch to allow_all
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"allow_all": 1
}
}Requires a documented runtime value before QA can execute this request.
Switch to allowlist
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"allow_all": 0,
"features": [
"email",
"dns"
]
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/feature-profiles/catalogroot resellerSee which account tools you can include in a feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (0)
This endpoint accepts no path, query, or JSON parameters.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/feature-profiles/catalog' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {},
"query_parameters": {},
"json_body": {}
}Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "access_denied",
"message": "The API key is not authorized for this endpoint, resource, role, or source IP."
}
Ip
PATCH/v1/accounts/{username}/iproot resellerChange account IPv4 address.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
ipRequired- Send in
- JSON body
- Type
string|ipv4- Accepted values
- Any value matching string|ipv4
- Example
192.168.0.1
IPv4 address. New IPv4 address for the account. Alias: "new_ip".
Validation and use:
new_ipOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
203.0.113.10
New IP address.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ip": "192.168.0.1",
"new_ip": "203.0.113.10"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/ip' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"ip":"192.168.0.1"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Set dedicated IPv4
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"ip": "192.168.0.1"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Max Emails Per Hour
PATCH/v1/accounts/{username}/max-emails-per-hourroot resellerSet how many emails an account may send per hour.
Before you start
Use -1 for unlimited sending only when that is intended.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
maxemailsperhourRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
500
Maximum outgoing emails per hour. Outbound email limit per hour. Use -1 for unlimited. Integer greater than or equal to -1. Alias: value.
Validation and use:
valueOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Value payload. Alias of `maxemailsperhour`. Alias of maxemailsperhour. Prefer maxemailsperhour.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"maxemailsperhour": "500",
"value": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/max-emails-per-hour' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"maxemailsperhour":"500"}'Example note: Requires a documented runtime value before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Set rate limit
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"maxemailsperhour": "500"
}
}Requires a documented runtime value before QA can execute this request.
Set unlimited
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"maxemailsperhour": "-1"
}
}Requires a documented runtime value before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Package
PATCH/v1/accounts/{username}/packageroot resellerApply package limits/settings to account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
package_idRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
2
Account package id to apply.
Validation and use: Use the corresponding list endpoint for this resource and copy the returned package_id value.
select_account_packageOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
1
Account package selection.
Validation and use: Minimum 1. Pattern: ^[1-9][0-9]*$. Use package id 1 for the protected default package when no package is specified. Send a positive numeric package id; never send -1 or the word default.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"package_id": 2,
"select_account_package": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/package' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"package_id":2}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Apply package id 2
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"package_id": 2
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Progress
GET/v1/progress/{task}root resellerCheck the progress of an account creation or deletion task.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
taskRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
create_account_root_0123456789abcdef0123456789abcdef
Task id matching [A-Za-z0-9_.-]{1,80}. Account operations use create_account_<caller>_<32 hexadecimal characters> or delete_account_<caller>_<32 hexadecimal characters>. Path task id matching [A-Za-z0-9_.-]{1,80}. Account-operation task ids bind the operation and authenticated caller to 128 bits of secure randomness.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"task": "create_account_root_0123456789abcdef0123456789abcdef"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/progress/create_account_root_0123456789abcdef0123456789abcdef' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Read root account-creation progress
{
"path_parameters": {
"task": "create_account_root_0123456789abcdef0123456789abcdef"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Quota
PATCH/v1/accounts/{username}/quotaroot resellerUpdate account disk quota.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
diskspacequotaRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
10240
New disk quota in MB (`-1` for unlimited). Disk quota in MB. Use -1 for unlimited. Alias: quota.
Validation and use:
quotaOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
100
Alias of `diskspacequota`. Alias of diskspacequota. Prefer diskspacequota.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": "10240",
"quota": 100
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/quota' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"diskspacequota":"10240"}'Example note: Requires a documented runtime value before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Set 10GB quota
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"diskspacequota": "10240"
}
}Requires a documented runtime value before QA can execute this request.
Set unlimited quota
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"diskspacequota": "-1"
}
}Requires a documented runtime value before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Reseller Management
GET/v1/resellers/{reseller}/account-defaultsroot resellerView the starting IP, nameserver and PHP settings for new accounts.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/account-defaults' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/account-defaults/nameserversroot resellerUpdate the default nameserver settings.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
all_existing_zonesOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Validation and use:
apply_existing_zonesOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Validation and use:
default_ns1Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DEFAULT_NS1_FROM_LIST_RESPONSE
Validation and use:
default_ns2Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DEFAULT_NS2_FROM_LIST_RESPONSE
Validation and use:
default_ns3Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DEFAULT_NS3_FROM_LIST_RESPONSE
Validation and use:
default_ns4Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DEFAULT_NS4_FROM_LIST_RESPONSE
Validation and use:
sync_existing_zonesOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Validation and use:
update_existing_zonesOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"all_existing_zones": 1,
"apply_existing_zones": 1,
"default_ns1": "DEFAULT_NS1_FROM_LIST_RESPONSE",
"default_ns2": "DEFAULT_NS2_FROM_LIST_RESPONSE",
"default_ns3": "DEFAULT_NS3_FROM_LIST_RESPONSE",
"default_ns4": "DEFAULT_NS4_FROM_LIST_RESPONSE",
"sync_existing_zones": 1,
"update_existing_zones": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/account-defaults/nameservers' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"default_ns1":"DEFAULT_NS1_FROM_LIST_RESPONSE","default_ns2":"DEFAULT_NS2_FROM_LIST_RESPONSE","default_ns3":"DEFAULT_NS3_FROM_LIST_RESPONSE","default_ns4":"DEFAULT_NS4_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"default_ns1": "DEFAULT_NS1_FROM_LIST_RESPONSE",
"default_ns2": "DEFAULT_NS2_FROM_LIST_RESPONSE",
"default_ns3": "DEFAULT_NS3_FROM_LIST_RESPONSE",
"default_ns4": "DEFAULT_NS4_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/account-defaults/shared-iproot resellerUpdate the default shared IP settings.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
sharedipOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SHAREDIP_FROM_LIST_RESPONSE
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"sharedip": "SHAREDIP_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/account-defaults/shared-ip' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"sharedip":"SHAREDIP_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"sharedip": "SHAREDIP_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/account-packagesroot resellerView the hosting plans available to you.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/account-packages' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
count | integer |
packages | object[] |
runtime_capabilities | object{resource_limits:object{state:string,available:boolean,reason:string,cgroup_version:string,systemd_pid1:boolean,supported_fields:string[],missing_controllers:string[],controllers:string[],fields:object},quota:object{mode:string,storage_path:string,available:boolean,reason:string,fields:object}} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/account-packagesroot resellerCreate a hosting plan to assign to customer accounts.
Before you start
Use -1 for an unlimited allowance. SHM rejects a limit that the server cannot enforce.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (22)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
packagenameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PACKAGENAME_FROM_LIST_RESPONSE
Package name. Package display name (1–64 chars; letters, numbers, spaces, hyphens, and underscores).
Validation and use:
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Addon domains limit (-1 unlimited if allowed).
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Databases limit (-1 unlimited if allowed).
Validation and use:
dedicatedipOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Dedicated IP toggle. 1 to require dedicated IP for accounts using this package.
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Disk quota (MB). -1 is unlimited. A finite value requires filesystem user-quota support.
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Email accounts limit (-1 unlimited if allowed).
Validation and use:
feature_profileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile selection. Alias of featureprofile. Prefer featureprofile.
Validation and use:
featureprofileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile id. Alias: feature_profile.
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
FTP accounts limit (-1 unlimited if allowed).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
CPU percent limit. -1 is unlimited. A finite value requires the delegated cgroup v2 cpu controller.
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Max emails per hour (-1 unlimited if allowed).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit. -1 is unlimited. A finite value requires filesystem user-quota support.
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
I/O bandwidth limit in MB/s. -1 or 0 is unlimited. A finite value requires the delegated cgroup v2 io controller.
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit. -1 or 0 is unlimited. A finite value requires the delegated cgroup v2 io controller.
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Memory limit in MB. -1 is unlimited. A finite value requires the delegated cgroup v2 memory controller.
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Task/process limit. -1 is unlimited. A finite value requires the delegated cgroup v2 pids controller.
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Parked domains limit (-1 unlimited if allowed).
Validation and use:
postgres_databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
PostgreSQL database limit. Use -1 for unlimited when allowed by reseller policy, or an integer from 0 to 1000.
Validation and use:
postgres_usersOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
PostgreSQL user limit. Use -1 for unlimited when allowed by reseller policy, or an integer from 0 to 1000.
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell mode: 0 disabled, 1 bash, 2 jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Subdomains limit (-1 unlimited if allowed).
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"addondomains": -1,
"databases": -1,
"dedicatedip": 1,
"diskspacequota": 100,
"emailaccounts": -1,
"feature_profile": 1,
"featureprofile": 1,
"ftpaccounts": -1,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1,
"parkeddomains": -1,
"postgres_databases": -1,
"postgres_users": -1,
"shell": 0,
"subdomains": -1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/account-packages' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"packagename":"PACKAGENAME_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package_id | integer |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/account-packages/{id}root resellerDelete account package (if unused).
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/account-packages/{id}root resellerView a hosting plan's limits and included features.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/account-packages/{id}root resellerChange the limits or features in a hosting plan.
Before you start
Settings you leave out keep their current values. SHM rejects a limit that the server cannot enforce.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (24)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Addon domains limit (-1 unlimited if allowed).
Validation and use:
apply_to_accountsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Apply the package changes to accounts that currently use this package, in addition to updating the reusable package definition.
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Databases limit (-1 unlimited if allowed).
Validation and use:
dedicatedipOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Dedicated IP toggle. 1 to require dedicated IP for accounts using this package.
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Disk quota (MB). -1 unlimited (if allowed).
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Email accounts limit (-1 unlimited if allowed).
Validation and use:
feature_profileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile selection. Alias of featureprofile. Prefer featureprofile.
Validation and use:
featureprofileOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Feature profile id. Alias: feature_profile.
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
FTP accounts limit (-1 unlimited if allowed).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
CPU limit (-1 unlimited if allowed).
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Max emails per hour (-1 unlimited if allowed).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit (-1 unlimited if allowed).
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IO bandwidth limit (-1 unlimited if allowed).
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit (-1 unlimited if allowed).
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Memory limit (-1 unlimited if allowed).
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Process limit (-1 unlimited if allowed).
Validation and use:
packagenameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PACKAGENAME_FROM_LIST_RESPONSE
Package name. Package display name (1–64 chars; letters, numbers, spaces, hyphens, and underscores).
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Parked domains limit (-1 unlimited if allowed).
Validation and use:
postgres_databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
PostgreSQL database limit. Use -1 for unlimited when allowed by reseller policy, or an integer from 0 to 1000.
Validation and use:
postgres_usersOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
PostgreSQL user limit. Use -1 for unlimited when allowed by reseller policy, or an integer from 0 to 1000.
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell mode: 0 disabled, 1 bash, 2 jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Subdomains limit (-1 unlimited if allowed).
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"addondomains": -1,
"apply_to_accounts": 1,
"databases": -1,
"dedicatedip": 1,
"diskspacequota": 100,
"emailaccounts": -1,
"feature_profile": 1,
"featureprofile": 1,
"ftpaccounts": -1,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1,
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"parkeddomains": -1,
"postgres_databases": -1,
"postgres_users": -1,
"shell": 0,
"subdomains": -1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/account-packages/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"packagename":"PACKAGENAME_FROM_LIST_RESPONSE","featureprofile":1,"feature_profile":1,"shell":0}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {
"packagename": "PACKAGENAME_FROM_LIST_RESPONSE",
"featureprofile": 1,
"feature_profile": 1,
"shell": 0
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
message | string |
package_id | integer |
package | object |
runtime_capabilities | object{resource_limits:object,quota:object} |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/accountsroot resellerList the hosting accounts you can manage.
Before you start
Use search to find an account, or start and length to request a smaller part of a large list.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (5)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
lengthOptional- Send in
- Query string
- Type
integer- Accepted values
- Any value matching integer; default: 100
- Example
100
Number of rows to return when pagination is enabled.
Validation and use: Minimum 1. Maximum 1000. Default: 100.
qOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Alias of search. It is used only when search is empty.
Validation and use: Needed when: optional alias of search.
searchOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Case-insensitive search across the indexed account identity, domain, contact, owner, IP, status, package, and date fields.
Validation and use:
startOptional- Send in
- Query string
- Type
integer- Accepted values
- Any value matching integer; default: 0
- Example
0
Zero-based row offset. Supplying start or length enables pagination.
Validation and use: Minimum 0. Default: 0.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"length": 100,
"q": "example.com",
"search": "example.com",
"start": 0
},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/accounts?q=example.com&search=example.com&start=0&length=100' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"q": "example.com",
"search": "example.com",
"start": 0,
"length": 100
},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
status | string |
title | string |
message | string |
role | Effective role for this scoped operation: reseller. |
count | integer |
accounts | object[] |
accounts[].id | positive integer |
accounts[].user | string |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/accountsroot resellerCreate a hosting account with its own login, domain and hosting plan.
Before you start
Use the configured shared IP unless this account needs a different address. Wait for account creation to finish before using the new account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (31)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
account_domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Primary account domain. Primary domain (FQDN). Punycode accepted.
Validation and use:
account_emailRequired- Send in
- JSON body
- Type
string|email- Accepted values
- Any value matching string|email
- Example
admin@example.com
Account contact email address. Contact email for the account.
Validation and use:
account_passwordRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
STRONG_PASSWORD
Account or mailbox password. Initial account password (min 8 chars).
Validation and use:
account_usernameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
testhost8k3m2p
Account username. System username to create (2–30 chars; letters/numbers only; no hyphen, underscore, dot, or spaces; not all digits).
Validation and use: Minimum length 2. Maximum length 30. Pattern: ^(?=.*[A-Za-z])[A-Za-z0-9]{2,30}$. Generate lowercase letters and digits only, for example testhost8k3m2p. Do not use hyphen, underscore, dot, or spaces.
select_account_packageRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Account package id returned by GET /v1/resellers/{reseller}/account-packages. Select a package owned by this reseller; there is no implicit package id.
Validation and use: Minimum 1. Pattern: ^[1-9][0-9]*$. GET /v1/resellers/{reseller}/account-packages Use package id 1 for the protected default package when no package is specified. Send a positive numeric package id; never send -1 or the word default.
addondomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override addon domains limit (advanced).
Validation and use:
databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override databases limit (advanced).
Validation and use:
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Override disk quota MB for this account at creation time (advanced).
Validation and use:
emailaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override email accounts limit (advanced).
Validation and use:
ftpaccountsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override FTP accounts limit (advanced).
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override CPU limit (advanced).
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override max emails per hour (advanced).
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override inode limit (advanced).
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override IO bandwidth limit (advanced).
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override IOPS limit (advanced).
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override memory limit (advanced).
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override max user processes (advanced).
Validation and use:
opcacheOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Initial OPcache state.
Validation and use:
parkeddomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override parked domains limit (advanced).
Validation and use:
phpversionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PHPVERSION_FROM_LIST_RESPONSE
Initial installed PHP runtime token, for example php83.
Validation and use:
postgres_databasesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override PostgreSQL databases limit (advanced).
Validation and use:
postgres_usersOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Override PostgreSQL users limit (advanced).
Validation and use:
progress_taskOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
create_account_demo_0123456789abcdef0123456789abcdef
Optional unique progress id: create_account_<reseller>_<32 hexadecimal characters> for creation or delete_account_<reseller>_<32 hexadecimal characters> for deletion. Poll GET /v1/resellers/{reseller}/progress/{task}.
Validation and use:
select_account_ipOptional- Send in
- JSON body
- Type
enum- Accepted values
- shared, sharedip, shared_ip, default, server_default, server_shared
- Example
shared
Account IP selection. Allowed values: shared, sharedip, shared_ip, default, server_default, server_shared. Optional. Use "shared", "default", or omit it for the configured shared server IP; the engine may override with shared/dedicated IP based on policy.
Validation and use:
setopcacheOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Alias of opcache. Prefer opcache.
Validation and use:
setphpversionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SETPHPVERSION_FROM_LIST_RESPONSE
Alias of phpversion. Prefer phpversion.
Validation and use:
shellOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Override shell setting (advanced): 0=disabled, 1=bash, 2=jail. Allowed values: 0, 1, 2.
Validation and use:
subdomainsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Override subdomains limit (advanced).
Validation and use:
suspend_reasonOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SUSPEND_REASON_FROM_LIST_RESPONSE
Suspend reason. Suspend reason shown in UI (if suspended=1).
Validation and use:
suspendedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Set to 1 to create the account suspended.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"account_domain": "example.com",
"account_email": "admin@example.com",
"account_password": "STRONG_PASSWORD",
"account_username": "testhost8k3m2p",
"select_account_package": 1,
"addondomains": -1,
"databases": -1,
"diskspacequota": 100,
"emailaccounts": -1,
"ftpaccounts": -1,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1,
"opcache": 1,
"parkeddomains": -1,
"phpversion": "PHPVERSION_FROM_LIST_RESPONSE",
"postgres_databases": -1,
"postgres_users": 1,
"progress_task": "create_account_demo_0123456789abcdef0123456789abcdef",
"select_account_ip": "shared",
"setopcache": 1,
"setphpversion": "SETPHPVERSION_FROM_LIST_RESPONSE",
"shell": 0,
"subdomains": -1,
"suspend_reason": "SUSPEND_REASON_FROM_LIST_RESPONSE",
"suspended": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/accounts' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"account_domain":"example.com","account_username":"testhost8k3m2p","account_password":"STRONG_PASSWORD","account_email":"admin@example.com","select_account_package":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"account_domain": "example.com",
"account_username": "testhost8k3m2p",
"account_password": "STRONG_PASSWORD",
"account_email": "admin@example.com",
"select_account_package": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/accounts/{username}root resellerDelete account and associated resources.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (6)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
account_usernameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
keepdnsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Keep DNS records after delete. Set to 1/true/on/yes to keep DNS zone records. Default: off.
Validation and use:
progress_taskOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
delete_account_demo_0123456789abcdef0123456789abcdef
Optional unique progress id: create_account_<reseller>_<32 hexadecimal characters> for creation or delete_account_<reseller>_<32 hexadecimal characters> for deletion. Poll GET /v1/resellers/{reseller}/progress/{task}.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"account_user": "demo",
"account_username": "demo",
"keepdns": 1,
"progress_task": "delete_account_demo_0123456789abcdef0123456789abcdef"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/accounts/demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"progress_task":"delete_account_demo_0123456789abcdef0123456789abcdef","account_user":"demo","account_username":"demo","keepdns":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"progress_task": "delete_account_demo_0123456789abcdef0123456789abcdef",
"account_user": "demo",
"account_username": "demo",
"keepdns": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/accounts/{username}root resellerView the selected hosting account's details.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/accounts/demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/domainroot resellerRename primary account domain.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
new_domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
New primary domain. Alias: domain.
Validation and use:
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name. Alias of new_domain. Prefer new_domain.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_domain": "example.com",
"domain": "example.com"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/domain' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"new_domain":"example.com"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_domain": "example.com"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/emailroot resellerUpdate account contact email.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
emailRequired- Send in
- JSON body
- Type
email|string- Accepted values
- Any value matching email|string
- Example
admin@example.com
New contact email. Alias: contact_email.
Validation and use:
contact_emailOptional- Send in
- JSON body
- Type
email|string- Accepted values
- Any value matching email|string
- Example
admin@example.com
Alias of email. Prefer email.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"email": "admin@example.com",
"contact_email": "admin@example.com"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/email' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"email":"admin@example.com"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"email": "admin@example.com"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/feature-flagsroot resellerChoose which hosting tools are available to an account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (5)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
aiOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Enable or disable AI Assistant access for this account.
Validation and use:
cloudflare_dnsOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Enable or disable Cloudflare DNS access for this account.
Validation and use:
podman_cliOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Enable or disable the isolated Podman CLI mounts and socket inside this account JailShell. The account must use shell=2 for runtime exposure.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ai": 1,
"cloudflare_dns": 1,
"podman_cli": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/feature-flags' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"ai":1,"cloudflare_dns":1,"podman_cli":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ai": 1,
"cloudflare_dns": 1,
"podman_cli": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/iproot resellerChange account IPv4 address.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
ipRequired- Send in
- JSON body
- Type
string|ipv4- Accepted values
- Any value matching string|ipv4
- Example
203.0.113.10
IPv4 address. New IPv4 address for the account. Alias: "new_ip".
Validation and use:
new_ipOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
203.0.113.10
New IP address.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ip": "203.0.113.10",
"new_ip": "203.0.113.10"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/ip' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"ip":"203.0.113.10"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"ip": "203.0.113.10"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/max-emails-per-hourroot resellerSet how many emails an account may send per hour.
Before you start
Use -1 for unlimited sending only when that is intended.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
maxemailsperhourRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
-1
Maximum outgoing emails per hour. Integer greater than or equal to -1. Use -1 for unlimited. Alias: value.
Validation and use:
valueOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Value payload. Alias of maxemailsperhour. Prefer maxemailsperhour.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"maxemailsperhour": -1,
"value": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/max-emails-per-hour' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"maxemailsperhour":-1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"maxemailsperhour": -1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/packageroot resellerApply package limits/settings to account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
package_idRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Account package id to apply.
Validation and use: GET /v1/reseller-packages
select_account_packageOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
1
Account package id returned by GET /v1/resellers/{reseller}/account-packages. Select a package owned by this reseller; there is no implicit package id.
Validation and use: Minimum 1. Pattern: ^[1-9][0-9]*$. GET /v1/resellers/{reseller}/account-packages Use package id 1 for the protected default package when no package is specified. Send a positive numeric package id; never send -1 or the word default.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"package_id": 1,
"select_account_package": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/package' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"package_id":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"package_id": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/passwordroot resellerUpdate account password.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
passwordRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
STRONG_PASSWORD
New password (min 8 chars). Alias: new_password.
Validation and use:
new_passwordOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
STRONG_PASSWORD
New password. Alias of password. Prefer password.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"password": "STRONG_PASSWORD",
"new_password": "STRONG_PASSWORD"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/password' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"password":"STRONG_PASSWORD"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"password": "STRONG_PASSWORD"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/quotaroot resellerUpdate account disk quota.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
diskspacequotaRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
100
Disk quota in MB. Use -1 for unlimited. Alias: quota.
Validation and use:
quotaOptional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
100
Alias of diskspacequota. Prefer diskspacequota.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": 100,
"quota": 100
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/quota' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"diskspacequota":100}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": 100
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/resourcesroot resellerChange an account's CPU, memory and other resource allowances.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (10)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Disk quota MB. Use -1 for unlimited.
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
CPU limit. Use -1 for unlimited.
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Outbound email limit per hour. Use -1 for unlimited.
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit. Use -1 for unlimited.
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IO bandwidth. Use -1 for unlimited.
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit. Use -1 for unlimited.
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Memory limit. Use -1 for unlimited.
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Process limit. Use -1 for unlimited.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": 100,
"maxcpuusage": -1,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": -1,
"maxuserprocesses": -1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/resources' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"diskspacequota":100,"maxemailsperhour":-1,"maxinodeslimit":-1,"maxcpuusage":-1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": 100,
"maxemailsperhour": -1,
"maxinodeslimit": -1,
"maxcpuusage": -1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/shellroot resellerUpdate account shell mode.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
shellRequired- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell value. Allowed values: 0, 1, 2. Allowed values: 0 (disabled), 1 (bash), 2 (jail). Alias: shell_code.
Validation and use:
shell_codeOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell code or shell identifier. Alias of shell. Prefer shell. Allowed values: 0, 1, 2.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"shell": 0,
"shell_code": 0
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/shell' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"shell":0}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"shell": 0
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/accounts/{username}/ssl/autossl/logsroot resellerView your account’s AutoSSL log content.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
actionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
ACTION_FROM_LIST_RESPONSE
Requested action name.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
downloadOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DOWNLOAD_FROM_LIST_RESPONSE
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
LOG_FILENAME_FROM_LOG_FILES_RESPONSE
Optional log filename returned by the matching log-files endpoint, as an alternative to fileB64. Directory paths and traversal are not accepted.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileB64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Opaque base64 file identifier returned by the corresponding owned-account log-files endpoint. Optional; omit to select the latest allowed log. Never construct a server path.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
file_b64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Compatibility alias for fileB64. Use one file selector only.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
linesOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
200
Number of lines to return.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"action": "ACTION_FROM_LIST_RESPONSE",
"domain": "example.com",
"download": "DOWNLOAD_FROM_LIST_RESPONSE",
"file": "LOG_FILENAME_FROM_LOG_FILES_RESPONSE",
"fileB64": "YWNjZXNzLmxvZw==",
"file_b64": "YWNjZXNzLmxvZw==",
"lines": 200
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/ssl/autossl/logs' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"domain":"example.com","lines":200,"action":"ACTION_FROM_LIST_RESPONSE","download":"DOWNLOAD_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"lines": 200,
"action": "ACTION_FROM_LIST_RESPONSE",
"download": "DOWNLOAD_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/accounts/{username}/ssl/autossl/logs/filesroot resellerList your account’s AutoSSL log files.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/ssl/autossl/logs/files' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/accounts/{username}/ssl/autossl/overviewroot resellerView the current AutoSSL account summary plus a limited, searchable domain-health page.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/ssl/autossl/overview' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/accounts/{username}/ssl/autossl/runroot resellerRun AutoSSL for an account or one authorized selected website.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (7)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
forceOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
1 to force renewal even if the current certificate is still valid. Alias of force_renewal.
Validation and use:
force_renewalOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Alias of force. Prefer force.
Validation and use:
idConditional- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Resource ID. Required when type is addon, subdomain, or parked. Use the matching domain list id. For main use 0 or omit it.
Validation and use: GET /v1/root/resellers Choose the account or resource you want to use.
include_accountOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Validation and use:
typeOptional- Send in
- JSON body
- Type
enum- Accepted values
- main, addon, subdomain, parked
- Example
main
Optional target type. Allowed values: main, addon, subdomain, parked. Omit it to process all eligible domains in the account.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"force": 1,
"force_renewal": 1,
"id": 1,
"include_account": 1,
"type": "main"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/ssl/autossl/run' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"type":"main","id":1,"force":1,"force_renewal":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"type": "main",
"id": 1,
"force": 1,
"force_renewal": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/statusroot resellerSuspend or unsuspend account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (5)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
actionOptional- Send in
- JSON body
- Type
enum- Accepted values
- suspend, unsuspend
- Example
suspend
Requested action name. Allowed values: suspend, unsuspend. Alternative to status: suspend|unsuspend. Used only if status is omitted.
Validation and use:
new_statusOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2
- Example
1
Alias of status. Prefer status. Allowed values: 1, 2.
Validation and use:
statusOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2
- Example
1
Status value. Allowed values: 1, 2. Allowed: 1 (active), 2 (suspended). Alias: new_status.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"action": "suspend",
"new_status": 1,
"status": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/status' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"status":1,"new_status":1,"action":"suspend"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"status": 1,
"new_status": 1,
"action": "suspend"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/usernameroot resellerRename account system username.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
new_usernameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
NEW_USERNAME_FROM_LIST_RESPONSE
New system username. Alias: username.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_username": "NEW_USERNAME_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/username' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"new_username":"NEW_USERNAME_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_username": "NEW_USERNAME_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/accounts/{username}/web-settings/modsecurityroot resellerChoose the website's ModSecurity protection mode and rule exceptions.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact username of an account owned by this reseller.
Validation and use: Required Replace this placeholder directly in the URL path.
idRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Resource ID. Use 0 for main; use the Web Settings list id for addon or subdomain.
Validation and use: GET /v1/root/resellers
typeRequired- Send in
- JSON body
- Type
enum- Accepted values
- main, addon, subdomain
- Example
main
Target domain type. Parked domains inherit the main domain.
Validation and use:
modeOptional- Send in
- JSON body
- Type
enum- Accepted values
- on, off, detectiononly
- Example
on
Operation mode. Blocking, disabled, or detection-only mode. Accepted detection-only aliases: detect, detection, detection_only. Invalid values are rejected and never normalized to off.
Validation and use:
profileOptional- Send in
- JSON body
- Type
enum- Accepted values
- generic, wordpress, wordpress_ecommerce, drupal, nextcloud, dokuwiki, phpbb, phpmyadmin, xenforo, strict
- Example
generic
Application profile: generic, wordpress, wordpress_ecommerce, drupal, nextcloud, dokuwiki, phpbb, phpmyadmin, xenforo, or strict. When supplied without rule_remove_ids/tags, its defaults are materialized; when omitted, the current target profile is preserved.
Validation and use:
rule_remove_idsOptional- Send in
- JSON body
- Type
array<string>|string- Accepted values
- Any value matching array<string>|string
- Example
RULE_REMOVE_IDS_FROM_LIST_RESPONSE
Complete replacement list of known active CRS rule IDs disabled for this target.
Validation and use:
rule_remove_msgsOptional- Send in
- JSON body
- Type
array<string>|string- Accepted values
- Any value matching array<string>|string
- Example
RULE_REMOVE_MSGS_FROM_LIST_RESPONSE
Complete replacement list of up to 64 message patterns, maximum 512 bytes each. Control characters and line breaks are rejected.
Validation and use:
rule_remove_tagsOptional- Send in
- JSON body
- Type
array<string>|string- Accepted values
- Any value matching array<string>|string
- Example
RULE_REMOVE_TAGS_FROM_LIST_RESPONSE
Complete replacement list of known active CRS tags disabled for this target.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"id": 1,
"type": "main",
"mode": "on",
"profile": "generic",
"rule_remove_ids": "RULE_REMOVE_IDS_FROM_LIST_RESPONSE",
"rule_remove_msgs": "RULE_REMOVE_MSGS_FROM_LIST_RESPONSE",
"rule_remove_tags": "RULE_REMOVE_TAGS_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/accounts/demo/web-settings/modsecurity' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"type":"main","id":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"username": "demo"
},
"query_parameters": {},
"json_body": {
"type": "main",
"id": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/addon-to-account/contextroot resellerList addon domains, packages, owners, and reseller limits for Addon to Account conversion.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/addon-to-account/context' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/addon-to-account/jobsroot resellerStart a resumable Addon to Account conversion job.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (16)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
source_accountRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SOURCE_ACCOUNT_FROM_LIST_RESPONSE
Source account username that currently owns the addon domain. Resellers can only use accounts they own.
Validation and use:
target_package_idRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
1
Account package id for the new standalone account.
Validation and use: GET /v1/root/resellers
target_usernameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
TARGET_USERNAME_FROM_LIST_RESPONSE
New standalone account username. Same rules as Create Account.
Validation and use:
account_emailOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
admin@example.com
Account contact email address.
Validation and use:
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
account_usernameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
addon_idOptional- Send in
- JSON body
- Type
int|string|integer- Accepted values
- Any value matching int|string|integer
- Example
1
Addon id from the source account. Use addon_id or domain.
Validation and use: GET /v1/root/resellers
domainOptional- Send in
- JSON body
- Type
string|fqdn- Accepted values
- Any value matching string|fqdn
- Example
example.com
Domain name. Addon FQDN. Use domain or addon_id.
Validation and use:
mysql_database_idsOptional- Send in
- JSON body
- Type
array|csv- Accepted values
- Any value matching array|csv
- Example
MYSQL_DATABASE_IDS_FROM_LIST_RESPONSE
Selected MySQL database ids to move. Empty means no MySQL databases are moved.
Validation and use:
mysql_user_idsOptional- Send in
- JSON body
- Type
array|csv- Accepted values
- Any value matching array|csv
- Example
MYSQL_USER_IDS_FROM_LIST_RESPONSE
Selected MySQL user ids to move. Empty means no MySQL users are moved.
Validation and use:
postgres_database_idsOptional- Send in
- JSON body
- Type
array|csv- Accepted values
- Any value matching array|csv
- Example
POSTGRES_DATABASE_IDS_FROM_LIST_RESPONSE
Selected PostgreSQL database ids to move. Empty means no PostgreSQL databases are moved.
Validation and use:
postgres_user_idsOptional- Send in
- JSON body
- Type
array|csv- Accepted values
- Any value matching array|csv
- Example
POSTGRES_USER_IDS_FROM_LIST_RESPONSE
Selected PostgreSQL user ids to move. Empty means no PostgreSQL users are moved.
Validation and use:
select_account_packageOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
1
Account package id returned by GET /v1/resellers/{reseller}/account-packages. Select a package owned by this reseller; there is no implicit package id.
Validation and use: Minimum 1. Pattern: ^[1-9][0-9]*$. GET /v1/resellers/{reseller}/account-packages Use package id 1 for the protected default package when no package is specified. Send a positive numeric package id; never send -1 or the word default.
source_addon_idOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
1
Validation and use: GET /v1/root/resellers
target_emailOptional- Send in
- JSON body
- Type
string|email- Accepted values
- Any value matching string|email
- Example
admin@example.com
Contact email for the new account.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"source_account": "SOURCE_ACCOUNT_FROM_LIST_RESPONSE",
"target_package_id": 1,
"target_username": "TARGET_USERNAME_FROM_LIST_RESPONSE",
"account_email": "admin@example.com",
"account_user": "demo",
"account_username": "demo",
"addon_id": 1,
"domain": "example.com",
"mysql_database_ids": "MYSQL_DATABASE_IDS_FROM_LIST_RESPONSE",
"mysql_user_ids": "MYSQL_USER_IDS_FROM_LIST_RESPONSE",
"postgres_database_ids": "POSTGRES_DATABASE_IDS_FROM_LIST_RESPONSE",
"postgres_user_ids": "POSTGRES_USER_IDS_FROM_LIST_RESPONSE",
"select_account_package": 1,
"source_addon_id": 1,
"target_email": "admin@example.com"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/addon-to-account/jobs' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"source_account":"SOURCE_ACCOUNT_FROM_LIST_RESPONSE","target_username":"TARGET_USERNAME_FROM_LIST_RESPONSE","target_package_id":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"source_account": "SOURCE_ACCOUNT_FROM_LIST_RESPONSE",
"target_username": "TARGET_USERNAME_FROM_LIST_RESPONSE",
"target_package_id": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
job_id | string |
job | object |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/addon-to-account/jobs/{job_id}root resellerView Addon to Account conversion job progress and recent log lines.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
job_idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
job-id-from-previous-response
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. Use the task/job id returned by the endpoint that started the async operation.
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"job_id": "job-id-from-previous-response",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/addon-to-account/jobs/job-id-from-previous-response' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"job_id": "job-id-from-previous-response"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/addon-to-account/jobs/{job_id}/resumeroot resellerResume a failed or interrupted Addon to Account conversion job.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
job_idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
job-id-from-previous-response
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. Use the task/job id returned by the endpoint that started the async operation.
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"job_id": "job-id-from-previous-response",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/addon-to-account/jobs/job-id-from-previous-response/resume' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"job_id": "job-id-from-previous-response"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/addon-to-account/previewroot resellerPreview resources tied to an addon domain before converting it into a standalone account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (6)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
source_accountRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SOURCE_ACCOUNT_FROM_LIST_RESPONSE
Source account username that currently owns the addon domain.
Validation and use:
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use:
addon_idOptional- Send in
- JSON body
- Type
int|string|integer- Accepted values
- Any value matching int|string|integer
- Example
1
Addon id from the source account. Use addon_id or domain.
Validation and use: GET /v1/root/resellers
domainOptional- Send in
- JSON body
- Type
string|fqdn- Accepted values
- Any value matching string|fqdn
- Example
example.com
Domain name. Addon FQDN. Use domain or addon_id.
Validation and use:
source_addon_idOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
1
Validation and use: GET /v1/root/resellers
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"source_account": "SOURCE_ACCOUNT_FROM_LIST_RESPONSE",
"account_user": "demo",
"addon_id": 1,
"domain": "example.com",
"source_addon_id": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/addon-to-account/preview' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"source_account":"SOURCE_ACCOUNT_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"source_account": "SOURCE_ACCOUNT_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
| Field | Documented type or shape |
|---|---|
source_account | string |
domain | string |
document_root | string |
shares_main_document_root | boolean |
move_items | array of resource/status/count/details rows |
mailboxes | array |
ftp_accounts | array |
mysql_databases | array |
mysql_users | array |
postgres_databases | array |
postgres_users | array |
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/audit/contextroot resellerView the filters and accounts available in the audit log.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/audit/context' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/audit/getroot resellerView one audit record.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
fileOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
error.log
File path.
Validation and use: Use the relevant list/read endpoint for this resource and copy the returned file name.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"file": "error.log"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/audit/get' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"file":"error.log"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"file": "error.log"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/audit/listroot resellerList audit rows.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (10)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
drawOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
1
DataTables draw counter.
Validation and use:
filter_actionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_ACTION_FROM_LIST_RESPONSE
Validation and use:
filter_actorOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_ACTOR_FROM_LIST_RESPONSE
Validation and use:
filter_fromOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_FROM_FROM_LIST_RESPONSE
Validation and use:
filter_ownerOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_OWNER_FROM_LIST_RESPONSE
Validation and use:
filter_toOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_TO_FROM_LIST_RESPONSE
Validation and use:
filter_typeOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
FILTER_TYPE_FROM_LIST_RESPONSE
Validation and use:
lengthOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
25
Page size.
Validation and use:
startOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
0
Row offset.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"draw": 1,
"filter_action": "FILTER_ACTION_FROM_LIST_RESPONSE",
"filter_actor": "FILTER_ACTOR_FROM_LIST_RESPONSE",
"filter_from": "FILTER_FROM_FROM_LIST_RESPONSE",
"filter_owner": "FILTER_OWNER_FROM_LIST_RESPONSE",
"filter_to": "FILTER_TO_FROM_LIST_RESPONSE",
"filter_type": "FILTER_TYPE_FROM_LIST_RESPONSE",
"length": 25,
"start": 0
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/audit/list' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"filter_from":"FILTER_FROM_FROM_LIST_RESPONSE","filter_to":"FILTER_TO_FROM_LIST_RESPONSE","filter_action":"FILTER_ACTION_FROM_LIST_RESPONSE","filter_actor":"FILTER_ACTOR_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"filter_from": "FILTER_FROM_FROM_LIST_RESPONSE",
"filter_to": "FILTER_TO_FROM_LIST_RESPONSE",
"filter_action": "FILTER_ACTION_FROM_LIST_RESPONSE",
"filter_actor": "FILTER_ACTOR_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/autossl/logsroot resellerView AutoSSL log content.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (10)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Account username.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
actionOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
ACTION_FROM_LIST_RESPONSE
Requested action name.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
downloadOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DOWNLOAD_FROM_LIST_RESPONSE
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
LOG_FILENAME_FROM_LOG_FILES_RESPONSE
Optional log filename returned by the matching log-files endpoint, as an alternative to fileB64. Directory paths and traversal are not accepted.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileB64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Opaque base64 file identifier returned by the corresponding owned-account log-files endpoint. Optional; omit to select the latest allowed log. Never construct a server path.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
file_b64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Compatibility alias for fileB64. Use one file selector only.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
linesOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
200
Number of lines to return.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"account_user": "demo",
"action": "ACTION_FROM_LIST_RESPONSE",
"domain": "example.com",
"download": "DOWNLOAD_FROM_LIST_RESPONSE",
"file": "LOG_FILENAME_FROM_LOG_FILES_RESPONSE",
"fileB64": "YWNjZXNzLmxvZw==",
"file_b64": "YWNjZXNzLmxvZw==",
"lines": 200,
"user": "demo"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/autossl/logs' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"domain":"example.com","lines":200,"action":"ACTION_FROM_LIST_RESPONSE","download":"DOWNLOAD_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"lines": 200,
"action": "ACTION_FROM_LIST_RESPONSE",
"download": "DOWNLOAD_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/autossl/overviewroot resellerView AutoSSL overview.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/autossl/overview' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/contextroot resellerView reseller account-management form choices and limits.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/context' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dashboardroot resellerView the reseller dashboard.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dashboard' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/recordsroot resellerCreate DNS record.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (24)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name. Zone domain (FQDN), e.g. "example.com".
Validation and use:
recordRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
RECORD_FROM_LIST_RESPONSE
DNS record payload. Record name/host label (e.g. "www", "@", "api").
Validation and use:
ttlRequired- Send in
- JSON body
- Type
string|integer- Accepted values
- Any value matching string|integer
- Example
3600
TTL in seconds from 0 through 604800.
Validation and use:
typeRequired- Send in
- JSON body
- Type
enum- Accepted values
- soa, txt, a, aaaa, afsdb, caa, cname, dname, ds, hinfo, mx, ns, ptr, srv
- Example
a
Type value. Allowed values: soa, txt. Record type (lowercase). SOA is edited through PATCH and cannot be created separately.
Validation and use:
afsdbhostConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
AFSDBHOST_FROM_LIST_RESPONSE
For afsdb: hostname.
Validation and use: Choose the account or resource you want to use.
afsdbtypeConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For afsdb: subtype.
Validation and use: Choose the account or resource you want to use.
caaflagConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For caa: flag.
Validation and use: Choose the account or resource you want to use.
caatagConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CAATAG_FROM_LIST_RESPONSE
For caa: tag.
Validation and use: Choose the account or resource you want to use.
caavalueConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CAAVALUE_FROM_LIST_RESPONSE
For caa: value.
Validation and use: Choose the account or resource you want to use.
dsalgorithmConditional- Send in
- JSON body
- Type
enum- Accepted values
- 3, 5, 6, 7, 8, 10, 13, 14
- Example
3
Required for ds: DNSSEC algorithm number accepted by SHM.
Validation and use: Choose the account or resource you want to use.
dsdigestConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DSDIGEST_FROM_LIST_RESPONSE
Required for ds: hexadecimal digest with exactly 40 characters for type 1, 64 for type 2, or 96 for type 4.
Validation and use: Choose the account or resource you want to use.
dsdigesttypeConditional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2, 4
- Example
1
Required for ds: digest type 1 (SHA-1), 2 (SHA-256), or 4 (SHA-384).
Validation and use: Choose the account or resource you want to use.
dskeytagConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Required for ds: key tag from 0 through 65535.
Validation and use: Choose the account or resource you want to use.
hinfocpuConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOCPU_FROM_LIST_RESPONSE
For hinfo: CPU string.
Validation and use: Choose the account or resource you want to use.
hinfoosConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOOS_FROM_LIST_RESPONSE
For hinfo: OS string.
Validation and use: Choose the account or resource you want to use.
mxdestinationConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
MXDESTINATION_FROM_LIST_RESPONSE
For mx: destination hostname.
Validation and use: Choose the account or resource you want to use.
mxpriorityConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For mx: priority.
Validation and use: Choose the account or resource you want to use.
proxiedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
For a/aaaa/cname: optional provider proxy metadata stored with the record; it does not alter native PowerDNS answers.
Validation and use:
srvportConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: port.
Validation and use: Choose the account or resource you want to use.
srvpriorityConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: priority.
Validation and use: Choose the account or resource you want to use.
srvtargetConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SRVTARGET_FROM_LIST_RESPONSE
For srv: target hostname.
Validation and use: Choose the account or resource you want to use.
srvweightConditional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: weight.
Validation and use: Choose the account or resource you want to use.
valueConditional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
VALUE_FROM_LIST_RESPONSE
For a/aaaa/cname/dname/ns/ptr/txt: record value (IP/hostname/text). For txt, quotes are stripped automatically.
Validation and use: Choose the account or resource you want to use.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"record": "RECORD_FROM_LIST_RESPONSE",
"ttl": 3600,
"type": "a",
"afsdbhost": "AFSDBHOST_FROM_LIST_RESPONSE",
"afsdbtype": 1,
"caaflag": 1,
"caatag": "CAATAG_FROM_LIST_RESPONSE",
"caavalue": "CAAVALUE_FROM_LIST_RESPONSE",
"dsalgorithm": 3,
"dsdigest": "DSDIGEST_FROM_LIST_RESPONSE",
"dsdigesttype": 1,
"dskeytag": 1,
"hinfocpu": "HINFOCPU_FROM_LIST_RESPONSE",
"hinfoos": "HINFOOS_FROM_LIST_RESPONSE",
"mxdestination": "MXDESTINATION_FROM_LIST_RESPONSE",
"mxpriority": 1,
"proxied": 1,
"srvport": 1,
"srvpriority": 1,
"srvtarget": "SRVTARGET_FROM_LIST_RESPONSE",
"srvweight": 1,
"value": "VALUE_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/records' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"domain":"example.com","type":"a","record":"RECORD_FROM_LIST_RESPONSE","ttl":3600}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"type": "a",
"record": "RECORD_FROM_LIST_RESPONSE",
"ttl": 3600
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/dns/records/{id}root resellerDelete DNS record.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (26)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name. Zone domain (FQDN), e.g. "example.com".
Validation and use:
typeRequired- Send in
- JSON body
- Type
enum- Accepted values
- a, aaaa, afsdb, caa, cname, dname, ds, hinfo, mx, ns, ptr, srv, txt
- Example
a
Existing record type (lowercase). SOA is required and cannot be deleted.
Validation and use:
afsdbhostOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
AFSDBHOST_FROM_LIST_RESPONSE
Optional afsdb hostname guard.
Validation and use:
afsdbtypeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional afsdb subtype guard.
Validation and use:
caaflagOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional caa flag guard.
Validation and use:
caatagOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CAATAG_FROM_LIST_RESPONSE
Optional caa tag guard.
Validation and use:
caavalueOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CAAVALUE_FROM_LIST_RESPONSE
Optional caa value guard.
Validation and use:
dsalgorithmOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional ds algorithm guard.
Validation and use:
dsdigestOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DSDIGEST_FROM_LIST_RESPONSE
Optional ds digest guard.
Validation and use:
dsdigesttypeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional ds digest-type guard.
Validation and use:
dskeytagOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional ds key-tag guard.
Validation and use:
fieldsOptional- Send in
- JSON body
- Type
object- Accepted values
- Any value matching object
- Example
FIELDS_FROM_LIST_RESPONSE
Optional record-value guards when legacy duplicate ids exist; accepts the same guard keys as the top-level fields below.
Validation and use:
hinfocpuOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOCPU_FROM_LIST_RESPONSE
Optional hinfo CPU guard.
Validation and use:
hinfoosOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOOS_FROM_LIST_RESPONSE
Optional hinfo operating-system guard.
Validation and use:
mxdestinationOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
MXDESTINATION_FROM_LIST_RESPONSE
Optional mx destination guard.
Validation and use:
mxpriorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional mx priority guard.
Validation and use:
proxiedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Optional provider proxy-metadata guard for a/aaaa/cname.
Validation and use:
recordOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
RECORD_FROM_LIST_RESPONSE
Optional owner-name guard used to identify the exact row when duplicate ids exist.
Validation and use:
srvportOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional srv port guard.
Validation and use:
srvpriorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional srv priority guard.
Validation and use:
srvtargetOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SRVTARGET_FROM_LIST_RESPONSE
Optional srv target guard.
Validation and use:
srvweightOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Optional srv weight guard.
Validation and use:
ttlOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
3600
Optional TTL guard used to identify the exact row when duplicate ids exist.
Validation and use:
valueOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
VALUE_FROM_LIST_RESPONSE
Optional value guard for a/aaaa/cname/dname/ns/ptr/txt.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"type": "a",
"afsdbhost": "AFSDBHOST_FROM_LIST_RESPONSE",
"afsdbtype": 1,
"caaflag": 1,
"caatag": "CAATAG_FROM_LIST_RESPONSE",
"caavalue": "CAAVALUE_FROM_LIST_RESPONSE",
"dsalgorithm": 1,
"dsdigest": "DSDIGEST_FROM_LIST_RESPONSE",
"dsdigesttype": 1,
"dskeytag": 1,
"fields": "FIELDS_FROM_LIST_RESPONSE",
"hinfocpu": "HINFOCPU_FROM_LIST_RESPONSE",
"hinfoos": "HINFOOS_FROM_LIST_RESPONSE",
"mxdestination": "MXDESTINATION_FROM_LIST_RESPONSE",
"mxpriority": 1,
"proxied": 1,
"record": "RECORD_FROM_LIST_RESPONSE",
"srvport": 1,
"srvpriority": 1,
"srvtarget": "SRVTARGET_FROM_LIST_RESPONSE",
"srvweight": 1,
"ttl": 3600,
"value": "VALUE_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/dns/records/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"domain":"example.com","type":"a"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"type": "a"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/dns/records/{id}root resellerEdit DNS record.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (32)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
domainRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Domain name. Zone domain (FQDN), e.g. "example.com".
Validation and use:
typeRequired- Send in
- JSON body
- Type
enum- Accepted values
- soa, txt, a, aaaa, afsdb, caa, cname, dname, ds, hinfo, mx, ns, ptr, srv
- Example
a
Type value. Allowed values: soa, txt. Existing record type (lowercase) used to locate the record id.
Validation and use:
afsdbhostOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
AFSDBHOST_FROM_LIST_RESPONSE
For afsdb: replacement hostname.
Validation and use:
afsdbtypeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For afsdb: replacement subtype.
Validation and use:
caaflagOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For caa: replacement flag from 0 through 255.
Validation and use:
caatagOptional- Send in
- JSON body
- Type
enum- Accepted values
- issue, issuewild, iodef
- Example
issue
For caa: replacement tag.
Validation and use:
caavalueOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CAAVALUE_FROM_LIST_RESPONSE
For caa: replacement value.
Validation and use:
dsalgorithmOptional- Send in
- JSON body
- Type
enum- Accepted values
- 3, 5, 6, 7, 8, 10, 13, 14
- Example
3
For ds: replacement DNSSEC algorithm number accepted by SHM.
Validation and use:
dsdigestOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DSDIGEST_FROM_LIST_RESPONSE
For ds: replacement hexadecimal digest; length must match its digest type (40, 64, or 96).
Validation and use:
dsdigesttypeOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2, 4
- Example
1
For ds: replacement digest type.
Validation and use:
dskeytagOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For ds: replacement key tag from 0 through 65535.
Validation and use:
eaddressOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
EADDRESS_FROM_LIST_RESPONSE
For soa: replacement responsible-party address in DNS hostname format.
Validation and use:
expireOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For soa: replacement expire interval, maximum 2419200.
Validation and use:
fieldsOptional- Send in
- JSON body
- Type
object|string- Accepted values
- Any value matching object|string
- Example
FIELDS_FROM_LIST_RESPONSE
Optional object of field→value updates (alternative to top-level fields).
Validation and use:
hinfocpuOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOCPU_FROM_LIST_RESPONSE
For hinfo: replacement CPU string.
Validation and use:
hinfoosOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
HINFOOS_FROM_LIST_RESPONSE
For hinfo: replacement operating-system string.
Validation and use:
mxdestinationOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
MXDESTINATION_FROM_LIST_RESPONSE
For mx: replacement destination hostname.
Validation and use:
mxpriorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For mx: replacement priority.
Validation and use:
pnameserverOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PNAMESERVER_FROM_LIST_RESPONSE
For soa: replacement primary nameserver.
Validation and use:
proxiedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
For a/aaaa/cname: replacement provider proxy metadata.
Validation and use:
recordOptional- Send in
- JSON body
- Type
object|string- Accepted values
- Any value matching object|string
- Example
RECORD_FROM_LIST_RESPONSE
DNS record payload. Record name/host label (if changing).
Validation and use:
refreshOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For soa: replacement refresh interval, maximum 604800.
Validation and use:
retryOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For soa: replacement retry interval, maximum 2419200.
Validation and use:
serialOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For soa: replacement serial; SHM still advances it when zone content changes.
Validation and use:
srvportOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: replacement port.
Validation and use:
srvpriorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: replacement priority.
Validation and use:
srvtargetOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
SRVTARGET_FROM_LIST_RESPONSE
For srv: replacement target hostname.
Validation and use:
srvweightOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For srv: replacement weight.
Validation and use:
ttlOptional- Send in
- JSON body
- Type
object|string|integer- Accepted values
- Any value matching object|string|integer
- Example
3600
TTL in seconds from 0 through 604800 (if changing).
Validation and use:
valueOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
VALUE_FROM_LIST_RESPONSE
For a/aaaa/cname/dname/ns/ptr/txt: replacement value. For txt, quotes are stripped automatically.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"type": "a",
"afsdbhost": "AFSDBHOST_FROM_LIST_RESPONSE",
"afsdbtype": 1,
"caaflag": 1,
"caatag": "issue",
"caavalue": "CAAVALUE_FROM_LIST_RESPONSE",
"dsalgorithm": 3,
"dsdigest": "DSDIGEST_FROM_LIST_RESPONSE",
"dsdigesttype": 1,
"dskeytag": 1,
"eaddress": "EADDRESS_FROM_LIST_RESPONSE",
"expire": 1,
"fields": "FIELDS_FROM_LIST_RESPONSE",
"hinfocpu": "HINFOCPU_FROM_LIST_RESPONSE",
"hinfoos": "HINFOOS_FROM_LIST_RESPONSE",
"mxdestination": "MXDESTINATION_FROM_LIST_RESPONSE",
"mxpriority": 1,
"pnameserver": "PNAMESERVER_FROM_LIST_RESPONSE",
"proxied": 1,
"record": "RECORD_FROM_LIST_RESPONSE",
"refresh": 1,
"retry": 1,
"serial": 1,
"srvport": 1,
"srvpriority": 1,
"srvtarget": "SRVTARGET_FROM_LIST_RESPONSE",
"srvweight": 1,
"ttl": 3600,
"value": "VALUE_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/dns/records/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"domain":"example.com","type":"a"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {
"domain": "example.com",
"type": "a"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zonesroot resellerList DNS manager zones.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zones/{domain}root resellerView DNS zone data.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/cache/purgeroot resellerPurge DNS zone Cloudflare cache through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (7)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
filesOptional- Send in
- JSON body
- Type
array- Accepted values
- Any value matching array
- Example
FILES_FROM_LIST_RESPONSE
Optional Cloudflare files purge payload.
Validation and use:
hostsOptional- Send in
- JSON body
- Type
array- Accepted values
- Any value matching array
- Example
HOSTS_FROM_LIST_RESPONSE
Optional Cloudflare hosts purge payload.
Validation and use:
prefixesOptional- Send in
- JSON body
- Type
array- Accepted values
- Any value matching array
- Example
PREFIXES_FROM_LIST_RESPONSE
Optional Cloudflare prefixes purge payload.
Validation and use:
purge_everythingOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Purge all cached files for the zone.
Validation and use:
tagsOptional- Send in
- JSON body
- Type
array- Accepted values
- Any value matching array
- Example
TAGS_FROM_LIST_RESPONSE
Optional Cloudflare tags purge payload.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"files": "FILES_FROM_LIST_RESPONSE",
"hosts": "HOSTS_FROM_LIST_RESPONSE",
"prefixes": "PREFIXES_FROM_LIST_RESPONSE",
"purge_everything": 1,
"tags": "TAGS_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/cache/purge' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"purge_everything":1,"files":"FILES_FROM_LIST_RESPONSE","tags":"TAGS_FROM_LIST_RESPONSE","hosts":"HOSTS_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {
"purge_everything": 1,
"files": "FILES_FROM_LIST_RESPONSE",
"tags": "TAGS_FROM_LIST_RESPONSE",
"hosts": "HOSTS_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/recordsroot resellerList DNS zone Cloudflare records through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/records' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/recordsroot resellerCreate DNS zone Cloudflare record through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
contentRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CONTENT_FROM_LIST_RESPONSE
Record value/content.
Validation and use:
nameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
NAME_FROM_LIST_RESPONSE
Record owner name, such as @, www, or api.
Validation and use:
typeRequired- Send in
- JSON body
- Type
enum- Accepted values
- A, AAAA, CNAME, TXT, MX
- Example
A
Allowed values: A, AAAA, CNAME, TXT, MX.
Validation and use:
commentOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
COMMENT_FROM_LIST_RESPONSE
Optional record comment.
Validation and use:
priorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For MX records: priority.
Validation and use:
proxiedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
For A, AAAA, or CNAME: enable or disable Cloudflare proxying.
Validation and use:
ttlOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
3600
TTL in seconds or 1 for automatic Cloudflare TTL.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"content": "CONTENT_FROM_LIST_RESPONSE",
"name": "NAME_FROM_LIST_RESPONSE",
"type": "A",
"comment": "COMMENT_FROM_LIST_RESPONSE",
"priority": 1,
"proxied": 1,
"ttl": 3600
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/records' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"type":"A","name":"NAME_FROM_LIST_RESPONSE","content":"CONTENT_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {
"type": "A",
"name": "NAME_FROM_LIST_RESPONSE",
"content": "CONTENT_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/records/{record_id}root resellerDelete DNS zone Cloudflare record through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
record_idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"record_id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/records/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com",
"record_id": 1
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/records/{record_id}root resellerUpdate DNS zone Cloudflare record through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (10)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
record_idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
commentOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
COMMENT_FROM_LIST_RESPONSE
Optional record comment.
Validation and use:
contentOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
CONTENT_FROM_LIST_RESPONSE
Record value/content.
Validation and use:
nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
NAME_FROM_LIST_RESPONSE
Record owner name, such as @, www, or api.
Validation and use:
priorityOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
For MX records: priority.
Validation and use:
proxiedOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
For A, AAAA, or CNAME: enable or disable Cloudflare proxying.
Validation and use:
ttlOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
3600
TTL in seconds or 1 for automatic Cloudflare TTL.
Validation and use:
typeOptional- Send in
- JSON body
- Type
enum- Accepted values
- A, AAAA, CNAME, TXT, MX
- Example
A
Allowed values: A, AAAA, CNAME, TXT, MX.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"record_id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"comment": "COMMENT_FROM_LIST_RESPONSE",
"content": "CONTENT_FROM_LIST_RESPONSE",
"name": "NAME_FROM_LIST_RESPONSE",
"priority": 1,
"proxied": 1,
"ttl": 3600,
"type": "A"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/records/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"type":"A","name":"NAME_FROM_LIST_RESPONSE","content":"CONTENT_FROM_LIST_RESPONSE","ttl":3600}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com",
"record_id": 1
},
"query_parameters": {},
"json_body": {
"type": "A",
"name": "NAME_FROM_LIST_RESPONSE",
"content": "CONTENT_FROM_LIST_RESPONSE",
"ttl": 3600
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/settingsroot resellerView DNS zone Cloudflare settings through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/settings' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/settings/{setting}root resellerUpdate DNS zone Cloudflare setting through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
settingRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path.
valueRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
VALUE_FROM_LIST_RESPONSE
Cloudflare setting value. For on/off settings use on or off; security_level accepts essentially_off, low, medium, high, under_attack; cache_level accepts basic, simplified, aggressive.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo",
"setting": "demo"
},
"query_parameters": {},
"json_body": {
"value": "VALUE_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/settings/demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"value":"VALUE_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com",
"setting": "demo"
},
"query_parameters": {},
"json_body": {
"value": "VALUE_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zones/{domain}/cloudflare/statusroot resellerView DNS zone Cloudflare status through your DNS service.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/cloudflare/status' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/dns/zones/{domain}/dnssecroot resellerCheck DNSSEC status and get the records your domain registrar needs.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/dnssec' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/dnssec/disableroot resellerTurn off DNSSEC signing for a domain.
Before you start
Follow the required registrar steps as well, so a stale DS record does not make the domain unreachable.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
confirmRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Validation and use:
forceOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
false
Root-only recovery override for parent-DS safety. Non-root callers are rejected when true.
Validation and use: Default: false.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"confirm": "example.com",
"force": false
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/dnssec/disable' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"confirm":"example.com"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {
"confirm": "example.com"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/dnssec/enableroot resellerTurn on DNSSEC signing for a domain.
Before you start
Follow the registrar steps for publishing the DS record before treating setup as complete.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/dnssec/enable' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/dnssec/rolloverroot resellerContinue a planned change of a domain's DNSSEC signing key.
Before you start
Follow the next step reported by SHM and make any required registrar change before continuing.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
phaseRequired- Send in
- JSON body
- Type
enum- Accepted values
- begin, activate, complete
- Example
begin
Phase request field. Allowed values: begin, activate, complete. Requested safe rollover transition. Transitions must be performed in order.
Validation and use:
forceOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
false
Administrator-only recovery override for the registrar DS check and required waiting period. It does not bypass ownership or authentication.
Validation and use: Default: false.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"phase": "begin",
"force": false
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/dnssec/rollover' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"phase":"begin"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {
"phase": "begin"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/dns/zones/{domain}/mail-records/dkimroot resellerDelete a DNS zone DKIM TXT record.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/mail-records/dkim' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/mail-records/syncroot resellerUpdate a domain's email verification records to match its mail settings.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/mail-records/sync' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/dns/zones/{domain}/regenerateroot resellerRebuild a domain's DNS records from its saved SHM settings.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
domainRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"domain": "example.com",
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/dns/zones/example.com/regenerate' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"domain": "example.com"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/feature-profilesroot resellerList feature profiles available to you.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/feature-profiles' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/feature-profilesroot resellerCreate feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (7)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
nameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
NAME_FROM_LIST_RESPONSE
Profile name (1–64 chars; letters/numbers/spaces). Alias: profile_name.
Validation and use:
allow_allOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. 1 to allow all features (default). Alias: allowall.
Validation and use:
allowallOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. Alias of allow_all. Prefer allow_all.
Validation and use:
feature_keysOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURE_KEYS_FROM_LIST_RESPONSE
Feature key list. Alias of features. Prefer features.
Validation and use:
featuresOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURES_FROM_LIST_RESPONSE
Feature key list. When allow_all=0: array of feature keys, or comma-separated string. Alias: feature_keys.
Validation and use:
profile_nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PROFILE_NAME_FROM_LIST_RESPONSE
Profile name. Alias of name. Prefer name.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"name": "NAME_FROM_LIST_RESPONSE",
"allow_all": 1,
"allowall": 1,
"feature_keys": "FEATURE_KEYS_FROM_LIST_RESPONSE",
"features": "FEATURES_FROM_LIST_RESPONSE",
"profile_name": "PROFILE_NAME_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/feature-profiles' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"name":"NAME_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"name": "NAME_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
DELETE/v1/resellers/{reseller}/feature-profiles/{id}root resellerDelete feature profile (if unused).
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
featureprofile_idOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Compatibility alias for id. Prefer the path id.
Validation and use: GET /v1/root/resellers
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"featureprofile_id": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X DELETE 'https://panel.example.com:882/v1/resellers/demo/feature-profiles/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"featureprofile_id":1}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {
"featureprofile_id": 1
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/feature-profiles/{id}root resellerView feature profile by id.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
featureprofile_idOptional- Send in
- Query string
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Compatibility alias for id. Prefer the path id.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. GET /v1/root/resellers
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {
"featureprofile_id": 1
},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/feature-profiles/1?featureprofile_id=1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {
"featureprofile_id": 1
},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
PATCH/v1/resellers/{reseller}/feature-profiles/{id}root resellerEdit feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
idRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
1
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path. GET /v1/root/resellers
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
allow_allOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. 1 to allow all features. Alias: allowall.
Validation and use:
allowallOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 0, true, false, yes, no, on, off
- Example
1
Allow all available feature keys. Alias of allow_all. Prefer allow_all.
Validation and use:
feature_keysOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURE_KEYS_FROM_LIST_RESPONSE
Feature key list. Alias of features. Prefer features.
Validation and use:
featureprofile_idOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
1
Compatibility alias for id. Prefer the path id.
Validation and use: GET /v1/root/resellers
featuresOptional- Send in
- JSON body
- Type
array|string- Accepted values
- Any value matching array|string
- Example
FEATURES_FROM_LIST_RESPONSE
Feature key list. When allow_all=0: array of feature keys, or comma-separated string. Alias: feature_keys.
Validation and use:
nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
NAME_FROM_LIST_RESPONSE
Profile name (1–64 chars; letters/numbers/spaces). Alias: profile_name.
Validation and use:
profile_nameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
PROFILE_NAME_FROM_LIST_RESPONSE
Alias of name. Prefer name.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"id": 1,
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"allow_all": 1,
"allowall": 1,
"feature_keys": "FEATURE_KEYS_FROM_LIST_RESPONSE",
"featureprofile_id": 1,
"features": "FEATURES_FROM_LIST_RESPONSE",
"name": "NAME_FROM_LIST_RESPONSE",
"profile_name": "PROFILE_NAME_FROM_LIST_RESPONSE"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/resellers/demo/feature-profiles/1' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"name":"NAME_FROM_LIST_RESPONSE","allow_all":1,"allowall":1,"features":"FEATURES_FROM_LIST_RESPONSE"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"id": 1
},
"query_parameters": {},
"json_body": {
"name": "NAME_FROM_LIST_RESPONSE",
"allow_all": 1,
"allowall": 1,
"features": "FEATURES_FROM_LIST_RESPONSE"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/feature-profiles/catalogroot resellerSee which account tools you can include in a feature profile.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/feature-profiles/catalog' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/logsroot resellerView log content.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (21)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
logTypeRequired- Send in
- Query string
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Account log category. Server-global logs are not accessible to a reseller.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
userRequired- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact owned account username returned by GET /v1/resellers/{reseller}/accounts.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_userOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_usernameOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
actionOptional- Send in
- Query string
- Type
enum- Accepted values
- FetchLog, TailLog, DownloadLog
- Example
FetchLog
Empty reads log text; FetchLog analyzes access logs; TailLog reads the live access.log from offset; DownloadLog downloads only this account filtered log.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Owned domain returned by Logs context; required for access, error, ModSecurity, HTTP guard and FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
downloadOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
DOWNLOAD_FROM_LIST_RESPONSE
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
LOG_FILENAME_FROM_LOG_FILES_RESPONSE
Optional log filename returned by the matching log-files endpoint, as an alternative to fileB64. Directory paths and traversal are not accepted.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileB64Optional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Opaque base64 file identifier returned by the corresponding owned-account log-files endpoint. Optional; omit to select the latest allowed log. Never construct a server path.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
file_b64Optional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Compatibility alias for fileB64. Use one file selector only.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftpAccountOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Optional FTP account from the selected hosting account log context; used only for FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftp_accountOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Compatibility alias for ftpAccount.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ipOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
192.0.2.10
Optional client IPv4/IPv6 filter for FetchLog access-log analysis.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
linesOptional- Send in
- Query string
- Type
int|string- Accepted values
- Any value matching int|string
- Example
200
Number of lines to return.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
log_typeOptional- Send in
- Query string
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Compatibility alias for logType.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
methodOptional- Send in
- Query string
- Type
enum- Accepted values
- GET, POST, HEAD, PUT, DELETE, OPTIONS, PATCH
- Example
GET
Optional HTTP method filter for FetchLog.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
offsetOptional- Send in
- Query string
- Type
integer- Accepted values
- Any value matching integer
- Example
0
Byte offset returned by the previous TailLog response; only applicable to live access.log.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Minimum 0.
qOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
account
Optional access-log text search used by FetchLog, limited to 160 characters.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Maximum length 160.
rowsOptional- Send in
- Query string
- Type
integer- Accepted values
- Any value matching integer; default: 10000
- Example
10000
Maximum analyzed rows returned by FetchLog.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Minimum 1. Maximum 20000. Default: 10000.
statusOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
enabled
Optional FetchLog HTTP status filter: a three-digit code or 2xx, 3xx, 4xx, 5xx.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"logType": "access",
"user": "demo",
"account_user": "demo",
"account_username": "demo",
"action": "FetchLog",
"domain": "example.com",
"download": "DOWNLOAD_FROM_LIST_RESPONSE",
"file": "LOG_FILENAME_FROM_LOG_FILES_RESPONSE",
"fileB64": "YWNjZXNzLmxvZw==",
"file_b64": "YWNjZXNzLmxvZw==",
"ftpAccount": "deploy@example.com",
"ftp_account": "deploy@example.com",
"ip": "192.0.2.10",
"lines": 200,
"log_type": "access",
"method": "GET",
"offset": 0,
"q": "account",
"rows": 10000,
"status": "enabled"
},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/logs?logType=access&user=demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"logType": "access",
"user": "demo"
},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/logsroot resellerView log content.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (21)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
logTypeRequired- Send in
- JSON body
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Account log category. Server-global logs are not accessible to a reseller.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
userRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact owned account username returned by GET /v1/resellers/{reseller}/accounts.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_usernameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
actionOptional- Send in
- JSON body
- Type
enum- Accepted values
- FetchLog, TailLog, DownloadLog
- Example
FetchLog
Empty reads log text; FetchLog analyzes access logs; TailLog reads the live access.log from offset; DownloadLog downloads only this account filtered log.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Owned domain returned by Logs context; required for access, error, ModSecurity, HTTP guard and FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
downloadOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
DOWNLOAD_FROM_LIST_RESPONSE
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
LOG_FILENAME_FROM_LOG_FILES_RESPONSE
Optional log filename returned by the matching log-files endpoint, as an alternative to fileB64. Directory paths and traversal are not accepted.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
fileB64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Opaque base64 file identifier returned by the corresponding owned-account log-files endpoint. Optional; omit to select the latest allowed log. Never construct a server path.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
file_b64Optional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
YWNjZXNzLmxvZw==
Compatibility alias for fileB64. Use one file selector only.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftpAccountOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Optional FTP account from the selected hosting account log context; used only for FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftp_accountOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Compatibility alias for ftpAccount.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ipOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
192.0.2.10
Optional client IPv4/IPv6 filter for FetchLog access-log analysis.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
linesOptional- Send in
- JSON body
- Type
int|string- Accepted values
- Any value matching int|string
- Example
200
Number of lines to return.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
log_typeOptional- Send in
- JSON body
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Compatibility alias for logType.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
methodOptional- Send in
- JSON body
- Type
enum- Accepted values
- GET, POST, HEAD, PUT, DELETE, OPTIONS, PATCH
- Example
GET
Optional HTTP method filter for FetchLog.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
offsetOptional- Send in
- JSON body
- Type
integer- Accepted values
- Any value matching integer
- Example
0
Byte offset returned by the previous TailLog response; only applicable to live access.log.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Minimum 0.
qOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
account
Optional access-log text search used by FetchLog, limited to 160 characters.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Maximum length 160.
rowsOptional- Send in
- JSON body
- Type
integer- Accepted values
- Any value matching integer; default: 10000
- Example
10000
Maximum analyzed rows returned by FetchLog.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string. Minimum 1. Maximum 20000. Default: 10000.
statusOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
enabled
Optional FetchLog HTTP status filter: a three-digit code or 2xx, 3xx, 4xx, 5xx.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"logType": "access",
"user": "demo",
"account_user": "demo",
"account_username": "demo",
"action": "FetchLog",
"domain": "example.com",
"download": "DOWNLOAD_FROM_LIST_RESPONSE",
"file": "LOG_FILENAME_FROM_LOG_FILES_RESPONSE",
"fileB64": "YWNjZXNzLmxvZw==",
"file_b64": "YWNjZXNzLmxvZw==",
"ftpAccount": "deploy@example.com",
"ftp_account": "deploy@example.com",
"ip": "192.0.2.10",
"lines": 200,
"log_type": "access",
"method": "GET",
"offset": 0,
"q": "account",
"rows": 10000,
"status": "enabled"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/logs' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"logType":"access","user":"demo"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"logType": "access",
"user": "demo"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/logs/contextroot resellerSee which server logs are available to read.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/logs/context' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/logs/filesroot resellerList log files.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
logTypeRequired- Send in
- Query string
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Account log category. Server-global logs are not accessible to a reseller.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
userRequired- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact owned account username returned by GET /v1/resellers/{reseller}/accounts.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_userOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_usernameOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Owned domain returned by Logs context; required for access, error, ModSecurity, HTTP guard and FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftpAccountOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Optional FTP account from the selected hosting account log context; used only for FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftp_accountOptional- Send in
- Query string
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Compatibility alias for ftpAccount.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
log_typeOptional- Send in
- Query string
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Compatibility alias for logType.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"logType": "access",
"user": "demo",
"account_user": "demo",
"account_username": "demo",
"domain": "example.com",
"ftpAccount": "deploy@example.com",
"ftp_account": "deploy@example.com",
"log_type": "access"
},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/logs/files?logType=access&user=demo' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {
"logType": "access",
"user": "demo"
},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
POST/v1/resellers/{reseller}/logs/filesroot resellerList log files.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
logTypeRequired- Send in
- JSON body
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Account log category. Server-global logs are not accessible to a reseller.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
userRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact owned account username returned by GET /v1/resellers/{reseller}/accounts.
Validation and use: Required Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_userOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
account_usernameOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demo
Compatibility alias for user. Must identify an account owned by this reseller.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
domainOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
example.com
Owned domain returned by Logs context; required for access, error, ModSecurity, HTTP guard and FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftpAccountOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Optional FTP account from the selected hosting account log context; used only for FTP logs.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
ftp_accountOptional- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
deploy@example.com
Compatibility alias for ftpAccount.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
log_typeOptional- Send in
- JSON body
- Type
enum- Accepted values
- access, error, modsecurity, http_guard, ftp, login, mail_auth
- Example
access
Compatibility alias for logType.
Validation and use: Optional Send this parameter in any accepted location listed by accepted_in; prefer JSON for POST requests unless the user asked for a query string.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"logType": "access",
"user": "demo",
"account_user": "demo",
"account_username": "demo",
"domain": "example.com",
"ftpAccount": "deploy@example.com",
"ftp_account": "deploy@example.com",
"log_type": "access"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X POST 'https://panel.example.com:882/v1/resellers/demo/logs/files' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"logType":"access","user":"demo"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {
"logType": "access",
"user": "demo"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/modsecurity/contextroot resellerView ModSecurity protection settings and status.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (1)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/modsecurity/context' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
GET/v1/resellers/{reseller}/progress/{task}root resellerCheck the progress of an account creation or deletion task.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
resellerRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Exact active reseller username. Root may select a reseller; reseller API keys may select only themselves. Execution always retains reseller ownership checks and limits.
Validation and use: Required Replace this placeholder directly in the URL path.
taskRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
create_account_root_0123456789abcdef0123456789abcdef
Resource identifier returned by the corresponding reseller-scoped listing.
Validation and use: Required Replace this placeholder directly in the URL path.
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"reseller": "demo",
"task": "create_account_root_0123456789abcdef0123456789abcdef"
},
"query_parameters": {},
"json_body": {},
"query_or_json_parameters": {}
}
Example request
curl -sS -X GET 'https://panel.example.com:882/v1/resellers/demo/progress/create_account_root_0123456789abcdef0123456789abcdef' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"reseller": "demo",
"task": "create_account_root_0123456789abcdef0123456789abcdef"
},
"query_parameters": {},
"json_body": {}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Resources
PATCH/v1/accounts/{username}/resourcesroot resellerChange an account's CPU, memory and other resource allowances.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (9)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
diskspacequotaOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
100
Disk quota in MB. Use -1 for unlimited. Disk quota MB.
Validation and use:
maxcpuusageOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
200
CPU limit. Use -1 for unlimited.
Validation and use:
maxemailsperhourOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Outbound email limit per hour. Use -1 for unlimited.
Validation and use:
maxinodeslimitOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Inode limit. Use -1 for unlimited.
Validation and use:
maxiodiskbandwidthOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
I/O bandwidth limit. Use -1 for unlimited. IO bandwidth.
Validation and use:
maxiopslimitsOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
IOPS limit. Use -1 for unlimited.
Validation and use:
maxmemorysizeOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
2048
Memory limit. Use -1 for unlimited.
Validation and use:
maxuserprocessesOptional- Send in
- JSON body
- Type
integer|string- Accepted values
- Any value matching integer|string
- Example
-1
Process limit. Use -1 for unlimited.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"diskspacequota": 100,
"maxcpuusage": "200",
"maxemailsperhour": "-1",
"maxinodeslimit": -1,
"maxiodiskbandwidth": -1,
"maxiopslimits": -1,
"maxmemorysize": "2048",
"maxuserprocesses": -1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/resources' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"maxcpuusage":"200","maxmemorysize":"2048"}'Example note: Requires a documented runtime value before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Update CPU + memory
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"maxcpuusage": "200",
"maxmemorysize": "2048"
}
}Requires a documented runtime value before QA can execute this request.
Set unlimited mail rate + CPU
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"maxemailsperhour": "-1",
"maxcpuusage": "200"
}
}Requires a documented runtime value before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Shell
PATCH/v1/accounts/{username}/shellroot resellerUpdate account shell mode.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (3)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
shellRequired- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
2
Shell value. Allowed values: 0, 1, 2. Allowed values: 0 (disabled), 1 (bash), 2 (jail). Alias: shell_code.
Validation and use:
shell_codeOptional- Send in
- JSON body
- Type
enum- Accepted values
- 0, 1, 2
- Example
0
Shell code or shell identifier. Alias of shell. Prefer shell. Allowed values: 0, 1, 2.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"shell": "2",
"shell_code": 0
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/shell' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"shell":"2"}'Example note: Requires a documented runtime value before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Enable jailed shell
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"shell": "2"
}
}Requires a documented runtime value before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Status
PATCH/v1/accounts/{username}/statusroot resellerSuspend or unsuspend account.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (4)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Target SHM account username. Root may target any authorized account, a reseller only an owned account, and a user only their own account.
Validation and use: Required Replace this placeholder directly in the URL path.
statusRequired- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2
- Example
1
Status value. Allowed values: 1, 2. Target status: `1` active or `2` suspended. Allowed: 1 (active), 2 (suspended). Alias: new_status.
Validation and use:
actionOptional- Send in
- JSON body
- Type
enum- Accepted values
- suspend, unsuspend
- Example
suspend
Requested action name. Allowed values: suspend, unsuspend. Optional action alias: `suspend` or `unsuspend`. Alternative to status: suspend|unsuspend. Used only if status is omitted.
Validation and use:
new_statusOptional- Send in
- JSON body
- Type
enum- Accepted values
- 1, 2
- Example
1
Alias of `status`. Alias of status. Prefer status. Allowed values: 1, 2.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"status": 1,
"action": "suspend",
"new_status": 1
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/status' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"status":1}'
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Example request
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"status": 1
}
}Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Username
PATCH/v1/accounts/{username}/usernameroot resellerRename account system username.
Who can use this
The server administrator or a reseller, for accounts and settings they are allowed to manage.
Parameters (2)
usernameRequired- Send in
- URL path
- Type
string- Accepted values
- Any value matching string
- Example
demo
Alias of new_username. Prefer new_username.
Validation and use: Required Replace this placeholder directly in the URL path.
new_usernameRequired- Send in
- JSON body
- Type
string- Accepted values
- Any value matching string
- Example
demoapi2
New system username. Alias: username.
Validation and use:
Complete request template
This template lists all available fields. Keep the fields needed for your chosen action; do not send conflicting alternatives together.
{
"path_parameters": {
"username": "demo"
},
"query_parameters": {},
"json_body": {
"new_username": "demoapi2"
},
"query_or_json_parameters": {}
}
Example request
curl -sS -X PATCH 'https://panel.example.com:882/v1/accounts/demo/username' \
-H 'X-Api-User: reseller' \
-H 'X-Api-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
--data '{"new_username":"demoapi2"}'Example note: Requires a value returned by another endpoint before QA can execute this request.
More examples
Choose the example that matches your task. You only need to send the fields required for that action.
Rename account username
{
"path_parameters": {},
"query_parameters": {},
"json_body": {
"new_username": "demoapi2"
}
}Requires a value returned by another endpoint before QA can execute this request.
Successful result
Check the returned status and message to see whether the request completed. The response details are listed below.
If a request_id is included, keep it when contacting support about the request.
Error response
{
"status": "error",
"code": "validation_error",
"message": "One or more required parameters are missing or invalid."
}
Result and next check
Read the HTTP status and JSON envelope, preserve the request id when returned, and verify state-changing results through a follow-up read or the related SHM page. Retry reads with care; retry writes only when their idempotency and prior outcome are known.
Theme color