About
Technical
Operations

OVH SOAPI


Discover the OVH API based on SOAP and WSDL. Click here.



What's that?

The PRE-PAYMENT service is a way of using the points that you've earned or bought on your loyalty or reseller account.
The system is based on the usual ordering process or on the specialised order automation system.
100 points on your account is equivalent to £1 excl. VAT.



Rates

1 point on your account is equivalent to €0.01.
When purchasing points, VAT is included.




Using points:

You can pay for your orders in points through the SoAPI system or through the usual ordering process.
With the rule "100 points = £1 VAT Free, you can easily know how many points are needed to pay for your order.

For example: I have an order for a dedicated server 136.15 . I can pay with 13,615 points from my account.



Resellers:

A specific loyalty program is underway. Watch this space for updates.

Automation by batch-mail


This system allows you to convert your order points and perform operations on your services.

The conversion process is done by sending a formatted email to the address batch@ovh.com, or by the use of SOAPI. This email must match the syntax defined below and be authenticated by the following method: password, MD5 signature, PGP or MIME.

Synoptic to follow:
  • 1. create your order or operation by following the syntax defined below
  • 2. authenticate your order by one of the following methods : password, MD5 signature, PGP or SMIME
  • 3. send your order/operation by mail to batch@ovh.com
    (use batch-test@ovh.com if you want to test it)

To create your mail, here are the rules:
  • The pre-payment system does not include the formatted mail and sent as text/plain on batch@ovh.com
  • If you use MD5 authentication, signatures must be added to the end of the email in text/plain.
  • Do not add attachment.

Do not hesitate to use the address batch-test@ovh.com that allows you to simulate the order/operation and therefore familiarise yourself with the mail system.

A batch-mail generator is at your disposal in the Control Panel, Administration > Loyalty/Retailer > Automation Tools section.






Orders/available operations list


Creation of a domain / Transfer of a domain

                    ## this section specify batch options

                    batch.version: 4.0
                    batch.account: XXXXX-ovh
                    batch.referer: ma-ref-123456
                    batch.type: orderDomain
                    batch.auth.method: md5
                    batch.autopayment: yes

                    ## this section specify order

                    order.domain.name: ovh.com
                    order.domain.command: create    # can be: create | transfer | renew
                    order.hosting.type: 720plan     # can be: none | 90plan | 720plan | xxlplan | mediaplan 
                    order.offer: gold               # can be: gold | platine | diamond
                    order.resellerProfile: agent    # can be: none | whiteLabel | agent

                    ## this section specify owner

                    # give either contact.owner.id or contact.owner.<name|firstname|...>
                    contact.owner.legalform: corporation # can be: corporation | individual | association | other
                    contact.owner.vat:
                    contact.owner.name: XXXX
                    contact.owner.firstname: XXXXX
                    contact.owner.organisation: XXX
                    contact.owner.email: XXX@XXXX.net
                    contact.owner.address: XXX XXX XXX XXX
                    contact.owner.city: XXXXXX
                    contact.owner.zip: XXXXX
                    contact.owner.country: FR
                    contact.owner.language: fr
                    contact.owner.phone: +33.XXXXXXXX
                    contact.owner.fax:

                    ## this section specify contacts

                    contact.tech.id: ve174-ovh
                    # give either contact.tech.id or contact.tech.<name|firstname|...>
                    contact.admin.id: ve174-ovh
                    # give either contact.admin.id or contact.admin.<name|firstname|...>
                    contact.billing.id: ve174-ovh
                    # give either contact.billing.id or contact.billing.<name|firstname|...>

                    ## this section is mandatory for .fr

                    option.identification.method: birthPlace # can be: siren | inpi | birthPlace | afnicIdent
                    option.identification.legalName: XXX
                    option.identification.legalNumber: 123456789
                    option.identification.afnicIdent:
                    option.identification.birthDate: 01/01/2008
                    option.identification.birthCity: XXXXXX
                    option.identification.birthDepartement: XX
                    option.identification.birthCountry: FR

                    ## this section let you specify dns, not needed if you take a sharedHosting

                    option.dns.group: hosting # can be: hosting | dedicated | external
                    option.dns.master: dns12.ovh.net
                    option.dns.slave1: ns12.ovh.net
                    option.dns.slave2: XXXX.ovh.net 127.0.0.1
                    option.dns.slave3:
                    option.dns.slave4:

                    ## authinfo code for gTlds and .pl transfer

                    option.domain.authinfo: XXXXXXXXXXXXXXX

                    ## allow you protect your whois data in gtlds domain names

                    option.owo: yes
                        
                      






Renewal of a domain

                    batch.version: 4.0
                    batch.account: XXXXX-ovh
                    batch.referer: ma-ref-123456
                    batch.type: orderDomain
                    batch.auth.method: md5
                    batch.autopayment: yes

                    order.domain.name: ovh.com
                    order.domain.command: renew

                    batch.auth.md5: b0a24f10d535d1b9ef40e50e97a0c312
                        
                      






Calling a SOAPI function: Change domain DNS

                        batch.version: 4.0
                        batch.account: XXXXXX-ovh
                        batch.referer: ma-ref-123456
                        batch.type: soapi
                        batch.auth.method: md5
                        batch.autopayment: yes

                        soapi.method: domainDnsUpdate
                        soapi.param.domain: ovh.com
                        soapi.param.dns1: dns12.ovh.net 
                        soapi.param.dns2: ns12.ovh.net
                        
                      






Explanation of authentication methods




MD5 Signature


It is a method that is based on calculating the MD5 hash of the email you send and the passphrase you entered in the manager. When using this method just:
  • indicate that you want to use the MD5 method
    batch.auth.method: md5
  • calculate the MD5 hash of this email. You can use a script in Perl or PHP, provided below

  • add at the end of the email the hash
    batch.auth.md5: 9b02cb2890ce787fdfeef72473a7a149

Script for generation of MD5 in perl

                         #!/usr/bin/perl
                         use strict;
                         use Digest::MD5 qw(md5_hex);

                         # fichier à signer
                         my $file = "email.txt";
                         
                         my $body;
                         open (F, $file);
                         while(<F>) {
                            $body.=$_;
                            print $_;
                         }
                         close(F);

                         my $passphrase = "MaPassPhraseQuiEstUnique";
                         my $texte_a_hasher = $passphrase.$body;
                         $texte_a_hasher =~ s/\s//g;

                         # génération du MD5
                         my $signature = md5_hex($texte_a_hasher);

                         $body .= "batch.auth.md5: $signature\n";
                         print $body;
                                  
                                  


Script for generation of MD5 in PHP

                         <?
                         // ouverture du fichier source
                         $body = @file_get_contents("email.txt");

                         // PassPhrase saisie dans le MANAGER
                         $passphrase = 'MaPassPhraseQuiEstUnique';

                         $texte_a_hasher = preg_replace('/\s/','',$passphrase.$body);

                         //génération du MD5
                         $signature = md5($texte_a_hasher);
                         $body .= 'batch.auth.md5: '.$signature;

                         // Affichage du Mail à envoyer
                         echo "$body\n" ;
                         ?>
                                  
                                  



Table of mandatory or optional sections


The mandatory sections are indicated by a and optional sections are noted with 'option'.

create transfer renew soapi
batch
order
contact
Option Option Option
soapi






Conversion of points in a domain order


Batch


batch.version


You must indicate the version number.

example:
batch.version: 4.0

batch.account


You must indicate the NIC Handle of the purchase order. If you use the prepaid account, the transactions are made on the NIC Handle.

example:
batch.account: XXXXXX-OVH

batch.referer


You can specify a reference to indentify your request.

example:
batch.referer: ma-ref-123456

batch.type


You must indicate the type of application. The possible values are 'orderDomain' for a creation, renewal or transfer of a domain, and 'soapi' for a query using SOAPI.

example:
batch.type: orderDomain

batch.auth.method


The types of authentication methods are md5, pgp, smime or plain. For more information on authentication methods, see The pre-payment service technical page .

example:
batch.auth.method: md5

batch.autopayment


You should indicate whether the order should be paid using the prepaid account.

example:
batch.autopayment: yes






Order


order.domain.name


You must indicate the domain name.

example:
order.domain.name: ovh.com

order.domain.command


You must indicate the type of order for the domain name : create, transfer or renew.

example:
order.domain.command: create

order.hosting.type


You must indicate the type of hosting: none for none, 90plan, 720plan, mediaplan or xxlplan.

example:
order.hosting.type: xxlplan

order.offer


Type of domain name offer must be indicated: Gold, Platinum or Diamond.

example:
order.offer: diamond

order.resellerProfile


You must indicate the type of retailer: none for none, whiteLabel for white label and agent for agent.

example:
order.resellerProfile: none






Contact


This section defines the domain contacts:
  • owner (owner),
  • administrator (admin),
  • technical (tech),
  • and billing (billing).

contact.owner.id


allows you to set the owner indicating a nichandle.

example:
contact.owner.id: XXXXXX-OVH


contact.owner.name
contact.owner.firstname
contact.owner.legalform
contact.owner.organisation
contact.owner.address
contact.owner.zip
contact.owner.city
contact.owner.country
contact.owner.phone
contact.owner.fax
contact.owner.email
contact.owner.language
contact.owner.vat


Allows you to set the owner indicating all information.

example:
                            contact.owner.name: MySurname
    contact.owner.firstname: MonName
    contact.owner.legalform: individual
    contact.owner.organisation: OVH
    contact.owner.address: 5 Fitzwilliam place    contact.owner.city: Dublin
    contact.owner.zip: 00000
    contact.owner.country: IE
    contact.owner.phone: +353.16390037
    contact.owner.fax:
    contact.owner.email: support@ovh.ie
    contact.owner.language: en
    contact.owner.vat:
                            

contact.admin.*
contact.tech.*
contact.billing.*


The system is identical for other contacts.






Option


option.identification.method
option.identification.legalName
option.identification.legalNumber
option.identification.afnicIdent
option.identification.birthDate
option.identification.birthCity
option.identification.birthDepartement
option.identification.birthCountry


This section is mandatory for the creation and transfer of .fr domains.

example:
                            option.identification.method: 
birthPlace
option.identification.legalName: OVH
option.identification.legalNumber: 123456789 option.identification.afnicIdent:
option.identification.birthDate: XX/XX/2009
option.identification.birthCity: 
MyTown     option.identification.birthDepartement: 59 option.identification.birthCountry: IE

                            


option.dns.master
option.dns.slave1
option.dns.slave2
option.dns.slave3
option.dns.slave4
option.dns.slave5


This section allows you to set the DNS to operate for the creation or transfer of a domain name.

example:
                            option.dns.master: dns12.ovh.net
    option.dns.slave1: ns12.ovh.net
    option.dns.slave2:
    option.dns.slave3:
    option.dns.slave4:
    option.dns.slave5:

                            


option.owo


This section allows you to activate OwO (Data Protection in Whois) for .com, .net, .org, .info and .biz domains.

example:
                            option.owo: yes
                            


option.domain.authinfo


This section allows you to specify the AUTHINFO code required for transfers of gTLD domains (.com, .net, .org, .info, .biz) and .pl .

example:
                            option.domain.authinfo: XXXXXXXXXXXXXXX
                            






Soapi


soapi.method
soapi.param.*


This section allows you to simply call up SOAPI functions soapi.method indicates the name of the method, the prefix soapi.param. to define all the parameters to pass to the function.

example:
                              soapi.method: zoneEntryAdd
    soapi.param.domain: ovh.com
    soapi.param.subdomain: subdomains 
    soapi.param.fieldtype: A
    soapi.param.target: 127.0.0.1
                            







By continuing to browse this website, you accept that cookies will be used to ensure that your visit runs smoothly and obtain user statistics. Find out more and manage cookies.
OK
From January 1st 2015, in accordance with the amended Directive 2006/112/EC, any prices displayed which include VAT may vary depending on the customer's country of residence (by default, any prices displayed which include VAT, shall be the current Irish VAT rate - please note all displayed prices exclude VAT)