Reseller Documentation (DE)
- Generelle Informationen
- Was ist ein "OT+E" System?
- Warum ein Joker.com Reseller werden?
- Wie kann ich ein Reseller werden?
- Wer kann ein Reseller werden?
- Gibt es eine Gebühr, um Reseller zu werden?
- Wie aktualisiere ich meine Reseller-Daten?
- Wie füge ich bestehende Domains zu meinem Portfolio hinzu?
- Wofür dient die 'admin'-E-Mail-Adresse?
- Wofür dient die sogenannte 'Zusätzliche Whois-Signatur'?
- Was ist der Joker.com PGP/GPG-Schlüssel?
- Wenn ich Joker.com irgendwann verlassen möchte, muss ich dann mit Problemen beim Transfer meiner Domains rechnen?
- Wie hoch ist der Mindestfinanzierungsbetrag, um Reseller zu werden?
- Muss ich die Mehrwertsteuer bezahlen?
- Was ist der Unterschied zwischen einem Reseller und einem Endkunden?
- Muss ich PGP verwenden?
- Kann ich mehrere Methoden parallel verwenden, um auf meine Domains zuzugreifen?
- Wie verlängere ich eine Domain, ohne Guthaben auf meinem Konto zu haben?
- Reseller Control Panel
- The Reseller Control Panel
- The Joker.com PHP Client
- Installation of Joker.com PHP Client
- Usability Hints
- DMAPI
- Basics
- Account and Handling
- Domains
- Contacts
- Nameservers
- Modify Zonedata
- Rights and Roles
- Other Requests
- Code-Examples
- Email Gateway
- Plugins
- Werkzeuge
Generelle Informationen
Was ist ein "OT+E" System?
"OT&E" bedeutet "Operational Test & Evaluation".
Dies ist in der Regel der Name für Test- und Bewertungssysteme, bei denen Aktivitäten niemals "echte" Daten oder Eigenschaften wie registrierte Domains oder Kontakte verändern.
Unser OT&E-System ist eine Art "Kopie" von Joker.com, bei der spezielle "Dummy"-Registrys verbunden sind. Domainänderungen und Objektmanipulationen können durchgeführt werden, ohne dass mit echten Daten gearbeitet werden muss.
Dies ermöglicht es Wiederverkäufern, ihre Skripte, Programme und Methoden über die Joker.com Portale und auch per Joker.com API zu testen.
Unsere OT&E Systeme bestehen i.W. aus:
- www.ote.joker.com (standard Web Portal)
- ote.rpanel.io (Portal für Wiederverkäufer)
- dmapi.ote.joker.com (Joker.com API)
- whois.ote.joker.com (Whois)
Wenn Sie an der Nutzung dieser Systeme interessiert sind, sollten Sie erwägen, Wiederverkäufer von Joker.com zu werden.
Wiederverkäufer profitieren von Rabatten von bis zu 40% auf alle Preise.
Warum ein Joker.com Reseller werden?
Es gibt zweifelsohne viele gute Gründe, an unserem Reseller-Programm teilzunehmen. Lassen Sie uns die aufregenden Vorteile erkunden, die Sie genießen können:
- Rabatte: Als Joker.com Reseller erhalten Sie Rabatte auf alle Domaintransaktionen. Sie beginnen mit einem Rabatt von 20%, der sich je nach Aktivität auf bis zu 40% erhöhen kann. Sparen Sie Geld und erweitern Sie Ihr Geschäft - eine Win-Win-Situation!
- Benutzerfreundliches Interface: Erhalten Sie Zugang zum Reseller Control Panel (rpanel.io), einer alternativen Weboberfläche, die speziell für Wiederverkäufer entwickelt wurde. Dieses leistungsstarke Tool vereinfacht die Domain-Verwaltung und ermöglicht es Ihnen, selbst große Mengen an Domains und Kontakten mühelos zu verwalten. Durch die Darstellung der Daten in Echtzeit entfällt das zeitraubende Ausfüllen von Formularen.
- Test- und Prüfsystem: Testen Sie die Registrierungs- und Domainmanipulationsmethoden von Joker.com, ohne die realen Daten zu beeinflussen. Das OT&E-System stellt virtuelle Domains und Registries zur Verfügung, mit denen Reseller experimentieren und verschiedene Funktionalitäten testen können. Sie können furchtlos experimentieren, Ihre Fähigkeiten verfeinern und Vertrauen gewinnen.
- Nahtlose Integration: Unsere HTTP-basierte API macht die Skripterstellung und Integration in Ihre bestehenden Lösungen zu einem Kinderspiel. Automatisieren Sie Prozesse und optimieren Sie Ihre Arbeitsabläufe ganz einfach.
- Bequeme API und E-Mail-Gateway: Registrieren Sie Domains mühelos, indem Sie Befehle per E-Mail mit PGP-signierten E-Mails senden. Unsere benutzerfreundliche API und unser E-Mail-Gateway vereinfachen den Prozess der Domainregistrierung und sorgen für einen reibungslosen Ablauf.
- Integrationsmodule für Hosting-Lösungen: Wenn Ihr Unternehmen Hosting-Lösungen wie WHMCS, Clientexec oder Hostbill nutzt, können Sie Ihre Domain-Anforderungen mit unseren Integrationsmodulen automatisieren. Diese Module erleichtern die Domainregistrierung, -erneuerung, -abrechnung und -wartung und lassen sich nahtlos in Ihre bestehende Geschäftslösung integrieren. Die Installation erfordert nur ein paar einfache Schritte, wenn sie überhaupt notwendig ist.
Wie kann ich ein Reseller werden?
Klicken Sie einfach hier und folgen Sie den Anleitungen.
Wer kann ein Reseller werden?
Als Privatperson oder Unternehmen können Sie Joker.com Reseller werden. Wenn Sie fünf oder mehr Domains haben, lohnt es sich auf jeden Fall, über die Möglichkeiten eines Resellers nachzudenken.
Gibt es eine Gebühr, um Reseller zu werden?
Nein, die Anmeldung als Joker.com Reseller ist absolut kostenlos. Allerdings müssen Sie als Reseller Ihr Joker.com-Konto im Voraus aufladen (Pre-Payment). Die Höhe des Betrages, den Sie einzahlen, liegt ganz bei Ihnen.
Jedes Mal, wenn Sie eine Bestellung aufgeben, wird der entsprechende Betrag von Ihrem Konto abgebucht. Diese Funktion gewährleistet zuverlässige automatische Erneuerungen, wenn Sie sich dafür entscheiden, sie zu nutzen.
Wie aktualisiere ich meine Reseller-Daten?
Um Ihre persönlichen Daten, Ihre Standards für die Registrierung, Whois-Vorlagen und mehr zu ändern, melden Sie sich bitte bei Joker.com mit Ihren Reseller-Zugangsdaten an.
Klicken Sie dann im Dashboard unter "Schnellzugriff" auf "Resellerbereich" und wählen Sie "Resellerdaten aktualisieren", oder verwenden Sie das Menü "Resellerbereich", gefolgt von "Resellerprofil".
Weitere Einstellungen wie "Sprache für System-E-Mails" oder "Automatische Verlängerung" finden Sie unter Ihr Konto oder auch im Menü "Mein Joker", gefolgt von "Mein Profil".
Wie füge ich bestehende Domains zu meinem Portfolio hinzu?
Wechsel zu einem Reseller-Konto
Wenn Sie sich entscheiden, Ihr Joker.com-Login-Konto auf ein Joker.com Reseller-Konto zu migrieren, werden alle Ihre Domains automatisch zu diesem Reseller-Konto hinzugefügt.
Verschieben einer Domain von Joker.com Benutzer A zu Benutzer B (kooperativ)
Wenn Sie die vorhandene Domain besitzen und ein anderes Joker.com-Konto verwenden, klicken Sie auf das "Menü"-Symbol (das "Hamburger"-Symbol rechts) der Domain, die Sie verschieben möchten, und wählen Sie "Rechte".
Wählen Sie "Zuweisung" (= "Interner Transfer") als "Rolle", geben Sie die E-Mail-Adresse des Kontoinhabers ein, an den die Domain übertragen werden soll, fügen Sie bei Bedarf einen Kommentar/Beschreibung hinzu und klicken Sie auf "Hinzufügen".
Sie können dann weitere Domains hinzufügen. Drücken Sie bitte "Speichern", wenn Sie fertig sind.
Anschließend wird ein Transfer-Link an die von Ihnen eingegebene E-Mail-Adresse gesendet. Sie finden dies auch als "ausstehenden" Datensatz im oben genannten "Berechtigungen"-Dialog. Der "Transfer-Link" ist 7 Tage lang gültig.
Der Empfänger des Transfer-Links importiert die Domain einfach, indem er auf diesen Link klickt.
Alternativ enthält diese E-Mail auch einen "internen Transfer-Key", der über "Domain Transfer" auf Joker.com ("interner Transfer") verwendet werden kann.
Verschieben einer Domain von Joker.com Benutzer A zu Benutzer B (Beanspruchung)
Wenn Sie Domains von einem Joker.com-Konto (regulär oder Reseller) zu einem anderen Joker.com-Konto (z. B. Ihrem neuen Reseller-Konto) "verschieben" oder beanspruchen möchten, wählen Sie bitte "Inhaber/Rechtetransfer" im "Domains"-Menü.
Geben Sie Ihre Domain ein und klicken Sie auf "Weiter" - abhängig von den Whois-Daten und dem aktuellen Besitz der Domain müssen Sie möglicherweise ein Dokument einsenden.
Vorgehensweise mit dem E-Mail-Gateway
Wenn Sie Domains, die anderen Joker.com-Login-Konten gehören, "verschieben" möchten, können Sie dies einfach mit dem Roles & Grants-System durchführen, um einen internen Transfer zum gewünschten Konto durchzuführen.
Wofür dient die 'admin'-E-Mail-Adresse?
Ein Joker.com-Reseller hat in der Regel zwei registrierte E-Mail-Adressen bei Joker.com, eine für die 'Robot'-E-Mails und eine weitere für administrative Aufgaben.
Reseller-Neuigkeiten und monatliche Rechnungen werden an die administrative Adresse gesendet. Die 'Robot'-Adresse entspricht der Standardadresse, die mit dem Joker.com-Login verknüpft ist.
Alle Benachrichtigungen, die sich aus Domain-Bestellungen, Verlängerungen und Änderungen ergeben, werden an diese Adresse gesendet.
Diese Adresse für Benachrichtigungen kann einfach in 'Mein Profil' geändert werden.
Wofür dient die sogenannte 'Zusätzliche Whois-Signatur'?
Die "Zusätzliche Whois-Signatur" ist ein Teil der Daten, die während der Registrierung als Joker.com-Reseller abgefragt werden.
Diese Eingabefelder sind optional, aber wenn Sie sie bereitstellen, werden sie verwendet, um Ihre Zeichen im globalen Whois für Ihre Domains zu veröffentlichen.
Auf diese Weise können Ihre Kunden Sie als ihren Domain-Anbieter identifizieren.
Die von Ihnen bereitgestellten Zeichen werden als "Sponsoring Reseller" angezeigt.
Bitte beachten Sie: Sie können diese Daten jederzeit im Reseller-Bereich einrichten oder ändern.
Was ist der Joker.com PGP/GPG-Schlüssel?
Dies ist der öffentliche GPG/PGP-Schlüssel von Joker.com - Sie können ihn verwenden, um signierte Mails von Joker.com zu verifizieren:
-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.0.7 (GNU/Linux) mIsEPOorJQEEAJauWOOvusxn9GFEPjZnQ3x/48OfaPwSN4cIF5ezpUT6FycZQa+q eUnNlS+bj80ULXnyyigmkUGwEtW/Qoyd55RM983pr4KtuHSMSU9gCN1syuHlDOAm 71u6irfv5RaHbJXauMCAgUKn+dBNZVZyUTm9aW2pudcwY45apF2tieTZAAYptClq b2tlci5jb20gc2lnbmVyIHNlcnZpY2UgPGluZm9Aam9rZXIuY29tPoiyBBMBAgAc BQI8/NifAhsDBAsHAwIDFQIDAxYCAQIeAQIXgAAKCRAm3eE0EUTiIx9RA/9HGDrD cVM6PjZHr5jpT4svpv7xrjVRn2OIR+s80RuBAnLyAWOflqJ9342SYD8C7BMAqYm4 wXvC3/yvbQEAqsmJ5Bbq2NV+KDepahTtL8SUQ6TkOSUd9NDOvLoQWVI6o1Dz/3MG HLJfNtx6067Sq8pP8PuYyscPyZ7/uiUilyOrqg== =O/7Q -----END PGP PUBLIC KEY BLOCK-----
Wenn ich Joker.com irgendwann verlassen möchte, muss ich dann mit Problemen beim Transfer meiner Domains rechnen?
Joker.com respektiert seine Kunden und bietet ausgehende Transfers als normalen Vorgang an.
Es gibt keine zusätzlichen oder versteckten Gebühren, die mit einem Transfer-Out verbunden sind.
Wie hoch ist der Mindestfinanzierungsbetrag, um Reseller zu werden?
Derzeit gibt es keine Mindestfinanzierung für Ihr Reseller-Konto. Ihr Rabatt basiert auf dem in der Vergangenheit erzielten Umsatz, so dass Sie die Flexibilität haben, in Ihrem eigenen Tempo zu wachsen.
Weitere Informationen finden Sie auch unter Joker.com Reseller Subscription.
Muss ich die Mehrwertsteuer bezahlen?
Es wird keine Mehrwertsteuer berechnet für:
- alle Wiederverkäufer und andere Geschäftskunden aus EU-Ländern außer Deutschland, die eine gültige USt-IdNr. angegeben haben
- Schweizer Kunden
- Kunden von außerhalb der EU
Die Mehrwertsteuer wird berechnet für:
- Kunden aus der EU, die keine gültige USt-IdNr. haben
- Wiederverkäufer und Geschäftskunden aus Deutschland, unabhängig von der Umsatzsteuer-Identifikationsnummer (deutsche Kunden mit Umsatzsteuer-Identifikationsnummer sind in der Regel zur regulären Umsatzsteuer-/Steuerrückerstattung berechtigt)
Schweizer und Liechtensteiner Kunden sind bis zum 31. Dezember 2017 von der Umsatzsteuer befreit. Ab dem 1. Januar 2018 ändert sich dort die Gesetzgebung, was bedeutet, dass wir auch dort die Mehrwertsteuer berechnen müssen - es sei denn, Sie geben uns eine UID.
Was ist der Unterschied zwischen einem Reseller und einem Endkunden?
Als Reseller profitieren Sie von mehreren zusätzlichen Optionen:
- Bessere und wettbewerbsfähige Preise; je mehr Umsatz Sie generieren, desto höher ist der Rabatt, den Sie erhalten.
- Benachrichtigungs-E-Mails zu Verlängerungen oder Anfragen werden nur an Sie gesendet.
- ICANN WDPR-E-Mails werden in Ihrem Namen gesendet (wir verwenden Ihre Adresse als Absender).
- Sie verwalten alle Domains Ihrer Kunden innerhalb Ihres Portfolios; jedoch können Sie, falls erforderlich oder gewünscht, Ihre Kunden - oder nur einige von ihnen - ihre Domains selbst verwalten lassen.
- Verschiedene Tools stehen kostenlos zur Verfügung (WHMCS, HTTP API, rpanel.io, Web-Frontend, E-Mail-Gateway, OT&E-Testplattformen).
Muss ich PGP verwenden?
PGP oder GPG wird nur benötigt, wenn Sie das E-Mail-Gateway nutzen möchten, um Domains zu bestellen, zu verlängern oder zu verwalten. Wenn Sie die API, RPanel oder die Website nutzen möchten, ist PGP nicht erforderlich.
Kann ich mehrere Methoden parallel verwenden, um auf meine Domains zuzugreifen?
Ja, das ist möglich. Sie sollten jedoch sicherstellen, dass Sie dieselben Aufträge nicht zweimal für dasselbe Objekt erteilen. Wenn Sie beispielsweise eine Verlängerungsanfrage über die Mail-Schnittstelle senden und dasselbe über DMAPI tun, wird die Domain zweimal verlängert.
Wie verlängere ich eine Domain, ohne Guthaben auf meinem Konto zu haben?
Bitte melden Sie sich von Joker.com ab und besuchen Sie dann "Verlängern" im "Domains"-Menü.
Sie sehen dann eine "Vereinfachte Verlängerung ", bei der Sie jede Domain mit jeder Zahlungsmethode verlängern können.
Sie können auch ein anderes Joker.com-Konto verwenden oder ein neues dafür erstellen. Nur wenn Sie mit Ihrem regulären Reseller-Konto angemeldet sind, verwendet das System immer die Reseller-Fonds für Zahlungen.
Alternativ können Sie auch nur geringe Beträge auf Ihr Reseller-Konto einzahlen, nur um regelmäßige Verlängerungen zu ermöglichen.
Die Verwendung von PayPal fügt sofort Gelder auf Ihr Konto hinzu.
Reseller Control Panel
The Reseller Control Panel
RPanel Next is the next generation of our Reseller Control Panel.
It has been created from scratch, focussed to provide you with the ultimate tool to handle all needs of a domain's business.
The application is pretty self-explanatory, but here is a short list of what's important to know about this tool. But you definitely should give it a try!
- Login
Click this link or type https://rpanel.io/ into the address bar of your browser. Use your known login credentials to login. (In case you aren't a reseller yet you can become one here in 3 easy steps).
Once logged in, you'll see an overview of your account, your current balance, your ID and information about the number of domains you have. Additionally, current news and promo activities are providded, and a history your activities from the last 30 days is available.
Filtering/searching is always possible using the header input fields on top of the table columns.
- Domains
Click on "domains" in the top menu and select "overview". In this view you see all your domains in a table from which you can modify every aspect of the domains. With a click on "register" in the top right corner you are able to register new domains. All these actions can be done from this overview table but you can also select the respective menu item from the domains menu on the top.
- Contacts
Click on "contacts" in the top menu to get an overview of all existing contacts. If you click on the contact handle you see all details about this specific contact. Clicking "modify" or "delete" on the right site lets you modify contact info or delete a contact alltogether. Deleting a contact has to be confirmed in the next step. The create button in the top right corner lets you create a new contact.
- Nameservers
If you like to add new nameservers you can do this under the menu item "Nameservers". Create new ones or create a template for nameservers which you can use afterwards.
- Language
Lets you switch between German and English. Those changes are not persistend. To change the default language, click on the user icon next to "language" and select "settings".
- Settings
This is found under the profile icon. From this menu item you can edit your default language, your preferred date/time format, if and when you want to get notified when your balance runs low and if you want to activate or deactive domain autorenew globally.
- Execute Request
This is found under the profile icon. Here you can enter and execute DMAPI requests. Please check the DMAPI area in this FAQ for more information on that.
- Feedback
This is found under the profile icon. Please provide us with feedback to further improve our new RPanel. Every kind of constructive feedback will be greatly appreciated.
- Logout
This is found under the profile icon. You are logged out automatically after a certain time of inactivity. If you are working on a shared computer or want to switch accounts you can log out here.
- Cart
If you registered any domains you have to check out your cart. Here you can add whois privacy to your domains if possible, change the registration period, auto renew status and configure the domain(s) (add contact information or nameservers).
The Joker.com PHP Client
Joker.com provides this tool as an fully working example of how to make use of the Joker.com API (DMAPI).
The Joker PHP Client is a lightweight web interface, demonstrating how to implement a full-featured domain handling.
Please try it out. Log in with your Joker.com reseller account, and operate carefully with it as it is completely functional. Your feedback as a reseller will be greatly appreciated and will help us to improve this application.
Web server
PHP 5.x
Web browser
Summary:
Reseller Control Panel is destined to handle any domain operations
which are offered by the domain registrar Joker.com.
Currently it can:
- show WHOIS of a domain
- register domains
- modify domains
- transfer domains
- renew domains
- delete domains
- lock/unlock domains (transfer related)
- initiate redemption procedure
- create, modify and delete contacts
- create, modify and delete nameservers
- zone operations
- IDN support
- show reseller information
- show sumamry of actions executed through the interface
You can get the newest version at http://sourceforge.net/projects/joker-client/.
Installation:
Please see Installation of Joker PHP Client, and there is also an INSTALL file in the distribution package.
Support:
You can contact us through our support area.
Installation of Joker.com PHP Client
To successfully install this client application, you need a basic knowledge of Web servers, PHP and file systems.
In principle the installation is only a copy and run. The first thing to do is to ensure, that your Web server runs PHP files, and if not to configure it appropriately.
Quick installation:
1. Untar or unzip the distribution (be sure to unzip the subdirectories):
tar -xzvf package_name_x.x.x.tar.gz
in your webserver's document root. If you don't have direct access to your document root, put the files in a directory on your local machine, and transfer the directory on your web server using, for example, ftp.
2. Ensure that all the scripts have the appropriate owner (if PHP is running in safe mode, having some scripts with an owner different from the owner of other scripts will be a problem). Be sure that the application can write log files, temp files and sessions. This means that the folders specified in config.php should be made writeable for the application.
3. This application needs cURL to communicate with DMAPI. You have to have the cURL PHP module enabled. If you run Windows it is provided with every instance of PHP and has to be uncommented in php.ini. Do not forget to restart your webserver after enabling the module. If you run Linux then this module has to be compiled and included. If you wonder how to do this, please read the PHP manual dealing with cURL (http://php.net/curl).
Problems were reported when "zend.ze1_compatibility_mode" is set to "on" in PHP 5.2.5. In lower versions this setting caused no problems.
4. It is recommended that you protect the directory in which you installed the client (unless it's on a closed intranet), for example with HTTP-AUTH (in a .htaccess file).
5. Open the file <www.your-host.com>/<your-install-dir>/index.php in your browser. The Joker.com PHP client should now display a welcome screen with a login dialog.
Have fun and don't forget to send feedback!
Usability Hints
Some notes:
- The default session duration of DMAPI (the service behind this interface) is 1 hour. This means that after 1 hour of inactivity, you will be logged out of both DMAPI and Reseller Control Panel, and asked again for your username and password.
- For support issues, please send us your inquiry through our support area.
DMAPI
Basics
DMAPI-Server URL This is the service address which has to be used for all requests: This is how a request looks like: Header fields which are returned by most requests IMPORTANT: Every request (except "login") requires the presence of the Auth-Sid variable ("Session ID"), which is returned by the "login" request (login). An active session will expire after some inactivity period (default: 1 hour). In case you are using a browser to access this service, the session id will be set as a cookie, hence need not to be specified as Auth-Sid (unless cookies are not supported or turned off). In any case, Auth-Sid has precedence, if provided. Requests consist of these parts:Commonalities for all requests
https://dmapi.joker.com
https://dmapi.joker.com/request/<name-of-request>?<name-of-parameter-1>=<value-of-parameter-1>
&<name-of-parameter-2>=<value-of-parameter-2>&auth-sid=<your-session-id>
Tracking Id
Unique server-assigned tracking id, assigned to almost all requests
Status-Code
0 if no error occured, otherwise other than 0
Status-Text
Human readable error description
Result
ACK or NACK (= "Acknowlegded" or "Not Acknowledged")
Error
May be returned if (and only if) the request was rejected, in this case reason(s) will be provided. Presence of this line in headers is indicative for that processing didn't take place.
Warning
Indicative of non-fatal processing or validation problems
Proc-Id
Joker.com processing ID
HTTP error codes
200 if everything is OK (request was accepted and processed or queued for processing), otherwise the reason will be provided in Error header lines (or, if this is absent, HTTP error code should be used).
Whois Privacy Services
Privacy services are available for most generic top level domain names. The availablitiy of privacy services is indicated in Joker.com's price list and domain search.
For requests "domain-register" and "domain-transfer-in-reseller", there exists an additional parameter "privacy":
- privacy=basic (owner contact name and/or organisation left intact, address & emails are masked)
- privacy=pro (everything is masked)
- privacy=none (same as "no privacy parameter provided")
For "domain-renew", the additional parameter privacy works similar:
- privacy=basic (owner contact name and/or organisation left intact, address & emails are masked)
- privacy=pro (everything is masked)
- privacy=none (explicitly do a renew without privacy services, even if currently privacy is enabled)
- privacy=keep (renew with the same level of privacy service which is currently active for the domain) - this now is also default; for domains without an existing privacy service subscription, "keep" means "none", so there will be no privacy service ordered. If there is an existing privacy service subscription active, and this privacy service is not set to "off", "keep" will also renew this privacy service subscription, together with the domain.
To order privacy services for existing domains, the new request "domain-privacy-order"can be used:
domain=example.com period=12 (in months, as usual) expyear=2016 (privacy expiration year, similar to domain renewal request) privacy=basic|pro If neither period nor expyear is provided, then privacy is ordered for remaining domain lifetime, whatever it is.
Example:
https://dmapi.joker.com/request/domain-privacy-order?domain=example.com&privacy=basic&auth-sid=<your-current-session-id>
The request "domain-set-property" allows to manage privacy services for domains which already do have a valid privacy service subscription:
- privacy=basic (activate "basic" privacy service)
- privacy=pro (activate "pro" privacy service)
- privacy=off (deactivate privacy service - Whois data will be disclosed)
Samples:
Ordering domain with privacy:
https://dmapi.joker.com/request/domain-register?domain=example.com&period=12&owner-c=CCOM-1&billing-c=CCOM-1&admin-c=CCOM-1&tech-c=CCOM-1&ns-list=a.ns.joker.com:b.ns.joker.com&privacy=pro&auth-sid=<your-current-session-id>
Renew domain and order privacy:
https://dmapi.joker.com/request/domain-register?domain=example.com&period=12&privacy=basic&auth-sid=<your-current-session-id>
Request incoming transfer and enable privacy:
https://dmapi.joker.com/request/domain-transfer-in-reseller?domain=example.com&transfer-auth-id=zigzag&billing-c=CCOM-1&admin-c=CCOM-1&tech-c=CCOM-1&privacy=pro&auth-sid=<your-current-session-id>
Temporarily disable privacy (assuming that it is active):
https://dmapi.joker.com/request/domain-set-property?domain=example.com&privacy=off&auth-sid=<your-current-session-id>
Fetch real contact data from privacy protected domain:
https://dmapi.joker.com/request/query-whois?domain=example.com&internal=1&auth-sid=<your-current-session-id>
NOTE: Not retrieved replies will be kept on the server for a period of 30 days, after this time, only the status of specific request will be available (success or failure).
IMPORTANT: Please also note that the registration/renewal period is in MONTHS, NOT YEARS!
Account and Handling
login
Login with Username & Password
Requires (mandatory):
username | Joker.com username (email address) |
password | Joker.com password |
Returns:
Auth-SID | Authenticated Session ID, must be provided with any other request (parameter auth-sid) |
List of TLDs | List of domain TLDs which are available to the reseller. |
To be able to use the entire API, you must have a reseller account with Joker.com (and use this account to log in).
Example:
https://dmapi.joker.com/request/login?username=johndoe&password=mypass
Login with API Keys
Instead of using your user- and password credentials, you may also use so called 'API keys' for login. This way, you can create several DMAPI access facilities, which has several advantages:
- you do not need to expose username and password in your scripts
- API keys can be restricted to be "read only" (no modifications possible), or to allow 'modifications only' (can not produce costs)
- you may hand API keys to your staff to enable them to do specific things with Joker.com
Create your API keys in 'My Profile' in section 'Manage Joker.com API access keys'
Example usage:
https://dmapi.joker.com/request/login?api-key=Key_created_in_your_Profile_at_Joker.com
The result is the same as for "login"-request, you have to use the provided auth-sid for the subsequent actions.
logout
Returns: Nothing
Used to forcibly close (terminate) a session. The session identified by Auth-SID may not be used anymore to send requests. Normally not required as session will timeout anyway (default: 1 hour).
result-list
Accepts:
pending |
get results of requests still in progress |
showall | get all results incl. deletes using result-delete |
period |
get results for specifed period of days (default: 90) |
date | get results received on (or before) specified date. When date is specified, parameter "period" will be applied to this date (instead of today) and defaults to 1 |
offset |
start dispalying results from specified position |
limit | only get number of results specified by limit |
status |
get results having specified status (ack/nack/?) |
count-only |
when set to 1, only count number of records and return single line in format "Records: N" |
All following filters may use patterns ("*" and "?") |
|
---|---|
rtype |
get results for requests of specified type (domain-register/etc) |
objid |
get results for specified object ids (domain names, contacts, hosts) |
procid | get results for specified proc-id |
svtrid | get results for specifued SvTrId |
cltrid | get results for specified ClTrId |
Returns:
List of answers from joker.com (one per line):
TimeStamp SvTrId Proc-ID request-type status ClTrId
Where:
TimeStamp: The time when request was made, YYYYMMDDHHMMSS SvTrID: Tracking-Id associated with this request. Proc-ID: Proc-Id associated with this request. request-type: The type of the request. request-object: The object name (host, domain or contact handle) status: ack, nack or ?, where ack means that request was completed successfully. ClTrId: User specified transaction ID, or "-" if nothing was provided by the user
Example:
https://dmapi.joker.com/request/result-list?auth-sid=20ddb8c3b2ea758dcf9fa4c7f46c0784
result-retrieve
Accepts:
Proc-ID | One of these must be specified. If both are specified, SvTrId has precedence. |
SvTrID |
Returns:
Answer (processing result) associated with specified Tracking/Processing ID. If detailed information (content) is not available, only status will be returned |
Please note:
Since there is no requirement of uniqueness for user-specified transaction ids, it is not possible to use them to retrieve specific results.
Example:
https://dmapi.joker.com/request/result-retrieve?proc-id=8181810&auth-sid=<your-current-session-id>
result-delete
Accepts:
Proc-ID |
One of these must be specified. If both are specified, SvTrId has precedence |
SvTrID |
Returns:
A descriptive message (confirmation) in case of success.
This request will delete the content (not the status) of a reply to an asynchronous request. Deleted results will not be listed anymore when using result-list.
query-profile
Returns:
Returns reseller profile data in format "key: value". May be used to query account balance
Example:
https://dmapi.joker.com/request/query-profile?auth-sid=20ddb8c3b2ea758dcf9fa4c7f46c0784
Domains
query-domain-list
Accepts (optional)
pattern | Pattern to match (globbing, like "dom*") |
from |
Start from this item in list |
to |
End by this item |
showstatus |
Returns additional column, showing domain status; may be 0 or 1 |
showgrants |
Returns additional column, showing domain grants; may be 0 or 1 |
showprivacy |
Returns additional columns, showing privacy status; may be 0 or 1 The following columns will be added: privacy-status - shows the currently active privacy status |
Returns
List of registered domains and their expiration dates (one per line, separated by whitespace). If "showstatus" is present, the the list will be with three columns, the last one showing domain status (like "lock,autorenew" etc - comma separated).
Example:
https://dmapi.joker.com/request/query-domain-list?pattern=a*&showstatus=1&auth-sid=<your-current-session-id>
domain-register
Requires (mandatory)
domain |
Domain name to register |
period | Registration period in months (not in years!) |
status | Set domain status (only "production" is accepted so far) |
owner-c | Owner contact handle |
billing-c | Billing contact handle |
admin-c | Administrative contact handle |
tech-c | Technical contact handle |
ns-list | List of name servers, delimited by colon |
Accepts (optional)
autorenew | if set to "1", domain will be autorenewed upon expiration |
language |
3 letter language code for IDN domains |
registrar-tag |
Registrar tag, also known as "Membership token", currently only needed for .XXX domains |
privacy |
basic|pro|none - adds whois privacy subscription to domain order, see also Whois Privacy Services |
max-price |
maximum price user is willing to pay for a domain registration, renewal or transfer. If provided, it must be a number (fractions allowed) above 0. If not provided and domain has non-standard pricing, or if max-price is lower than actual domain price at the moment of registration, the request will fail. |
This request allows to register a domain.
You must have registered contacts (handles) to be able to register a domain.(=> contact-create, query-contact-list)
Important: Please note that the registration period is in months, not years. In most cases, this number is a multiple of 12.
Example:
https://dmapi.joker.com/request/domain-register?domain=example.com&period=12&status=production&owner-c=COCO-4711&billing-c=COCO-4712&admin-c=COCO-4712&tech-c=COCO-4712&ns-list=a.ns.joker.com,b.ns.joker.com,c.ns.joker.com&auth-sid=<your-current-session-id>
domain-renew
Requires (mandatory)
domain | domain name to renew |
period | renewal period in months (not in years!) |
expyear |
the wanted expiration year (e.g. '2014') |
Accepts (optional)
privacy | basic|pro|none|keep - adds whois privacy subscription to domain renewal | ||
none: explicitly do a renew without privacy services, even if currently privacy is enabled keep: renew with the same level of privacy service which is currently active for the domain see also Whois Privacy Services |
|||
max-price |
|
With this request you can renew the domain. Please be aware that all renewals are not refundable.
"expyear" is a safety option which can be used instead of "period" to renew domain till specified year (not longer). If you use "period", and by mistake send the request more than once, domain will be renewed again, while with "expyear", it will not be renewed if it's expiration year is greater or equals to specified.
Only one of "period" or "expyear" may be used, but not both.
Please note:
- registration period is in months, not years! In most cases, this number is a multiple of 12.
- to prevent from unintended/errorneous multiple renewals, a specific domain name can only be renewed once per 6 hours. This means, if you want to renew a domain for 2 years, you should use a period of "24" - in case you want to renew using two requests with a period of "12", the 2nd request must not be sent before 6 hours after the 1st one.
Example:
https://dmapi.joker.com/request/domain-renew?domain=example.com&period=12&auth-sid=<your-current-session-id
domain-modify
Requires (mandatory)
domain | domain name to modify |
Accepts (optional)
billing-c | domain contact data to modify |
admin-c | |
tech-c | |
ns-list | list of new nameservers delimited by colon ":" (it will replace existing nameservers!) |
registrar-tag |
Registrar tag, also known as "Membership token", currently used for .XXX domains |
dnssec |
if specified, allows setting or removal of DNSSEC keys for domain. If not specified, DNSSEC records will not be changed. Value of "0" will remove DNSSEC, value of "1" will add DNSSEC (and ds-N parameters must be provided) ds-1 list of DNSSEC parameter sets (min. 2, max. 6) for DNSSEC enabled domains |
With this request you can modify
- contact handles
- nameservers
- DNSSEC parameters (for DNSSEC capable nameservers and TLDs supporting DNSSEC)
Please only specify contact handles which you want to modify, all unspecified handles will be left as is.
For DNSSEC, you will find more information here .
Example:
Example for adding a key (and enabling DNSSEC):
Example for removing DNSSEC information:
domain-delete
Requires (mandatory)
domain |
domain name to delete |
Accepts (optional)
force |
if present and set to '1', 'Y' or 'Yes', the domain will be deleted even if older than 72 hours. |
With this request you can delete a domain.
If you delete a domain (gTLDs only) within the first 72 hours after the registration, the registration-fee will be refunded to your account.
To delete a domain which is registered for more than 72 hours, you must specify "force=1", otherwise the request will be rejected.
Please note: The number of refundable deletions of domains per month is limited, and depends on the number of domains in a portfolio, and the related TLD registry.
Example:
domain-owner-change
Requires
domain | domain name to change the owner of |
name | (optional) full name (if empty, fname + lname will be used) |
fname | first name |
lname | last name |
title | (optional) |
individual | (optional) Y, Yes, N, No |
organization | (optional if individual) |
mailaddress of the contact | |
address-1 | street address |
address-2 | (optional) |
address-3 | (optional) |
city | |
state | (optional) |
postal-code | |
country | ISO country code (2 letters) |
phone | |
extension | (optional) |
fax | (optional) |
lock-opt-out | (optional) yes, no (new IRTP-C: do not apply a 60 days transfer lock to the domain) |
With this request you can change the visible WHOIS owner of a domain.
Either "name" or "lname" and "fname" must be provided. Fields not marked as optional are mandatory, and must not be empty.
For the revised ICANN IRTP-C (change of registrar) policy, please also visit our documentation.
Example:
1
|
https://dmapi.joker.com/request/domain-owner-change?domain=example.com&fname=John&lname=Doe&email=johnd@someisp.com&address-1=Smartroad1&city=Smalltown&postal-code=40122&country=US&phone=+1.422.8001&auth-sid=<your-current-session-id> |
domain-lock
Requires (mandatory)
domain | domain name to lock |
With this request you can lock a domain to prevent from fraudulent transfer attempts.
If a domain is locked, each transfer-request from a foreign registrar will be declined.
Example:
https://dmapi.joker.com/request/domain-lock?domain=example.com&auth-sid=<your-current-session-id>
domain-unlock
Requires (mandatory)
domain | domain name to unlock |
With this request you can unlock a domain.
If you want to transfer a domain to a foreign registrar, it has to be unlocked.
Example:
https://dmapi.joker.com/request/domain-unlock?domain=example.com&auth-sid=<your-current-session-id>
domain-transfer-in-reseller
Requires (mandatory)
domain | full qualified domain name to transfer to Joker.com |
transfer-auth-id | AUTH-ID required for all domains except .eu |
owner-c | new owner contact handle to be used for transferred domain |
Accepts (optional) |
|
admin-c |
new admin contact handle |
tech-c | new tech contact handle |
billing-c | new billing contact handle |
status |
new domain status to be set after transfer (lock, production) |
period |
renewal period in months, not in years! [not in use, please leave empty] |
autorenew |
Autorenew flag for the domain (0 or 1); if not set explicitly, defaults to 1 |
ns-list |
list of colon-separated nameservers |
privacy | basic|pro|none - adds whois privacy subscription to domain transfer, see also Whois Privacy Services |
max-price |
maximum price user is willing to pay for a domain registration, renewal or transfer. If provided, it must be a number (fractions allowed) above 0. If not provided and domain has non-standard pricing, or if max-price is lower than the actual domain price at the moment of registration, the request will fail. |
With this request you can initiate a transfer of the domain from another registrar to Joker.com.
You have to provide a valid AUTH-ID (you have to request this from the current provider of the domain).
Please note:
- please make sure, that there is no so-called 'registry lock' active for the domain to be transferred. Please verify, that the current registrar does not block the domain, resp. deactivates the blocking
- the domain to be transferred must have been active for at least 60 days at the current registrar, otherwise the transfer may fail
- the domain to be transferred must not be object of an active ICANN UDRP dispute procedure
- the domain should have a remaining term of least 7 days, to ensure that the transfer succeeds within the time limits (a maximum of 5 days is granted to confirm or object a transfer). In case the domain has less than 7 days of remaining term, a successful transfer cannot be warranted.
- this procedure will trigger email notifications to the owner and the admin contact of the domain to be transferred (this is following mandatory ICANN transfer provisions)
Example:
domain-set-property
Requires (mandatory)
domain | domain name or pattern |
pname | property name |
pvalue | property value (may be empty) |
With this request you can set a property (flag) for a domain or a set of domains, selected by wildcard pattern.
List of available properties and their effects:
autorenew |
0 or 1 If set to 1, the domain will be automatically renewed on expiration (if you have enough funds in your account) |
whois-opt-out |
0 or 1 currently only used for .tel domains; if set to 1, owner information will not be shown in whois |
privacy |
off or basic or pro (if available) |
If an empty value is provided, then the property will be cleared, i.e. the default will be used.
Example:
domain-get-property
Requires
domain | domain name |
pname | property name (same as in domain-set-property) |
With this request you can query the value of a specific property set for a domain.
It returns a single line, which looks like:
1
|
autorenew: 0 |
Example:
domain-transfer-get-auth-id
Requires
domain | domain name to get AUTH-ID for |
Retrieves domain's Auth-ID, which is required when transfering domains to another registrar.
This request is not real-time, i.e. you have to check detailed reply (use "result-retrieve") to get the Auth-ID.
Please note:
Every request will generate a new Auth-ID, thus rendering any previously requested Auth-ID invalid.
Example:
domain-transfer-control
This request allows to retrieve status information for all pending transfers. Additionally, transfers can be cancelled, or the FOA email can be re-sent.
Parameters:
action One of: list, show, resend-foa, cancel domain Domain name to control transfer of (ignored when action=list)
action=list
When action=list, this request returns a list (columns are separated by tabs) of all currently pending transfers:
<domain> <state> <owner-email> <admin-email>
where <state> is one of (listed in "natural" transition order):
IN_DB PAYMENT_PREPARED PAYMENT_ACQUIRED PENDING_FOA_SENDING Joker.com could not parse the recipient of the FOA. Manual action from Joker.com is required and happens during office hours, thus in worst case it may take few days (during weekend or holidays). FOA_BEEN_SENT FOA is sent and Joker.com is waiting for owner's reaction. Owner has 5 days to react, thus the state may last up to 5 days. FOA_NACK FOA is rejected FOA_ACK FOA is accepted REGISTRY_REQUEST_SENT REGISTRY_REQUEST_RECEIVED_NOW_WAITING FOA had been accepted, transfer request is sent and the losing registrar has to release the domain. This state may take up to 5 days, we could do nothing to speed it up. While in this state, transfer may be cancelled by using "action=cancel". REGISTRY_CANCELATION_PENDING The user has requested cancel of domain transfer by using "action=cancel". DOMAIN_WITH_JOKER_PENDING_COMPLETE The domain is actually with Joker.com, but either we haven’t noticed yet (batch pending) or manual work is necessary. Please contact Joker.com if this state lasts longer than 1 hour. PAYMENT_COMMITTED TRANSFER_PROCESSED_SUCCESSFULLY
action=show
When action=show, the status of a specified domain is returned like:
domain: example.com status: FOA_BEEN_SENT owner_email: owner@example.com admin_email: admin@example.com transfer-id: 123456
action=resend-foa
When action=resend-foa, FOA will be resent (only possible in state FOA_BEEN_SENT).
action=cancel
When action=cancel, the (pending) transfer will be cancelled.
Returns
Status code is 1000 for successful request, or >= 2000 otherwise.
Example
https://dmapi.joker.com/request/domain-transfer-control?domain=example.com&action=resend-foa
domain-check
Requires (mandatory)
domain | domain name to check |
Accepts (optional)
check-price | If provided, specifically check the price for: create, renew, transfer, restore |
period |
If provided, price will be calculated based on specified period. Period may be specified in years (values from 1 to 10) or in traditional for DMAPI months (>= 12, must be a multiple of 12). |
language |
Relevant only for IDN domains, specifies language as 2 letter (ISO 639.1) or 3 letter (ISO 639.2) code: |
With this request you can check if a domain is available for registration, and what type of domain pricing will be applied for different types of orders.
Returns one or more lines with key-value pairs as follows:
domain-status: <status>
<status> can be one of:
available | regular domain (non-premium) available for registration |
premium | premium domain available for registration |
unavailable | domain is not available for registration |
- <price> is the final price, i.e. amount that will be deducted from the user's account, considering all discounts, promos etc.
- <currency> is a 3-letter currency code, serves only as information.
- <period> is reported in years and suffixed by "y", like "5y", and it may be different from "period" parameter value (depends on registry), for instance when requested period is not available, too low or too high.
The price reported is valid only for specified period, i.e. if price is 100 for 2 years it does not necessarily mean that price for 1 year is 50, thus it only makes sense to check price for the period which will be used verbatim in subsequent request of specified <type>.
domain-price-promo: <start> <end>
<start> and <end> are ISO timestamps in format like 2019-07-01T00:00:00.000Z
For domains that have promotional pricing, this provides start and end timestamps of promotional period. Usually its mere presence means that promo-pricing is in effect, but to be sure values have to be checked explicitly.
If "domain-status" returned "premium" or "domain-class" returned anything but "standard", then the parameter max-price must be present in register/transfer/renew requests.
Full response example (web.blog):
domain-status: unavailable
domain-status-reason: blocked
domain-class: standard
domain-price-create: 8.21 USD 1y
domain-price-promo: 2019-09-01T00:00:00.000Z 2019-12-31T23:59:59.000Z
Example:
https://dmapi.joker.com/request/domain-check?domain=example.com&auth-sid=<your-current-session-id>
Contacts
query-contact-list
Accepts:
pattern | pattern to match (against handle) |
from | start from this item in list |
to | end by this item in list |
tld | limits output to contact handles which may be used with specified toplevel domain (tld), like "com". |
extended-format | provides additional information for every contact listed: name & organization. May be "1" or "0", defaults to "0" |
Returns:
List of registered contacts (handles), one per line.
When "extended-format" is requested, output columns are separated by tabs ("\t"), and "Columns" header provides column names.
Example:
https://dmapi.joker.com/request/query-contact-list?pattern=coco-47*&tld=com&auth-sid=<your-current-session-id>
contact-create
Requires:
tld | target TLD where this contact is intended to be used. |
name | full name (if empty, fname + lname will be used) |
fname | first name (required for .FI contacts) |
lname | last name (required for .FI contacts) |
title | (optional) |
individual | (optional) Y, Yes, N, No |
organization | (optional if individual) |
mailaddress of the contact | |
address-1 | street address |
address-2 | (optional) |
city | |
state | (optional) |
postal-code | |
country | ISO country code (2 letters) |
phone | |
fax | (optional) |
lang | language to use for .EU contacts |
app-purpose |
required for .US contacts |
nexus-category |
required for .US contacts |
nexus-category-country | required for .US contacts |
account-type | required for .UK contacts, if used as owner contact |
company-number |
required for .UK contacts with specific account types |
orgid |
required for .SE/.NU contacts |
vatid |
(optional) for .SE/.NU contacts |
x-ficora-type |
required for .FI contacts |
x-ficora-is-finnish | (yes/no) required for .FI contacts |
x-ficora-registernumber | required for .FI contacts, if ficora-type is company |
x-ficora-identity | required for .FI contacts, if type is person and finnish |
x-ficora-birthdate | required for .FI contacts, if type is persion and not finnish |
x-ficora-legalemail | (optional) for .FI contacts |
Either "name" or "lname" and "fname" must be provided.
Fields not marked '(optional)' are mandatory (and must not be empty).
Parameters "lname" and "fname", if provided, will be converted to "name" (simple concatenation of "fname" and "lname"), because registries support only "name" format. In general, use of "fname" and "lname" is deprecated, and support for these fields will be removed in version 1.2.
"orgid" represents Swedish personal or organisational number and is required for .SE/.NU contacts.
It starts with ISO 3166 Alpha-2 country code in square brackets. If the country code for Sweden is given [SE] a valid Swedish personal or organisational number must be given (6 digits, dash, 4 digits), otherwise 1 to 123 characters can follow.
If organization is empty and the country code for Sweden [SE] is given, orgid must be a personal number, not an organisational number.
"vatid" is optional for .SE/.NU contacts. It starts with a two letter country code (uppercase), followed by an optional space, followed by a country specific string containing digits 0-9, and letters a-z and A-Z, maximum 64 Chars.
For .fi contacts:
"x-ficora-type" is required for .fi contacts. The following values are accepted: privateperson, company, corporation, institution, politicalparty, township, government, publiccommunity
"x-ficora-registernumber" is required if x-ficora-type is set to "company".
"x-ficora-is-finnish" is always required for .fi contacts: yes = finnish company or person, no = not a finnish person or company
"x-ficora-identity" is required for .fi contacts, if x-ficora-type is set to 'privateperson' and x-ficora-is-finnish is set to 'yes'
"x-ficora-birthdate" is required for .fi contacts, if x-ficora-type is set to 'privateperson' and x-ficora-is-finnish is set to 'no' in the following date format "YYYY-MM-DD".
Please note:
- Parameters listed here (except "tld") may be used (or are required) in other requests, this is indicated by referring to "Contact fields".
- "lang" must contain two-letter ISO country (language) code, and is only required when creating .EU contacts. The purpose is to specify language to be used in notifications emails, sent from EURid. Please note - this field cannot be modified later, and the default is 'EN' (English)!
- "app-purpose", "nexus-category" and "nexus-category-contry" are required only when creating .US contacts, and cannot be modified later.
Example:
https://dmapi.joker.com/request/contact-create?tld=com&name=John Doe&email=johnd@someisp.com&address-1=Smartroad 1&city=Smalltown&postal-code=40122&country=US&phone=+1.422.8001&auth-sid=<your-current-session-id
contact-modify
Requires:
handle | contact handle to modify. |
Accepts:
Field names exactly like in contact-create request, except that omitted fields won't be modified. That is, if you specify a field, it will be used as a new value, if you omit it, the old value will remain.
The field "tld" is not relevant for this request and will be ignored if present.
contact-delete
Requires:
handle | contact handle to delete |
With this request you can delete previously registered contacts
Example:
https://dmapi.joker.com/request/contact-delete?handle=coco-4711&auth-sid=<your-current-session-id>
Nameservers
query-ns-list
Accepts:
pattern | pattern to match (against host name, like "ns.dom*") |
full |
include IPs if non-zero (0 or 1) |
Returns:
List of registered name servers, one per line.
If "full" is non-zero, then the list will include IP addresses, IPv4 (2nd column) and IPv6 (3rd column).
Columns will be separated by tab ("\t") character. If specific IP is not present (say, there is only IPv4 or IPv6), it will be listed as "-".
Example of list with IPs:
1
2
|
ns.example.com 1.2.3.4 - ns6.example.com - FE80:0000:0000:0000:0202:B3FF:FE1E:8329 |
Example:
https://dmapi.joker.com/request/query-ns-list?pattern=*my-own-ns*&full=1&auth-sid=<your-current-session-id>
ns-create
Requires:
host | Full qualified host name |
ip | IPv4 address (must not be from IANA's reserved range) |
ipv6 | IPv6 address (short notation like fec0::17 is accepted) |
With this request a new nameserver can be registered with the registry. This is needed to use a nameserver with glue records.
Either an IPv4 or IPv6 address is required.
ns-modify or host-modify
Requires:
host | full qualified host name |
ip | IPv4 address (must not be from IANA's reserved range) |
ipv6 | IPv6 address (short notation like 'fec0::17' is accepted) |
With this request you can modify the IP address of a registered nameserver.
ns-delete or host-delete
Requires:
host | Full qualified host name |
With this request you can delete a registered nameserver.
Modify Zonedata
dns-zone-list
Accepts:
pattern | Pattern to match (globbing, like "dom*") |
Returns:
List zones (domains) which are managed and served by Joker.com name
servers. Zones are listed one per line.
dns-zone-get
Requires:
domain | Zone (domain) name to fetch data from |
Returns:
Returns list of zone records.
The format of zone is as follows (one record per line):
<label> <type> <pri> <target> <ttl> <valid-from> <valid-to> <parameters(s)>
Where:
label |
subdomain/redirection label, relative to current zone, or '@' (which means current zone name) |
type |
record type (A, AAAA, MX, CNAME, URL, MAILFW, TXT, NAPTR, DYNA, DYNAAAA, SRV, CAA) |
pri |
numeric value, meaningful only for types MX, NAPTR and SRV, must be 0 for all other types |
target |
record target/value. Must be quoted if contains spaces |
ttl |
record TTL (time to live) in seconds |
valid-from |
record is not valid before this time (UNIX timestamp) or 0 |
valid-to |
record is not valid after this time (UNIX timestamp) or 0 |
parameters |
record-specific parameter(s) |
All values from "name" to "ttl" are mandatory for every record.
<valid-to> and <valid-from> are not implemented yet, so usually are 0, and may be omitted if there are no other parameters required.
<parameters(s)> are record dependent, used in NAPTR, MAILFW, FRAME and URL records.
<ttl> must be at least 60 for all records except NAPTR and SVC, where it can be 0 (meaning: no caching). For MAILFW/URL/FRAME <ttl> is irrelevant and assumed to be 60 seconds (i.e., any change will be
in effect within 60 seconds from zone change).
<pri> preference value for MX records, priority/weight for SRV records and order/preference for NAPTR records. For any other record, the value must be 0.
Examples of zone records:
www A 0 127.0.0.1 86400
www AAAA 0 fec0::17 86400
@ MX 10 mail.example.com. 86400
redirect URL 0 http://joker.com 86400
Sets redirection from redirect.joker.com to http://joker.com (assuming that current zone is "joker.com").
frame FRAME 0 http://joker.com 86400 0 0 "Header: Frame-Forward" "head" "title" "body"
Sets frame-based redirection similar to URL redirection.
For FRAME record, extra parameters are as follows:
- Extra HTTP headers. (newlines may be escaped as \n)
- Extra text placed in <head></head> section of generated HTML.
- Title text (<title></title>) of generated HTML.
- Body text (used for <noframes> section)
username MAILFW 0 redirected@example.com 86400 0 0 1
This MAILFW records makes redirection of mail sent to username@joker.com (assuming that current zone name is "joker.com") to redirected@example.com, extra parameter ("1") specifies that spam-filtering should be used.
naptr NAPTR 10/100 replacement 86400 0 0 "flags" "service" "regex"
This NAPTR record has order 10 and preference 100. Only one of "replacement" or "regex" may be
specified, if "regex" is specified, "replacement" must be "." (without quotes), if "replacement"
is specified, "regex" must be empty string. Quotes are mandatory for all extra parameters.
For details please consult RFC 2915, or look here: http://de.wikipedia.org/wiki/NAPTR
_ldap._tcp SRV 10/100 ldap.example.com:389 60
This SRV record has priority 10, weight 100, target "ldap.example.com" and port "389" with TTL 60 seconds. Please consult RFC 2782 for details.
txt TXT 0 "key=value" 86400
Quoting of values for TXT records is mandatory.
caa CAA 0 issue "letsencrypt.org" 86400
caa CAA 0 issuewild "letsencrypt.org" 86400
caa CAA 0 iodef "mailto:certissues@example.com" 86400
For more information about CAA records please check Wikipedia.
www CNAME 0 example.com. 86400
Two special record types, DYNA and DYNAAAA, are used in case if DynDNS is active.
They have same meaning as corresponding "A" and "AAAA" records, except that their targets may be updated using Joker DynDNS service.
To enable/disable DynDNS service, and to define username/password used to access it, the record format is as follows:
$dyndns=yes:username:password
username/password may not contain spaces or colon (":") characters. If "no" is specified instead of "yes", DynDNS will be turned off (i.e. DYN* entries will have no effect).
In case if there are any errors, zone modification will not be accepted. All errors will be reported for every erroneous line, so if there are more than one, you will be able to see all detected errors.
dns-zone-put
Requires:
domain |
Zone (domain) name to store data to |
zone |
URL encoded zone data |
Returns:
Replace current zone for provided domain with specified value.
Field "zone" will be parsed as multiline text (so usual line erminators are expected).
Warning: This request will overwrite current zone, i.e. all current ecords will be replaced by new records.
The format of zone is as follows (one record per line):
<label> <type> <pri> <target> <ttl> <valid-from> <valid-to> <parameters(s)>
Rights and Roles
grants-list
Requires:
domain |
Full qualified domain name |
Accepts:
showkey | Show invitation access key |
Get a list of active and pending grants.
Returns lines in the following format (space-separated):
invitation <nr> <scope> <key> domain <domain-name> <role> - - - <invitee-email> <nick-name> grant <nr> <scope> domain <domain-name> <role> <inviter-username> <invitee-username> <invitee-userid> <invitee-email> <nick-name>
Where:
<nr> | record number |
<scope> | Grant/Invite id (used to uniquely identify records for revocation) |
<key> | Invitation access key, present only when "showkey" is non-zero; it has meaning only for pending invitations, and always is "-" for grants |
<domain-name> | domain name (identical to domain in request) |
<role> | one of @admin/@billing/@tech/@creator |
<inviter-username> | your username (owner of the domain) |
<invitee-username> | username of invited user |
<invitee-userid> |
[leave empty] user-ID of invited user |
<nick-name> | name or comment you want to assign to this role |
grants-invite
Request parameters:
name | value |
mandatory |
---|---|---|
domain | Full qualified domain name |
yes |
email |
Email of user to be invited to accept a role for 'domain' |
yes |
role |
Role offered (@admin/@billing/@tech/@creator) |
yes |
client-uid |
receiving Joker.com user id as shown on Joker.com - also conforms to reseller-id |
no |
nick-name |
Name or comment for this role/grant for later identification (defaults to email) |
no |
With this request you can assign 'Roles' (permissions) of domains to other Joker.com users. The special role "creator" is an equivalent to an internal transfer of that domain to another Joker.com user. In this case, the domain is assigned to the receiving account's portfolio, including all rights and permissions on this domain.
There are two variants to use this functionality: If the client-uid (Joker.com user account id) is given, and the client-uid matches the associated user's email address in our system, the role is applied immediately - there will be no request for confirmation on the receiver's side. In case the client-uid is not given, but only the email address, the transaction has to be acknowledged by the receiving user. For this, he will get an email ('invitation'), containing a link and a key. Either the link has to be clicked, or the key has to be applied using Joker.com (=> Transfer). This can also be used for users which do not yet have a Joker.com account.
Returns status only (ok or not). Email is sent if request was succesfull.
grants-revoke
Requires:
domain | full qualified domain name |
role |
Role to be revoked from domain (@admin/@billing/@tech/@creator) |
scope |
identifier from 'grants-list' request |
type |
type of the record to revoke - "grant" or "invitation" |
Deletes an issued grant (permission) of a domain, or a pending invitation for a grant.
Returns status only (ok or not). Email is sent if request was succesfull.
Other Requests
query-object
Accepts:
domain |
Domain name |
Exactly one of those must be specified. Only objects registered with Joker.com may be queried. |
contact | Contact handle | |
host | Nameserver |
Returns:
Information about specified object (similar to whois), in format "key: value".
This request is deprecated - please use ' query-whois' instead.
query-whois
Accepts:
domain |
Domain name | Exactly one of those must be specified. Only objects registered with Joker.com may be queried. |
contact | Contact handle | |
host | Nameserver |
Returns:
Information about specified object (similar to whois), in the format "key: value".
The difference to the query-object request is, that this request reflects actual (live) data in Joker.com database, while query-object may show data which not yet up-to-date.
wa-email-list
Lists all domains and owner emails of domains from your portfolio which are pending whois (email) verification.
For Whois validation, the email address of the owner contact of a newly created, transfered or modifed gTLD has to be verified.This verification is done by sending an email to the owner contact, which contains a unique key in a link. When this link is clicked, the related email address is set to "validated".
For full ICANN policy, please see Whois-Validation.
Requires: Nothing
Returns:
email-address<TAB>domain-name<TAB>verification-expiration-date
email-address<TAB>domain-name<TAB>verification-expiration-date
Where:
email-address
|
email address of the domain owner which is pending verification |
domain-name | domain name where email is the owner |
verification-expiration-date |
verification deadline, i.e. if by this date and time (specified in standard ISO format) email is not positively verified, the domain name listed may be deactivated |
https://dmapi.joker.com/request/wa-email-list?auth-sid=<your-current-session-id>
wa-email-details
Returns email verification status and the associated domain for provided verification key (whois verification, email validation).If there is more than one domain using the email address to be verified, output will have one line per domain.
For full ICANN policy, please see Whois-Validation.
Requires:
key Verification key sent to owner by verification email
Returns:
status<TAB>email<TAB>domain
Where:
status
|
is 'verification', if 'key' is a valid verification key |
email address 'key' has been sent to |
|
domain | related domain |
Sample:
https://dmapi.joker.com/request/wa-email-details?key=<key-to-query>&auth-sid=<your-current-session-id>
wa-email-validate
Triggers a new email verification. In case the original verification email got lost or did not succeed otherwise, this request will send a new email. The original key will be automatically included.
This request returns special response header "Result", which will contain "ACK" if the validation request has been sent successfully, or "NACK" otherwise, e.g. if the email address is not in "verification pending" status, or already verified (whois verification, email validation).
For full ICANN policy, please see Whois-Validation.
Requires:
email Email address to send validation request to. This must be domain owner's email address.
Returns:
Result: ACK validation request has been sent
Result: NACK no validation request has been sent for this email
Sample:
wa-email-verify
Set an email address to 'validated' by using the correct key, and voting with 'yes'.
This request returns a special response header "Result", which will contain "ACK" if the verification has been accepted or "NACK" otherwise, e.g. in case the key is not correct (whois verification, email validation).
This is usefull e.g. in case you want to implement your own indivídual landing page for your customers. The URL for this landing page can be set in Joker.com's 'Reseller Settings'.
For full ICANN policy, please see Whois-Validation.
Requires:
key Verification key sent to owner by verification email
answer Answer to verification request - "yes" or "no"
If the answer is "yes", the verification status is set to "verified" and email is confirmed as valid, if the answer is "no", then verification status is set to "invalid". If there is no answer before verification deadline (normally 15 days), the status is also set to "invalid".
Returns:
Result: ACK validation request has been successfulSample:
Result: NACK validation request has been rejected or failed
https://dmapi.joker.com/request/wa-email-verify?key=<key-to-use>&answer=[yes|no]&auth-sid=<your-current-session-id>
domain-privacy-order
This request adds a subscription to Whois Privacy Services to an existing domain name.
A summary of all privacy related DMAPI commands is also available at DMAPI Whois Privacy Services.
Requires (mandatory):
domain | domain name to order privacy service for |
privacy |
basic|pro |
Accepts (optional):
period | renewal period in months (not in years!) |
expyear |
the wanted expiration year (e.g. '2016') |
"expyear" is a safety option which can be used instead of "period" to order privacy until the specified year (not longer).
If you use "period", and by mistake send the request more than once, the order would be executed again, while with "expyear", it will not be renewed if it's expiration year is greater or equals to the specified one.
Only one of "period" or "expyear" may be used, but not both.
If neither period nor expyear is provided, then privacy is ordered for the remaining domain lifetime, whatever it is.
Important: Please note that registration period is in months, not years! In most cases, this number is a multiple of 12.
Example:
https://dmapi.joker.com/request/domain-privacy-order?domain=example.com&privacy=pro&auth-sid=<your-current-session-id
This would order privacy service "pro" for the same period as the current term of the domain "example.com".
cor-verify
Please find the full documentation of the process at Joker.com here, the original ICANN policy is available here.
This request can be used if you did not setup a verification 'push' URL with our provided module (see link above), or you want to use the standard email procedure.
This request returns special response header "Result", which will contain "ACK" if the authorization request has been sent successfully, or "NACK" otherwise, e.g. if the key sent does not match the transaction.
Requires:
key authorization key (provided in COR confirmation request)
answer answer to confirm the COR - "yes" or "no"
If the answer is "yes", the change-of-registrant will be executed, if in case of "no", it will be rejected. Please also note the new flag 'lock-opt-out' in 'domain-owner-change' if you do not want to lock the domain after the COR for 60 days.
Returns:
Result: ACK authorization key has been accepted
Result: NACK authorization key has not been accepted
Sample:
query-price-list
Returns
List of domain prices per action and year (separated by tab) in the currency of the reseller account. The prices already include the reseller discount and also vat if it applies.
Example:
https://dmapi.joker.com/request/query-price-list?auth-sid=<your-current-session-id>
Code-Examples
Perl
List domains of customer
#!/usr/bin/perl
use LWP::UserAgent;
use Data::Dumper;
my $dmapiURL = "https://dmapi.joker.com/request";
my $ua = LWP::UserAgent-> new;
my $req = HTTP::Request-> new(GET => $dmapiURL.'/login?username='.shift().'&password='.shift());
my $res = $ua-> request($req);
unless ($res-> is_success) {
print "Failed: ", $res-> status_line, "n";
exit -1;
}
my $auth=$res-> as_string;
my $output;
if ($auth =~ /Auth-Sid:s*(w+)/ms) {
$req=HTTP::Request-> new(GET => $dmapiURL.'/query-domain-list?auth-sid='.$1);
$res = $ua-> request($req);
if ($res-> is_success) {
$output=$res-> content;
}
else{
print "Failed: ", $res-> status_line, "n";
exit -2;
}
}
else {
print "Failed: Got no auth-id from DMAPI:n";
print $res-> content;
exit -3;
}
my @lines=split ("n",$output);
my $month=now + ("2M");
my %list;
my $p=0;
for my $line(@lines) {
#Skip first line
next unless $p or $line =~ /^s*$/;
unless ($p) { $p=1; next};
my ($fqdn,$exp)=split ("[ t]+",$line);
$list{$fqdn}=$exp;
}
for (sort keys %list) {
print "$_n";
}
List domains to expire next month
Needs:
Class::Date and Date::Parse from CPAN!
#!/usr/bin/perl
use LWP::UserAgent;
use Data::Dumper;
use Class::Date qw(:errors date localdate gmdate now -DateParse);
my $dmapiURL = "https://dmapi.joker.com/request";
my $ua = LWP::UserAgent-> new;
my $req = HTTP::Request-> new(GET => $dmapiURL. '/login?username='.shift().'&password='.shift());
my $res = $ua-> request($req);
unless ($res-> is_success) {
print "Failed: ", $res-> status_line, "n";
exit -1;
}
my $auth=$res-> as_string;
my $output;
if ($auth =~ /Auth-Sid:s*(w+)/ms) {
$req=HTTP::Request-> new(GET => $dmapiURL. '/query-domain-list?auth-sid='.$1);
$res = $ua-> request($req);
if ($res-> is_success) {
$output=$res-> content;
}
else {
print "Failed: ", $res-> status_line, "n";
exit -2;
}
}
else {
print "Failed: Got no auth-id from DMAPI:n";
print $res-> content;
exit -3;
}
my @lines=split ("n",$output);
my $month=now + ("2M");
my %list;
my $p=0;
for my $line(@lines) {
#Skip first line
next unless $p or $line =~ /^s*$/;
unless ($p) { $p=1; next};
my ($fqdn,$exp)=split ("[ t]+",$line);
next unless localdate($exp) < $month;
$list{$fqdn}=$exp;
}
for ( map {$_-> [0]}
sort {
$a-> [1] < => $b-> [1]
||
$a-> [2] cmp $b-> [2]
}
map {[$_, localdate $list{$_},$_]}
keys %list ) {
print "$_:".$list{$_}."n";
}
Replace admin-c in multiple domains
#
# replace admin-c in multiple domains
#
#!/usr/bin/perl
use LWP::UserAgent;
use Data::Dumper;
my $ua = LWP::UserAgent->new;
my $req = HTTP::Request->new(GET => 'https://dmapi.joker.com/request/login?username='.shift().'&password='.shift());
my $res = $ua->request($req);
#--Admin-C :
my %ADMIN = ( de =>'CODE-12345' , org => 'CORG-12345', com => 'CCOM-12345', 'eu' => 'c12345' );
unless ($res->is_success) {
print "Failed: ", $res->status_line, "\n";
exit -1;
}
my $auth=$res->as_string;
my $output;
if ($auth =~ /Auth-Sid:\s*([a-z0-9]+)/m ) {
$auth = $1;
} else {
print "Failed: Got no auth-id from DMAPI:\n";
print $res->content;
exit -3;
}
while ( <DATA> ) {
chomp;
my $fqdn = $_;
## for 3rd level domains this must be changed!
my ( $sld, $tld ) = split ( /\./ , $fqdn );
my $admin = $ADMIN{ $tld };
$req=HTTP::Request->new(GET => 'https://dmapi.joker.com/request/domain-modify?domain='.$fqdn.'&admin-c='.$admin.'&auth-sid='.$auth);
$res = $ua->request($req);
if ($res->is_success) {
$output=$res->content;
print $output;
} else {
print "Failed: ", $res->status_line, "\n";
exit -2;
}
}
__DATA__
domain1.de
domain2.eu
domain3.org
domain4.com
__END__
PHP
Introduction
List domains of a customer
<?php
//sends HTTP request using CURL
function query_host($conn_server, $params = "", $get_header = false)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $conn_server.$params);
if (preg_match("/^https:\/\//i", $conn_server)) {
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if ($get_header) {
curl_setopt($ch, CURLOPT_HEADER, 1);
}
else {
curl_setopt($ch, CURLOPT_HEADER, 0);
}
$result = curl_exec($ch);
if (curl_errno($ch)) {
print "curl error";
}
else {
curl_close($ch);
}
return $result;
}
//builds query, sends request and gets the answer back
function execute_request($request, $params, &$sessid)
{
//build the query
$http_query = "/request/" . $request . "?" . $params ."&auth-sid=".$sessid."&client-ip=".$_SERVER["REMOTE_ADDR"];
//send the request
$raw_res = query_host("https://dmapi.joker.com", $http_query, true);
$temp_arr = @explode("\r\n\r\n", $raw_res, 2);
//split the response for further processing
if (is_array($temp_arr) && 2 == count($temp_arr)) {
return $temp_arr[1];
}
else {
return false;
}
}
//basic parsing of the DMAPI header
function parse_response_header($header)
{
$raw_arr = explode("\n", trim($header));
$result = array();
if (is_array($raw_arr)) {
foreach ($raw_arr as $key => $value)
{
$keyval = array();
if (preg_match("/^([^\s]+):\s+(.+)\s*$/", $value, $keyval)) {
$arr[strtolower($keyval[1])] = $keyval[2];
}
else {
print "Header line not parseable - pattern does not match\nRaw header:\n$value";
}
}
}
else {
$arr = "";
print "Unidentified error\nRaw header:\n$header";
}
return $arr;
}
//parses the reply from DMAPI into a header and body
function parse_response($res)
{
$raw_arr = explode("\n\n", trim($res));
$arr_elements = count($raw_arr);
if ($arr_elements > 0) {
$temp["response_header"] = parse_response_header($raw_arr["0"]);
$temp["response_body"] = $raw_arr["1"];
}
else {
print "Couldn't split the response into response header and response body\nRaw result:\n$res";
$temp = "";
}
return $temp;
}
$response = "";
$authid = "none";
//first obtaining an Auth-ID
$username = "<your username here>";
$password = "<your password here>";
$fields = "username=".urlencode($username)."&password=".urlencode($password);
$result = execute_request("login", $fields, $authid);
$result = parse_response($result);
$authid = $result["response_header"]["auth-sid"];
if (!$authid) {
print "no auth-id was obtained - probably due to wrong username or password";
exit;
}
//now asking for the domain list
$pattern = "*";
$fields = "pattern=".urlencode($pattern);
$result = execute_request("query-domain-list", $fields, $authid);
$result = parse_response($result);
print_r($result["response_header"]);
print "< br /> ";
print_r($result["response_body"]);
Python
Introduction
Python is easy to use with DMAPI. Our examples are tested with python 3 on Windows and Linux, but should work on all platforms.
Running the Python example will look like:
$ ./dmapi-example.py
Request-URL: https://dmapi.ote.joker.com/request/login
Login: Status-Code: 0
Request-URL: https://dmapi.ote.joker.com/request/query-domain-list
Domain List: Status-Code: 0
domain: another-privacy-test.com
expiration_date: 2018-06-30
domain: another-privacy-test.net
expiration_date: 2020-06-30
Request-URL: https://dmapi.ote.joker.com/request/logout
Logout: Status-Code: 0
Login and list your domains
#!/usr/bin/env python
import requests
dmapiURL = 'https://dmapi.ote.joker.com'
dmapiUser = 'username'
dmapiPassword = 'password'
def main():
loginResponse = login(dmapiUser,dmapiPassword)
print("Login: Status-Code:", loginResponse.header['Status-Code'])
if loginResponse.header['Status-Code'] !='0':
print(loginResponse.header['Status-Text'])
return
sessionId = loginResponse.header['Auth-Sid'];
print("")
domainResponse = domainList(sessionId,1,5)
print("Domain List: Status-Code:", domainResponse.header['Status-Code'])
print("")
domains = domainResponse.resultListWithNames()
for domain in domains:
for key, value in domain.items():
print(" %s: %s" % (key, value))
print("")
logoutResponse = logout(sessionId)
print("Logout: Status-Code:", logoutResponse.header['Status-Code'])
# implement dmapi commands as functions
def login(username,password):
parameters = { 'username': username, 'password': password }
message = sendCommand('login', parameters)
return message;
def logout(sessionId):
parameters = { 'auth-sid': sessionId }
message = sendCommand('logout', parameters)
return message;
def domainList(sessionId, list_from=1, list_to=""):
parameters = { 'auth-sid': sessionId , 'from': list_from, 'to': list_to }
message = sendCommand('query-domain-list', parameters)
return message;
# general dmapi command call
def sendCommand(command,parameter={}):
try:
url = dmapiURL+'/request/'+command
print("Request-URL: ", url)
response = requests.get(url, params=parameter)
# print URL with parameters for debugging purposes
# print("Request-URL: ", response.url)
if response.status_code != requests.codes.ok:
raise CommandError("Command Failed! HTTP Status Code: %s" % response.status_code)
return DmapiResponse(response.text)
except requests.ConnectionError as e:
raise CommandError("Connection Error: %s" % str(e))
except requests.HTTPError as e:
raise CommandError("Http Error: %s" % str(e))
except CommandError as e:
raise
except Exception as e:
raise CommandError("Unexpected Error: %s" % str(e))
class DmapiResponse():
def __init__(self,responseBody):
parts = responseBody.split("\n\n",1)
if len(parts)>0:
self.header = self.__parseKeyValueList(parts[0])
if len(parts)>1:
self.body = parts[1]
def __parseKeyValueList(self,text):
lines = text.split("\n")
keyValueList = {}
for line in lines:
keyValue = line.split(' ',1)
key = keyValue[0].rstrip(':')
value = keyValue[1]
keyValueList[key] = value
return keyValueList
def __getSeparator(self):
if self.header.get('Separator') == 'TAB':
return "\t"
else:
return " "
def resultList(self):
lines = self.body.split("\n")
resultList = []
separator = self.__getSeparator()
for line in lines:
values = line.split(separator)
resultList.append(line.split(separator))
return resultList
def resultListWithNames(self):
columnNames = self.resultListColumns()
resultList = []
if len(columnNames) > 0:
rawList = self.resultList()
resultList = []
for row in rawList:
columns = {}
for idx, column in enumerate(row):
columns[columnNames[idx]] = column
resultList.append(columns)
return resultList
def resultListColumns(self):
if 'Columns' in self.header:
columnsText = self.header['Columns']
columns = columnsText.split(',')
return columns
else:
return []
def resultValues(self):
return self.__parseKeyValueList(self.body)
class CommandError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)
# call main function
try:
main()
except CommandError as e:
print("Error:", str(e).strip("'"))
Login and list all A and CNAME records
#!/usr/bin/env python
import requests
dmapiURL = 'https://dmapi.joker.com'
dmapiUser = 'username'
dmapiPassword = 'password'
def main():
loginResponse = login(dmapiUser,dmapiPassword)
#print("Login: Status-Code:", loginResponse.header['Status-Code'])
if loginResponse.header['Status-Code'] !='0':
print(loginResponse.header['Status-Text'])
return
sessionId = loginResponse.header['Auth-Sid'];
#print("")
dnsZoneListResponse = dnsZoneList(sessionId,"")
#print("DNS Zone List: Status-Code:", dnsZoneListResponse.header['Status-Code'])
dnslist = dnsZoneListResponse.resultList()
for row in dnslist:
domain = row[0]
expiration = row[1]
#print(" domain: %s" % (domain))
#print(" expiration: %s" % (expiration))
#print("")
dnsZoneResponse = dnsZoneGet(sessionId, domain)
#print("DNS Zone GET for %s: Status-Code:" % (domain), dnsZoneResponse.header['Status-Code'])
zoneEntries = dnsZoneResponse.resultList()
for entry in zoneEntries:
#print(' '.join(entry))
if len(entry)<5:
continue
eLabel = entry[0]
eType = entry[1]
ePriority = entry[2]
eTarget = entry[3]
eTTL = entry[4]
if eType == 'A' or eType == 'CNAME':
print(("%s.%s\t%s" % (eLabel,domain,eTarget)).lstrip('@.'))
logoutResponse = logout(sessionId)
#print "Logout: Status-Code:", logoutResponse.header['Status-Code']
# implement dmapi commands as functions
def login(username,password):
parameters = { 'username': username, 'password': password }
message = sendCommand('login', parameters)
return message;
def logout(sessionId):
parameters = { 'auth-sid': sessionId }
message = sendCommand('logout', parameters)
return message;
def domainList(sessionId, pattern="", list_from=1, list_to=""):
parameters = { 'auth-sid': sessionId , 'from': list_from, 'to': list_to, 'pattern': pattern }
message = sendCommand('query-domain-list', parameters)
return message;
def dnsZoneList(sessionId, pattern="", list_from=1, list_to=""):
parameters = { 'auth-sid': sessionId , 'from': list_from, 'to': list_to, 'pattern': pattern }
message = sendCommand('dns-zone-list', parameters)
return message;
def dnsZoneGet(sessionId, domain):
parameters = { 'auth-sid': sessionId , 'domain': domain }
message = sendCommand('dns-zone-get', parameters)
return message;
# general dmapi command call
def sendCommand(command,parameter={}):
try:
url = dmapiURL+'/request/'+command
#print("Request-URL: ", url)
response = requests.get(url, params=parameter)
# print URL with parameters for debugging purposes
# print("Request-URL: ", response.url)
if response.status_code != requests.codes.ok:
raise CommandError("Command Failed! HTTP Status Code: %s" % response.status_code)
return DmapiResponse(response.text)
except requests.ConnectionError as e:
raise CommandError("Connection Error: %s" % str(e))
except requests.HTTPError as e:
raise CommandError("Http Error: %s" % str(e))
except CommandError as e:
raise
except Exception as e:
raise CommandError("Unexpected Error: %s" % str(e))
class DmapiResponse():
def __init__(self,responseBody):
parts = responseBody.split("\n\n",1)
if len(parts)>0:
self.header = self.__parseKeyValueList(parts[0])
if len(parts)>1:
self.body = parts[1]
def __parseKeyValueList(self,text):
lines = text.split("\n")
keyValueList = {}
for line in lines:
keyValue = line.split(' ',1)
key = keyValue[0].rstrip(':')
value = keyValue[1]
keyValueList[key] = value
return keyValueList
def __getSeparator(self):
if self.header.get('Separator') == 'TAB':
return "\t"
else:
return " "
def resultList(self):
lines = self.body.split("\n")
resultList = []
separator = self.__getSeparator()
for line in lines:
values = line.split(separator)
resultList.append(line.split(separator))
return resultList
def resultListWithNames(self):
columnNames = self.resultListColumns()
resultList = []
if len(columnNames) > 0:
rawList = self.resultList()
resultList = []
for row in rawList:
columns = {}
for idx, column in enumerate(row):
columns[columnNames[idx]] = column
resultList.append(columns)
return resultList
def resultListColumns(self):
if 'Columns' in self.header:
columnsText = self.header['Columns']
columns = columnsText.split(',')
return columns
else:
return []
def resultValues(self):
return self.__parseKeyValueList(self.body)
class CommandError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)
# call main function
try:
main()
except CommandError as e:
print("Error:", str(e).strip("'"))
C#
Applications for domain management with DMAPI are very easy to create using MS Visual Studio. This example code logs into the Joker.com system using DMAPI requests.
It provides a domain listing, whois lookup and "Email verification".
This has been tested using Visual Studio 2008 and 2010, but should work with any version, and also with free Visual Studio Express and .NET versions from 3.5 onwards. Please find the source code as an attachment below.
We also provide this as a windows binary to try without the need of building it before. In case you run Windows 10 with "Smartscreen", you have to click on "more information" to execute this, since this binray of course is not signed by a "manufacturer"...
This is how this will look like:
Email Gateway
Basics
How does the PGP/GPG-Mailinterface work?
Using the Joker.com email interface, you may send 'commands' to a special address at Joker.com by email. Those commands may consist of registration orders, domain renewals or modifications.
The Joker.com mail interface address is disclosed once you signed up as a reseller.
For security reasons, each request which is sent to the mail gateway has to be signed using PGP or GPG. This means, you need to have a pgp/gpg-installation on your machine. Some tools which can be used for this:
Emails which are not signed correctly will not be processed. All requests to the gateway have to be sent as PGP/GPG signed mails to the Joker mail-robot (you will receive the exact address if you have registered yourself as a reseller).
Mails are expected to be sent in the "traditional" format (signature is part of the message body), not (for example) in MIME encapsulated format!
The actual request (the command to be peroformed) has to be put into the subject of the email. Further details (for example the full qualified domain name) have to be put in the message body.
Example:
Subject: modify domain
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
tld:org
sld:dummy
ns1-handle:ns1.dummy.org
ns2-handle:ns2.dummy.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.2 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD7DBQE6ZtMfzWqd+drNYRURAuW4AJ4nRewOrNc+yLMmmCouVcMP3v5nWQCdHUlf
tJk/gOuFmDnIs3JS+7eRjnA=
=Fwmc
-----END PGP SIGNATURE-----
Where are the replies of the mail-gateway sent?
The replies of the gateway are generally sent to the "reply-to"-address. In order to specify that address, you will have to fill in the reply-to-field within the e-mails you send to the mail-gateway.
How do I change my robot-email-address?
The Joker.com system identifies you using your pgp-signature and your email-address, so you have to provide a new pgp-key, if you want to change your robot-email-address. Without changing the pgp-key, our system cannot grant you access to the domains, you have registered at joker.com.
Please, follow the 3 steps below to change your robot-email-address.
-
Create a new contact with your new email-address using the mail-gateway.
-
Change the billing-c of all your domains using this new contact, which contains the new robot-email-address. Use the "list domains"-request for a listing of your domains.
-
Go to https://joker.com/index.joker?mode=resellerpages&stage=step13b and provide your new email-address and your new pgp-key and wait for our response mail.
What is the Joker.com public key?
Please verify e-mails from Joker.com using the following public key:
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.7 (GNU/Linux)
mIsEPOorJQEEAJauWOOvusxn9GFEPjZnQ3x/48OfaPwSN4cIF5ezpUT6FycZQa+q
eUnNlS+bj80ULXnyyigmkUGwEtW/Qoyd55RM983pr4KtuHSMSU9gCN1syuHlDOAm
71u6irfv5RaHbJXauMCAgUKn+dBNZVZyUTm9aW2pudcwY45apF2tieTZAAYptClq
b2tlci5jb20gc2lnbmVyIHNlcnZpY2UgPGluZm9Aam9rZXIuY29tPoiyBBMBAgAc
BQI8/NifAhsDBAsHAwIDFQIDAxYCAQIeAQIXgAAKCRAm3eE0EUTiIx9RA/9HGDrD
cVM6PjZHr5jpT4svpv7xrjVRn2OIR+s80RuBAnLyAWOflqJ9342SYD8C7BMAqYm4
wXvC3/yvbQEAqsmJ5Bbq2NV+KDepahTtL8SUQ6TkOSUd9NDOvLoQWVI6o1Dz/3MG
HLJfNtx6067Sq8pP8PuYyscPyZ7/uiUilyOrqg==
=O/7Q
-----END PGP PUBLIC KEY BLOCK-----
Should I use PGP or GPG?
Please have a look at the following web sites to get the newest versions and lots of explanation on the programs.
ATTENTION:
Users of GPG have to use the following flag:
gpg --clearsign --force-v3-sigs ....
Otherwise our system will reject your signed mails.
Macros
E-mail Address
@email
This means an email address in the following format:
Valid values (.com/.net only):
foo@bar.com
foo@bar.com#1
foo@bar.com#15
Invalid values:
Hans Nase <hans@foo.com>
hans@foo.com (Hans Nase)
Valid values (.org/.info/.biz/.de/.cn only):
foo@bar.com
foo-bar@bar.com
Invalid values:
Hans Nase <hans@foo.com>
hans@foo.com (Hans Nase)
foo@bar.com#15
.com Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format CCOM-<number>,
e.g. CCOM-176269.
ATTENTION:
The name of the request field depends on the context. If you want to create a contact for the owner-contact, you have to replace the ".." at the beginning of the fieldname with "owner-contact".
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@comcont or @same-as) (.com only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:CCOM-176269
admin-contact-handle:CCOM-176229
tech-contact-handle:CCOM-176269
billing-contact-handle:CCOM-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:same-as-tech-contact
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .com-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.net Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format CNET-<number>, e.g. CNET-176269.
ATTENTION:
The name of the request field depends on the context. If you want to create a contact for the owner-contact, you have to replace the ".." at the beginning of the fieldname with "owner-contact".
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@netcont or @same-as) (.net only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:CNET-176269
admin-contact-handle:CNET-176229
tech-contact-handle:CNET-176269
billing-contact-handle:CNET-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:same-as-tech-contact
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .net-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.org Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format CORG-<number>, e.g. CORG-176269.
ATTENTION:
The name of the request field depends on the context. If you want to create a contact for the owner-contact, you have to replace the ".." at the beginning of the fieldname with "owner-contact".
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@orgcont or @same-as) (.org only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:CORG-176269
admin-contact-handle:CORG-176229
tech-contact-handle:CORG-176269
billing-contact-handle:CORG-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:same-as-tech-contact
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .org-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.info Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format C<number>-LRMS, e.g. C176269-LRMS.
ATTENTION:
The name of the request field depends on the context. If you want to create a contact for the owner-contact, you have to replace the ".." at the beginning of the fieldname with "owner-contact".
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@infocont or @same-as) (.info only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:C176269-LRMS
admin-contact-handle:CAFI-007
tech-contact-handle:C176269-LRMS
billing-contact-handle:CAFI-008
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .info-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.biz Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created.
ATTENTION
The name of the request field depends on the context. If you want to create a contact for the owner-contact, you have to replace the ".." at the beginning of the fieldname with "owner-contact".
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
Please, keep in mind, that if you are using the concatenation of fname and lname, you have to care that the sum of both fields should not be longer than 30 characters.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,30} | no, if name is given |
".."-fname | [\x20-\x7e]{0,30} | no, if name is given |
".."-name | [\x20-\x7e]{0,30} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,30} | no |
".."-organization | [\x20-\x7e]{0,30} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,30} | yes |
".."-address-2 | [\x20-\x7e]{0,30} | no |
".."-address-3 | [\x20-\x7e]{0,30} | no |
".."-postal-code | [\x20-\x7e]{1,10} | yes |
".."-city | [\x20-\x7e]{1,30} | yes |
".."-state | [\x20-\x7e]{0,30} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,17} | yes |
".."-fax | [[\x20-\x7e]{0,17} | no |
An existing contact (@bizcont or @same-as) (.biz only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle: CNEU-12345
admin-contact-handle: CNEU-12345
tech-contact-handle: CNEU-12345
billing-contact-handle: CNEU-12345
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .biz-requests the contact handles for (.com/.net/.org/.info)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
Note that for .biz-requests the contacthandles for (.info)-contacts are not allowed. If you referencing to a shortcut like C176269-LRMS, you will get an error.
.mobi Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format COMO-<number>, e.g. COMO-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@mobicont or @same-as) (.mobi only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:COMO-176269
admin-contact-handle:COMO-176229
tech-contact-handle:COMO-176269
billing-contact-handle:COMO-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .mobi-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.name Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format CNAM-<number>, e.g. CNAM-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@namecont or @same-as) (.name only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:CNAM-176269
admin-contact-handle:CNAM-176229
tech-contact-handle:CNAM-176269
billing-contact-handle:CNAM-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .name-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.us Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format COUS-<number>, e.g. COUS-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@uscont or @same-as) (.us only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:COUS-176269
admin-contact-handle:COUS-176229
tech-contact-handle:COUS-176269
billing-contact-handle:COUS-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .us-requests the contact handles for (.com/.net)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.de Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format CODE-<number>, e.g. CODE-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | yes, but for admin-c and tech-c only |
An existing contact (@decont or @same-as) (.de only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:CODE-176269
admin-contact-handle:CODE-176229
tech-contact-handle:CODE-176269
billing-contact-handle:CODE-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .de-requests the contact handles for (.com/.net/.org/.info/.biz/.cn)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.cn Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format COCN-<number>, e.g. COCN-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@cncont or @same-as) (.cn only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:COCN-176269
admin-contact-handle:COCN-176229
tech-contact-handle:COCN-176269
billing-contact-handle:COCN-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .cn-requests the contact handles for (.com/.net/.org/.info/.biz/.de)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.eu Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format C<number>, e.g. C176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@uscont or @same-as) (.us only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:C176269
admin-contact-handle:C176229
tech-contact-handle:C176269
billing-contact-handle:C176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .eu-requests the contact handles for (.com/.net/.org/.info/.biz/.de/.us)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
.me contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format COME-<number>, e.g. COME-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@mecont or @same-as) (.me only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:COME-176269
admin-contact-handle:COME-176229
tech-contact-handle:COME-176269
billing-contact-handle:COME-176269
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .me-requests the contact handles for (.com/.net/.org/.info/.biz/.de)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
Nameserver
@ns - the definition of an existing nameserver
You have to provide a valid nameserver handle. Implicit nameserver creation is not allowed.
Examples:
ns1.foo.bar.net
ns2.foo.bar.net
ns3.foo.bar.net
Language code
@language - one of the following language codes
Languagecode | Language |
AFR | Afrikaans |
ALB | Albanian |
ARA | Arabic |
ARM | Armenian |
AZE | Azerbaijani |
BAQ | Basque |
BUL | Bulgarian |
BUR | Burmese |
CAT | Catalan |
CHI | Chinese |
CZE | Czech |
DAN | Danish |
DUT | Dutch |
ENG | English |
EST | Estonian |
FAO | Faroese |
FIN | Finnish |
FRE | French |
GEO | Georgian |
GER | German |
HEB | Hebrew |
HIN | Hindi |
HUN | Hungarian |
ICE | Icelandic |
ITA | Italian |
JPN | Japanese |
KOR | Korean |
KUR | Kurdish |
LAO | Lao |
LAV | Latvian |
LIT | Lithuanian |
MAC | Macedonian |
MAL | Malayalm |
NEP | Nepali |
NOR | Norwegian |
PER | Persian |
POL | Polish |
POR | Portuguese |
RUM | Romanian |
RUS | Russian |
SAN | Sanskirt |
SCC | Serbian |
SCR | Croatian |
SLO | Slovak |
SLV | Slovenian |
SPA | Spanish |
SWA | Swahili |
SWE | Swedish |
SYR | Syriac |
TAM | Tamil |
THA | Thai |
TIB | Tibetan |
TUR | Turkish |
UKR | Ukrainian |
URD | Urdu |
UZB | Uzbek |
VIE | Vietnamese |
ZHO | Chinese |
DNS / URL-Forwarding
Create a dns-configuration
Introduction
With this request you can create or modify a zonefile at the joker-nameserver.
You can add A-Records, CNAME-Records, MX-Records, a nameservice-based Url-forwarding and a frame-based Url-forwarding. Modifing the TTL is not possible.
The format of this request is a little bit different from the other requests. Please check the given examples for how to specify the different zonefile-records.
ATTENTION:
You have to change the nameservers for a domain to the nameservers of joker.com first!
- a.ns.joker.com
- b.ns.joker.com
- c.ns.joker.com
If you would like to use the joker-nameservice, you will have to use all joker-nameservers.
It is not possible to use the joker-nameservice
-
for primary nameservice only
-
for secondarynameservice only
All joker-nameservers
-
are configured to deny all zone-fetching requests!
-
do not query foreign nameservers!
Request Fields
Definition of this request
request-field | valid values | required |
domains0 | @fqdn | yes |
A | @a_record | no |
CNAME | @cname_record | no |
MX | @mx_record | no |
URL | @url_record | no |
FRAME | @url_record | no |
Example 1: create dns-config (without url-forwarding and without wildcard-matching)
subject: create dns-config [your reference id]
domains0:hansnose.net
A:www:194.33.110.19
A:mail:194.33.110.19
A:mail2:194.33.110.20
A:@:194.33.110.10
MX:www.hansnose.net:70:mail.nrw.net
MX:www.hansnose.net:80:mail2.nrw.net
MX:@:70:mail.hansnose.net
MX:@:80:mail2.hansnose.net
CNAME:www3:some.other.domain.com
Example 2: create dns-config (with wildcard-matching)
subject: create dns-config [your reference id]
domains0:hansnose.net
A:www:194.33.110.19
A:@:194.33.110.19
A:*:194.33.110.20
Example 3: create dns-config (with dns-based url-forwarding)
subject: create dns-config [your reference id]
domains0:hansnose.net
A:www:194.33.110.19
A:@:194.33.110.19
URL:www2:http://www.sone.other.domain.com/index.html
(that means, the url within the browserbar is changing to the target address)
Example 4: create dns-config (with frame-based url-forwarding)
subject: create dns-config [your reference id]
domains0:hansnose.net
A:www:194.33.110.19
A:@:194.33.110.19
FRAME:www2:http://www.sone.other.domain.com/index.html
(that means, the url within the browserbar is not changing to the target address)
Delete a dns-configuration
Introduction
With this request you can delete a zonefile at the joker-nameserver.
Request fields
mailsubject: delete dns-config [your reference id]
Definition of this request
request-field | valid values | required |
domains0 | @fqdn | yes |
Example 1: delete dns-config
subject: delete dns-config [your reference id]domains0:hansnose.net
List a dns-configuration
Introduction
With this request you can get a listing of a current zonefile.
Request fields
mailsubject: list dns-config [your reference id] definition of this request
request-field | valid values | required |
domains0 | @fqdn | yes |
Example 1: list dns-config
subject: list dns-config [your reference id]
domains0:hansnose.net
Domains
Create an order
Introduction
create <tld>-order
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
- eu
- xxx
- asia
- me
With this request you can register one or more domains.
You have to provide the following information within the request:
- domain name(s),
- owner-contact-handle,
- admin-contact-handle,
- tech-contact-handle,
- billing-contact-handle,
- nameserver information,
- additional services, if required.
You can register up to 501 domains with one request.
If you register more than one domain with a request, all domains registerd with this request will have the same contact and nameserver structure.
There are two new requestfields within this request:
- name
- address-3
ATTENTION
Please, refer to the table for the corresponding contact handles.
TLD | Contact handle |
com |
CCOM-<number> |
net | CNET-<number> |
org | CORG-<number> |
info | C<number>-LRMS |
biz | CNEU-<number> |
mobi | COMO-<number> |
name | CNAM-<number> |
us | COUS-<number> |
de | CODE-<number> |
cn | COCN-<number> |
eu | C<number> |
me | COME-<number> |
asia | COAS-<number> |
xxx | CONX-<number> |
Request fields
mailsubject: create <tld>-order [your reference id]
Definition of this request
tld | request field | ||
domains[0..500] | period |
language[0..500] |
|
com | [a-z0-9-]{1,63}\.com | ^([1..9]{1})$ |
@language
|
net | [a-z0-9-]{1,63}\.net | ^([1..9]{1})$ |
|
org | [a-z0-9-]{1,63}\.org | ^([1..9]{1})$ |
|
info | [a-z0-9-]{1,63}\.info | ^([1..9]{1})$ |
|
biz | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.biz | ^([1..9]{1})$ |
|
mobi | [a-z0-9-]{1,63}\.mobi | ^([1..9]{1})$ |
|
name | [a-z0-9-]{1,63}\.name | ^([2..9]{1})$ |
|
us | [a-z0-9-]{1,63}\.us | ^([2..9]{1})$ | |
de | [a-z0-9-]{1,63}\.de | ^([1..9]{1})$ |
|
cn | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.cn | ^([1..9]{1})$ |
|
eu | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.eu | ^([1..9]{1})$ |
|
me | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.me | ^([1..9]{1})$ | |
asia | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.asia | ^([1..9]{1})$ | |
xxx | [a-z0-9][a-z0-9-]{1,61}[a-z0-9]\.xxx | ^([1..9]{1})$ | |
required | yes | yes | no (IDN domains only) |
tld | owner-contact-handle | admin-contact-handle |
tech-contact-handle | billing-contact-handle |
com | @comcont | |||
net | @netcont | |||
org | @orgcont | |||
info | @infocont | |||
biz | @decont | |||
mobi | @mobicont | |||
name | @namecont | |||
us | @uscont | |||
de | @bizcont | |||
cn | @cncont | |||
eu | @eucont | |||
me |
@mecont | |||
asia | @asiacon | |||
required | yes |
tld | ns1-handle | ns1-handle |
ns1-handle | ns1-handle |
ns1-handle |
ns1-handle |
<tld> | @ns | |||||
required | yes | yes | no |
.COM order
Example 1: create com-order with implicit contact-handle-creation of the owner-contact
subject: create com-order [your reference id]
domains0:xn--hans-mller-feb.com
language0:AFR
domains1:minus-10a.com
domains2:minus-10b.com
domains3:minus-10c.com
domains4:minus-10d.com
domains5:minus-10e.com
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CCOM-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create com-order with implicit nameserver-creation
subject: create com-order [your reference id]
domains0:minus-109.com
domains1:minus-10a.com
domains2:minus-10b.com
domains3:minus-10c.com
domains4:minus-10d.com
domains5:minus-10e.com
period:2
owner-contact-handle:CCOM-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CCOM-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create com-order with implicit contact-handle-creation of all contacts
subject: create com-order [your reference id]
domains0:minus-109.com
domains1:minus-10a.com
domains2:minus-10b.com
domains3:minus-10c.com
domains4:minus-10d.com
domains5:minus-10e.com
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.NET order
Example 1: create net-order with implicit contact-handle-creation of the owner-contact
subject: create net-order [your reference id]
domains0:xn--hans-mller-feb.net
language0:AFR
domains1:minus-10a.net
domains2:minus-10b.net
domains3:minus-10c.net
domains4:minus-10d.net
domains5:minus-10e.net
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CCOM-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create net-order with implicit nameserver-creation
subject: create net-order [your reference id]
domains0:minus-109.net
domains1:minus-10a.net
domains2:minus-10b.net
domains3:minus-10c.net
domains4:minus-10d.net
domains5:minus-10e.net
period:2
owner-contact-handle:CCOM-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CCOM-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create net-order with implicit contact-handle-creation of all contacts
subject: create net-order [your reference id]
domains0:minus-109.net
domains1:minus-10a.net
domains2:minus-10b.net
domains3:minus-10c.net
domains4:minus-10d.net
domains5:minus-10e.net
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.ORG order
Example 1: create org-order with implicit contact-handle-creation of the owner-contact
subject: create org-order [your reference id]
domains0:xn--hans-mller-feb.org
language0:AFR
domains1:minus-10a.org
domains2:minus-10b.org
domains3:minus-10c.org
domains4:minus-10d.org
domains5:minus-10e.org
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CORG-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create org-order with implicit nameserver-creation
subject: create org-order [your reference id]
domains0:minus-109.org
domains1:minus-10a.org
domains2:minus-10b.org
domains3:minus-10c.org
domains4:minus-10d.org
domains5:minus-10e.org
period:2
owner-contact-handle:CORG-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CORG-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create org-order with implicit contact-handle-creation of all contacts
subject: create org-order [your reference id]
domains0:minus-109.org
domains1:minus-10a.org
domains2:minus-10b.org
domains3:minus-10c.org
domains4:minus-10d.org
domains5:minus-10e.org
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.INFO order
Example 1: create info-order with implicit contact-handle-creation of the owner-contact
subject: create info-order [your reference id]
domains0:xn--hans-mller-feb.info
language0:AFR
domains1:minus-10a.info
domains2:minus-10b.info
domains3:minus-10c.info
domains4:minus-10d.info
domains5:minus-10e.info
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:C282828-LRMS
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create info-order with implicit nameserver-creation
subject: create info-order [your reference id]
domains0:minus-109.info
domains1:minus-10a.info
domains2:minus-10b.info
domains3:minus-10c.info
domains4:minus-10d.info
domains5:minus-10e.info
period:2
owner-contact-handle:C176269-LRMS
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:C176219-LRMS
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create info-order with implicit contact-handle-creation of all contacts
subject: create info-order [your reference id]
domains0:minus-109.info
domains1:minus-10a.info
domains2:minus-10b.info
domains3:minus-10c.info
domains4:minus-10d.info
domains5:minus-10e.info
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.BIZ order
Example 1: create biz-order with implicit contact-handle-creation of the owner-contact
domains0:xn--hans-mller-feb.biz
language0:AFR
domains1:minus-10a.biz
domains2:minus-10b.biz
domains3:minus-10c.biz
domains4:minus-10d.biz
domains5:minus-10e.biz
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 2: create biz-order with implicit nameserver-creation
subject: create biz-order [your reference id]
domains0:minus-109.biz
domains1:minus-10a.biz
domains2:minus-10b.biz
domains3:minus-10c.biz
domains4:minus-10d.biz
domains5:minus-10e.biz
period:2
owner-contact-handle:CNEU-123
admin-contact-handle:CNEU-124
tech-contact-handle:CNEU-125
billing-contact-handle:CNEU-126
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create biz-order with implicit contact-handle-creation of all contacts
subject: create biz-order [your reference id]
domains0:minus-109.biz
domains1:minus-10a.biz
domains2:minus-10b.biz
domains3:minus-10c.biz
domains4:minus-10d.biz
domains5:minus-10e.biz
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.MOBI ORDER
Example 1: create mobi-order with implicit contact-handle-creation of the owner-contact
subject: create mobi-order [your reference id]
domains0:xn--hans-mller-feb.mobi
language0:AFR
domains1:minus-10a.mobi
domains2:minus-10b.mobi
domains3:minus-10c.mobi
domains4:minus-10d.mobi
domains5:minus-10e.mobi
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:COMO-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create mobi-order with implicit nameserver-creation
subject: create mobi-order [your reference id]
domains0:minus-109.mobi
domains1:minus-10a.mobi
domains2:minus-10b.mobi
domains3:minus-10c.mobi
domains4:minus-10d.mobi
domains5:minus-10e.mobi
period:2
owner-contact-handle:COMO-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:COMO-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create mobi-order with implicit contact-handle-creation of all contacts
subject: create mobi-order [your reference id]
domains0:minus-109.mobi
domains1:minus-10a.mobi
domains2:minus-10b.mobi
domains3:minus-10c.mobi
domains4:minus-10d.mobi
domains5:minus-10e.mobi
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.NAME ORDER
Example 1: create name-order with implicit contact-handle-creation of the owner-contact
subject: create name-order [your reference id]
domains0:xn--hans-mller-feb.net
language0:AFR
domains1:minus-10a.name
domains2:minus-10b.name
domains3:minus-10c.name
domains4:minus-10d.name
domains5:minus-10e.name
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CNAM-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create name-order with implicit nameserver-creation
subject: create name-order [your reference id]
domains0:minus-109.name
domains1:minus-10a.name
domains2:minus-10b.name
domains3:minus-10c.name
domains4:minus-10d.name
domains5:minus-10e.name
period:2
owner-contact-handle:CNAM-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CNAM-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create name-order with implicit contact-handle-creation of all contacts
subject: create name-order [your reference id]
domains0:minus-109.name
domains1:minus-10a.name
domains2:minus-10b.name
domains3:minus-10c.name
domains4:minus-10d.name
domains5:minus-10e.name
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.US ORDER
Example 1: create us-order with implicit contact-handle-creation of the owner-contact
subject: create us-order [your reference id]
domains0:xn--hans-mller-feb.us
language0:AFR
domains1:minus-10a.us
domains2:minus-10b.us
domains3:minus-10c.us
domains4:minus-10d.us
domains5:minus-10e.us
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nose
owner-contact-address-1:horsefair mews
owner-contact-postal-code:4711
owner-contact-city:romsey
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:COUS-123
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create us-order with implicit nameserver-creation
subject: create us-order [your reference id]
domains0:minus-109.us
domains1:minus-10a.us
domains2:minus-10b.us
domains3:minus-10c.us
domains4:minus-10d.us
domains5:minus-10e.us
period:2
owner-contact-handle:COUS-123
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:COUS-13323
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create us-order with implicit contact-handle-creation of all contacts
subject: create us-order [your reference id]
domains0:minus-109.us
domains1:minus-10a.us
domains2:minus-10b.us
domains3:minus-10c.us
domains4:minus-10d.us
domains5:minus-10e.us
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.DE ORDER
Example 1: create de-order with implicit contact-handle-creation of the owner-contact
subject: create de-order [your reference id]
domains0:minus-10x.de
language0:GER
domains1:minus-10a.de
domains2:minus-10b.de
domains3:minus-10c.de
domains4:minus-10d.de
domains5:minus-10e.de
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nase
owner-contact-address-1:Musterstrasse 11
owner-contact-postal-code:4711
owner-contact-city:Musterhausen
owner-contact-country:DE
owner-contact-phone:49 13383794 504040
owner-contact-fax:49 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CODE-1007
ns1-handle:ns.gonzo.net
ns2-handle:ns2.gonzo.net
Example 2: create net-order with implicit nameserver-creation
subject: create de-order [your reference id]
domains0:minus-109.de
domains1:minus-10a.de
domains2:minus-10b.de
domains3:minus-10c.de
domains4:minus-10d.de
domains5:minus-10e.de
period:2
owner-contact-handle:CODE-1007
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:CODE-1007
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create net-order with implicit contact-handle-creation of all contacts
subject: create de-order [your reference id]
domains0:minus-109.de
domains1:minus-10a.de
domains2:minus-10b.de
domains3:minus-10c.de
domains4:minus-10d.de
domains5:minus-10e.de
period:2
owner-contact-email:gonzo@nose.net
owner-contact-individual:Y
owner-contact-fname:gonzo
owner-contact-lname:nase
owner-contact-address-1:Musterstrasse 11
owner-contact-postal-code:4711
owner-contact-city:Musterhausen
owner-contact-country:DE
owner-contact-phone:49 13383794 504040
owner-contact-fax:49 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nase
admin-contact-address-1:Musterstrasse 11
admin-contact-postal-code:4711
admin-contact-city:Musterhausen
admin-contact-country:DE
admin-contact-phone:49 13383794 504040
admin-contact-fax:49 13383794 504040
tech-contact-email:gonzo@nose.net
tech-contact-individual:Y
tech-contact-fname:gonzo
tech-contact-lname:nase
tech-contact-address-1:Musterstrasse 11
tech-contact-postal-code:4711
tech-contact-city:Musterhausen
tech-contact-country:DE
tech-contact-phone:49 13383794 504040
tech-contact-fax:49 13383794 504040
billing-contact-email:gonzo@nose.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nase
billing-contact-address-1:Musterstrasse 11
billing-contact-postal-code:4711
billing-contact-city:Musterhausen
billing-contact-country:DE
billing-contact-phone:49 13383794 504040
billing-contact-fax:49 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.CN ORDER
Example 1: create cn-order with implicit contact-handle-creation of the owner-contact
subject: create cn-order [your reference id]
domains0:xn--hans-mller-feb.cn
domains1:minus-10a.cn
domains2:minus-10b.cn
domains3:minus-10c.cn
domains4:minus-10d.cn
domains5:minus-10e.cn
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 2: create cn-order using existing cn-handles
subject: create cn-order [your reference id]
domains0:minus-109.cn
domains1:minus-10a.cn
domains2:minus-10b.cn
domains3:minus-10c.cn
domains4:minus-10d.cn
domains5:minus-10e.cn
period:2
owner-contact-handle:COCN-123
admin-contact-handle:COCN-124
tech-contact-handle:COCN-125
billing-contact-handle:COCN-126
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create cn-order with backreferences using @same-as
subject: create cn-order [your reference id]
domains0:minus-109.cn
domains1:minus-10a.cn
domains2:minus-10b.cn
domains3:minus-10c.cn
domains4:minus-10d.cn
domains5:minus-10e.cn
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:same-as-tech-contact
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
.EU ORDER
Example 1: create eu-order with implicit contact-handle-creation of all contacts
subject: create eu-order [your reference id]
domains0:xn--hans-mller-feb.eu
domains1:minus-10a.eu
domains2:minus-10b.eu
domains3:minus-10c.eu
domains4:minus-10d.eu
domains5:minus-10e.eu
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-email:gonzo@nose.net
admin-contact-individual:Y
admin-contact-fname:gonzo
admin-contact-lname:nose
admin-contact-address-1:horsefair mews
admin-contact-city:romsey
admin-contact-postal-code:4711
admin-contact-country:DE
admin-contact-phone:44 13383794 504040
tech-contact-email:willi@nose.net
tech-contact-individual:Y
tech-contact-fname:willi
tech-contact-lname:nose
tech-contact-address-1:horsefair mews
tech-contact-city:romsey
tech-contact-postal-code:4711
tech-contact-country:DE
tech-contact-phone:44 13383794 504040
billing-contact-email:isp@greatone.net
billing-contact-individual:Y
billing-contact-fname:gonzo
billing-contact-lname:nose
billing-contact-address-1:Melrose Plase
billing-contact-postal-code:4711
billing-contact-city:romsey
billing-contact-country:DE
billing-contact-phone:44 13383794 504040
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 2: create eu-order using existing .eu-handles
subject: create eu-order [your reference id]
domains0:minus-109.eu
domains1:minus-10a.eu
domains2:minus-10b.eu
domains3:minus-10c.eu
domains4:minus-10d.eu
domains5:minus-10e.eu
period:2
owner-contact-handle:C123123
admin-contact-handle:C123124
tech-contact-handle:C123125
billing-contact-handle:C123126
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Example 3: create eu-order with backreferences using @same-as
subject: create eu-order [your reference id]
domains0:minus-109.eu
domains1:minus-10a.eu
domains2:minus-10b.eu
domains3:minus-10c.eu
domains4:minus-10d.eu
domains5:minus-10e.eu
period:2
owner-contact-email:hans@nose.net
owner-contact-individual:Y
owner-contact-lname:nose
owner-contact-fname:hans
owner-contact-address-1:horsefair mews
owner-contact-city:romsey
owner-contact-postal-code:4711
owner-contact-country:DE
owner-contact-phone:44 13383794 504040
admin-contact-handle:same-as-owner-contact
tech-contact-handle:same-as-admin-contact
billing-contact-handle:same-as-tech-contact
ns1-domain-name:nsxx1.gonzo.net
ns1-ip-address:194.201.101.1
ns2-domain-name:nsxx1.gonzo.net
ns2-ip-address:194.201.101.2
Modify a domain
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
You have to provide the following information within the request:
- the domainname(s),
- the renewalperiod or the desired expirationyear
You can renew up to 500 domains with one request.
Due to the fact, that you can renew more than 1 domain with one request, the format is a little bit different from the other requests. Please check the given examples on how to specify the renewal period.
If the sum of the expire time and the renewal time is more then 10 years, we will reject your request.
This request is not working for domains, which are located on the old system. For these domains you have to check the documentation of the old system.
If you provide the expire year, this request will rejected, if the current expire year is greater than the desired. This feature prevents an error in case 1 renew-request is sent twice by mistake.
Request fields
mailsubject: renew <tld>-domain [your reference id]
Definition of this request
request-field | valid values | required |
domains[0..500] | [a-z0-9-]{1,63}\.<tld>:([1-9]|\d{4}) | yes |
.COM renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:4
domains1:minus-119.com:4
domains2:minus-129.com:4
domains3:minus-139.com:4
domains4:minus-149.com:4
Example 3: renew 5 domains for different years using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:1
domains1:minus-119.com:2
domains2:minus-129.com:3
domains3:minus-139.com:4
domains4:minus-149.com:5
Example 4: renew 1 domain using the field expirationyear
subject: renew com-domain [your reference id]
domains0:minus-109.com:2005
.NET Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:4
domains1:minus-119.net:4
domains2:minus-129.net:4
domains3:minus-139.net:4
domains4:minus-149.net:4
Example 3: renew 5 domains for different years using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:1
domains1:minus-119.net:2
domains2:minus-129.net:3
domains3:minus-139.net:4
domains4:minus-149.net:5
Example 4: renew 1 domain using the field expirationyear
subject: renew net-domain [your reference id]
domains0:minus-109.net:2005
.ORG Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:4
domains1:minus-119.org:4
domains2:minus-129.org:4
domains3:minus-139.org:4
domains4:minus-149.org:4
Example 3: renew 5 domains for different years using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:1
domains1:minus-119.org:2
domains2:minus-129.org:3
domains3:minus-139.org:4
domains4:minus-149.org:5
Example 4: renew 1 domain using the field expirationyear
subject: renew org-domain [your reference id]
domains0:minus-109.org:2005
.INFO Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:4
domains1:minus-119.info:4
domains2:minus-129.info:4
domains3:minus-139.info:4
domains4:minus-149.info:4
Example 3: renew 5 domains for different years using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:1
domains1:minus-119.info:2
domains2:minus-129.info:3
domains3:minus-139.info:4
domains4:minus-149.info:5
Example 4: renew 1 domain using the field expirationyear
subject: renew info-domain [your reference id]
domains0:minus-109.info:2005
.BIZ Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:4
domains1:minus-119.biz:4
domains2:minus-129.biz:4
domains3:minus-139.biz:4
domains4:minus-149.biz:4
Example 3: renew 5 domains for different years using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:1
domains1:minus-119.biz:2
domains2:minus-129.biz:3
domains3:minus-139.biz:4
domains4:minus-149.biz:5
Example 4: renew 1 domain using the field expirationyear
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:2005
.NAME Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:4
domains1:minus-119.name:4
domains2:minus-129.name:4
domains3:minus-139.name:4
domains4:minus-149.name:4
Example 3: renew 5 domains for different years using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:1
domains1:minus-119.name:2
domains2:minus-129.name:3
domains3:minus-139.name:4
domains4:minus-149.name:5
Example 4: renew 1 domain using the field expirationyear
subject: renew name-domain [your reference id]
domains0:minus-109.name:2005
.US Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:4
domains1:minus-119.us:4
domains2:minus-129.us:4
domains3:minus-139.us:4
domains4:minus-149.us:4
Example 3: renew 5 domains for different years using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:1
domains1:minus-119.us:2
domains2:minus-129.us:3
domains3:minus-139.us:4
domains4:minus-149.us:5
Example 4: renew 1 domain using the field expire year
subject: renew us-domain [your reference id]
domains0:minus-109.net:2005
.DE Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:4
domains1:minus-119.de:4
domains2:minus-129.de:4
domains3:minus-139.de:4
domains4:minus-149.de:4
Example 3: renew 5 domains for different years using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:1
domains1:minus-119.de:2
domains2:minus-129.de:3
domains3:minus-139.de:4
domains4:minus-149.de:5
Example 4: renew 1 domain using the field expirationyear
subject: renew de-domain [your reference id]
domains0:minus-109.de:2005
.CN Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:4
domains1:minus-119.cn:4
domains2:minus-129.cn:4
domains3:minus-139.cn:4
domains4:minus-149.cn:4
Example 3: renew 5 domains for different years using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:1
domains1:minus-119.cn:2
domains2:minus-129.cn:3
domains3:minus-139.cn:4
domains4:minus-149.cn:5
Example 4: renew 1 domain using the field expire year
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:2005
Renew a domain
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
You have to provide the following information within the request:
- the domainname(s),
- the renewalperiod or the desired expirationyear
You can renew up to 500 domains with one request.
Due to the fact, that you can renew more than 1 domain with one request, the format is a little bit different from the other requests. Please check the given examples on how to specify the renewal period.
If the sum of the expire time and the renewal time is more then 10 years, we will reject your request.
This request is not working for domains, which are located on the old system. For these domains you have to check the documentation of the old system.
If you provide the expire year, this request will rejected, if the current expire year is greater than the desired. This feature prevents an error in case 1 renew-request is sent twice by mistake.
Request fields
mailsubject: renew <tld>-domain [your reference id]
Definition of this request
request-field | valid values | required |
domains[0..500] | [a-z0-9-]{1,63}\.<tld>:([1-9]|\d{4}) | yes |
.COM renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:4
domains1:minus-119.com:4
domains2:minus-129.com:4
domains3:minus-139.com:4
domains4:minus-149.com:4
Example 3: renew 5 domains for different years using the field period
subject: renew com-domain [your reference id]
domains0:minus-109.com:1
domains1:minus-119.com:2
domains2:minus-129.com:3
domains3:minus-139.com:4
domains4:minus-149.com:5
Example 4: renew 1 domain using the field expirationyear
subject: renew com-domain [your reference id]
domains0:minus-109.com:2005
.NET Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:4
domains1:minus-119.net:4
domains2:minus-129.net:4
domains3:minus-139.net:4
domains4:minus-149.net:4
Example 3: renew 5 domains for different years using the field period
subject: renew net-domain [your reference id]
domains0:minus-109.net:1
domains1:minus-119.net:2
domains2:minus-129.net:3
domains3:minus-139.net:4
domains4:minus-149.net:5
Example 4: renew 1 domain using the field expirationyear
subject: renew net-domain [your reference id]
domains0:minus-109.net:2005
.ORG Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:4
domains1:minus-119.org:4
domains2:minus-129.org:4
domains3:minus-139.org:4
domains4:minus-149.org:4
Example 3: renew 5 domains for different years using the field period
subject: renew org-domain [your reference id]
domains0:minus-109.org:1
domains1:minus-119.org:2
domains2:minus-129.org:3
domains3:minus-139.org:4
domains4:minus-149.org:5
Example 4: renew 1 domain using the field expirationyear
subject: renew org-domain [your reference id]
domains0:minus-109.org:2005
.INFO Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:4
domains1:minus-119.info:4
domains2:minus-129.info:4
domains3:minus-139.info:4
domains4:minus-149.info:4
Example 3: renew 5 domains for different years using the field period
subject: renew info-domain [your reference id]
domains0:minus-109.info:1
domains1:minus-119.info:2
domains2:minus-129.info:3
domains3:minus-139.info:4
domains4:minus-149.info:5
Example 4: renew 1 domain using the field expirationyear
subject: renew info-domain [your reference id]
domains0:minus-109.info:2005
.BIZ Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:4
domains1:minus-119.biz:4
domains2:minus-129.biz:4
domains3:minus-139.biz:4
domains4:minus-149.biz:4
Example 3: renew 5 domains for different years using the field period
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:1
domains1:minus-119.biz:2
domains2:minus-129.biz:3
domains3:minus-139.biz:4
domains4:minus-149.biz:5
Example 4: renew 1 domain using the field expirationyear
subject: renew biz-domain [your reference id]
domains0:minus-109.biz:2005
.NAME Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:4
domains1:minus-119.name:4
domains2:minus-129.name:4
domains3:minus-139.name:4
domains4:minus-149.name:4
Example 3: renew 5 domains for different years using the field period
subject: renew name-domain [your reference id]
domains0:minus-109.name:1
domains1:minus-119.name:2
domains2:minus-129.name:3
domains3:minus-139.name:4
domains4:minus-149.name:5
Example 4: renew 1 domain using the field expirationyear
subject: renew name-domain [your reference id]
domains0:minus-109.name:2005
.US Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:4
domains1:minus-119.us:4
domains2:minus-129.us:4
domains3:minus-139.us:4
domains4:minus-149.us:4
Example 3: renew 5 domains for different years using the field period
subject: renew us-domain [your reference id]
domains0:minus-109.us:1
domains1:minus-119.us:2
domains2:minus-129.us:3
domains3:minus-139.us:4
domains4:minus-149.us:5
Example 4: renew 1 domain using the field expire year
subject: renew us-domain [your reference id]
domains0:minus-109.net:2005
.DE Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:4
domains1:minus-119.de:4
domains2:minus-129.de:4
domains3:minus-139.de:4
domains4:minus-149.de:4
Example 3: renew 5 domains for different years using the field period
subject: renew de-domain [your reference id]
domains0:minus-109.de:1
domains1:minus-119.de:2
domains2:minus-129.de:3
domains3:minus-139.de:4
domains4:minus-149.de:5
Example 4: renew 1 domain using the field expirationyear
subject: renew de-domain [your reference id]
domains0:minus-109.de:2005
.CN Renewal
Example 1: renew 1 domain for 1 year using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:1
Example 2: renew 5 domains for 4 years using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:4
domains1:minus-119.cn:4
domains2:minus-129.cn:4
domains3:minus-139.cn:4
domains4:minus-149.cn:4
Example 3: renew 5 domains for different years using the field period
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:1
domains1:minus-119.cn:2
domains2:minus-129.cn:3
domains3:minus-139.cn:4
domains4:minus-149.cn:5
Example 4: renew 1 domain using the field expire year
subject: renew cn-domain [your reference id]
domains0:minus-109.cn:2005
Transfer a domain
Introduction
transfer <tld>-domain
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
With this request you can transfer a domain from 1 registrar to Joker.com.
You have to provide the following information within the request:
- the domain name,
- the auth-id,
- the billing-contact-handle,
You can transfer 1 com domain with one request.
As you can see, we dont need information about the owner-contact. We will detect this information from the whois of the current registrar and we will create the contact-handle for the owner-contact automatically.
As you can see, we need the billing-contact-handle. We recommend using a billing-handle with the email-address of your "robot-email". If you use a contact-handle with a different e-mail than your robot e-mail, you can't administer the transfered domain using the webinterface and the person with access to the email, which is shown in the provided billing-handle will have access using the web-interface.
If you don't have a com-contact-handle with your "robot-email", you have to create a com-handle using the "create com-contact" request.
We do not need information about the nameservers. This information will be detected from the whois of the current registrar and we will create the nameservers if necessary.
This procedure implies, that an owner change or change of nameservers during the transfer-process is not possible.
Request fields
mailsubject: transfer <tld>-domain [your reference id]
ATTENTION:
You can transfer 1 domain with one request.
Definition of this request
request-field | valid values | required |
domains0 | [a-z0-9-]{1,63}\.<tld> | yes |
auth-id | .* |
yes |
billing-contact-handle | Please, refer to the table below. |
yes |
tld | billing-contact-handle |
com | @comcont |
net | @netcont |
org | @orgcont |
info | @infocont |
biz | @bizcont |
mobi | @mobicont |
name | @namecont |
us | @uscont |
de | @decont |
cn | @cncont |
eu | @eucont |
TRANSFER COM DOMAIN
Example 1: transfer com-domain
subject: transfer com-domain [your reference id]
domains0:minus-109.com
auth-id:0293XaAdA
billing-contact-handle:CCOM-1234
TRANSFER NET DOMAIN
Example 1: transfer net-domain
subject: transfer net-domain [your reference id]
domains0:minus-109.net
auth-id:0293XaAdA
billing-contact-handle:CNET-1234
TRANSFER ORG DOMAIN
Example 1: transfer org-domain
subject: transfer org-domain [your reference id]
domains0:minus-109.org
auth-id:0293XaAdA
billing-contact-handle:CORG-1234
TRANSFER INFO DOMAIN
Example 1: transfer info-domain
subject: transfer info-domain [your reference id]
domains0:minus-109.info
auth-id:0293XaAdA
billing-contact-handle:C176269-LRMS
TRANSFER BIZ DOMAIN
Example 1: transfer biz-domain
subject: transfer biz-domain [your reference id]
domains0:minus-109.biz
auth-id:0293XaAdA
billing-contact-handle:CNEU-123
TRANSFER NAME DOMAIN
Example 1: transfer name-domain
subject: transfer name-domain [your reference id]
domains0:minus-109.name
auth-id:0293XaAdA
billing-contact-handle:CNAM-1234
TRANSFER US DOMAIN
Example 1: transfer us-domain
subject: transfer us-domain [your reference id]
domains0:minus-109.us
auth-id:0293XaAdA
billing-contact-handle:COUS-1234
TRANSFER DE DOMAIN
Example 1: transfer de-domain
subject: transfer de-domain [your reference id]
domains0:minus-109.de
auth-id:0293XaAdA
billing-contact-handle:CODE-1234
TRANSFER CN DOMAIN
Example 1: transfer cn-domain
subject: transfer cn-domain [your reference id]
domains0:minus-109.cn
auth-id:0293XaAdA
billing-contact-handle:COCN-1234
Delete a domain
Introduction
With this request you can delete a domain at Joker.com.
You have to provide the following information within the request:
- domain name(s),
- the special flag force
ATTENTION:
If you delete a domain within the first 72 hours after the registration, the registration-fee will be refunded to your account.
mailsubject: delete domain [your reference id]
Definition of this request
Please, do not forget to provide the domain name and the force-flag set to 1 if the domain is older 72h.
request-field | valid values | required |
tld | (com|net|org|info|biz|mobi|name|de|cn|eu|us) | yes |
sld | [a-z0-9-]{1,63} | yes |
force | 1|0 | no |
DELETE COM DOMAIN
Example 1: delete a domain during the first 72 hours after registration
subject: delete domain [your reference id]
tld:com
sld:frezel
Example 2: delete a domain after the first 72 hours after registration
subject: delete domain [your reference id]
tld:com
sld:frezel
force:1
Example 3: delete a domain only for the case that a refund is possible!
subject: delete domain [your reference id]
tld:com
sld:frezel
force:0
List domains
Introduction
list domains
With this request you can get a list (lexicographically sorted) of all the domains, you have currently registered at joker.com.
You have to provide the target-registry within the request:
- cno = .com/.net
- com = .net
- net = .net
- org = .org
- info = .info
- biz = .biz
- mobi = .mobi
- name = .mobi
- de = .de
- cn = .cn
- eu = .eu
- us = .us
LIMITATIONS:
- Only 20.000 domains are listed. If you have more than 20.000 domains under 1 registry at joker.com, you have to track the domain names yourself.
- In case you have more than 20.000 domains at joker.com under 1 registry, this request will not work for you. The listing would be incomplete and it will be missing random domains.
- This request works only with the new joker.com system.
Request fields
mailsubject: list domains [your reference id]
Definition of this request:
request-field | valid values | required |
target | com|net|org|info|mobi|name|biz|de|cn|eu|us | yes |
LIST DOMAINS
Example 1: list domains for .com-domains
subject: list domains [your reference id]
target:com
Example 2: list domains for .net-domains
subject: list domains [your reference id]
target:net
Example 3: list domains for .org-domains
subject: list domains [your reference id]
target:org
Example 4: list domains for .info-domains
subject: list domains [your reference id]
target:info
Example 5: list domains for .biz-domains
subject: list domains [your reference id]
target:biz
Example 6: list domains for .de-domains
subject: list domains [your reference id]
target:de
Example 7: list domains for .cn-domains
subject: list domains [your reference id]
target:cn
Lock a domain
Introduction
lock domain
With this request you can lock a domain in order to prevent fraudulent transfer attempts. If a domain is locked, each transfer-request from a foreign registrar will be declined.
You have to provide the following information within the request:
- domain name
You can lock 1 domain with one request.
Request fields
mailsubject: lock domain [your reference id]
Definition of this request
request-field | valid values | required |
fqdn | @fqdn | yes |
Example 1: lock a domain
subject: lock domain [your reference id]
fqdn:minus-109.com
Unlock a domain
Introduction
unlock domain
With this request you can unlock a domain. If you want to transfer a domain to a foreign registrar, the domain has to be unlocked.
You have to provide the following informations within the request:
- domain name
You can unlock 1 domain with one request.
Request fields
mailsubject: unlock domain [your reference id]
Definitions of this request
request-field | valid values | required |
fqdn | @fqdn | yes |
Example 1: unlock a domain
subject: unlock domain [your reference id]
fqdn:minus-109.com
Get Auth-id
Introduction
With this request you can retrieve the auth-id for a particular domain. That request is needed only for the TLD's .org/.info/.biz.
You have to provide the following information within the request:
- domain name
You can retrieve the auth-id for 1 domain with one request.
Request fields
mailsubject: get auth-id [your reference id]
Definition of this request
request-field | valid values | required | |||||
fqdn | @orgdom | @infodom | @bizdom | @cndom | @eudom | @usdom | yes |
Example 1: retrieve the auth-id for a .org-domain
subject: get auth-id [your reference id]
fqdn:minus-109.org
Example 2: retrieve the auth-id for a .biz-domain
subject: get auth-id [your reference id]
fqdn:minus-109.biz
Example 3: retrieve the auth-id for a .eu-domain
subject: get auth-id [your reference id]
fqdn:minus-109.eu
Grant Roles/Domain Permissions, Internal Transfer
Introduction
With this request you can assign 'Roles' (permissions) of domains to other Joker.com users. The special role "creator" is an equivalent to an internal transfer of that domain to another Joker.com user.In this case, the domain is assigned to the receiving account, including all rights and permissions on this domain.
There are two variants to use this functionality: If the user id (Joker.com user account id) is given, and the account id matches the associated email address, the role is applied immediately - there will be no request for confirmation on the receiver's side. In case the user id is not given, but only the email address, the transaction has to be acknowledged by the receiver. For this, he will get an email, containing a link and a key. Either the link has to be clicked, or the key has to be applied using Joker.com (=> Transfer). This can also be used for users which do not yet have a Joker.com account.
You have to provide the following parameters:
- domain name (the domain you want to grant somebody else permissions on)
- destination client email (the email address of the user you want to receive permissions)
The following parameters are optional:
- destination client id (ID of Joker.com account - always shown in the upper right on Joker.com, also conforms to "reseller id" - must match the 'destination client email')
- desired role (type of permission you want to assign to "client email" resp. "client id" - one of "admin|tech|billing|creator"; "creator" means "all permissions" and is equivalent to an internal transfer or 'assignment' - also see 'roles ')
Request fields
mailsubject: joker-internal-transfer [your reference id]
Definition of this request
Valid values for <tld>: all Joker.com tlds
request-field | valid values | required |
fqdn | [a-z0-9-]{1,63}\.<tld> | yes |
destination-client-email |
yes |
|
destination-client-id |
[0-9]+ |
no |
desired-role |
admin|tech|billing|creator (if omitted, default is 'creator') |
no |
Example 1: assign 'billing'-role to user 123456 (direct)
subject: joker-internal-transfer [your reference id]
body: fqdn:exampledomain.com destination-client-email:example-user@gmail.com destination-client-id:123456 desired-role:billing
Example 2: assign 'creator'-role to user 'example-user@gmail.com' (internal transfer with invitation)
subject: joker-internal-transfer [your reference id]
body:
fqdn:exampledomain.com destination-client-email:example-user@gmail.com desired-role:creator
Contacts
Create a contact
Introduction
create <tld>-order
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
- eu
With this request you can create person contacts. You can create 1 contact with one request.
ATTENTION:
You will find the request-field "individual" within the request-definition. if you set it to "Y", you have to provide the request-fields "lname" and "fname" or "name". If you set it to "N", you have to provide information in the request-field "organization".
As the whois for .com shows a field called person, the rules for generating this field are the following:
If you provide the field "name", the whois is showing always the values of this field, regardless of "fname" and "lname".
If you only provide the field "fname" and the field "lname", we will generate the field "name" as the result of the concatenation of "fname" + " " + "lname".
The result of "create com-contact" is a reference which is following the format:
- CCOM-<number> e.g. CCOM-176269 for a .com domain.
- CNET-<number> e.g. CNET-176269 for a .net domain.
- CORG-<number> e.g. CORG-176269 for a .org domain.
- C<number>-LRMS e.g. C176269-LRMS for a .info domain.
- CNEU-<number> e.g. CNEU-176269 for a .biz domain.
- COMO-<number> e.g. COMO-176269 for a .mobi domain.
- CNAM-<number> e.g. CNAM-176269 for a .name domain.
- COUS-<number> e.g. COUS-176269 for a .us domain.
- CODE-<number> e.g. CODE-176269 for a .de domain.
- COCN-<number> e.g. COCN-176269 for a .cn domain.
- C<number> e.g. C176269 for a .eu domain.
Request fields
mailsubject: create <tld>-contact [your reference id]
Definition of this request
ATTENTION
According to the rules of DENIC, you have to provide a faxnumber for the admin-c and the tech-c of a .de domain.
request-field | valid values |
required |
|
com|net|org|info|mobi|name|us|de | biz|cn|eu | ||
individual |
[YN] |
yes |
|
lname | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if individual = Y |
fname | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if individual = Y |
name | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if fname and/or lname are not given |
title | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
organization | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if individual = N |
address-1 |
[\x20-\x7e]{1,80} |
[\x20-\x7e]{1,30} |
yes |
address-2 |
[\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
address-3 |
Only for biz/cn/eu | [\x20-\x7e]{0,30} |
no |
postal-code | [\x20-\x7e]{1,50} |
[\x20-\x7e]{1,10} | yes |
city | [\x20-\x7e]{1,80} |
[\x20-\x7e]{1,30} |
yes |
state | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
country | @country |
yes |
|
@email |
yes |
||
phone | [\x20-\x7e]{1,50} |
[[\x20-\x7e]{1,17} |
yes |
fax | [[\x20-\x7e]{0,50} |
[[\x20-\x7e]{0,17} |
yes (for admin-c and tech-c of .de only) |
CREATE COM CONTACT
Example 1: create com-contact (name will be generated from fname and lname)
subject: create com-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create com-contact (fname and lname will be ignored)
subject: create com-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE NET CONTACT
Example 1: create net-contact (name will be generated from fname and lname)
subject: create net-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create net-contact (fname and lname will be ignored)
subject: create net-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE ORG CONTACT
Example 1: create org-contact (name will be generated from fname and lname)
subject: create org-contact [your reference id]
email:gonzo@nose.org
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create org-contact (fname and lname will be ignored)
subject: create org-contact [your reference id]
email:gonzo@nose.org
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE INFO CONTACT
Example 1: create info-contact (name will be generated from fname and lname)
subject: create info-contact [your reference id]
email:gonzo@nose.info
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create info-contact (fname and lname will be ignored)
subject: create info-contact [your reference id]
email:gonzo@nose.info
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE BIZ CONTACT
Example 1: create biz-contact (name will be generated from fname and lname)
subject: create biz-contact [your reference id]
email:gonzo@nose.biz
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create biz-contact (fname and lname will be ignored)
subject: create biz-contact [your reference id]
email:gonzo@nose.biz
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE NAME CONTACT
Example 1: create name-contact (name will be generated from fname and lname)
subject: create name-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create name-contact (fname and lname will be ignored)
subject: create name-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE US CONTACT
Example 1: create us-contact (name will be generated from fname and lname)
subject: create us-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create us-contact (fname and lname will be ignored)
subject: create us-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE DE CONTACT
Example 1: create de-contact (name will be generated from fname and lname)
subject: create de-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:Musterstrasse 19
address-2:App. 1
postal-code:4711
city:Musterstadt
country:DE
phone:49 13383794 504040
Example 2: create net-contact (fname and lname will be ignored)
subject: create net-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:Musterstrasse 19
address-2:App. 1
postal-code:4711
city:Musterstadt
country:DE
phone:49 13383794 504040
CREATE CN CONTACT
Example 1: create cn-contact (name will be generated from fname and lname)
subject: create cn-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create cn-contact (fname and lname will be ignored)
subject: create cn-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CREATE EU CONTACT
Example 1: create eu-contact (name will be generated from fname and lname)
subject: create eu-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: create eu-contact (fname and lname will be ignored)
subject: create eu-contact [your reference id]
email:gonzo@nose.net
individual:Y
fname:gonzo
lname:nose
name:Mr. Gonzo Nose
address-1:horsefair mews
address-2:App. 1
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Modify a contact
Introduction
With this request you can modify person contacts. You can modify 1 contact with one request. Unspecified request-fields will be ignored.
ATTENTION:
After changing the content of the specified contact, the whois information is automatically updated.
Keep in mind that you have to provide the numerical suffix of a handle.
- If you want to make an address change within the owner-record of a domain, you have to send a "modify com-domain"-request after changing the content of the specified handle.
- Only contact-handles, which are created by the reseller or where the e-mail within the contact is matching the reseller's robot-email can be changed.
request-field | valid values |
required |
|
com|net|org|info|mobi|name|us|de | biz|cn|eu | ||
handle |
Please, refer to the table below. |
yes |
|
individual |
[YN] | yes | |
lname | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no, if name is given |
fname | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no, if name is given |
name | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if fname and/or lname are not given |
title | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
organization | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
yes, if individual = N |
address-1 |
[\x20-\x7e]{1,80} |
[\x20-\x7e]{1,30} |
yes |
address-2 |
[\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
address-3 |
Only for biz/cn/eu | [\x20-\x7e]{0,30} |
no |
postal-code | [\x20-\x7e]{1,50} |
[\x20-\x7e]{1,10} | yes |
city | [\x20-\x7e]{1,80} |
[\x20-\x7e]{1,30} |
yes |
state | [\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
country | @country |
yes |
|
@email |
yes |
||
phone | [\x20-\x7e]{1,50} |
[[\x20-\x7e]{1,17} |
yes |
fax | [[\x20-\x7e]{0,50} |
[[\x20-\x7e]{0,17} |
yes (for admin-c and tech-c of .de only) |
TLD | handle |
com |
CCOM-<number> |
net | CNET-<number> |
org | CORG-<number> |
info | C<number>-LRMS |
biz | CNEU-<number> |
mobi | COMO-<number> |
name | CNAM-<number> |
us | COUS-<number> |
de | CODE-<number> |
cn | COCN-<number> |
eu | C<number> |
MODIFY COM CONTACT
Example 1: modify com-contact
subject: modify com-contact [your reference id]
handle:CCOM-1235
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY NET CONTACT
Example 1: modify net-contact
subject: modify net-contact [your reference id]
handle:CNET-1235
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY ORG CONTACT
Example 1: modify org-contact
subject: modify org-contact [your reference id]
handle:CORG-1235
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY INFO CONTACT
Example 1: modify info-contact
subject: modify info-contact [your reference id]
handle:C293829-LRMS
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Example 2: modify info-contact (new naming convention for info-handles)
subject: modify info-contact [your reference id]
handle:CAFI-007
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY BIZ CONTACT
Example 1: modify biz-contact
subject: modify biz-contact [your reference id]
handle:CNEU-12345
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY NAME CONTACT
Example 1: modify name-contact
subject: modify name-contact [your reference id]
handle:CNAM-1235
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY US CONTACT
Example 1: modify us-contact
subject: modify us-contact [your reference id]
handle:COUS-1235
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
MODIFY DE CONTACT
Example 1: modify de-contact
subject: modify de-contact [your reference id]
handle:CODE-1235
address-1:Musterstrasse 1
postal-code:47011
city:Musterstadt
country:DE
phone:44 13383794 504040
MODIFY EU CONTACT
Example 1: modify eu-contact
subject: modify eu-contact [your reference id]
handle:C12345
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Change an address
Introduction
change <tld>-address
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
With this request you can change the address of the domain owner.
ATTENTION:
It is not possible to change the following fields of the owner-record:
- individual
- lname
- fname
- title
- organization
Request fields
mailsubject: change com-address [your reference id]
Definition of this request
request-field | valid values | required | |
com|net|org|info|mobi|name|us|de
|
biz|cn |
||
domains0 | [a-z0-9-]{1,63}\.<tld> | yes | |
address-1 | [\x20-\x7e]{1,80} | [\x20-\x7e]{1,30} |
no |
address-2 | [\x20-\x7e]{0,80} | [\x20-\x7e]{0,30} |
no |
address-3 |
[\x20-\x7e]{0,80} |
[\x20-\x7e]{0,30} |
no |
postal-code | [\x20-\x7e]{1,50} | [\x20-\x7e]{0,30} |
no |
city | [\x20-\x7e]{1,80} | [\x20-\x7e]{1,30} |
no |
state | [\x20-\x7e]{0,80} | [\x20-\x7e]{0,30} |
no |
country |
@country
|
no | |
phone | [[\x20-\x7e]{1,50} | [[\x20-\x7e]{1,17} |
no |
fax | [[\x20-\x7e]{0,50} | [[\x20-\x7e]{0,17} |
no |
CHANGE .COM ADDRESS
Example 1: change com-address
subject: change com-address [your reference id]
domains0:gonzo.com
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .NET ADDRESS
Example 1: change net-address
subject: change net-address [your reference id]
domains0:gonzo.net
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .ORG ADDRESS
Example 1: change org-address
subject: change org-address [your reference id]
domains0:gonzo.org
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .INFO ADDRESS
Example 1: change info-address
subject: change info-address [your reference id]
domains0:gonzo.info
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .BIZ ADDRESS
Example 1: change biz-address
subject: change biz-address [your reference id]
domains0:gonzo.biz
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .NAME ADDRESS
Example 1: change name-address
subject: change name-address [your reference id]
domains0:gonzo.name
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .US ADDRESS
Example 1: change us-address
subject: change us-address [your reference id]
domains0:gonzo.us
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .DE ADDRESS
Example 1: change de-address
subject: change de-address [your reference id]
domains0:gonzo.de
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .CN ADDRESS
Example 1: change cn-address
subject: change cn-address [your reference id]
domains0:gonzo.cn
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
Change an owner
Introduction
With this request you can change the owner of a .com/.net/.org/.info./.mobi/.name/.biz/.de/.cn/.eu./us-domain.
Request fields
mailsubject: change owner [your reference id]
Definition of this request
request-field | valid values | required |
domains0 | [a-z0-9-]{1,63}\.(com|net|org|info|mobi|biz|de|cn|eu|us) | yes |
an email without the numerical suffix | no | |
individual | [YN] | no |
name (.com,.net,.org,.info,.biz,.mobi,.de,.cn,.eu,.us only) | [\x20-\x7e]{0,80} | no |
lname | [\x20-\x7e]{0,80} | no |
fname | [\x20-\x7e]{0,80} | no |
title | [\x20-\x7e]{0,80} | no |
organization | [\x20-\x7e]{0,80} | no |
address-1 | [\x20-\x7e]{0,80} | no |
address-2 | [\x20-\x7e]{0,80} | no |
postal-code | [\x20-\x7e]{0,50} | no |
state | [\x20-\x7e]{0,80} | no |
city | [\x20-\x7e]{0,80} | no |
country | @country | no |
phone | [\x20-\x7e]{0,50} | no |
fax lock-opt-out |
[\x20-\x7e]{0,50} [YN] |
no no |
CHANGE .COM OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.com
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .NET OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.net
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .ORG OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.org
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .INFO OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.info
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .BIZ OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.biz
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .NAME OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.name
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .US OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.us
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .DE OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.de
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
CHANGE .CN OWNER
Example 1: change owner
subject: change owner [your reference id]
domains0:gonzo.cn
fname:hans
lname:nose
address-1:horsefair mews
postal-code:4711
city:romsey
country:DE
phone:44 13383794 504040
.asia Contacts
new-handle (implicit creation of a new contact)
This means the definition of a new contact. if a contact with the provided email address exists in the JOKER-DATABASE, a new contact will be created. The reference for the created handle is following the format COAS-<number>, e.g. COAS-176269.
ATTENTION:
If you want to create a contact for the admin-contact, you have to replace the ".." at the beginning of the fieldname with "admin-contact".
If you want to create a contact for the tech-contact, you have to replace the ".." at the beginning of the fieldname with "tech-contact".
If you want to create a contact for the billing-contact, you have to replace the ".." at the beginning of the fieldname with "billing-contact".
There is a new request field called name within the contact definition. This field is mandatory, if you do not provide the fnamelname. You have to provide the request field name, if fname and lname are not found. This is very important for the whois output. Everytime a field person is shown. If you are using the request field name, the whois is showing the value for name, regardless the content of the request fields fname and lname. If you do not provide the request field name but your are providing the request fields fname and lname, the whois is showing the concatenation of these fields.
There is also a new request field called address-3 within the contact definition. This field is not mandatory, it is simply the 3rd line of the address.
request-field | valid values | required |
".."-individual | [YN] | yes |
".."-lname | [\x20-\x7e]{0,80} | no, if name is given |
".."-fname | [\x20-\x7e]{0,80} | no, if name is given |
".."-name | [\x20-\x7e]{0,80} | yes, if fname and/or lname are not given |
".."-title | [\x20-\x7e]{0,80} | no |
".."-organization | [\x20-\x7e]{0,80} | yes, if individual = N |
".."-address-1 | [\x20-\x7e]{1,80} | yes |
".."-address-2 | [\x20-\x7e]{0,80} | no |
".."-address-3 | [\x20-\x7e]{0,80} | no |
".."-postal-code | [\x20-\x7e]{1,50} | yes |
".."-city | [\x20-\x7e]{1,80} | yes |
".."-state | [\x20-\x7e]{0,80} | no |
".."-country | @country | yes |
yes | ||
".."-phone | [[\x20-\x7e]{1,50} | yes |
".."-fax | [[\x20-\x7e]{0,50} | no |
An existing contact (@asiacont or @same-as) (.asia only)
This means an existing contact handle in the JOKER-DATABASE.
Examples:
owner-contact-handle:COAS-176269
admin-contact-handle:COAA-176229
tech-contact-handle:COAS-176269
billing-contact-handle:COAS-176269
ASIA-domains require an additional type of contact, the CED contact. This contact has to have its residence in the Asian/Australian area.
The Joker.com Registry Gateways automatically will use your provided tech-contact for the CED contact.
This means that the request for you remains consistent with the usual requests, you only have to make sure that the country code is correct, otherwise the .asia registry will reject the order.
In case you have entered a non-existing contact handle, the system will send you an errormail.
The @same-as makro always replaces the value for the specified contact handle with the email address of the makrotarget. If the referenced contact has to be created with this request, it takes the result handle.
Keep in mind that for .asia-requests the contact handles for (.com/.net/.org/.info/.biz/.de)-contacts are not allowed. If you are referencing to a shortcut like hans@nose.net#1, you will get an error.
Nameservers
Create a nameserver
Introduction
create <tld>-ns
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
- eu
ATTENTION:
If you submit a "create-ns"-request for a nameserver under a domain, which is not registered with Joker.com or for a nameserver under a country-code-domain, the values for the ip-addresses are ignored.
Request fields
mailsubject: create <tld>-ns [your reference id]
request-field | valid values | required |
ns-domain-name | ([a-z0-9-]{1,63}\.)+(@country|com|net|org|int|edu|mil|biz|info|mobi|name) | yes |
ns-ip-address | @ip | yes |
CREATE COM NAMESERVER
Example 1: create com-ns
subject: create com-ns [your reference id]
ns-domain-name:ns1.dummy.com
ns-ip-address:194.111.43.1
CREATE NET NAMESERVER
Example 1: create net-ns
subject: create net-ns [your reference id]
ns-domain-name:ns1.dummy.net
ns-ip-address:194.111.43.1
CREATE ORG NAMESERVER
Example 1: create org-ns
subject: create org-ns [your reference id]
ns-domain-name:ns1.dummy.org
ns-ip-address:194.111.43.1
CREATE INFO NAMESERVER
Example 1: create info-ns
subject: create info-ns [your reference id]
ns-domain-name:ns1.dummy.info
ns-ip-address:194.111.43.1
CREATE BIZ NAMESERVER
Example 1: create biz-ns
subject: create biz-ns [your reference id]
ns-domain-name:ns1.dummy.biz
ns-ip-address:194.111.43.1
CREATE NAME NAMESERVER
Example 1: create name-ns
subject: create name-ns [your reference id]
ns-domain-name:ns1.dummy.name
ns-ip-address:194.111.43.1
CREATE US NAMESERVER
Example 1: create us-ns
subject: create us-ns [your reference id]
ns-domain-name:ns1.dummy.us
ns-ip-address:194.111.43.1
CREATE DE NAMESERVER
Example 1: create de-ns
subject: create de-ns [your reference id]
ns-domain-name:ns1.dummy.de
ns-ip-address:194.111.43.1
CREATE CN NAMESERVER
Example 1: create cn-ns
subject: create cn-ns [your reference id]
ns-domain-name:ns1.dummy.cn
ns-ip-address:194.111.43.1
CREATE EU NAMESERVER
Example 1: create eu-ns
subject: create eu-ns [your reference id]
ns-domain-name:ns1.dummy.net
ns-ip-address:194.111.43.1
Modify a nameserver
Introduction
modify <tld>-ns
Valid values for <tld>:
- com
- net
- org
- info
- biz
- mobi
- name
- us
- de
- cn
- eu
With this request you can change the ip-address of a nameserver in the Joker.com database.
ATTENTION:
Only nameservers, which Joker.comis respondsible for, will be shown with the ip-address in the whois-output, so only these nameservers could be changed.
If you submit a "modify-ns"-request for a nameserver under a domain, which is not registered with Joker.com or for a nameserver under a country-code-domain, this request will be ignored.
Request fields
mailsubject: modify <tld>-ns [your reference id]
Definition of this request
request-field | valid values | required |
ns-handle | ([a-z0-9-]{1,63}\.)+(@country|com|net|org|int|edu|mil|biz|info|mobi|name) | yes |
ns-ip-address | @ip | yes |
MODIFY COM NAMESERVER
Example 1:
modify com-ns
subject: modify com-ns [your reference id]
ns-handle:ns1.dummy.com
ns-ip-address:194.111.43.1
MODIFY NET NAMESERVER
Example 1:
modify net-ns
subject: modify com-ns [your reference id]
ns-handle:ns1.dummy.com
ns-ip-address:194.111.43.1
MODIFY ORG NAMESERVER
Example 1:
modify org-ns
subject: modify org-ns [your reference id]
ns-handle:ns1.dummy.org
ns-ip-address:194.111.43.1
MODIFY INFO NAMESERVER
Example 1:
modify info-ns
subject: modify info-ns [your reference id]
ns-handle:ns1.dummy.info
ns-ip-address:194.111.43.1
MODIFY BIZ NAMESERVER
Example 1:
modify biz-ns
subject: modify biz-ns [your reference id]
ns-handle:ns1.dummy.biz ns-ip-address:194.111.43.1
MODIFY NAME NAMESERVER
Example 1:
modify name-ns
subject: modify name-ns [your reference id]
ns-handle:ns1.dummy.name
ns-ip-address:194.111.43.1
MODIFY US NAMESERVER
Example 1:
modify us-ns
subject: modify us-ns [your reference id]
ns-handle:ns1.dummy.us
ns-ip-address:194.111.43.1
MODIFY DE NAMESERVER
Example 1:
modify de-ns
subject: modify de-ns [your reference id]
ns-handle:ns1.dummy.de
ns-ip-address:194.111.43.1
MODIFY CN NAMESERVER
Example 1:
modify cn-ns
subject: modify cn-ns [your reference id]
ns-handle:ns1.dummy.cn
ns-ip-address:194.111.43.1
MODIFY EU NAMESERVER
Example 1:
modify eu-ns
subject: modify eu-ns [your reference id]
ns-handle:ns1.dummy.com
ns-ip-address:194.111.43.1
Other Requests
Support
Introduction
With this request you can send a question to the support team at Joker.com. Only questions, which are sent to the e-mail gateway are accepted.
ATTENTION:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Enter your question here.
Dont forget the fqdn in question
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.2 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iD7DBQE6ZtMfzWqd+drNYRURAuW4AJ4nRewOrNc+yLMmmCouVcMP3v5nWQCdHUlf
tJk/gOuFmDnIs3JS+7eRjnA=
=Fwmc
-----END PGP SIGNATURE-----
Examples
Complete set of examples to download
We offer all examples summarized in a textfile. The file is attached to this article. As it has a lot of examples, it is recommended to use the search function of your text editor to find information.
Plugins
Joker.com WHMCS Plugin
WHMCS Registrar Modul
WHMCS ist eine beliebte Webhosting- und Domain-Automatisierungslösung, die Abrechnungs- und Support-Optionen umfasst.
Wenn Sie WHMCS für Ihre Hosting- und Domainaktivitäten nutzen, können Sie Joker.com mit der WHMCS-Domain-Funktionalität verbinden, um Domains einfach innerhalb von WHMCS zu bestellen und zu verwalten.1)
Joker.com stellt ein kostenloses Registrar-Modul für WHMCS bereit, das eine große Anzahl von Funktionen bietet, um Joker.com nahtlos mit WHMCS zu verbinden:
Die folgenden Registrar-Kernfunktionalitäten stehen zur Verfügung:
- Domains registrieren
- Transfers einleiten
- Verlängerungen durchführen
- Anzeigen und Ändern von Nameservern
- Anzeigen und Ändern von WHOIS-Informationen von Domains
- verwendbar mit allen TLD Joker.com-Angeboten
- TLD & Preis Sync
Zusätzlich werden auch diese Funktionen angeboten:
- E-Mail-Weiterleitungen erstellen/bearbeiten
- DNS-Datensätze für Joker-Nameserver erstellen/bearbeiten
- AUTH-IDs abrufen ("EPP-Code")
- Synchronisation des Ablaufdatums
- Bestellung von Privacy-Services bei Domain-Registrierung, -Transfer und -Verlängerung
- Einfaches Umschalten zwischen Produktions- und Testumgebung (OT&E)
Installation:
Bitte entpacken Sie den Inhalt des ZIP-Archivs das Sie links oben auf dieser Seite finden in den Ordner
modules/registrars/joker/Ihrer WHMCS Installation.
Falls Sie .FI-Domains registrieren möchten, fügen Sie bitte den Inhalt der Datei "additionalfields.txt" an das Ende der Datei "resources/domains/additionalfields.php" an.
Falls Sie .EU-Domains regstrieren - seit der Pluginversion 1.3.4 werden die .EU-Kontakterweiterungen von WHMCS direkt unterstützt, daher sollten Sie die "[.eu]"-Ergänzung aus der Datei "resources/domains/additionalfields.php" entfernen.
Die Konfiguration des Joker.com-Registrierungsmoduls erfolgt über den WHMCS-Admin-Bereich. Melden Sie sich dazu bitte als "admin" in Ihrer WHMCS-Installation an und navigieren Sie zu
Setup -> Products/Services -> Domain Registrars
Wählen Sie "Joker.com" aus der Liste, "Aktivieren" Sie das Plugin und geben Sie Ihren Joker.com-Zugang ein.
Es handelt sich um dieselben Zugangsdaten, die Sie auch für DMAPI verwenden.
Alternativ können Sie sich auf Joker.com einen passenden API-Key erzeugen, und mit WHMCS nutzen.
Sie können auch den "TestModus" für das Testen auf unserer OT&E-Plattform verwenden oder die kostenlosen Joker.com-Nameserver als Standard für neue Domains konfigurieren.
Einmal aktiviert, können Sie diese Einstellungen jederzeit durch Klicken auf "Konfigurieren" ändern.
Vergessen Sie danach nicht, "Änderungen speichern".
Verwendung:
Die meisten Optionen für Domains finden Sie in der Sektion "Clients -> Domain registrations" - klicken Sie auf den Domainnamen, um alle Domaindetails zu sehen.Ein spezieller Befehl dort ist "Sync" bei den 'Registrar Commands' - dies löst eine manuelle Synchronisierung des Status und des Ablaufdatums einer Domain mit Joker.com aus, falls diese außerhalb von WHMCS geändert wurde.
Dies geschieht normalerweise auch automatisch durch den 'WHMCS domainsync cron' - bitte stellen Sie sicher, dass Sie dies bei Ihrer WHMCS-Installation hinzugefügt haben.
Bitte senden Sie uns Ihr Feedback: reseller-support@joker.com
Viel Spaß!
1) das WHMCS-Plugin wird bereitgestellt ohne weitere Verpflichtungen oder Zusagen zu Qualität und Zuverlässigkeit. Es gelten die normalen Joker.com Restrierungsbedingungen. Für die Funktionalität und Verfügbarkeit von WHMCS ist WHMCS Limited verantwortlich.
Versionsgeschichte
Neu in Version 1.3.4
- Default-Nameserver auf neue Joker.com Nameserver geändert
- Unterstützung der nativen WHMCS Kontakterweiterungen für .EU
Neu in Version 1.3.3
- Unterstützung für Aktualisierung des Premium-Domain-Verlängerungspreises im manuellen Domain-Sync (Admin-Bereich)
Neu in Version 1.3.2
- Unterstützung für Angabe der Sprache bei IDN-Domains
Neu in Version 1.3.1
- Unterstützung für .eu "Land der Staatsbürgerschaft"
- Unterstützung für WHMCS Admin-Kontakt in Domainbestellungen
Neu in Version 1.3.0
- Unterstützung für TLD & Pricing Sync hinzugefügt
Neu in Version 1.2.5
- Unterstützung für Premium-Domains hinzugefügt
Neu in Version 1.2.4
- Problem mit dem Domain-Synchronisierungs-Cron behoben
Neu in Version 1.2.3
- Problem mit puny code (IDN) in der Domain-Verfügbarkeitsprüfung behoben
Neu in Version 1.2.2
- ein Problem mit den Kontakten der .uk-Domain wurde behoben.
Neu in Version 1.2.1
- einige Probleme mit der Domain-Verfügbarkeitsprüfung behoben
Neu in Version 1.2.0
- DNSSEC-Unterstützung hinzugefügt
Neu in Version 1.1.5
- Korrektur des Problems mit dem .eu-Ablaufdatum / Problem mit der Rückzahlungsfrist
Neu in Version 1.1.4
- Prüfung des Kontostandes bei Domain-Transfers hinzugefügt
- eine Konfigurationsoption hinzugefügt, um die automatische Wiederherstellung aus der Redemption-Periode zu aktivieren, wenn eine Verlängerung nicht möglich ist
Neu in Version 1.1.3
- Überprüfung des Kontostandes bei Domain-Verlängerungen hinzugefügt
Neu in Version 1.1.2
- Änderung der Kontaktinformationen für WHMCS 7.x behoben
Neu in Version 1.1.1
- Id-Schutzschaltung korrigiert
Neu in Version 1.1.0
- Domain-Verfügbarkeitsprüfung
- eigenes CRON-Job-Skript, zur Überprüfung des Registrierungsstatus
Neu in Version 1.0.4:
- API-Schlüssel anstelle von Benutzer-/Passwort-Anmeldeinformationen verwenden
- Privacy-Services für Domains pflegen
Die aktuelle Version wurde mit WHMCS 6.x, WHMCS 7.10.2 und WHMCS 8.1.3 getestet.
Einfaches WHMCS-Plugin
Dies ist ein sehr leichtes und einfaches Plugin, daher sehr leicht zu installieren (Sie finden
Anweisungen finden Sie in der Readme-Datei des Zip-Archivs unten).
Allerdings sind die Funktionen sehr einfach, und Sie müssen für jede TLD, die Sie verwenden möchten, einen festen Satz von Kontakthandles konfigurieren. Jede TLD von Joker.com sollte funktionieren.
Dieses Plugin ist als Beispiel gedacht um zu zeigen, wie einfach es ist, Joker.com über DMAPI mit WHMCS zu verbinden. Sie
Sie können es auch als Ausgangspunkt für Ihre eigenen Experimente verwenden.
Für eine vollständige Integration von Joker.com in WHMCS verwenden Sie bitte unser offizielles, voll funktionsfähiges Joker.com WHMCS Registrar-Modul.
Clientexec Registrar Plugin
Clientexec Clientexec ist eine beliebte Webhosting- und Automatisierungslösung, die Abrechnungs- und Support-Optionen umfasst.
Wenn Sie Clientexec für Ihre Hosting-Aktivitäten verwenden, können Sie Joker.com mit der Clientexec-Domain-Funktionalität verbinden, um Domains einfach innerhalb von Clientexec zu bestellen und zu verwalten. 1)
Joker.com unterhält ein Registrar-Modul für Clientexec, das eine große Anzahl von Funktionen bietet, um Joker.com nahtlos von Clientexec aus zu verbinden:
Die folgende Registrar-Kernfunktionalität wird zur Verfügung gestellt:
- Domain-Verfügbarkeitsprüfung
- Domain-Registrierung
- Domain verlängern
- Domain-Transfers
- Transferstatus abrufen
- automatisch neu einstellen
- Registrar-Lock setzen
- Nameserver konfigurieren
- DNS-Zonendaten modifizieren (wenn Joker.com-Nameservice verwendet wird)
- Preisliste abrufen
- Domain-Import
Installation:
Installation:
Die Installation ist einfach, das Plugin ist in den aktuellen Versionen von Clientexec bereits enthalten, aktivieren Sie einfach das "Joker.com-Plugin" aus Clientexec heraus:
Setup => Plugins => Registrars: Wählen Sie "Joker.com" aus der Liste aus und geben Sie Ihren Joker.com API-Schlüssel ein.
Verwendung:
Erstellen Sie Kunden und registrieren Sie Domains mit "Packages => Domain-Services"...
Bekannte Probleme:
- IDN-Domains werden derzeit nicht unterstützt *)
- einige ccTLDs werden u.U. nicht per Default unterstützt
- Premium-Domains werden derzeit nicht unterstützt *)
*) dies ist eine Einschränkung von Clientexec
Bitte senden Sie uns Ihr Feedback: reseller-support@joker.com
Viel Spaß!
1) das Clientexec-Plugin wird bereitgestellt ohne weitere Verpflichtungen oder Zusagen zu Qualität und Zuverlässigkeit. Es gelten die normalen Joker.com Restrierungsbedingungen.
Hostbill Registrar Plugin
Hostbill ist eine beliebte Web-Hosting- und Automatisierungslösung für die Bereiche:
- Hosting-Automatisierung
- Kundenverwaltung
- Helpdesk-System
- Automatisierte Rechnungsstellung
- Domain-Verwaltung
Wenn Sie Hostbill für Ihre Hosting-Aktivitäten nutzen, können Sie Ihre Domain-Verwaltung mit dem Joker.com-Plugin in Hostbill integrieren. 1)
Auf der Joker.com-Plugin-Seite von Hostbill finden Sie eine Übersicht über die Leistungen unseres Moduls:
- Registrierung
Automatisierte Domain-Registrierung. Wenn aktiviert, bindet das Domain-Modul Joker.com an, um neue, vom Kunden bestellte Domainnamen zu registrieren. - Transfers
Automatisierte Domain-Transfers. Kunden können einen Domain-Transfer von einem anderen Registrar zu Ihnen beantragen. Bei der Anmeldung werden Kunden nach dem EPP/Transfercode gefragt, der im Transferprozess verwendet wird. - Verlängerungen
Automatisierte Domain-Verlängerungen. Die Verlängerungsfunktion bietet die Möglichkeit, den Domainnamen nach dem vom Kunden gekauften Zeitraum zu erneuern, wenn die Domain kurz vor dem Auslaufen steht. - Synchronisieren
Registrar <-> HostBill-Synchronisierung. Die Domainsynchronisierung ermöglicht Ihren Mitarbeitern, die HostBill-Domain-Einträge mit den Registrierungsdetails zu aktualisieren, d.h. sicherzustellen, dass die Verlängerungs-/Ablaufdaten der Domains synchronisiert sind. - Import
Vorhandene Domains automatisch vom Registrar nach HostBill importieren. - Premium-Domains
Registrieren Sie Premium-Domainnamen - Domainsuche
Verwenden Sie die Registrar-API als Suchmaschine für die schnelle und genaue Suche nach freien Domains - Kontakte verwalten
Aktualisieren Sie die Kontakte für die Domainregistrierung. Kunden können die Kontaktdaten der Domains, die sie bei Ihnen registriert haben, verwalten. - DNSSEC-Verwaltung
Erlauben Sie Ihren Kunden, DNSSEC-Domains zu verwalten - EPP-Code (AUTH-ID) erhalten
Diese Funktionalität ermöglicht es Ihren Kunden, einen Domain-EPP-Code für Transfers zu erhalten - Privacy
Diese Funktion ermöglicht es Ihren Kunden, die Identität ihrer gespeicherten Kontaktdaten zu schützen. - Nameserver aktualisieren
Kunden haben die Möglichkeit, die Nameserver, auf die die Domain zeigt, zu ändern. - Nameserver registrieren
Kunden können ihre benutzerdefinierten Nameserver über die API des Registrars registrieren.
Installation:
Die Installation ist einfach, das Plugin ist bereits in Hostbill enthalten, aktivieren Sie einfach das "Joker.com-Plugin" von Hostbill aus:
Wählen Sie hierzu: Einstellungen -> Module -> Domain-Module, wählen Sie Joker.com aus der Liste und klicken Sie "aktivieren".
Benutzung:
Eine einfache Schritt-für-Schritt-Dokumentation finden Sie im Joker.com-Plugin-Wiki von Hostbill.
Bitte senden Sie uns Ihr Feedback: reseller-support@joker.com
Viel Erfolg!
1) das Hostbill-Plugin wird bereitgestellt ohne weitere Verpflichtungen oder Zusagen zu Qualität und Zuverlässigkeit. Es gelten die normalen Joker.com Restrierungsbedingungen.
Werkzeuge
Check Domain Availability
General Information
This is an additional tool which makes it easy to check if a domain is available for registration. All you have to do is to connect to:
Host: whois.joker.com
Port: 4343
and issue the command
domain:[sld.tld] [lang=IDN-tag]
- We will only accept requests from predefined IP-Addresses. For this purpose there is a field in the reseller data section, which is called "Check-Domain-Daemon-Access". Please update your data , if you want to use that tool.
- Optional "lang" parameter must be used to check availability of IDN. If not provided, IDN tag "de" (Deutsch, German) will be used when IDN is queried (any name encoded in punycode). Which tags are available (and their names) is dependent on the registry. Some registries (like .ORG & .INFO) support only very limited set of languages, so it may not be always possible to register some domains, in this case the tool will return value "registered" (which is equivalent to "unavailable for registration").
Technical Issues
- All lines are terminated by CR-LF.
- All queries and replies prefixed by object type and colon sign.
- The server will ignore all but first line when waiting for query.
- The client will be disconnected when no valid query is received during 30 seconds.
- If the client is disconnected by the server, or when no valid reply is sent by the server, it should be processed like "unknown" reply (i.e., client should try query again later).
Examples
using telnet:
telnet whois.joker.com 4343
domain:joker.com
Possible replies are:
status of the domain | answer |
---|---|
domain is available: | domain:joker.com free |
domain is registered already: | domain:joker.com registered |
domain status is unknown (registry down, etc): |
domain:joker.com unknown [optional error text] |