Helm Web Based Billing API
Version 1.1.3
This API has been designed to be used in the provisioning systems of 3rd party
billing systems.
________________________________________________________________________________
================================================================================
Usage
================================================================================
Use "/billing_api.asp?action=[MethodName]&Username=[HelmAccountName]&Password=[HelmAccountPassword]&{AdditionalData}"
e.g."/billing_api.asp?action=GetUsers&Username=ADMIN&Password=Password12345"
Both GET and POST methods are supported.
================================================================================
Methods
================================================================================
GetUser - Gets information about a user in the Helm system.
GetUsers - Gets details about all Helm users under an account.
AddUser - Adds a new user to the system.
AddUserAndDomain - Adds a new user with package and domain to the system.
NOTE: THIS APPLIES TO CUSTOMERS ONLY NOT RESELLERS
AuthenticateUser - Authenitcate User login details
UpdateUserPassword - Updates a user's account password.
DeleteUser - Removes a user from the system.
SuspendUser - Suspends a user's account.
UnsuspendUser - Reactivates a user's account.
GetPlans - Retrieves the details of plans configured in Helm.
AddPackage - Adds a hosting package to a customer level account.
GetPackages - Get packages in customer account
DeletePackage - Removed a hosting package from a customer account.
NOTE: THIS WILL REMOVE ALL DOMAINS IN THAT PACKAGE TOO!
AddTransaction - Add a Transaction to an account
AddDomain - Adds a hosted domain to a customer's package.
AddSubDomain - Adds a sub domain to a Domain.
DeleteSubDomain - Delete a sub domain to a Domain.
GetDomains - Get List of your Domains
DeleteDomain - Deletes a hosted domain from the system
GetExtraFeatures - Gets a list of available extra features for a plan
AddExtraFeature - Adds a purchased extra feature to a user's account
DeleteExtraFeature - Removes a purchased extra features from a user's account
GetUser
-------
Input
*UserAccountNumber : Account number of the user to be returned
Output
[XML] Collection of user's details including name, address details and
suspension status
GetUsers
--------
Input
None
Output
[XML] List of user accounts and corresponding information about the user
AddUser
-------
Input
*FirstName : First name of new user
*LastName : Last name of new user
*PrimaryEmail : Primary email address of new user
*Address1 : Address line 1 of new user
*PostCode : Postcode/Zipcode of new user
*CountryCode : 2 character country code
Title : Account holders title
CompanyName : Company name
Address2 : Address line 2
Address3 : Address line 3
Town : Town/City of new user
County : County/State of new user
HomePhone : Home Telephone Number
WorkPhone : Work Telephone Number
MobilePhone : Mobile Telephone Number
FaxNumber : Fax number
SecondaryEmail : Secondary email address
NewAccountNumber : User specified account name for new account.
Automatically assigns one if not provided.
NewAccountPassword: User specified account password for the new account.
Automatically generates one if not provided.
*ResellerPlanId : Required if Admin is adding a reseller account only
Reseller plan that reseller's new account will be based
upon.
ResellerAccount : If Admin you can specify the account number of the
reseller that the user will be added to instead of adding
as a reseller account.
SendWelcomeMessage: Whether to send user welcome message from Helm. If not
specified then will be "False". Set "True" to send.
Output
[TEXT] The new account's account number (user name)
AddUserAndDomain
----------------
Input
*FirstName : First name of new user
*LastName : Last name of new user
*PrimaryEmail : Primary email address of new user
*Address1 : Address line 1 of new user
*PostCode : Postcode/Zipcode of new user
*CountryCode : 2 character country code
Title : Account holders title
CompanyName : Company name
Address2 : Address line 2
Address3 : Address line 3
Town : Town/City of new user
County : County/State of new user
HomePhone : Home Telephone Number
WorkPhone : Work Telephone Number
MobilePhone : Mobile Telephone Number
FaxNumber : Fax number
SecondaryEmail : Secondary email address
NewAccountNumber : User specified account name for new account.
Automatically assigns one if not provided.
NewAccountPassword: User specified account password for the new account.
Automatically generates one if not provided.
*CustomerPlanId : Hosting plan that customer's new account will be based
upon.
*PackageName : A friendly name for the customer's new hosting package.
*DomainName : The name of the FQDN to add to the users account.
ResellerAccount : If Admin you can specify the account number of the
reseller that the user will be added to.
SendWelcomeMessage: Whether to send user welcome message from Helm. If not
specified then will be false. Set "True" to send.
Output
[TEXT] The new account's account number (user name)
UpdateUserPassword
------------------
Input
*UserAccountNumber : Account number of the user to be suspended
*NewAccountPassword: New password for the account
Output
None
AuthenticateUser
------------------
Input
*UserAccountNumber : user Account number
*NewAccountPassword: user Account password
Output
None
DeleteUser
----------
Input
*UserAccountNumber : Account number of the user to be deleted
Output
None
SuspendUser
-----------
Input
*UserAccountNumber : Account number of the user to be suspended
Output
None
UnsuspendUser
-------------
Input
*UserAccountNumber : Account number of the user to be unsuspended
Output
None
GetPlans
--------
Input
None
Output
[XML] List of all plans that the user has set up in Helm
AddPackage
----------
Input
*UserAccountNumber : Account number of the user to be unsuspended
*PackageTypeId : The Id number of the plan that the package is to be
created against.
*FriendlyName : A friendly name for the package
Output
[TEXT] The packageId of the newly created hosting package
GETPACKAGES
------------
Input
PackageID : Package Id number of the customer's package to remove
CustomerAccountID : Customer ID of whom you require list of packages
ResellerAccountID : Reseller ID of who owns the plan the customer is held in
PackageTypeID : Package Type ID of the reseller plan the package is held in
Output
[XML] List of all Packages that has set up in Helm matching params
DeletePackage
-------------
Input
*PackageId : Package Id number of the customer's package to remove
Output
None
AddDomain
----------
Input
*PackageId : The package Id number of the customer's package that
the domain will be created within.
*DomainName : The fully qualified domain name
Output
[TEXT] The DomainId of the newly created hosted domain
AddSubDomain
----------
Input
*DomainId : The Domain Id number of the customer's Domain
*SubDomainName : The fully qualified sub domain name
Output
[TEXT] The SubDomainId of the newly created hosted domain
GetDomains
----------
Input
CustomerAccountNumber : The Customer Account Name
ResellerAccountNumber : The Resellers Account Name
PackageId : The package Id number of the customer's package that
the domain will be created within.
Output
[XML] List of all Domains that have been set up in within the User or Plan
DeleteDomain
------------
Input
*DomainId : The domain Id number of the domain name that will be
removed from the system.
Output
None
AddTransaction
-------------
Input
*UserAccountNumber : Account number of the user to add the transaction
*TransactionType : 0=Purchase, 1=Renewal, 2=Payment, 3=Credit, 4=Invoice
*TransactionDate : Dateof the transaction supplied yyyy-mm-dd
*TransactionAmount : Decimal currency value
*TransactionQTY : Quantity in tranaction
*TransactionDesc : Transaction Description Displayed in helm
Output
None
DeleteSubDomain
------------
Input
*SubDomainId : The domain Id number of the sub domain name that will be
removed from the system.
Output
None
GetExtraFeatures
----------------
Input
*PackageTypeId : The Id number of the plan to list all of the extra
features within.
Output
[XML] List of all extra features that have been set up in within the plan
AddExtraFeature
---------------
Input
*PackageId : The package Id number where the extra feature will be
added to
*ExtraFeatureId : The Id number of the extra feature to be added.
Quantity : The quantity of the extra feature to be added. If none
specified it will assume a quantity of one.
Output
[TEXT] The PurchasedFeatureId of the purchased extra feature
DeleteExtraFeature
------------------
Input
*PurchasedFeatureId: The Id number of the purchased extra feature
Output
None
* - Required field
================================================================================
Returns
================================================================================
Simplified XML in the form of:
<?xml version="1.0" ?>
<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>
<field name="FirstField">
<value>first field value</value>
</field>
<field name="SecondField">
<value>second field value</value>
</field>
</Record>
<Record>
<field name="FirstField">
<value>more data</value>
</field>
<field name="SecondField">
<value>more data</value>
</field>
</Record>
</ResultData>
|