API Logon – TecArt-CRM Developer-Wiki

API Logon

Aus TecArt-CRM Developer-Wiki

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Hinweis

API Klassen und deren Funktionen können nur mit CRM System mit Version >= 3.2 genutzt werden

Methods

Login

Syntax:

void Login( string $login, string $pass )


Beschreibung:

Logged einen User in das CRM-System ein.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $crmapi_logon->Login('test', 'test');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
?>

LoginMD5

Syntax:

void LoginMD5( string $login, string $md5pass )


Beschreibung:

Logged einen Nutzer mit einem MD5-verschlüsseltem Passwort in das CRM-System ein.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $crmapi_logon->LoginMD5('test', 'd41d8cd98f00b204e9800998ecf8427e');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
?>

LoginExternal

( CRM >= 3.4.4714 )

Syntax:

void LoginExternal( string $login, string $external_pass )


Beschreibung:

Logged einen User mit dem externen Passwort in das CRM-System ein.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $crmapi_logon->LoginExternal('test', 'external');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
?>

Ping

Syntax:

void Ping( string $session_id  )


Beschreibung:

Erneuert die Session, überprüft ob die Session-ID aktuell ist oder nicht.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $crmapi_logon->Ping($session_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
?>

PingMD5

Syntax:

boolean PingMD5( md5 string $input)


Beschreibung:

Erneuert die Session, überprüft mithilfe von Nutzername und Passwort ob die Session-ID aktuell ist oder nicht.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

$input ist die MD5-Summe der Verkettung von Benutzername und Passwort.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $crmapi_logon->PingMD5( md5($usernam.$password) );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
?>

Logoff

Syntax:

boolean Logoff()

Beschreibung:

Löscht die Session.

Gibt true zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $success = $crmapi_logon->Logoff();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $success;
?>

getLanguage

Syntax:

string getLanguage()


Beschreibung:

Gibt den ISO-639-1 Sprachcode der momentan genutzten Sprache zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $language = $crmapi_logon->getLanguage();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $language;
?>

getUsers

Syntax:

array getUsers()


Beschreibung:

Gibt ein Array aller Nutzer zurück.


Properties:

Type            Eigenschaft            Beschreibung
-------------------------------------------------------------------
int   	        $id   	            Userid
string   	$name   	    Angezeigter Name
string    	$address    	    Addresse
int   	        $birthday   	    Geburtstag (Unix Timestamp)
int   	        $chgtime   	    Unix-Timestamp der letzten Änderung
int   	        $chguser   	    Userid der letzten Änderung
string   	$city   	    Stadt
string   	$company   	    Firmenname
string   	$country   	    Land
int   	        $createtime   	    Unix-Timestamp der Erstellung
int   	        $createuser   	    Userid der Erstellung
string   	$department   	    Abteilung
string   	$Beschreibung       Notizen
string   	$email   	    E-Mail-Addresse
string   	$fax   	            Fax-Nummer
string   	$firstname   	    Vorname
string   	$group_id   	    Group-Ids Format: Groupid1:Groupid2
int   	        $locked   	    Nutzer ist gesperrt
string   	$login   	    Login
string   	$tel1   	    Telefonnummer
string   	$tel2   	    Mobilnummer
string   	$postcode   	    Postleitzahl
string   	$profession         Beruf
string   	$remoteaddr         Remote-IP für Zugangsbeschränkungen
string   	$surname   	    Nachname
int   	        $take_rights   	    Take Rights from groups
binary   	$userpic_data       Die Daten des Nutzerbildes als Base64-encodeter String
string   	$userpic_name       Name des Nutzerbildes
string   	$website   	    Website
string   	$middlename         Zweiter Vorname
string   	$suffix             Suffix
string   	$spouce             Name des Ehepartners
string   	$children           Namen der Kinder
string   	$email1             E-Mail 1
string   	$email2             E-Mail 2
string   	$email3             E-Mail 3
string   	$nickname           Spitzname
string   	$screenname1        Screenname 1
string   	$screenname2        Screenname 2
string   	$screenname3        Screenname 3
string   	$home_address1      Privatadresse 1
string   	$home_address2      Privatadresse 2
string   	$home_postcode      Privatadresse Postleitzahl
string   	$home_city          Privatadresse Stadt
string   	$home_region        Privatadresse Region
string   	$home_country       Privatadresse Land
string   	$home_website       Private Website
string   	$other_address1     Andere Adresse 1
string   	$other_address2     Andere Adresse 2
string   	$other_postcode     Andere Adresse Postleitzahl
string   	$other_city         Andere Adresse Stadt
string   	$other_region       Andere Adresse Region
string   	$other_country      Andere Adresse Land
string   	$phone_work         Telefonnummer Arbeit 1
string   	$phone_work2        Telefonnummer Arbeit 2
string   	$phone_home         Telefonnummer Privat 1
string   	$phone_home2        Telefonnummer Privat 2
string   	$phone_fax          Telefonnummer Fax
string   	$phone_fax_work     Telefonnummer Fax Arbeit
string   	$phone_pager        Telefonnummer Pager
string   	$phone_mobil        Telefonnummer Mobil
string   	$phone_mms          Telefonnummer MMS
string   	$phone_sms          Telefonnummer SMS
string   	$phone_car          Telefonnummer Auto
string   	$phone_radio        Telefonnummer Radio
string   	$phone_assistant    Telefonnummer Assistent
string   	$managername        Manager Name
string   	$assistantname      Assistent
string   	$customer_id        Kundennummer
string   	$accountname        Kontoname
string   	$custom1            Benutzerdefiniert 1
string   	$custom2            Benutzerdefiniert 2
string   	$custom3            Benutzerdefiniert 3
string   	$custom4            Benutzerdefiniert 4
string   	$custom5            Benutzerdefiniert 5
string   	$custom6            Benutzerdefiniert 6
string   	$custom7            Benutzerdefiniert 7
string   	$custom8            Benutzerdefiniert 8
string   	$custom9            Benutzerdefiniert 9
string   	$custom10           Benutzerdefiniert 10

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getUsers();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $user) {
    echo $user['id']." ".$user['name']." ".$user['email']."<br/>";
}
?>

getChangedUsers

Syntax:

array getChangedUsers (int $timestamp )


Beschreibung:

Gibt ein Array mit Nutzern zurück, die seit timestamp geändert wurden.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Eigenschaften von $users array:

die selben wie für #getUsers


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    // get users, which have been changed since 10.10.2010
    $result = $crmapi_logon->getChangedUsers(mktime(0, 0, 0, 10, 10, 2010));
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $user) {
    foreach($user as $var => $value) echo "$var => $value<br/>\n";
 
    if ($user['userpic_name']) {
        $fp = fopen($user['userpic_name'], "w");
        if (!$fp) continue;         
        fwrite($fp, base64_decode($user['userpic_data']));
        fclose($fp);
        echo "<br>\n<img src=\"{$user['userpic_name']}\"><br>\n";
    }
    echo "<br/>\n";
}
 
?>

getDate

Syntax:

string getDate ()


Beschreibung:

Gibt die Zeit auf dem CRM-Server mit dem Format (Y:m:d:H:i:s) zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getDate();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $result;
?>

getList

Syntax:

array getList ( string $list )


Beschreibung:

Gibt ein Array mit einer Elementenliste für die definierte Liste $list zurück.

Hinweis: Sie können den Listennamen auslesen indem Sie auf Liste->Öffnen in CRM->Administration->Listen klicken


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    // Get list 'categories'
    $result = $crmapi_logon->getList('categories');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $list_element) {
    echo "{$list_element['id']}, {$list_element['name']}<br/>\n";
}
 
?>

getChangedLists

Syntax:

array getChangedLists (int $timestamp )


Beschreibung:

Gibt ein Array mit Listen zurück, die seit timestamp geändert wurden.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    // get lists, which have been changed since 10.10.2010
    $result = $crmapi_logon->getChangedLists(mktime(0, 0, 0, 10, 10, 2010));
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $list) {
    echo $list ."<br/>\n";
}
 
?>

getUserIds

Syntax:

string getUserIds()


Beschreibung:

Gibt ein Array mit allen User-IDs zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getUserIds();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $user_id) {
    echo $user_id."<br/>";
}
?>

getHolidays

Syntax:

array getHolidays(int $year )


Beschreibung:

Gibt ein Array mit Feiertagen für das gegebene Jahr zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Eigenschaften von holiday:

Type            Eigenschaft        Beschreibung
-------------------------------------------------------------------
int   	        $day   	        Tag des Feiertags
int   	        $month   	Monat des Feiertags
int    	        $year    	Jahr des Feiertags
string   	$subject   	Name des Feiertags
int   	        $type           = 0 - jedes Jahr an einem anderen Tag
                                = 1 - jedes Jahr am selben Tag
int   	        $groupid   	Group-Id, z.B. wenn Nutzer aus verschiedenen Ländern 
                                kommen und entsprechend nur bestimmte Feiertage gezeigt
                                werden sollen 

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    // get holiday for 2010
    $result = $crmapi_logon->getHolidays(2010);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $hday) {
    echo $hday['day'].".".$hday['month'].".".$hday['year']." - ".$hday['subject']."<br/>\n";
}
 
?>

getHolidaysUser

Syntax:

array getHolidaysUser(int $userid, int $year )


Beschreibung:

Gibt ein Array mit Feiertagen für das gegebene Jahr und User zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Eigenschaften von holidays:

Type            Eigenschaft        Beschreibung
-------------------------------------------------------------------
int   	        $day   	        Tag des Feiertags
int   	        $month   	Monat des Feiertags
int    	        $year    	Jahr des Feiertags
string   	$subject   	Name des Feiertags
int   	        $type           = 0 - jedes Jahr an einem anderen Tag
                                = 1 - jedes Jahr am selben Tag
int   	        $groupid   	Group-Id, z.B. wenn Nutzer aus verschiedenen Ländern 
                                kommen und entsprechend nur bestimmte Feiertage gezeigt
                                werden sollen 

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    // get holiday for user 4 and year 2010
    $result = $crmapi_logon->getHolidaysUser(4, 2010);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $hday) {
    echo $hday['day'].".".$hday['month'].".".$hday['year']." - ".$hday['subject']."<br/>\n";
}
 
?>

getDepartments

Syntax:

array getDepartments()


Beschreibung:

Gibt ein Array mit allen Abteilungen zurück.


Eigenschaften von departments array:

Type            Eigenschaft     Beschreibung
-------------------------------------------------------------------
int   	        Key 	        ID der Abteilung (Gruppe)
string   	Value   	Name der Abteilung (Gruppe)

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getDepartments();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id => $department) {
    echo $id." - ".$department."<br/>\n";
}
 
?>

getAdminGroups

( CRM >= 3.5 )

Syntax:

array getAdminGroups()


Beschreibung:

Gibt ein Array mit den IDs der Admin Gruppen zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getAdminGroups();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {
    echo "Group ID: ". $id ."<br/>\n";
}
 
?>

getVersion

Syntax:

string getVersion()


Beschreibung:

Gibt die CRM Versionsnummer zurück.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $version = $crmapi_logon->getVersion();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $version;
 
?>

getAuthUserInfo

Syntax:

array getAuthUserInfo()


Beschreibung:

Gibt ein Array mit Informationen über den authentifizierten Benutzer zurück.


Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getAuthUserInfo();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $key => $value) {
    echo $key . ': ' . $value .'<br>';
}
 
?>

getAccessOptions

(CRM >= 3.2.3640)

Syntax:

array getAccessOptions()


Beschreibung:

Gibt ein Array mit Informationen über den Zugriff auf die CRM-Module des authentifizierten Benutzers.


Eigenschaften von user options array:

Type            Eigenschaft     Beschreibung
-----------------------------------------------
string          Key      	Name der Option
int     	Value   	Wert der Option


Beschreibung of user options:

Option              Value           Beschreibung
-----------------------------------------------
access_owndocs       0|1            Zugriff zu Eigene Dokumente
access_email         0|1            Zugriff zu E-Mail-Client
access_todo          0|1            Zugriff zu Aufgaben
access_dates         0|1            Zugriff zu Terminen
access_contacts      0|1            Zugriff zu Kontakten 
access_documents     0|1            Zugriff zu Gemeinsame Dokumente
access_calls         0|1            Zugriff zu Anrufe
access_projects      0|1            Zugriff zu Projekte
access_forum         0|1            Zugriff zu Forum
access_finances      0|1            Zugriff zu Finanzen
access_contracts     0|1            Zugriff zu Verträgen
access_offers        0|1            Zugriff zu Angeboten
access_domains       0|1            Zugriff zu Domainverwaltung
access_accounts      0|1            Zugriff zu Accountverwaltung 
access_vacations     0|1            Zugriff zu Urlaubsplanung
access_rotas         0|1            Zugriff zu Dienstplan

Beispiel:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getAccessOptions();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $key => $value) {
    echo $key . ': ' . $value .'<br>';
}
 
?>

getUserOption

Syntax:

getUserOption($option)

Beschreibung:

Liefert ein Option von dem eingeloggten User zurück.


Beispiel für input $option:

Option               Value                     Beschreibung
------------------------------------------------------------------------------
groups               String                    Gruppe, zu den der User gehört.
email                String                    Email Adress
access_owndocs       String                    Zugang zu eigenen Dokumenten
access_email         String                    Zugang zu E-Mail-Client
access_todo          String                    Zugang zu Aufgaben
access_dates         String                    Zugang zu Terminen
access_contacts      String                    Zugang zu Kontakten 
access_documents     String                    Zugang zu gemeinsamen Dokumenten
access_calls         String                    Zugang zu Anrufen
access_projects      String                    Zugang zu Projekten
access_forum         String                    Zugang zu Forum
access_finances      String                    Zugang zu Finanzen
access_contracts     String                    Zugang zu Verträgen
access_offers        String                    Zugang zu Angeboten 
access_domains       String                    Zugang zu Domains
access_accounts      String                    Zugang zu Accounts
access_vacations     String                    Zugang zu Urlaubsplanung
access_rotas         String                    Zugang zu Dienstplanung

Beispiel 1:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getUserOption('email');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $result;
 
?>


Beispiel 2:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $groups = $crmapi_logon->getUserOption('groups');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($groups as $group) {
    echo $group ."<br>";
}
 
?>

getUserOptions

Syntax:

array getUserOptions(array $options)

Beschreibung:

Liefert ein Array mit Option von dem eingeloggten User zurück.


Beispiel für input $option Array:

Die Values des Arrays sind die selben wie für #getUserOption.


Beispiel :

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getUserOptions( array('email','groups') );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $result['email'] . "<br>";
 
foreach($result['groups'] as $group) {
    echo $group . "<br>";
}
 
?>

getAssocOptions

(CRM >= 3.3.4513)

Syntax:

array getAssocOptions($option)

Beschreibung:

Liefert ein associative array mit Options von allen Users zurück.


Beispiel für input $option :

sind die selben wie für #getUserOption.


Eigenschaften des zurückgelieferten Arrays:

Option               Value                       Beschreibung
------------------------------------------------------------------------------
key                  Int                         UserID
value                String                      Value der Option


Beispiel :

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->getAssocOptions( 'email' );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach( $result as $key => $value ) {
 
    echo 'User ID '. $key . ' has email : '. $value .'<br>';
}
 
?>

setUserOption

Syntax:

void setUserOption($option, $value)

Beschreibung:

Setz ein Value zu dem Option des eingeloggten Users.


Beispiel für input $option:

Option               Value                       Beschreibung
------------------------------------------------------------------------------
groups               Int                         Gruppe, zu den der User gehört.
access_email         Int (0 oder 1)              Zugang zu E-Mail-Client 
email                String                      Email Adress
.
.
.

Beispiel 1:

<?php
 
try {
 
    $crmapi_logon = crmapi::logon();
 
    $result = $crmapi_logon->setUserOption('email', 'test@tecart.de');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
?>