Use cases and basic steps

Register a domain name

Before registering a domain name, you need to know the following information concerning the extension:

  • The registration delay
  • The minimum number of nameservers and if a successfull DNS test is required
  • The registration process
  • The restriction (if any)
  • The additional information (if any)
You can get them on the documentation of the extension. See our list of extensions
 

Once you are ready, you need to go through the steps below:

  1. Create a new contact ID for the domain name registrant with contactCreate function or use an existing one already created in your account.
    Ensure it is defined with isOwner = 1
  2. If additional information are needed, provide them to your registrant ID
    Look at  the additional fields of the extension. Example for .aero domains
  3. Create the necessary contacts for administrative / technical / billing contacts or use existing one already created in your account or use your reseller ID.
    Ensure they are defined with isOwner = 0
  4. If a DNS test is required, ensure that the domain name is installed on your nameservers according to the technical requirements
  5. Create the domain name with domainCreate function with the minimum number of nameservers required, a duration (matching the registration delay range).
    If the domain name uses our nameservers, you can provide a DNS template number so that the zone will be intialized with your DNS settings.
  6. Try / catch the SOAP errors when calling the API functions
  7. Get the domainCreate result which can be:
    • DONE: Well done, the domain is registered
    • ERROR: Bad luck, an error occured. Investigate the message and try again
    • PENDING: The result will be asynchronous. Store the operation number and call the queryOpe function regularly to track the final processing. See
  8. As a final step, if the request is DONE, you can :

Transfer a domain name

Before transferring a domain name, you need to know the following information concerning the extension:

  • The use of an EPP code (if any)
  • The minimum number of nameservers and if a successfull DNS test is required
  • The transfer process
You can get them on the documentation of the extension. See our list of extensions
 

Once you are ready, you need to go through the steps below:

  1. Create a new contact ID for the domain name registrant with contactCreate function or use an existing one already created in your account
    Ensure it is defined with isOwner = 1
  2. Create the necessary contacts for administrative / technical / billing contacts or use existing one already created in your account or use your reseller ID.
    Ensure they are defined with isOwner = 0
  3. If a DNS test is required, ensure that the domain name is installed on your nameservers according to the technical requirements
  4. Transfer the domain name with domainTransferIn function with the minimum number of nameservers required and the EPP code if any.
  5. Try / catch the SOAP errors when calling the API functions
  6. Get the domainTransferIn result which can be:
    • ERROR: Bad luck, an error occurred. Investigate the message and try again
    • PENDING: The result is never immediate due to the transfer process. Store the operation number and call the function regularly to track the final processing.
  7. One the request is DONE, you must change the EPP code with domainAuthID function. 
  8. As a final step, if the request is DONE, you can:

Change the ownership of a domain name

Before updating the domain registrant of a domain name, you need to know the following information concerning the extension:

  • The trade process
  • The restriction (if any)
  • The additional information (if any)
You can get them on the documentation of the extension. 
 

Once you are ready, you need to go through the steps below:

  1. Create a new contact ID for the domain name registrant with contactCreate function or use an existing one already created in your account
    Ensure it is defined with isOwner = 1
  2. If additional information are needed, provide them to your registrant ID as the new domain name holder must fullfil the registration rules.
    Look at  the additional fields of the extension. Example for .aero domains
  3. Change the registrant with domainTransferOwner function
  4. Try / catch the SOAP errors when calling the API functions
  5. Get the domainTransferOwner result which can be:
    • ERROR: Bad luck, an error occurred. Investigate the message and try again
    • PENDING: The result is never immediate due to the trade process. Store the operation number and call the queryOpe function regularly to track the final processing.

Update nameservers of domain name

Before updating nameservers, you need to know the following information concerning the extension:

  • The minimum number of nameservers and if a successfull DNS test is required

You can get them on the documentation of the extension. 

Once you are ready, you need to go through the steps below:

  1. If a DNS test is required, ensure that the domain name is installed on the new  nameservers according to the technical requirements.
  2. Update the domain name with domainChangeDNS function with the minimum number of nameservers required. 
  3. Try / catch the SOAP errors when calling the API functions
  4. Get the domainChangeDNS result which can be:
    • DONE: Well done, the domain is updated
    • ERROR: Bad luck, an error occured. Investigate the message and try again
    • PENDING: The result will be asynchronous. Store the operation number and call the queryOpe function regularly to track the final processing.
  5. As a final step, if the request is DONE, you can :
    • Apply a DNS template to setup the domain zone with domainZoneInit function if the domain name uses our DNS service.
    • Activate DNSSec with domainSetDNSSec function or domainSetDNSSecExt function.

Pending requests management

When the result of an API call is not immediate, the result status will be pending. In such case, you will need to track the processing of the operations. Please note that an operation can remain pending from minutes to several days.

To achieve this, you need to create a script which will be executed like a cron task at given interval. You need to go through the steps below:

  1. Create the list of pending operations to be checked
    • From your own system if you have stored the operation ID after the API calls
    • From our API with the queryOpePending function
  2. For each operation, get the current status with queryOpe function which can be:
    • DONE: Well done, the operation is successfully done
    • ERROR: Bad luck, an error occurred. Investigate the message and try again
    • PENDING: The result is still under processing