API erstellt falsche Verträge ?!

  • Hallo,


    ich benötige hier mal Hilfe, ggf. ist es aber auch ein BUG in der API-Schnittstelle ?!


    In meiner Testumgebung bin ich grad dabei meine Bestellungen mit Hilfe der API zu automatisieren.


    Das Problem/der Fehler tritt auf, nachdem ich ein Angebot via API angelegt habe (HostingPlanAdd). Das erstellte Angebot wird als Endkundenangebot angelegt (http://prntscr.com/v5uiz)


    Wenn ich nun aber einen Vertrag auf Basis dieses Angebotes anlege, wird dieser als Wiederkäufer-Vertrag (http://prntscr.com/v5uq8) erstellt und es lassen sich keine Domains zuordnen.
    Hierbei spielt es keine Rolle, ob ich den Vertrag via API oder manuell anlege - es sind immer Wiederverkäufer - Verträge.


    Wird ein entsprechendes Endkundenangebot manuell erstellt, läuft das korrekt.


    Bin für jede Hilfe dankbar,


    herzliche Grüße
    Matthias Knick

  • Schaut auf den ersten Blick tatsächlich nach einem Fehler aus. Da wir aber schon häufig Angebote über API angelegt haben (und anschließend Verträge damit), dürfte das Problem tiefer sitzen.
    Können Sie herausfinden, ob bzw. welchen Wert Sie für "maxcustomers" setzen, wenn Sie HostingPlanAdd() ausführen?

  • Leider bin ich noch nicht weitergekommen, aber das Problem scheint nicht bei HostinPlanAdd() zu liegen :(


    Bei einem manuell angelegtem HostingPlan kam es zu dem gleichen Ergebnis, als ich via API den Befehl HostingSubscriptionAdd ausgeführt habe...
    Ich denke, ich werde mein Testsystem in den kommenden Tagen neu aufsetzten und nochmal 'frisch' anfangen.


    Die Variable maxcustomers wurde wahlweise mit 0 oder NULL getestet.


    viele Grüße
    Matthias Knick


    P.S. Mit ist auch aufgefallen, dass zwar im Fenster der Feature-Übersicht des Vertrages "Wiederverkäufer-Vertrag" steht, aber nicht in der Auflistung der einelnen Verträge. Dort taucht das bei "echten" Reseller-Verträgen ja auf... ?!

  • Okay,


    die Tücke steckt wie immer im Detail.


    Der Fehler ist nach dem Motto: Wer lesen kann ist klar im Vorteil...


    Im Array habe ich anstatt resalecontract nur resalcontact geschrieben. Dadurch haben sich die Parameter verschoben und der Fehler war hausgemacht produziert. Der Titel kann somit bitte auch geändert werden...


    Allerdings habe ich eine Folgefrage.....


    Wenn ich jetzt mit den Parametern


    $params = array('auth' => $auth,
    'subscriptionname' => 'web' . $order->id,
    'password' => $password,
    'resalecontract' => '',
    'webserver' => 'localhost',
    'mailserver' => 'localhost',
    'dbserver' => 'localhost',
    'customerid' => $customerID,
    'plan' => $response->plans->HostingPlanDetails->name,
    'maxcustomers' => 'NULL',
    'maxusers' => $attribs->get('maxusers'),
    'webspace' => $attribs->get('webspace'),
    'ssi' => $attribs->get('ssi'),
    'php' => $attribs->get('php'),
    'cgi' => $attribs->get('cgi'),
    'ssl' => $attribs->get('ssl'),
    'cronjobs' => $attribs->get('cronjobs'),
    'apps' => $attribs->get('apps'),
    'ftpaccounts' => $attribs->get('ftpaccounts'),
    'shellaccess' => $attribs->get('shellaccess'),
    'databases' => $attribs->get('databases'),
    'subdomains' => $attribs->get('subdomains'),
    'extdomains' => $attribs->get('extdomains'),
    'mailboxes' => $attribs->get('mailboxes'),
    'mailaddrs' => $attribs->get('mailaddrs'),
    'mailquota' => $attribs->get('mailquota'),
    'traffic' => $attribs->get('traffic'),
    'webstats' => '2',
    'comment' => 'optionaler Kommentar');


    die API laufen lasse, erhalte ich die Fehlermeldung

    Zitat

    Error while calling API-Request HostingSubScriptionAdd: Invalid reseller subscription


    Wie unter https://www.liveconfig.com/de/…stingSubscriptionAdd.html angegeben, steht NULL beu maxcustomers für keinen Reseller-Vertrag. Auch ein '' oder '0' bringt leider nicht das gewünschte Ergebnis.


    BTW: Wofür ist der opitonale Kommentar? Ist es für eine spätere Version geplant, diese Kommentare anzuzeigen?


    viele Grüße
    Matthias Knick

  • Hallo Herr Keppler,


    ggf. können Sie mir hier nochmal helfen.
    Wenn ich die beiden nachfolgenden Parameter beim API-Aufruf weglasse, dann läuft alles so, wie es soll.



    'resalecontract' => '',
    'maxcustomers' => 'NULL',


    Lt. Beschreibung können, bzw. sollen die Parameter doch aber für einen Endkunden '' und NULL sein, oder hab ich das falsch interpretiert?


    herzliche Grüße
    Matthias Knick

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!