Version: | 3.0.3 |
Description |
This API has been designed to be used in the provisioning systems of 3rd party billing systems and other external systems.
The documentation below illustrates the methods that are available in this API. You can click on
the method name in the list of Available Methods below to get more details about the parameters that
it needs and also a test form to try out the method against your own control panel. You can also retrieve an XML respresentation of the methods and parameters by adding ?APIDescriptor on to the end of the API URL. Click Here to see the method descriptors based on this Helm installation. Please note that this API is no longer backward compatible with the Helm 3 Billing API, and is also no longer referred to as the Helm Billing API. This is because the functions now available surpass those that are required for 3rd party billing systems. The original Billing_Api.aspx page has been superceded with HttpAPI.aspx to reflect this change. |
Use "HttpAPI.aspx?action=[MethodName]&AccountName=[HelmAccountName]&Username=[HelmLoginName]&Password=[HelmLoginPassword]&{AdditionalData}"
e.g."HttpAPI.aspx?action=GetUsers&AccountName=ADMIN&Username=ADMIN&Password=Password12345"
Both GET and POST methods are supported.
If you do not specify an AccountName, the Username will be used instead.
Name | Description |
APIVersion | Returns the current version of this API |
AuthenticateUser | Authenticate a users login details |
GetCounties | Get a list of Counties based on a Country |
GetCountries | Get a list of Countries |
GetCountryByISOCode | Get a Country based on its ISO Code |
GetLoginMode | Returns the system login mode |
Name | Description |
CreateAccount | Creates a new customer Account based on a selected Account Role |
DeleteAccount | Removed a customer Account from Helm including all child accounts, domains, packages, plans, billing details and all other settings. Use this method with care! |
GetAccountByID | Retrieves details of the specified user by their AccountID. |
GetAccountByName | Retrieves details of the specified user by their Account Name. |
GetAccountLogins | Retrieves all of the logins for the account. |
GetAccountRoles | Retrieves all of the customer account roles in the account. |
GetAccounts | Retrieves details of all your customers within the account. |
SuspendAccount | Suspends a customer Account. This will also disable all their domains. |
UnsuspendAccount | Re-activates a customer Account. This will also enable all their domains. |
UpdateAccountPassword | Updates the password for a customers Login or Account. Supports all Login Modes. |
Name | Description |
GetPlanByID | Gets details of a Plan by its PlanID. |
GetPlanCostsByPlanID | Gets details of Plan Costs by their PlanID. |
GetPlans | Gets a list of plans that have been configured in the account. |
GetPlanTemplateByID | Gets details of a Plan Template by its PlanTemplateID. |
GetPlanTemplates | Gets a list of plan templates that have been configured in the account. |
Name | Description |
AddPackage | Adds a Hosting Package to a customer's account. |
DeletePackage | Deletes a Hosting Package from a customer's account. |
GetPackageByID | Gets details of a package by its PackageID. |
GetPackages | Gets a list of packages that have been setup within an account. |
UpgradePackage | Upgrades a Hosting Package from a customer's account. |
Name | Description |
AddExtraFeatureToPackage | Adds an extra feature to a customers Package. |
GetExtraFeaturesByPlanID | Gets a list of available Extra Features available for a Plan. |
GetPurchasedExtraFeaturesByPackageID | Gets a list of Extra Features purchased within a package |
RemoveExtraFeatureFromPackage | Removes a previously Purchased Extra Feature from a customers Package. |
Name | Description |
AddDomainToPackage | Adds a Domain to a Hosting Package. |
AddDomainToPlanTemplate | Adds a Domain to a Plan Template. |
DeleteDomain | Remove a domain from the Helm system and servers. |
GetDomainByID | Gets details of a domain by its DomainID. |
GetDomains | Gets a list of domains that have been setup in the account. |
GetDomainsByPackageID | Gets a list of domains that have been setup within a Hosting Package. |
Name | Description |
AddSubDomainToDomain | Adds a sub domain to the domain. |
DeleteSubDomain | Remove a sub domain from the domain. |
GetSubDomains | Gets a list of sub domains from the domain. |
Name | Description |
AddDomainAliasToDomain | Add a domain alias to the domain |
DeleteDomainAlias | Remove a domain alias from the domain. |
GetDomainAliases | Gets a list of domain aliases from the domain. |
Name | Description |
GetAccountBalance | Retrieves the current balance of an Account. |
GetAccountBalanceDue | Retrieves the current balance due of an Account. |
Name | Description |
DeleteMessage | Deletes a message from the account. |
GetMessages | Retrieves all of the internal messages in the account. |
SetMessageRead | Tells the system to mark a message as read. |
SetMessageUnread | Tells the system to mark a message as unread. |
Simplified XML in the form of:
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<Results>
<ResultCode>0</ResultCode>
<ResultDescription>OK</ResultDescription>
<ResultData>Result Text or XML</ResultData>
</Results>
Result Data
Result data is in key pair form XML or just plain text depending on the method that has been called.
Result in XML
The following is an example of data being returned
<ResultData recordcount="2">
<Record>
<FirstField>first Field value</FirstField>
<SecondField>second Field value</SecondField>
</Record>
<Record>
<FirstField>more data</FirstField>
<SecondField>more data again</SecondField>
</Record>
</ResultData>
Returns the current version of this API
Type | Description |
Text | Returns the version number |
Authenticate a users login details
Type | Description |
None | Returns a success of failure if the login details were correct |
Get a list of Counties based on a Country
Name | Type | Description |
CountryCode* | text | The CountryCode of the Country that the Counties are based upon (required) |
Type | Description |
XML | Returns a list of Countries that are available in Helm |
Get a list of Countries
Type | Description |
XML | Returns a list of Countries that are available in Helm |
Get a Country based on its ISO Code
Name | Type | Description |
IsoCode* | text | The IsoCode of the Country (required) |
Type | Description |
XML | Returns the details of the matching Country |
Returns the system login mode
Type | Description |
Text | Returns either 'Standard', 'UniqueLogin' or 'AccountOnly' |
* Field is required when executing the method
Creates a new customer Account based on a selected Account Role
Name | Type | Description |
AccountRoleId* | number | The Account Role that is to be assigned to the new account (required) |
NewAccountName* | text | Account Name for the new account (required) |
CompanyName | text | The friendly name of the account. Usually the company name or personal name of the account owner |
AccountEmailAddress* | text | This is the main email address of the account (required) |
AdminLoginName* | text | Login Name for the admin login of the new account. Only valid where the login mode is 'Standard' or 'UniqueLogin'. Ignored when mode is 'AccountOnly' (required) |
AdminLoginPassword* | text | The password of the admin login of the new account (required) |
AdminEmailAddress* | text | The email address of the admin login of the new account (required) |
FirstName | text | First name of the customer |
LastName | text | Last name of the customer |
Address1* | text | First line of the postal address (required) |
Address2 | text | Second line of the postal address |
Address3 | text | Third line of the postal address |
Town* | text | The name of the town for the postal address (required) |
PostCode* | text | The postcode/zipcode for the postal address (required) |
CountryCode* | text | CountryCode representing the country of the postal address (required) |
CountyName | text | The name of the county. Only supplied if the country has no counties to choose from otherwise the CountyCode MUST be provided. |
CountyCode | text | The county code of the postal county based on the CountryCode. This must be supplied if the country has counties/states to choose from. |
Type | Description |
Text | Returns the Account ID of the newly created account |
Removed a customer Account from Helm including all child accounts, domains, packages, plans, billing details and all other settings. Use this method with care!
Name | Type | Description |
UserAccountId* | number | The AccountID of the customer account that is to be removed (required) |
Type | Description |
None | Returns success or failure of the account removal |
Retrieves details of the specified user by their AccountID.
Name | Type | Description |
UserAccountID* | number | Gets the details of the account based on the ID number of the account. (required) |
IncludeChildren | boolean | Whether to search for the ID within child accounts of your customers as well. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns details of the specified user |
Retrieves details of the specified user by their Account Name.
Name | Type | Description |
UserAccountName* | text | Gets the details of the account based on this Name of the account. (required) |
IncludeChildren | boolean | Whether to search for the Name within child accounts of your customers as well. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns details of the specified user |
Retrieves all of the logins for the account.
Name | Type | Description |
UserAccountId | number | The AccountID of the customer Account. Leave blank to get Logins of own account |
Type | Description |
XML | Returns a list of account logins |
Retrieves all of the customer account roles in the account.
Type | Description |
XML | Returns a list of account roles |
Retrieves details of all your customers within the account.
Name | Type | Description |
IncludeChildren | boolean | Whether to get all the child accounts of your customers as well. Default is False. Value can either be 'True' or 'False'. |
IncludePrimaryLogin | boolean | Whether to include details of the primary login of the account as well as the basic account details. Default is False. Value can either be 'True' or 'False'. |
IncludeAddress | boolean | Whether to recieve all account address information for each record. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns details of all users within your account |
Suspends a customer Account. This will also disable all their domains.
Name | Type | Description |
UserAccountId* | number | The AccountID of the customer account to suspend (required) |
IncludeChildren | boolean | Whether to also suspend all of the accounts customers as well. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
None | Returns success or failure of the account suspension |
Re-activates a customer Account. This will also enable all their domains.
Name | Type | Description |
UserAccountId* | number | The AccountID of the customer account that is to be unsuspended (required) |
IncludeChildren | boolean | Whether to also re-activate all of the accounts customers as well. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
None | Returns success or failure of the account re-activation |
Updates the password for a customers Login or Account. Supports all Login Modes.
Name | Type | Description |
UserAccountId* | number | The AccountID of the customer Account (required) |
UserLoginId* | number | The LoginID of the customer Login (Enter '0' if login mode is Account Only) (required) |
NewPassword* | password | The new password for the Login (required) |
Type | Description |
None | Returns success or failure of the account password change |
* Field is required when executing the method
Gets details of a Plan by its PlanID.
Name | Type | Description |
PlanID* | number | The PlanID of the plan to retrieve details of (required) |
Type | Description |
XML | Returns details of the Plan |
Gets details of Plan Costs by their PlanID.
Name | Type | Description |
PlanID* | number | The PlanID of the plan to retrieve details of (required) |
Type | Description |
XML | Returns details of Costs for the given Plan |
Gets a list of plans that have been configured in the account.
Type | Description |
XML | Returns a list of plans |
Gets details of a Plan Template by its PlanTemplateID.
Name | Type | Description |
PlanTemplateID* | number | The PlanTemplateID of the plan template to retrieve details of (required) |
Type | Description |
XML | Returns details of the Plan Template |
Gets a list of plan templates that have been configured in the account.
Type | Description |
XML | Returns a list of plan templates |
* Field is required when executing the method
Adds a Hosting Package to a customer's account.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer you wish to add the package too. (required) |
PlanID* | number | The PlanID of the plan to which the new package will be based upon. The PlanID must match a plan of the Customer's parent account. (required) |
PackageName* | text | Package name for the new package. (required) |
Quantity* | number | Quantity of the package. (required) |
Type | Description |
XML | Returns details of the Package |
Deletes a Hosting Package from a customer's account.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer you wish to add the package too. (required) |
PackageID* | number | The PackageID of the package that is to be removed. The PackageID must belong to the customer's account. (required) |
Type | Description |
XML | Returns details of the Package |
Gets details of a package by its PackageID.
Name | Type | Description |
UserAccountID | number | Searches for the Package based on the UserAccountID provided. If not provided the list of packages in the logged in account are returned. |
PackageID* | number | The PackageID of the package to retrieve details of (required) |
Type | Description |
XML | Returns details of the Package |
Gets a list of packages that have been setup within an account.
Name | Type | Description |
UserAccountID | number | Gets the Packages of the account based on the ID number of the account. If not provided the list of packages in the logged in account are returned. |
Type | Description |
XML | Returns a list of packages for the given Account |
Upgrades a Hosting Package from a customer's account.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer you wish to add the package too. (required) |
PackageID* | number | The PackageID of the package that is to be upgraded. The PackageID must belong to the customer's account. (required) |
NewPlanID* | number | The new PlanID of the plan to which the new package will be based upon. The PlanID must match a plan of the Customer's parent account and also the plan much be based on the same PlanTemplate as the original Package's Plan. (required) |
Type | Description |
XML | Returns details of the Package |
* Field is required when executing the method
Adds an extra feature to a customers Package.
Name | Type | Description |
UserAccountID* | number | Searches for the Package based on the UserAccountID provided (required) |
PackageID* | number | The PackageID of the Package to which the Extra Feature is added to (required) |
ExtraFeatureID* | number | The ExtraFeatureID of the Extra Feature you wish to add (required) |
Quantity* | number | The quantity of the Extra Feature to be added (required) |
Type | Description |
Text | Returns the PurchasedExtraFeatureID of the Extra Feature just added |
Gets a list of available Extra Features available for a Plan.
Name | Type | Description |
PlanID* | number | The PlanID of the Plan to retrieve the list of Extra Features from (required) |
Type | Description |
XML | Returns a list of available Extra Features |
Gets a list of Extra Features purchased within a package
Name | Type | Description |
UserAccountID* | number | Searches for the Package based on the UserAccountID provided (required) |
PackageID* | number | The PackageID of the Package to look for extra features within (required) |
Type | Description |
XML | Returns a list of Purchased Extra Features for the given Package |
Removes a previously Purchased Extra Feature from a customers Package.
Name | Type | Description |
UserAccountID* | number | Searches for the Package based on the UserAccountID provided (required) |
PackageID* | number | The PackageID of the Package to which the Extra Feature is removed from (required) |
PurchasedExtraFeatureID* | number | The ExtraFeatureID of the Extra Feature you wish to remove (required) |
Type | Description |
None | Returns success or failure of the removal |
* Field is required when executing the method
Adds a Domain to a Hosting Package.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer you wish to add the domain too. If not provided the logged in account is used. (required) |
PackageID* | number | The PackageID of the package to which the new domain will be added to. The PackageID must match a package of the account. (required) |
DomainName* | text | The name of the domain. (required) |
IsPark | boolean | Whether the domain is parked or not. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns details of the domain |
Adds a Domain to a Plan Template.
Name | Type | Description |
PlanTemplateID* | number | The PlanTemplateID of the plan template to which the new domain will be added against. The PlanTemplateID must match a plan template of the account. (required) |
DomainName* | text | The name of the domain. (required) |
IsPark | boolean | Whether the domain is parked or not. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns details of the Package |
Remove a domain from the Helm system and servers.
Name | Type | Description |
DomainID* | number | The DomainID of the domain to delete (required) |
Type | Description |
None | Returns success or failure of the domain removal. |
Gets details of a domain by its DomainID.
Name | Type | Description |
DomainID* | number | The DomainID of the domain to retrieve details of (required) |
Type | Description |
XML | Returns details of the Domain |
Gets a list of domains that have been setup in the account.
Name | Type | Description |
UserAccountID | number | Gets the Domains of the account based on the ID number of the account. If not provided the list of packages in the logged in account are returned. |
IncludeChildren | boolean | Whether to get all the Domains of the user's customers as well. Default is False. Value can either be 'True' or 'False'. |
Type | Description |
XML | Returns a list of domains |
Gets a list of domains that have been setup within a Hosting Package.
Name | Type | Description |
UserAccountID | number | Searches for the Package based on the UserAccountID provided. If not provided the list of packages in the logged in account are returned. |
PackageID* | number | The PackageID of the package to retrieve details of (required) |
Type | Description |
XML | Returns a list of domains |
* Field is required when executing the method
Adds a sub domain to the domain.
Name | Type | Description |
DomainID* | number | The DomainID of the domain to add the sub domain to. (required) |
SubDomainName* | text | The name of the sub domain (required) |
Type | Description |
XML | Returns details of the sub domain |
Remove a sub domain from the domain.
Name | Type | Description |
DomainID* | number | The DomainID of the sub domain that is to be removed. (required) |
SubDomainID* | number | The SubDomainID of the sub domain that is to be removed. (required) |
Type | Description |
None | Returns success or failure of the sub domain removal. |
Gets a list of sub domains from the domain.
Name | Type | Description |
DomainID* | number | The DomainID of the sub domains to retrieve details of. (required) |
Type | Description |
XML | Returns a list of sub domains |
* Field is required when executing the method
Add a domain alias to the domain
Name | Type | Description |
DomainID* | number | The DomainID of the domain to add the domain alias to. (required) |
DomainAliasName* | text | The name of the domain alias (required) |
Type | Description |
Remove a domain alias from the domain.
Name | Type | Description |
DomainID* | number | The DomainID of the domain alias that is to be removed. (required) |
DomainAliasID* | number | The DomainAliasID of the domain alias that is to be removed. (required) |
Type | Description |
None | Returns success or failure of the sub domain removal. |
Gets a list of domain aliases from the domain.
Name | Type | Description |
DomainID* | number | The DomainID of the domain aliases to retrieve details of. (required) |
Type | Description |
XML | Returns a list of sub domains |
* Field is required when executing the method
Retrieves the current balance of an Account.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer account. (required) |
Type | Description |
Text | Returns the current balance |
Retrieves the current balance due of an Account.
Name | Type | Description |
UserAccountID* | number | The AccountID of the customer account. (required) |
Type | Description |
Text | Returns the current balance due |
* Field is required when executing the method
Deletes a message from the account.
Name | Type | Description |
MessageID* | number | The ID of the message that you wish to delete. (required) |
Type | Description |
None | Returns success of failure |
Retrieves all of the internal messages in the account.
Type | Description |
XML | Returns details of the messages |
Tells the system to mark a message as read.
Name | Type | Description |
MessageID* | number | The ID of the message that you wish to mark as read. (required) |
Type | Description |
None | Returns success of failure |
Tells the system to mark a message as unread.
Name | Type | Description |
MessageID* | number | The ID of the message that you wish to mark as unread. (required) |
Type | Description |
None | Returns success of failure |
* Field is required when executing the method