The Website Speed Booster is a feature unique to Gossimer, and is available ONLY with the Linux Web Hosting Package. This tool automatically enhances the speed of your website by up to 20 times and more!
How does it work?
The Website Speed Booster works by compressing the content delivered to the client when it is sent across the Internet, making use of the browser’s ability to uncompress this data seamlessly. The tool does not require any changes in website code, nor does it require any additional software on the user’s end. All browsers starting from Internet Explorer 4.0, Netscape 4.06, Opera 5, Lynx 2.6 support this feature. Besides, this solution will simply not compress the data if the visitor has a non-compliant browser, so it presents no risk to your website at all.
Using this tool from your Control Panel, you can boost the speed of all of the following:
Specifying Speed Booster settings
Follow the process mentioned below to specify your Website Speed Booster settings:
1. Login to your Control Panel and search for the domain name for which you have purchased this hosting package. Click here to read how >>
2. In the search results view, click on the domain name. This will take you to the order details view.
3. Click on Manage Web Hosting Service in the lower toolbar.
4. In the Website Management interface pop-up that follows, go to Manage Website -> Web Server Manager -> Website Speed Booster.
5. On this page, select Yes from the drop-down adjacent to the type of content you wish to optimize. You can choose to boost
For disabling the feature, you need to select No from the drop-down.
6. Click on Submit.
In order to complete the action, the Web Server needs to be restarted. Random restarts affect other services running on the Server. In order to avoid this, the Server has been scheduled to restart at intervals of 20 minutes. Hence, the change might take upto 20 minutes to be effective.
Tags: Additional Software, Content Images, Css Files, Details View, Doc Pdf, Downloadable Articles, Gif Jpg, Gt 2, Gt Web, Internet Explorer, Linux, Linux Web, Manage Web Hosting Service, Management Interface, Manager Gt, Opera 5, Pdf Xls, Perl, Php, Speed Booster, View 3, Web Hosting package, Web Hosting Service, Web Server, Web Server Manager, Website Management
The API is exposed using SOAP, a common web services protocol. SOAP is extremely simple to use and debug since it is an XML based protocol. While SOAP is a standardized protocol, we are using certain complex data types which are not completely compatible across all platforms. However we have written our own wrappers to handle this and we offer direct integration kits in various platforms which you can directly download and use.
When our System receives a request, it tries to complete the action immediately. If the System is unable to complete the action for some reason, it will return an error response and try to complete the action again after sometime. This ensures a high level of fault tolerance.
Due to this, it is imperative that when you encounter an error response (especially for commands that have financial implications like Registering or Renewing orders), you MUST check whether the command eventually failed or succeeded. To do this, you will have to issue additional API commands (depending on the command for which you received an error response) to check the final status of the original command.
It is recommended that you implement this querying process to check the status of API commands as a scheduled task/cron/batch process. Alternately, you can also check the status of the command by logging into your Reseller Control Panel.
Currently integration kits are available in PHP, Java, Perl and .NET. Our Server exposes all relevant methods using SOAP. SOAP is a simple XML-HTTP based protocol whose client implementations are available in EVERY language. Follow the steps below to begin making calls to the API -
Step 1. Sign up for a Demo Reseller Account
You will initially test your API scripts on our demo Server. Click here to read how to sign up for a demo Reseller account >> .
You will need the following items before you proceed to the next step
Your Signup Username
Your Signup Password
Your Parent ID
The first two items would have been entered by you during the signup. For the last item simply login to your Demo Account and click on Settings -> Personal Information -> Primary Profile.
You can use these accounts to try out various aspects of the system. However, the demo accounts are reset every day. As such, any additional orders placed herein, or any modification done to these accounts, shall cease to exist after 24 hours.
Step 2. Proceed to the corresponding API kit for your platform
Click on the links below to refer to further instructions for the platform you are developing on -
Java API Kit >>
PHP API Kit >>
.NET API Kit >>
Perl API Kit >>
Step 3. Download the API Documentation
The complete documentation of all classes and methods available in the API can be found in the Docs below. The Docs below are javadocs, but the function names and explanations remain the same for all the platforms and the documentation is self explanatory. We recommend you download the docs and read through them completely once before you integrate your application:
Core Docs v3_10
Domains Docs v3_10
Hosting Docs v3_10
Other Products Docs v3_10
Step 4. Refer to the Parameter Validation details of different parameters passed in any API Calls
We have a detailed document on the Validation routines which you need to build in for the various parameters which you send to the API call. Failure to validate these fields on your side may result in an undecipherable error from the Server. Click here to read about Data Validation of Parameters passed in an API Method Call >>
Step 5. Refer to the Error format document and the common errors
The first time you run any example you are likely to encounter errors if you have not followed the steps perfectly. It is important to understand the format of an error. Click here to understand the format of an error that you will receive >>
Sometimes, you may receive a 302 HTTP Redirect response from our System. Your API implementation should be capable of following such a redirect.
Step 6. Run the examples
All the above kits contain examples which you can run and test the API functionality. Try these examples out to verify everything is working fine. You should first run these examples on the Demo Server. Use the demo sign up information gathered above and the Demo Server URL below to run the examples on the demo server.
Demo Server URLs for API Kits ver 3.x and above
Java and PHP API Kits
http://api.onlyfordemo.net/anacreon/servlet/APIv3
https://www.foundationapi.com/anacreon/servlet/APIv3
Perl and .NET API Kit
http://api.onlyfordemo.net/anacreon/servlet/APIv3-XML
https://api.onlyfordemo.net/anacreon/servlet/APIv3-XML
Demo Server URLs for older API Kits
Java and PHP API Kits
http://demo.myorderbox.com/anacreon/servlet/rpcrouter
https://demo.myorderbox.com/anacreon/servlet/rpcrouter
.NET and Perl API Kits
http://demo.myorderbox.com/anacreon/servlet/XMLrpcrouter
https://demo.myorderbox.com/anacreon/servlet/XMLrpcrouter
Step 7. Refer to common errors
In this documentation we have some answers covering common errors you can expect while integrating with the API. Click here to know details about common API errors >>
Step 8. Change the information to Live information when you are ready
Once you have followed the steps above and got the test programs to work successfully, you can duplicate the same code in your live application and replace the Demo Server and Reseller account information with your live username and password. You will also need to change the server URL to the live server URL.
LIVE Server URLs for API Kits ver 3.x and above
Java and PHP API Kits
http://www.myorderbox.com/anacreon/servlet/APIv3
https://www.myorderbox.com/anacreon/servlet/APIv3
Perl and .NET API Kit
http://www.myorderbox.com/anacreon/servlet/APIv3-XML
https://www.myorderbox.com/anacreon/servlet/APIv3-XML
LIVE Server URLs for older API Kits
Java and PHP API Kits
http://www.myorderbox.com/anacreon/servlet/rpcrouter
https://www.myorderbox.com/anacreon/servlet/rpcrouter
.NET and Perl API Kits
http://www.myorderbox.com/anacreon/servlet/XMLrpcrouter
https://www.myorderbox.com/anacreon/servlet/XMLrpcrouter
Refer to the corresponding kit and integration guide of the platform that you choose for further instructions.
As you duplicate your code on the live application environment, remember to change your Parent ID to the one associated with your Live Reseller account. You can find this from Settings -> Personal Information -> Primary Profile in your Reseller Control Panel.
You need to display the Registrar Registrant Agreement for Domain Names Legal document within the domain name registration buy process on your website.
It is compulsory to display this document AS IS to your Customers and get them to agree to the terms mentioned therein, before buying domain names through you. You can view this agreement from within your Reseller Admin Control Panel at Help >> Legal Agreements.
Tags: Api, Api Commands, Data Types, Demo Server, Exposed, Fault Tolerance, Financial Implications, http, Integration, Java, Java Perl, Net Server, Parent, Parent Id, Perl, Php, Platforms, Protocol, Registrar, Relevant Methods, Reseller Account, Reseller Control Panel, Soap Soap, standardized protocol, Test Scripts, web services protocol, www.foundationapi.com/anacreon/servlet/APIv3, www.myorderbox.com/anacreon/servlet/APIv3, www.myorderbox.com/anacreon/servlet/APIv3-XML, www.myorderbox.com/anacreon/servlet/rpcrouter, www.myorderbox.com/anacreon/servlet/XMLrpcrouter, Xml
Changes in version 3.10 Java Docs updated Changes related to classes and methods:
| Domains Kit | |
| New Class Name | New Method |
| ThirdLevelDotUk | String invoiceOption |
| ThirdLevelDotUk | String existingEndTime |
New Parameters introduced in Existing Methods
| Other Products Kit | ||
| Class Name | Method Name | New Parameters |
| EngageOrder | renew | String invoiceOption |
| EngageOrder | renew | String existingEndTime |
Deprecated Parameters in Methods
Domains Kit
Class Name
Method Name
Deprecated Parameters
ZoneOrder
add
"No Of Records" in DomainHash
Changes in version 3.9 Changes related to classes and methods: The following method in the Domains Kit is deprecated and its use should be discontinued - Changes in version 3.8 Java Docs updated Changes related to classes and methods: The following changes have been introduced under the DotEu class within the Domains Kit -
The following new methods have been introduced under DigitalCertificateOrder class within the Other Products Kit - Changes in version 3.7 Java Docs updated Changes related to classes and methods: Some old parameters have been removed and new parameters introduced in their place under the following methods -
* packageKey will be the Identifier Key of the Plan (plan1, plan2, plan3, plan4) for which the Order needs to be added/modified. # ssl will be true or false depending whether the user wants Dedicated IP / SSL for the Order placed. ## excessBandwidth is the Bandwidth which the user wants over and above the Bandwidth of the Order’s current plan.
Changes in version 3.6 Java Docs updated Changes related to classes and methods:
Domains Kit
Class Name
Deprecated Method
Suggested Class
Suggested Method
DomContact
addDefaultContact
DomContact
addDefaultContacts
DomContact
add
DomContact
addContact
DomContact
list
DomContact
listByType
DomContactExt
isValidRegistrantContact
DomContactExt
isValidContact
DomOrder
transferDomain
DomOrder
addTransferDomain
DomOrder
add
DomOrder
registerDomain
ZoneOrder
mod
ZoneOrder
Functionality not required anymore
DotEu
tradeDomain
DotEu
trade
DotEu
transferDomain
DotEu
transfer
DotEu
add
DomOrder
registerDomain
Core Kit
Class Name
Deprecated Method
Suggested Class
Suggested Method
Customer
addCustomer
Customer
signUp
Customer
modDetails
Customer
mod
Reseller
addReseller
Reseller
signUp
Reseller
modDetails
Reseller
mod
Reseller
addResellerWithStateId
Reseller
Functionality not required anymore
OrderSetup
getResellerSlabPercentageForProducts
OrderSetup
Functionality not required anymore
OrderSetup
getCustomerSlabPercentage
OrderSetup
Functionality not required anymore
Deprecated method
Class
New method to be used
isValidRegistrantContact
DomContactExt
isValidContact
LinuxHostingOrder Class
Method
Old Parameter
New Parameters
add
Hashtable orderParams
String packageKey*, boolean ssl#
mod
Hashtable orderParams
String packagekey*, boolean ssl#,
int excessBandwidth##
getMonthlyCostAndValidate
Hashtable orderParams
String packageKey*, boolean ssl#,
int execessBandwidth##
getModPricing
Hashtable orderParams
String packageKey*, boolean ssl#,
int execessBandwidth##
WindowsHostingOrder Class
Method
Old Parameter
New Parameters
add
Hashtable orderParams
String packageKey*, boolean ssl#
mod
Hashtable orderParams
String packagekey*, boolean ssl#,
int excessBandwidth##
getMonthlyCostAndValidate
Hashtable orderParams
String packageKey*, boolean ssl#,
int execessBandwidth##
getModPricing
Hashtable orderParams
String packageKey*, boolean ssl#,
int execessBandwidth##
MailHostingOrder Class
Method
Old Parameter
New Parameters
add
Hashtable orderParams
String packageKey*
mod
Hashtable orderHash
String packagekey*, int additionalMailBoxes**
getMonthlyCostAndValidate
Hashtable orderParams
String packageKey*, int additionalMailBoxes**
getModPricing
Hashtable orderParams
String packageKey*, int additionalMailBoxes**
SiteBuilder Class
Method
Old Parameter
New Parameters
mod
Hashtable orderParams
String packageKey*
getMonthlyCostAndValidate
Hashtable orderParams
String packageKey*
** additionalMailBoxes is the number of additional mail boxes over and above the existing ones in blocks of 100 accounts.
getProductMetadata – Product class
getDefaultContactId – DomContactExt class
listByType – DomContact class
addTransferDomain – DomOrder class
changePrivacyProtectionStatus – DomOrder class
registerDomain – DomOrder class
| Deprecated method | Class | New method to be used |
| add | DomContact | addContact |
| addDefaultContact | DomContact | addDefaultContacts |
| list | DomContact | listByType |
| add | DomOrder | registerDomain |
| transferDomain | DomOrder | addTransferDomain |
| transferDomainWithoutValidation | DomOrder | addTransferDomain |
| addTransferDomainWithoutvalidation | DomOrder | addTransferDomain |
| add | DotEu | registerDomain in DomOrder class |
While these methods are currently available, they are no longer supported and may be discontinued in the near future.
getHostingMetaData – WebHostingOrderData class
The invoiceOption parameter has been added to the add method of MailHostingPlanOnlyOrder, WindowsHostingPlanOnlyOrder and LinuxHostingPlanOnlyOrder classes
Changes in version 3.5 Java Docs updated Changes related to classes and functions:
getList – Country class
getStateListForCountry – Country class
getDetails – Order class
addResellerWithStateId – Reseller class
getRegistrantAgreement
getProductCategory
getAgreement
getAllAgreements
addCoopContact – DotCoopContact class
validateDomainRegistrationParams
validateDomainTransferParams
addWithoutValidation
Changes in version 3.4 Java Docs Updated New Classes introduced in all Kits: Core Kit TaxService
Domains Kit DotEu DotEuContact DomOrder
Hosting Kit WindowsHostingPlanOnlyOrder LinuxHostingPlanOnlyOrder MailHostingPlanOnlyOrder MailHostingSetup WindowsHostingSetup LinuxHostingSetup
Other Products Kit DigitalCertificateOrder SiteBuilderSetup EngageSetup Changes in version 3.3 3 new functions have been added in the Core Kit under the following classes: authenticateCustomerId – Customer class Bug Fix – A minor Java Script problem was causing the frame links in the examples to not work in some browsers like Mozilla and Opera. Changes in version 3.2.1 WSDL Endpoint changed Changes in version 3.2 New methods added viz. Order.removeCustomerLock, Order.getLockList Changes in version 3.1 Minor bugs in WSDL files fixed.
getApplicableTaxes
getHashedTaxRules
getEUCountryList
tradeDomain
transferDomain
add
isEUCountry
mod
add
addEuDefaultContact
validateDomainRegistrationParams
validateDomainTransferParams
addTransferDomainWithoutvalidation
addWithoutValidation
getDetails
getDetailsByDomain
getOrderIdByDomain
add
mod
renew
del
getMonthlyCostAndValidate
getModPricing
getDeletionRefundAmount
getDetails
getDetailsByDomain
getOrderIdByDomain
add
mod
renew
del
getMonthlyCostAndValidate
getModPricing
getDeletionRefundAmount
getDetails
getDetailsByDomain
getOrderIdByDomain
add
mod
renew
del
getMonthlyCostAndValidate
getModPricing
getDeletionRefundAmount
list
getHostingKeyDisplayName
getHostingParamsDisplayName
getPricingKeyPricingParamMap
getHostingKeyDisplayName
getHostingParamsDisplayName
getPricingKeyPricingParamMap
getHostingKeyDisplayName
getHostingParamsDisplayName
getPricingKeyPricingParamMap
add
getCertPrice
getPricingKeyPricingParamMap
getPricingKeyPricingParamMap
login – Customer class
getOrderIdByDomainAndProductCategory – Order class
Extensive changes made. Please download the kit and read the appropriate Javadocs for details.
Added the method Customer.delete() which allows you to delete a Customer Added the method DomOrder.cancelTransferRequest() which allows you to cancel the transfer-in request for a domain name Added the method Order.sendRfa() which allows you to re/send the email asking for transfer-in approval for domain names.
Bug fix in Modify Customer Details and Modify Contact Details forms More details in the Javadocs for DomOrder.getDetails() Link to new Demo Server added.
Perl API KIT added
While using one of the API kits, if you encounter any error that you need to report to Gossimer, you would need to provide the XML sent and received for the call you were making. Following is the procedure that you need to follow to retrieve the XML, for the various API kits we provide:
1. PHP kit: Set the debug value to true in the lib/config.php file
2. Perl kit: Set the $debugMode to 1 in /examples/cgi-bin/constants.cgi/font/index.html>
3. .NET kit: Set the static property Properties.Debug = True in statics.aspx
Having retrieved the XML sent & received, please contact us at support@gossimer.com, along with the following details:
Follow the instructions below to begin integration with the API using Perl -
Make sure you have read the General API Integration Instructions first. If you have already integrated the PERL API Kit at your end, read the Change Log first to know what has changed since.
Reference:
General API Integration Instructions >>
Change Log >>
Step 1. Download the API Kit
Click the link below to download the relevant API kits (updated on 6th March, 2008).
PERL_CoreKIT_v3_10.zip
PERL_DomainsKIT_v3_10.zip
PERL_HostingKIT_v3_10.zip
PERL_OtherProductsKIT_v3_10.zip
Step 2. Download the API Documentation
The complete documentation of all classes and methods available in the API can be found in the Docs below. The Docs below are javadocs, but the function names and explanations remain the same for all the platforms and the documentation is self explanatory. We recommend you download the docs and read through them completely once before you integrate your application (updated on 6th March, 2008).
Core_Docs_v3_10.zip
Domains_Docs_v3_10.zip (updated on 1st April, 2008)
Hosting_Docs_v3_10.zip
OtherProducts_Docs_v3_10.zip
Instructions to pass parameters to functions using the Perl Kit
Since Perl uses typeless variables you will have to ignore the datatypes presented in the docs. But for assigning values to variable of types other than strings and integers special care will have to be taken. Below is the list of datatypes presented in the API Doc and their usage in Perl.
|
Java Data |
Types Assigning values in Perl |
| String |
“firstname@secondname.com” |
| int |
123 |
| HashMap (Datatype for storing name-value pair) |
{“domain1.com”=>1,”domain2.com”=>1} |
| Array and Vector (Datatype for storing more than one value) |
["ns1.domain.com","ns2.domain.com"] |
| boolean (Datatype for storing true or false) |
TRUE / FALSE |
Example:
For Calling a Function which takes a String datatype and an integer datatype as its paramters
public int function1(java.lang.String userName, int parentid)
$result = $obj->function1(“firstname@secondname.com”,1);
For Calling a Function which takes a HashMap, a String Array and an integer Array as its parameters, where domainHash contains the domainname and the number of years as name value pairs.
public java.util.HashMap function2(java.util.HashMap domainHash, java.lang.String[] orderby, int[] resellerId)
$result = $obj->function2({“domain1.com”=>1,”domain2.com”=>2},["column1","column2"],[22,33])
For Calling a Function which takes a Vector and a boolean as its parameters
public java.lang.String function3(java.util.Vector nameServers, boolean add)
$result = $obj->function3(["ns1.domain.com","ns2.domain.com"],TRUE)
Step 3. Extract the files from the API Kit archive
You should get the following directory & files structure
cgi-bin/ – Pre-written examples. You can directly run these examples to test API functionality
lib/ – The Perl classfiles, library files and wsdl files that you need to run your application
Step 4. Run the examples
You can run the pre-written examples provided in the “examples” folder. Note the following steps to do so -
1. Upload the “examples” and “lib” folders to your web server where you run your Perl scripts. Make sure that both these folders are uploaded to the same parent folder.
2. You must have a recent version of Perl installed on the server.
Please do NOT use a version of SOAP-Lite newer than 0.60, which is the current stable release.
3. You must have a Demo account ready the first time. Read the General instructions if you have not yet setup your demo account. Reference: General API Integration Instructions >>
The Demo server duplicates all functionality of the live server, however all Domain Names will appear as available on the Demo Server. It does not query the live registry and therefore names which are not available on the live registry will still appear as available on the Demo Server. At times connectivity to the DEMO Registry may be down resulting in errors.
4. Make the appropriate changes to the “constants.cgi” file in the “cgi-bin” folder, by putting in the values for your “username”, “password” and “parentid”. The remaining settings have already been made for you in this file. You may only need to change the path for the “wsdl” folder if you have uploaded the wsdl folder elsewhere.
5. The URL to which the call is made is maintained in the “config.sh” file inside the “lib” folder. You can make changes to this file and redirect your calls to the appropriate server.
6. Import and point to note is that you will have to execute the config.sh file from the cgi-bin directory after making any changes in this file to reflect the changes.
7. Every Example file has a set of functions which you can run.
8. Once you have modified the appropriate example file, access it over your webserver by putting in your URL such as http://yourserver/examples/html and choose the required function from the links given in the left frame.
In registering/managing any domain name on the demo server always use ns1.onlyfordemo.net and ns2.onlyfordemo.net as your nameservers. ANY OTHER Nameserver will result in an INVALID NAMESERVER error.
Step 5. Understanding Errors
Make sure you have read the General API Integration Instructions to obtain links to the error format and possible error documents. Reference: General API Integration Instructions >>
Step 6. Writing your own code
After running each example above, if you simply refer to the corresponding .Perl file in the lib folder you will easily be able to figure out the code snippet you need to write in order to make a similar call.
Making an API call to perform any action is a matter of three steps:
(i) Include the appropriate Perl package as below
use lib::Customer;
(ii) Obtain a pointer to the required Class. This is done by using the code below
our $Customer = new Customer($debugMode);
(iii) Call the required method on this object. A complete reference of all methods is available in the Docs folder. This can be achieved by using the code below
$Customer->wsdlURL($wsdlFile);
$Customer->StartServices()
my @param = ($SERVICE_USERNAME, $SERVICE_PASSWORD, $SERVICE_ROLE, $SERVICE_LANGPREF, $SERVICE_PARENTID, $customerUserName, $customerPassword, $name, $company, $address1, $address2, $address3, $city, $state, $country, $zip, $telNoCc, $telNo, $altTelNoCc, $altTelNo, $faxNoCc, $faxNo, $customerLangPref);
You will notice above that EVERY method in the docs takes the same first 5 parameters as below
String SERVICE_USERNAME, String SERVICE_PASSWORD, String SERVICE_ROLE, String SERVICE_LANGPREF, int SERVICE_PARENTID
In the examples these parameters have been put into a single constants file from which they are accessed by including the constants file. These parameters are common no matter which method you call. These parameters mean the following
String SERVICE_USERNAME: Your UsernameSERVICE_PASSWORD
String : Your PasswordSERVICE_ROLE
String : This will always be a string "reseller"SERVICE_LANGPREF
String : The 2 letter code of the language in which you wish to receive errors and descriptions - "en" for EnglishSERVICE_PARENTID
int : The ID of your parent which you can get from your profile section
Step 7. Change the information to Live information when you are ready
Once you have followed the steps above and got the test examples to work successfully, you can duplicate the same code in your live application and replace the Demo Server and Reseller account information with your live username and password. You will make this change in the “config.sh” file in the “lib” folder
Tags: Api, appropriate server, Demo Server, Java, Perl, Web Server