HiTechAdmin API Documentation
HiTechAdmin API can be used to manage options available from the HiTechAdmin interface: hosting plans, accounts, domains, services, DNS, email, security, server administration, and more. All API endpoints require Bearer JWT authentication.
HiTechAdmin API is available only on HiTechCloud Enterprise edition.
To use the API, enable it first from the HiTechAdmin > Settings > API Access page or from terminal with hitechcloudcli api on command.
To generate a token for use with the endpoints, send a POST request to /api/ using your HiTechAdmin username and password:
curl -X POST "https://HITECHADMIN_DOMAIN_OR_IP:2087/api/" && \
-H "Content-Type: application/json" -d '{"username":"HITECHADMIN_USERNAME","password":"HITECHADMIN_PASSWORD"}'
We recommend creating a separate admin user dedicated solely to API usage. This way, you can quickly suspend or delete that account if its credentials are ever compromised.
Example response with the token is:
{"access_token":"eyJhbGciOiJIUzI1NiIsInRs4CI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTc4MDc0OTkwOCwianRpIjoiZDcwZmY2NmEtNDNiOC00OGZkLThiMWEtZDIwYWUwMDNhNjEyIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6Im9wc3VwcG9ydCIsIm5iZiI6MTc4MDc0OTkwOCwiY3NyZiI6IjZlOGRmNGVmLTA0MjktNGNkYy1hNTg5LTJkYzUwMDk2ZDI2NSIsI3V4cCI6MTc4M33c1MDgwOH0.WLQ8rsVOF6pQg07i1fI1lXfd8_cCmryiOjGqg8zgOmw"}
This token must be sent in header for all other API endpoints:
-H "Authorization: Bearer YOUR_JWT_TOKEN" -H "Content-Type: application/json"
💡 Hint: Use hitechcloudcli api list command to view usage examples for all the endpoints available on your HiTechCloud version.
Some endpoints below are destructive or high-privilege (rebooting the server, changing the root SSH password, disabling HiTechAdmin, migrating a server, WAF/firewall management). They run with the same privilege as the admin panel itself — scope and rotate API tokens accordingly.
Users
List All Accounts
GET /api/users
Example response
[
{
"username": "stefan",
"email": "stefan@example.com",
"plan_name": "default_plan_nginx"
}
]
Create Account
POST /api/users
Request Body:
{
"email": "stefan@example.com",
"username": "stefan",
"password": "s32dsasaq",
"plan_name": "default_plan_nginx"
}
Response:
{
"response": {
"message": "Successfully added user stefan password: s32dsasaq"
},
"success": true
}