KAS API - Beispielformular



Alle Funktionen der KAS-API können auch mittels SOAP-Requests genutzt werden.
Voraussetzung für die Nutzung ist die Kenntnis über die entsprechenden KAS-Funktionen. Lesen Sie hierfür bitte die aktuelle Dokumentation.


Beispiel für einen SOAP-Client unter PHP

Nachfolgendes Beispiel zeigt die Verwendung der KAS-API mittels SOAP.

  1. KAS-API Authentifizierung
    Möchten Sie lediglich kleinere Änderungen am KAS durchführen, so ist es mitunter nicht nötig, eine Session zu generieren. Sie können in Punkt 2. statt dem AuthType 'session' auch eine einfache plain Authentifizierung durchführen.
    <?php
    
    $Params=array(
    	'kas_login' => 'w0213456',          // das KAS-Login
    	'kas_auth_type' => 'plain',
    	'kas_auth_data' => 'myPassword',    // das KAS-Passwort
    	'session_lifetime' => 600,          // Gültigkeit des Tokens in Sekunden
    	'session_update_lifetime' => 'Y',   // Y|N: bei Y verlängert sich die Session mit jedem Request
    	'session_2fa' => 123456             // optional: falls aktiviert, die One-Time-Pin für die 2FA
    );
    
    try {
    	$SoapLogon = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasAuth.wsdl');
    	$CredentialToken = $SoapLogon->KasAuth(json_encode($Params));
    	echo "Ihr SessionToken lautet: $CredentialToken";
    }
    
    // Fehler abfangen und ausgeben
    catch (SoapFault $fault) {
    	trigger_error("Fehlernummer: {$fault->faultcode},
    					Fehlermeldung: {$fault->faultstring},
    					Verursacher: {$fault->faultactor},
    					Details: {$fault->detail}", E_USER_ERROR);
    }
    
    ?>
  2. KAS-API Abfrage
    War die Authentifizierung unter Punkt 2 erforlgreich und liegt demnach ein gültiger Token in der Variablen $CredentialToken vor, kann die API zu den KAS-Funktionen genutzt werden.

    Es ist zu empfehlen, den $CredentialToken nach erfolgreicher Authentifizierung in eine Session zu speichern, um diesen bei allen weiteren Aktionen wieder nutzen zu können. Somit muss der Schritt der Authentifizierung nur einmal durchgeführt werden.

    1. Im nachfolgenden Beispiel sollen alle Domains (API-Funktion: get_domains) des Logins w0213456 ermittelt werden. Für diese API-Funktion werden keine Parameter benötigt.
      <?php
      
      try
      {
        $Params = array(); // Parameter für die API-Funktion
      
        $SoapRequest = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasApi.wsdl');
        $req = $SoapRequest->KasApi(json_encode(array(
                    'kas_login' => $kas_user,                 // KAS-User
                    'kas_auth_type' => 'session',             // Auth per Sessiontoken
                    'kas_auth_data' => $CredentialToken,      // Auth-Token
                    'kas_action' => 'get_domains',     // API-Funktion
                    'KasRequestParams' => $Params           // Parameter an die API-Funktion
                    )));
      }
      
      // Fehler abfangen und ausgeben
      catch (SoapFault $fault)
      {
          trigger_error(" Fehlernummer: {$fault->faultcode},
                          Fehlermeldung: {$fault->faultstring},
                          Verursacher: {$fault->faultactor},
                          Details: {$fault->detail}", E_USER_ERROR);
      }
      
      ?>
    2. In diesem Beispiel soll eine neue Domain (API-Funktion: add_domain) unterhalb des Logins w0213456 angelegt werden.
      <?php
      
      try
      {
        // Parameter für die API-Funktion
        $Params = array(  'domain_name' => 'my_domain',
                          'domain_tld' => 'tld',
                          'domain_path' => '/',
                          'ssl_proxy' => 'N',
                          'redirect_status' => '0');
      
        $SoapRequest = new SoapClient('https://kasapi.kasserver.com/soap/wsdl/KasApi.wsdl');
        $req = $SoapRequest->KasApi(json_encode(array(
                    'kas_login' => $kas_user,                // KAS-User
                    'kas_auth_type' => 'session',             // Auth per Sessiontoken
                    'kas_auth_data' => $CredentialToken,      // Auth-Token
                    'kas_action' => 'add_domain',      // API-Funktion
                    'KasRequestParams' => $Params          // Parameter an die API-Funktion
                    )));
      }
      
      // Fehler abfangen und ausgeben
      catch (SoapFault $fault)
      {
          trigger_error(" Fehlernummer: {$fault->faultcode},
                          Fehlermeldung: {$fault->faultstring},
                          Verursacher: {$fault->faultactor},
                          Details: {$fault->detail}", E_USER_ERROR);
      }
      
      ?>
  3. Ausgabe des Response
        
    <?php
    
      echo "<pre>";
      print_r($req);
      echo "</pre?>";
    
    ?>
Neue Medien Münnich | Hauptstraße 68 | 02742 Friedersdorf | Tel. +49 35872 353 - 10 | Fax: +49 35872 353-30