2024 October Release

Contact ManagementPermanent link for this heading

The contact management web service allows retrieving, creating, updating and deleting contacts.

Note: Retrieve the WSDL to get an overview of the general options. The JSON requests correspond to the SOAP XML requests as you can see in the examples below.

SOAP and WSDLPermanent link for this heading

The WSDL can be retrieved via following URL:

https://<host>/<vdir>/fscdav/wsdl?WEBSVC=FSCCONTACTMGMT_1_1001_ContactWebService

Example:

https://at.cloud.fabasoft.com/folio/fscdav/wsdl?WEBSVC=FSCCONTACTMGMT_1_1001_ContactWebService: new window

JSONPermanent link for this heading

You can call the operations the following way:

https://<host>/<vdir>/wsjson/FSCCONTACTMGMT_1_1001_ContactWebService/<operation>

Example:

https://at.cloud.fabasoft.com/folio/wsjson/FSCCONTACTMGMT_1_1001_ContactWebService/GetContactsByKey: new window

Available OperationsPermanent link for this heading

The contact management web service provides following operations:

  • GetContactsByKey
    Retrieves contacts based on a key (Import ID or Fabasoft Cloud ID). Several contacts can be returned, e.g. in case of several identical import IDs. If more than 100 contacts or contact rooms are found, an error is returned.
  • GetContactsByName
    Retrieves contacts based on a name (“LIKE” search in the Name field). Several contacts can be returned, e.g. if the search matches several contact names. If more than 100 contacts or contact rooms are found, an error is returned.
  • UpdateContact
    Creates a new contact or updates an existing one.
  • DeleteContact
    Deletes a contact.

More information about the parameters of the operations can be found here (the listed actions are mapped to the corresponding web service operations):

ExamplesPermanent link for this heading

The following chapters provide several contact management web service examples.

GetContactsByKeyPermanent link for this heading

In the following example all contact persons with Import ID “P1” of rooms with Import ID “Room_A1” of the configuration with Fabasoft Cloud ID “COO.1.506.2.586” are retrieved.

Note: In any case the Import ID or Fabasoft Cloud ID can be used to identify the objects.

Example

SOAP Request

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:fsc="http://schemas.fabasoft.com/websvc/FSCCONTACTMGMT_1_1001_ContactWebService/">
   <soap:Header/>

   <soap:Body>

      <fsc:GetContactsByKey>

         <fsc:contactkey>P1</fsc:contactkey>

         <fsc:contactroomkey>Room_A1</fsc:contactroomkey>

         <fsc:contactclass>ContactRoomPerson</fsc:contactclass>

         <fsc:contactconfigkey>COO.1.506.2.586</fsc:contactconfigkey>

      </fsc:GetContactsByKey>

   </soap:Body>

</soap:Envelope>

JSON Request

{
  "contactkey": "P1",
  "contactroomkey": "Room_A1",
  "contactclass": "ContactRoomPerson",
  "contactconfigkey": "COO.1.506.2.586"
}

GetContactsByNamePermanent link for this heading

In the following example all contact persons and organizations with “jones” in the name (case-insensitive) of rooms with Import ID “Room_A1” are retrieved.

Example

SOAP Request

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:fsc="http://schemas.fabasoft.com/websvc/FSCCONTACTMGMT_1_1001_ContactWebService/">
   <soap:Header/>
   <soap:Body>
      <fsc:GetContactsByName>
         <fsc:name>Jones</fsc:name>
         <fsc:contactroomkey>Room_A1</fsc:contactroomkey>
         <fsc:contactclass></fsc:contactclass>
         <fsc:contactconfigkey></fsc:contactconfigkey>
      </fsc:GetContactsByName>
   </soap:Body>
</soap:Envelope>

JSON Request

{
  
"name": "Jones",
  
"contactroomkey": "Room_A1",
  
"contactclass": "",
  
"contactconfigkey": ""
}

UpdateContactPermanent link for this heading

In the following example a contact person is created or updated (identified by Import ID “P1”) . In addition to the surname and first name two addresses and two websites are defined.

Note: If overridekeys is defined for a property, empty values are considered and in case of lists existing entries are removed. Otherwise, empty values are ignored and new values are added to a list. In this example, the websites property will have the defined two entries (existing entries are removed) and the academic title will be emptied.

A special case are general object class properties (like objsubject) and fields of user-defined forms. If you add a user-defined form category (COOTC_1_1001_objcategory) to a contact, you can also define the values of the user-defined fields within the FSCAPPTOOLS_1_1001_additionalfields block. Within this block the default override keys are not working. You can use FSCAPPTOOLS_1_1001_ftoverwrite instead (only works for list properties). Empty values of single properties are always considered. In the following example the user-defined form category COO.1.506.1.1005845 that provides a string property with programming name UDName and a list property with programming name UDList is assigned to the contact. ftoverwrite is set to true for the list.

Example

SOAP Request

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:fsc="http://schemas.fabasoft.com/websvc/FSCCONTACTMGMT_1_1001_ContactWebService/">
   <soap:Header/>
   <soap:Body>
      <fsc:UpdateContact>
         <fsc:data>
           <fsc:FSCCONTACTMGMT_1_1001_contactroomid>Room_A1
            
</fsc:FSCCONTACTMGMT_1_1001_contactroomid>
           <fsc:FSCCONTACTMGMT_1_1001_contactclassid>ContactRoomPerson
            
</fsc:FSCCONTACTMGMT_1_1001_contactclassid>
            <fsc:FSCCONTACTMGMT_1_1001_contactid>P1
              
</fsc:FSCCONTACTMGMT_1_1001_contactid>
            
<fsc:COOTC_1_1001_objcategory>COO.1.506.1.1005845
              
</fsc:COOTC_1_1001_objcategory>
            <fsc:COOSYSTEM_1_1_usersurname>Jones
              
</fsc:COOSYSTEM_1_1_usersurname>
            <fsc:COOSYSTEM_1_1_userfirstname>Cadence
              
</fsc:COOSYSTEM_1_1_userfirstname>
            <fsc:FSCCONTACTMGMT_1_1001_persacademictitle>
              
</fsc:FSCCONTACTMGMT_1_1001_persacademictitle>
            <fsc:FSCFOLIO_1_1001_address>
               <fsc:FSCFOLIO_1_1001_Address>
                  <fsc:FSCFOLIO_1_1001_addrstreet>Honauerstr. 4
                    
</fsc:FSCFOLIO_1_1001_addrstreet>
                  <fsc:FSCFOLIO_1_1001_addrzipcode>4020
                    
</fsc:FSCFOLIO_1_1001_addrzipcode>
                  <fsc:FSCFOLIO_1_1001_addrcity>Linz
                    
</fsc:FSCFOLIO_1_1001_addrcity>
                  <fsc:FSCFOLIO_1_1001_addrtopic>COO.1.1001.1.182477
                    
</fsc:FSCFOLIO_1_1001_addrtopic>
                  <fsc:FSCCONTACTMGMT_1_1001_scopecontactroom>COO.1.506.3.2422
                    
</fsc:FSCCONTACTMGMT_1_1001_scopecontactroom>
               </fsc:FSCFOLIO_1_1001_Address>
               <fsc:FSCFOLIO_1_1001_Address>

                  <fsc:FSCFOLIO_1_1001_addrstreet>Hauptplatz 1

                    </fsc:FSCFOLIO_1_1001_addrstreet>

                  <fsc:FSCFOLIO_1_1001_addrzipcode>4020

                    </fsc:FSCFOLIO_1_1001_addrzipcode>

                  <fsc:FSCFOLIO_1_1001_addrcity>Linz

                    </fsc:FSCFOLIO_1_1001_addrcity>

                  <fsc:FSCFOLIO_1_1001_addrtopic>COO.1.1001.1.182478

                    </fsc:FSCFOLIO_1_1001_addrtopic>

                  <fsc:FSCCONTACTMGMT_1_1001_scopecontactroom>COO.1.506.3.2422

                    </fsc:FSCCONTACTMGMT_1_1001_scopecont
actroom>
               </fsc:FSCFOLIO_1_1001_Address>

            </fsc:FSCFOLIO_1_1001_address>
            <fsc:FSCFOLIO_1_1001_website>
               <fsc:string>https://www.fabasoft.com</fsc:string>
               <fsc:string>https://www.fabasoft.at</fsc:string>
            </fsc:FSCFOLIO_1_1001_website>
            <fsc:FSCCONTACTMGMT_1_1001_overridekeys>
               <fsc:string>persacademictitle</fsc:string>
               <fsc:string>website</fsc:string>
            </fsc:FSCCONTACTMGMT_1_1001_overridekeys>
            <fsc:FSCAPPTOOLS_1_1001_additionalfields>

               <fsc:FSCAPPTOOLS_1_1001_FieldType>                

                 <fsc:FSCAPPTOOLS_1_1001_ftreference>UDName

                   </fsc:FSCAPPTOOLS_1_1001_ftreference>

                  <fsc:FSCAPPTOOLS_1_1001_ftvalue>

                    <fsc:string>User-Defined Name</fsc:string>

                  </fsc:FSCAPPTOOLS_1_1001_ftvalue>

               </fsc:FSCAPPTOOLS_1_1001_FieldType>

               <fsc:FSCAPPTOOLS_1_1001_FieldType>

                  <fsc:FSCAPPTOOLS_1_1001_ftreference>UDList

                    </fsc:FSCAPPTOOLS_1_1001_ftreference>

                  <fsc:FSCAPPTOOLS_1_1001_ftvalue>

                     <fsc:string>COO.1.30001.1.3139</fsc:string>

                     <fsc:string>COO.1.30001.1.3140</fsc:string>

                  </fsc:FSCAPPTOOLS_1_1001_ftvalue>

                  <fsc:FSCAPPTOOLS_1_1001_ftoverwrite>true

                    </fsc:FSCAPPTOOLS_1_1001_ftoverwrite>

               </fsc:FSCAPPTOOLS_1_1001_FieldType>

            </fsc:FSCAPPTOOLS_1_1001_additionalfields>

         </fsc:data>
      </fsc:UpdateContact>
   </soap:Body>
</soap:Envelope>

JSON Request

{
  "data": {
    
"contactroomid": "Room_A1",
    
"contactclassid": "ContactRoomPerson",
    "contactid": "P1",
    "objcategory": "COO.1.506.1.1005845",

    "usersurname": "Jones",
    "userfirstname": "Cadence",
    "persacademictitle": "",
    "address": [
      {
        "addrstreet": "Honauerstr. 4",
        "addrzipcode": 4020,
        "addrcity": "Linz",
        "addrtopic": "COO.1.1001.1.182477",
        "scopecontactroom": "COO.1.506.3.2422"
      },
      {
        "addrstreet": "Hauptplatz 1",
        "addrzipcode": 4020,
        "addrcity": "Linz",
        "addrtopic": "COO.1.1001.1.182478",
        "scopecontactroom": "COO.1.506.3.2422"
      
}
    
],
    
"website": [
      "https://www.fabasoft.com",
    
  "https://www.fabasoft.at"
    
],
    
"overridekeys": [
      "persacademictitle",
      "website"
    ] ,
    "additionalfields": [
      {

        "ftreference": "UDName",

        "ftvalue": "User-Defined Name"

      },

      {

        "ftreference": "UDList",

        "ftvalue": [

          "COO.1.30001.1.3139",

          "COO.1.30001.1.3140"

        ],

        "ftoverwrite": "true"

      }

    ]

  }
}

DeleteContactPermanent link for this heading

In the following example the contact with Import ID “Contact_C12” of room with Import ID “Room_A1” is deleted. If more than one contact is found, an error is returned.

Example

SOAP Request

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:fsc="http://schemas.fabasoft.com/websvc/FSCCONTACTMGMT_1_1001_ContactWebService/">
  <soap:Header/>
   <soap:Body>
      <fsc:DeleteContact>
         <fsc:contactroomid>Room_A1</fsc:contactroomid>
         <fsc:contactid>Contact_C12</fsc:contactid>
      </fsc:DeleteContact>
   </soap:Body>
</soap:Envelope>

JSON Request

{
  "contactroomid": "Room_A1",

  "contactid": "Contact_C12"

}