BETA-Phase Domainreselling-API gestartet

  • Ich möchte an dieser Stelle den Wunsch nach einer domainList-Methode verstärken. Grade, wenn man den Bestand synchron halten muss (z.B. in einer eigener Datenbank) und auch das DNS-Gelöt extern handelt, ist es sehr nützlich neue Clients mit einer Full-Sync-Funktion ausstatten zu können (die initial / regelmäßig zur Kontrolle bei Netcup abfragt, welche Domains derzeit registriert sind).


    Im Bereich der Dokumentation wäre eine Auflistung aller Error-Codes mit deren Bedeutung für die automatische Auswertung / Exception-Handling äußerst hilfreich.

  • Hallo [netcup] Johannes ,

    Hallo Hecke29,

    danke für Ihre Anmerkung.


    Sollte diese Funktion implementiert werden, welche Felder würden Sie wünschen?

    Domainname, Status, ... ?

    Domainname & Status sind gut und mEn ausreichend. Die restlichen Daten (wie die verwendeten Handles etc.) findet man dann ja bei Bedarf per infoDomain.


    Und wenn ich träumen darf und Sie die Daten "zur Hand" haben, würde ich auch gerne das Registrierungsdatum und/oder das nächste Verlängerungs-/Auslaufdatum im infoDomain-Response finden; bin mir aber aktuell nicht sicher was hier aktuell eh schon zurück kommt.


    Anm.d.Autors: Der Beitrag von Ringelnatz über diesem war zum Zeitpunkt des Verfassens noch nicht bekannt.


    Viele Grüße aus Hamburg

  • Kleines Problem: Wenn ich eine Domain updaten möchte, welche noch teilweise die Standardhandles gesetzt hat, erhalte ich den Fehler:

    Zitat

    SoapFault

    Validation Error. Value: "default handle" in field: contactentries does not match requirements of type: contactentriesvalue.

    Ist es gewollt, dass "default handle" über die API nicht genutzt werden kann?

    ------------

    Ich möchte noch einmal anmerken, dass das poll-System in meinen Augen nicht so sinnvoll gelöst ist. Hin und wieder löse ich in meiner (Test-)Software ein ackpoll() für alle Einträge in poll() aus. Da dies für jede Nachricht einzeln geschehen muss sind ca. 50% aller API-Calls ackpoll()s und ich verursache damit doppelt soviel API-Traffic wie nötig. Das wird sich mit zunehmender Anzahl an Resellern sicherlich serverseitig bemerkbar machen ...

  • Versuchen Sie mal mit try/catch den Soap Fehler zu fangen. Sehen Sie sich das Exception object an. Darin müssten Sie auch eine Fehlermeldung sehen.

    Habe mal noch eine Exception eingefangen (Domaintransfer obwohl Domain nicht bei genannten Nameservern hinterlegt ist):

    Zitat

    object(SoapFault)#437 (9) { ["message":protected]=> string(4) "5003" ["string":"Exception":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(85) "/app/Classes/DomainWebserviceSoapClient.php" ["line":protected]=> int(35) ["trace":"Exception":private]=> array(55) { [0]=> array(6) { ["file"]=> string(85) "/app/Classes/DomainWebserviceSoapClient.php" ["line"]=> int(35) ["function"]=> string(10) "__soapCall" ["class"]=> string(10) "SoapClient" ["type"]=> string(2) "->" ["args"]=> array(2) { [0]=> string(14) "transferDomain" [1]=> array(8) {

    Mehr als die Zahl 5003 kann ich der Exception nicht entlocken.

    PHP
    1. } catch(\SoapFault $e) {
    2. die(var_dump($e));
    3. }
  • PHP
    1. } catch(\SoapFault $e) {
    2. die(var_dump($e));
    3. }

    Darüber hinaus ist es zum Debuggen sehr sinnvoll folgendes zu wissen (sofern der Standard PHP-Soap-Client eingesetzt wird):

    Setzt man beim Instanziieren in den Optionen einen Eintrag mit key trace und value 1, so hat man Zugriff auf die "besonderen" Methoden __getLastRequest() und __getLastResponse(). Diese geben einem - passend zum Namen - den SOAP-Request oder Response als string aus. Sehr praktisch wie gesagt zum Debuggen, um zu schauen, was der Server genau antwortet :)

    Code
    1. $pseudoSoap = new SoapClient('example.org/my.wsdl', ['trace' => 1]);
    2. $pseudoSoap->__soapCall('myAction', []);
    3. $pseudoSoap->__getLastRequest();
    4. $pseudoSoap->__getLastResponse();
  • Ich hatte schon vermutet, dass es im Adventskalender auch einen Rabatt für .com-Domains geben wird und wollte der Transfer per API probieren.

    Mein Testprogramm prüft zunächst, ob die gewünschte Domain bereits registriert ist. Falls ja fragt es nach dem AuthCode. Beim Check einer .com-Domain über infoDomain() gibt das API als status nicht mehr "connect" wie bei .de sondern "registred" aus (by the way: das sollte eigentlich "registered" heißen oder?). Mein System hat daher versucht, die Domain per createDomain() anzulegen und hat dabei die Fehlermeldung "The registration of this domain failed. Because of the error:" erhalten. Auch im CCP-Log steht nichts genaueres. Hier sollte eine aussagekräftigere Fehlermeldung hin oder?

  • Noch etwas:

    Beim Transfer bestehender Domains über das API habe ich stets meine eigenen Nameserver angegeben. Bei ein paar Domains habe ich aus unterschiedlichen Gründen danach im CCP auf die netcup-eigenen Nameserver umgestellt. Nun ist mir letzte Nacht aufgefallen, dass für diese plötzlich wieder meine eigenen Nameserver bei der DENIC hinterlegt waren, weil die entsprechenden Seiten plötzlich nicht mehr erreichbar waren.

    Wie konnte das passieren?


    EDIT: Teilweise, stelle ich jetzt fest, wurden auch einfach die Nameserver des bisherigen Domainproviders überhaupt nicht verändert.

  • Hallo Ringelnatz,


    danke für Ihr Feedback.


    Am besten wenden Sie sich zu der Nameserver Thematik per Mail an unseren Support. Damit die einzelnen Schritte nachvollzogen werden können. Geben Sie hierbei bitte möglichst viele Detail-Informationen.

    Erst wenn unsere Prüfungen der Nameserver erfolgreich waren, und dann noch die Registry die Änderung akzeptiert, werden die Nameserver bei der Registry übernommen. Sowohl im CCP als auch auf der API sollten sie dabei direkt eine Rückmeldung erhalten.

  • Erst wenn unsere Prüfungen der Nameserver erfolgreich waren, und dann noch die Registry die Änderung akzeptiert, werden die Nameserver bei der Registry übernommen. Sowohl im CCP als auch auf der API sollten sie dabei direkt eine Rückmeldung erhalten.

    Es handelte sich um .de-Domains, insofern wurde ich ja in der Antwort des API-Calls über die erfolgreiche Registrierung informiert. Ich habe auch mal getestet was passiert, wenn ich die zu transferierende Domain nicht bei meinen Nameservern hinterlege; man erhält ja eine entsprechende Fehlermeldung. Die Rückmeldung im CCP lautet für die betroffenen Domains stets "Domain has been successful transferred."

  • Ringelnatz Es ist einfacher in einem solchen Fall über konkrete Domains und Ihre Aktionen zu sprechen um diese Schritt für Schritt nachzuvollziehen. Aus Datenschutzgründen lege ich Ihnen nahe, sich dazu per Mail an uns zu wenden, falls noch Fragen dazu offen sind.