Inhaltsverzeichnis dieser Seite

Einführung

Das Backend der AutoDNS XML-Schnittstelle wird mittels XML-Kommunikation angesprochen. Jede XML-Anfrage (Request) wird auf Gültigkeit und das Vorhandensein erforderlicher Berechtigungen geprüft, verarbeitet und dann mit einer Systemantwort (Response) in XML beantwortet. In der Systemantwort sind Informationen über den erfolgreichen (S= success) oder nicht erfolgreichen (E= error) Ausgang der Operation und ggf. angeforderte Daten enthalten (z. B. bei den Auftragstypen Info und List).
Je nach Auftragstyp wird der Auftrag synchron (realtime) über Daten aus der Datenbank oder mittels Kommunikation mit der Registry (asynchron) abgearbeitet. Bei letzteren wird zunächst eine Systemantwort des Typs "N" (= notification) versendet und nach der vollständigen Verarbeitung eine Systembenachrichtigung mit dem endgültigen Staus "S" oder "E", die mit den Methoden Polling, Push oder Email abgeholt bzw. zugesendet wird.

Schnittstellenadressen

Livesystem: https://gateway.autodns.com
Demosystem: https://demo.autodns.com/gateway/

Freischaltung

Jeder Benutzer kann die Schnittstelle ohne zusätzliche Freischaltung nutzen.

Limits

Es können maximal 3 Anfragen pro Sekunde pro IP gesendet werden.

Transport und Codierung

Der XML-Auftrag wird im HTTP-Content eines HTTP-Requestes an oben genannte URLs gesendet.
Der Content-Type ist application/xml
Das Encoding ist UTF-8.

Beachte bei der UTF-8-Konvertierung mit Microsoft.NET, dass der UTF-8 XML-String kein Byte Order Mark (BOM, de: Byte-Reihenfolge-Markierung) enthalten darf. Es wird standardmäßig ein Byte Order Mark an den Anfang des Strings gesetzt.

Standardauftragstypen

Die AutoDNS XML-API kennt für Standardobjekte fünf Auftragstypen:

  • CREATE = Erzeugen eines Objektes
  • UPDATE = Änderung eines existierenden Objektes
  • DELETE = Löschen eines existierenden Objektes
  • INFO = Einzelabfrage eines Objektes
  • LIST = Listenabfrage auf eine Gruppe gleicher Objekte

Standardauftrag (Request)

Aufbau

Ein Auftrag besteht aus einer Authentifizierung und einem oder mehreren Task-Blöcken.

request
      auth/authentication/auth_session - Authentifizierung
      owner - Unterbenutzer
       task - Auftragstyp
            code - Auftragstyp

Beschreibung

KeywordsHäufigkeitFormatBeschreibung

request




request / auth

1


Auth-Block (Authentifizierung)

request / auth / user

1

string

Name des Benutzers

request / auth / password

1

string

Passwort des Benutzers

request / auth / context

1

string

ID des personalisierten Systems

request / owner

0 - 1


Unterbenutzer

request / owner / user

1

string

Benutzername des Unterbenutzers

request / owner /context

1

string

ID des personalisierten Systems des Unterbenutzers.

request / language

0 - 1

enum

Die Sprache für Fehlermeldungen überschreiben.

  • de

  • en

request / task

1


Der Auftrag. Es können mehrerer Task-Blöcke verwendet werden, siehe Multitasks.

request / task / code

1

string

Der Code des Auftragstyps

XML-Beispiel

XML
<request>
    <auth>
        <user>USER</user>
        <password>PASSWORD</password>
        <context>CONTEXT</context>
    </auth>
    <owner>
        <user>USER</user>
        <context>CONTEXT</context>
    </owner>
    <task>
        <code>CODE</code>
    </task>
</request>

Standardantwort (Response)

Aufbau 

Pro Auftragstyp wird ein Result-Objekt zurück geliefert mit Angabe des Status.

response - Root-Tag
      result - Pro Auftragstyp ein Ergebnis
            data
            status
            msg

Beschreibung der Keywords 

KeywordHäufigkeitFormatBeschreibung

response

1


Die Antwort des Systems

response / result

1 - n


Die zurückgegebenen Daten. Bei Multitasks gibt es entsprechend mehrere „Result“-Blöcke.

response / result / data

0 - n


Enthält die Datenobjekte

response / result / status

1


Der Status der Antwort

response / result / status / type

1

string

Der Statustyp der Antwort

  • success (S)

  • error (E)

  • notification (N)

response / result / status / code

1

string

Der Statuscode der Antwort (N, E, S)

response / result / status / text

1

string

Details zum Status

response / result / msg

0 - n


System-Nachricht

response / result / msg / code

1

string

Der Auftragstypcode des Auftrags, zu dem die Nachricht gehört.

Beispiel S0101
S = Success
0101= Domain Create

response / result / msg / text

1

string

Der Text der Nachricht

response / result / msg / object

0 - n

string

Das Objekt, auf das die Nachricht sich bezieht.

response / result / msg / object / type

0 - n

string

Die Art des Objektes, z. B. “domain” oder „contact“.

response / result / msg / object /value

0 - n

string

Der Wert des Objektes, z. B. “example.com” (type = domain)

response / result / msg / help

0 - n

string

Hinweise

XML-Beispiel

<response>
    <result>
        <data>
            <object></object>
            <object></object>
        </data>
        <status>
            <type>success</type>
            <code>S000</code>
            <text>TEXT</text>
        </status>
        <msg>
            <code>EF000</code>
            <type>error</type>
            <text>TEXT</text>
            <object>
                <type></type>
                <value></value>
            </object>
        </msg>
    </result>
</response>