You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

Anleitung zur vollständigen Automatisierung der Registrierung einer Domain, am Beispiel der Domain TLD.com verwendet. .com ist eine generische Top-Level-Domain. Aufgrund fehlender Beschränkungen, eignet sich diese TLD bestens für die erste Implementierung.

Inhaltsverzeichnis dieser Seite


Voraussetzungen

Domainkontakte

Für die Bestellung einer .com Domain wird ein Domaininhaber (OwnerC), ein administrativer Kontakt (AdminC) und ein technischer Kontakt (TechC) benötigt. Sie können bereits vorhandene Kontakte verwenden oder neue Kontakte anlegen. Neu angelegte Kontakte können für zukünftige Registrierungen verwendet werden.

Welche Daten ein Kontakt für die Registrierung einer Domain enthalten muß, hängt von der TLD ab. Jede Registry hat dabei ihre eigenen Richtlinien. Für einige TLDs werden sogenannte Kontakterweiterungen (Extensions) benötigt. Detaillierte Informationen zu allen TLDs, die wir anbieten, finden Sie in der TLD Wissensdatenbank

Die Domain registrieren

Auftrag starten

Mit dem Auftragstyp DomainCreate starten Sie die Registrierung der Domain. Dabei müssen Sie mindestens diese Werte setzen:

  • Kontakte:  Geben Sie die Kontakt-ID der geforderten Kontakte an. Bei der .com-Domains wird ein Domaininhaber, ein administrativer sowie ein technischer Kontakt benötigt.
  • Domain: Der Name der Domain
  • Nameserver: Geben Sie hier die gewünschten Nameserver an. Die Anzahl der benötigten Nameserver ist TLD abhängig.

Welche Daten für eine Domain noch benötigt werden hängt von der gewählten TLD ab. Jede Registry hat dabei ihre eigenen Richtlinien. Weitere Informationen dazu finden Sie in der TLD Wissensdatenbank entnommen werden.

DomainCreate Request
POST /domain
{
    "name": "domain.com",
    "ownerc": {
        "id": 100
    },
    "adminc": {
        "id": 100
    },
    "techc": {
        "id": 100
    },
    "nameServers": [
        {
          "name": "a.ns14.net"
        },
        {
          "name": "b.ns14.net"
        },
        {
          "name": "c.ns14.net"
        },
        {
          "name": "d.ns14.net"
        }
    ]
}
DomainCreate Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "N0101",
        "text": "Die Domainregistrierung wurde erfolgreich gestartet.",
        "type": "NOTIFY"
    },
    "object": {
        "type": "domain",
        "value": "domain.com"
    }
}
DomainCreate Request
<request>
  <auth>
    <user>USER</user>
    <password>PASSWORD</password>
    <context>CONTEXT</context>
  </auth>
  <task>
    <code>0101</code>
    <domain>
      <name>domain.com</name>
      <ownerc>100</ownerc>
      <adminc>100</adminc>
      <techc>100</techc>
      <nserver>
        <name>a.ns14.net</name>
      </nserver>
      <nserver>
        <name>b.ns14.net</name>
      </nserver>
      <nserver>
        <name>c.ns14.net</name>
      </nserver>
      <nserver>
        <name>d.ns14.net</name>
      </nserver>
      <confirm_order>1</confirm_order>
      <period>1</period>
    </domain>
  </task>
</request>
DomainCreate Response
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <result>
    <data>
      <domain_job>
        <job>
          <id>123456</id>
          <status>RUNNING</status>
        </job>
      </domain_job>
    </data>
    <status>
      <code>N0101</code>
      <text>Die Domainregistrierung wurde erfolgreich gestartet.</text>
      <type>notify</type>
      <object>
        <type>domain</type>
        <value>domain.com</value>
      </object>
    </status>
  </result>
</response>

Auftrags-Benachrichtigung per Polling abrufen

Der Auftragstyp DomainCreate erzeugt automatisch einen Auftrag für die Registrierung der Domain.
Ist der Auftrag abgearbeitet, wird eine Auftrags-Benachrichtigung , die Aufschluss darüber gibt, ob die Registrierung erfolgreich war oder nicht. Da Sie diese über das Polling-Verfahren abrufen können, wird Sie auch als PollMessage bezeichnet

Sie müssen die PollMessage mit dem Auftragstyp PollmessageInfo abrufen.  Das Abrufen müssen Sie mit dem Auftragstyp PollmessageConfirm bestätigen.


Weitere Details zu Benachrichtigungen finden Sie auf der Seite Asynchrone Benachrichtigungen.

PollMessageInfo Request
GET /poll
PollMessageInfo Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "S0905",
        "text": "Die Benachrichtigung wurde erfolgreich abgerufen.",
        "type": "SUCCESS"
    },
    "object": {
        "type": "message",
        "value": "1819917"
    },
    "data": [
        {
            "summary": 1,
            "message": {
                "id": 1819917,
                "job": {
                    "id": 4295609745,
                    "domain": {
                        "created": "2018-09-26T15:11:21.000+0200",
                        "owner": {},
                        "updater": {},
                        "name": "domain.com",
                        "expire": "2019-09-26T15:11:20.000+0200",
                        "payable": "2019-09-26T15:11:21.000+0200",
                        "ownerc": {
                            "id": 100
                        },
                        "adminc": {
                            "id": 100
                        },
                        "techc": {
                            "id": 100
                        },
                        "registryStatus": "LOCK",
                        "nameServers": [
                            {
                                "name": "a.ns14.net"
                            },
                            {
                                "name": "b.ns14.net"
                            },
                            {
                                "name": "c.ns14.net"
                            },
                            {
                                "name": "d.ns14.net"
                            }
                        ],
                        "lastAction": "CREATE",
                        "authinfo": "gg9o3FFL/hzNbuPw",
                        "autoRenewStatus": "TRUE",
                        "registrarStatus": "ACTIVE",
                        "rddsOptIn": "NOT_SET"
                    }
                },
                "stid": "20180926-stid",
                "object": {
                    "type": "domain",
                    "value": "domain.com"
                },
                "status": {
                    "resultCode": "S0101",
                    "type": "SUCCESS"
                }
            }
        }
    ]
}
PollMessageInfo Request
<request>
    <auth>
        <user>USER</user>
        <context>CONTEXT</context>
        <password>PASSWORD</password>
    </auth>
    <task>
        <code>0905</code>
    </task>
</request>
PollMessageInfo Response
 
PollMessageConfirm Request
PUT /poll/{id}
PollMessageConfirm Response
{
    "stid": "20180926-stid",
    "status": {
        "resultCode": "S0906",
        "text": "Die Benachrichtigung wurde erfolgreich bestätigt.",
        "type": "SUCCESS"
    },
    "object": {
        "type": "message",
        "value": "1819853"
    }
}
PollMessageConfirm Request
<request>
    <auth>
        <user>USER</user>
        <context>CONTEXT</context>
        <password>PASSWORD</password>
    </auth>
    <task>
        <code>0906</code>
       <message>
            <id>650664</id>
        </message>
    </task>
</request>
PollMessageConfirm Response
<response>
    <result>
        <data>
            <summary>0</summary>
            <message>
                <id>650664</id>
            </message>
        </data>
        <status>
            <code>S0906</code>
            <text>The notification was confirmed successfully.</text>
            <type>success</type>
            <object>
                <type>message</type>
                <value>650664</value>
            </object>
        </status>
    </result>
</response>

Domaindaten abrufen

Nach erfolgreicher Registrierung können Sie die im System hinterlegten Registrierungsdaten mit dem Auftragstyp DomainInfo abfragen. Die können so feststellen,  ob die Domain mit den gewünschten Daten registriert wurde. Use Cases mit Marius/Kutti besprechen; wann mach ich das

Auftragstypen, Auftragstypen-Codes und Routen

AuftragstypCodeRoute
ContactCreate0301POST /contact
DomainCreate0101POST /domain
DomainInfo0105GET /domain/$name
PollMessageInfo0905GET /poll
PollMessageConfirm0906PUT /poll/$id
  • No labels