2024 December Release

Standard Web Services for the Fabasoft CloudPermanent link for this heading

The standard web service encapsulates commonly used operations.

SOAP and WSDLPermanent link for this heading

You can use SOAP to call the operations listed in the Cloud Standard Web Service WSDL.

The WSDL can be retrieved via following URL:

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

Example:

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

JSONPermanent link for this heading

The Cloud Standard Web Service also supports the JSON format. You can call the operations the following way:

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

Example:

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/GetCurrentUser: new window

Available OperationsPermanent link for this heading

The Cloud Standard Web Service provides following operations:

  • AddObjectRemark
    Adds a remark to an object.
  • CreateChangeSubscription
    Creates a change subscription that is used to inform about changes of objects added to the change subscription.
  • CreateTeamRoom
    Creates a Teamroom with the defined values.
  • CreateTeamRoomInit
    Retrieves the required information (e.g. the list of all organizations of the user) for creating a Teamroom.
  • DeleteChangeSubscription
    Deletes a change subscription.
  • GetChangedObjects
    Returns a list of changed objects since a defined date.
  • GetCurrentUser
    Returns all relevant data for the currently logged in user.
  • GetObjectHistory
    Returns the history of an object.
  • GetObjectRemarks
    Returns all remarks of an object.
  • GetSearchFolderResults
    Returns a list of objects contained in a search folder.
  • SendTeamRoomInvitation
    Sends invitations for the defined Teamroom to all defined users.
  • SendTeamRoomInvitationInit
    Returns a list of users of a Teamroom and the default invitation message for this Teamroom.

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 some standard web service examples.

GetCurrentUserPermanent link for this heading

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/GetCurrentUser: new window

Example

Input JSON Object

---

Output JSON Object

{
  "
userdata":{
    "_":"
UserData",
    "objaddress":"COO.1.506.1.5553",

    "
udfirstname":"Christina",
    "
udsurname":"Baumann",
    "
udsalutation":"Sehr geehrte Damen und Herren",
    "
udorgtxt":"Cloud DataXchange",
    "
udemailinformation":[
      {

        "_":"
EmailInformation",
        "
emailaddress":"baumann@sq.fabasoft.com",
        "
addrtopic":{
          "_":"
TermComponentObject",
          "objaddress":"COO.1.1001.1.182480",

          "
objname":"E-Mail 1"
        }
      }

    ],

    "
udfeatures":[
      {

        "_":"
UserFeature",
        "
uffeatureid":"aspect",
        "
ufadditionalfeatureinfo":[
          "FSCFOLIO@1.1001:CMISProperties",

          "FSCFOLIO@1.1001:CMISPropertiesRemarks"

        ]

      },

      {

        "_":"
UserFeature",
        "
uffeatureid":"basetypefolder",
        "
ufadditionalfeatureinfo":[
          "COODESK@1.1:Folder"

        ]

      }

    ],

    "
udhomelocation":"https://at.cloud.fabasoft.com/folio",
    "
udcountryid":"AT"
  }

}

Note: udcountryid will return the ISO3166Alpha2 code of the country.

CreateTeamroomPermanent link for this heading

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/CreateTeamRoomInit: new window

Example

Input JSON Object

---

Output JSON Object

{
  "groups":{

    "_":"Group",

    "objaddress":"COO.1.506.1.8025",

    "
objname":"Cloud DataXchange"
  },

  "
securitylevels":null,
  "
errors":null,
  "
enforceprimarygroup":false,
  "
preselectprimarygroup":true
}

Note: Retrieves required information such as organizations assigned to the user. Security levels are not used in the Fabasoft Cloud. If an organization enforces to be used as primary organization, only that one will be returned and enforceprimarygroup will be true.

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/CreateTeamRoom: new window

Example

Input JSON Object

As POST request in the document envelope:

{
  
name:"New Teamroom",
  parent:"COO.1.506.1.7065",

  group:"COO.1.506.1.8025",

  
notification:false
}

As GET request in the URL as parameter:

?name=New Teamroom&parent=COO.1.506.1.7065&...

Output JSON Object

{
  "
teamroom":{
    "_":"
TeamRoom",
    "objaddress":"COO.1.506.3.11579",

    "
objname":"New Teamroom"
  },

  "
errors":null
}

Note: The name is mandatory. If the parent is empty, the objects will be put on the users’ desk. By default the notifications for a new Teamroom are activated.

SendTeamRoomInvitationPermanent link for this heading

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/SendTeamRoomInvitationInit: new window

Example

Input JSON Object

As POST request in the document envelope:

{ teamroom:"COO.1.506.3.11579" }

As GET request in the URL as parameter:

?teamroom=COO.1.506.3.11579

Output JSON Object

{
  "message":"\r\
nHello!\r\n\r\nIn order to simplify our collaboration I would like to invite you to the Fabasoft Cloud. In this trusted and reliable environment we will be able to exchange data and create joint work results.\r\n\r\nBest regards,\r\nChristina Baumann\nCloud DataXchange\r\n",
  "
subject":"New Teamroom",
  "
notacceptedusers":{
    "_":"
JSAPIUser",
    "apiuobjaddress":"COO.1.506.1.5565",

    "
apiuobjname":"R\u00fcegg Luca",
    "
apiumail":"rueegg@fabasoft.com",
    "
apiufirstname":"Luca",
    "
apiusurname":"R\u00fcegg"
  },

  "
notinvitedusers":null,
  "
allusers":{
    "_":"
JSAPIUser",
    "apiuobjaddress":"COO.1.506.1.5565",

    "
apiuobjname":"R\u00fcegg Luca",
    "apiumail":"rueegg@fabasoft.com",
    "
apiufirstname":"Luca",
    "
apiusurname":"R\u00fcegg"
  },

  "
errors":null
}

Note: Retrieves required information such as not invited users and users who have not accepted the invitation.

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/SendTeamRoomInvitation: new window

Example

Input JSON Object

As POST request in the document envelope:

{
  teamroom:”COO.1.1.1.1”,

  users: [{

    "_":"
JSAPIUser",
    "apiuobjaddress":"COO.1.506.1.268",

    "
apiufirstname":"William",
    "
apiusurname":" Briere",
    "
apiuobjname":"Briere William",
    "
apiumail":"briere@sq.fabasoft.com"
  }],

  subject: "text",

  message: ["Line 1", "Line 2", "..."]

}

Output JSON Object

{
  "
users":null,
  "
errors":null
}

Note: The input parameter users will be reduced by each successful invitation. Each entry with invalid values or where an error occurred will be returned in the output JSON object as users. If no user exists for the entries apiuobjaddress or apiumail a user will be created.

The first name, surname and e-mail address in a user JSON object are mandatory, so that the user can be created, if it does not exist.

The message that is passed is encoded in UTF-8. If this message should contain line breaks, every line is a single entry in the message text list.

TeamRoomInvitationsPermanent link for this heading

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/TeamRoomInvitations: new window

Example

Input JSON Object

---

Output JSON Object

{
  "amount":1,

  "
pendinginvitations":{
    "_":"
TeamRoomInvitation",
    "objaddress":"COO.1.506.3.11649",

    "
objname":"Marketing",
    "
issuer":"Baumann Christina",
    "invitationtime":"2015-08-21T12:16:38+02:00"

  }

}

RespondInvitationPermanent link for this heading

https://at.cloud.fabasoft.com/folio/wsjson/FSCFOLIOCLOUD_1_1001_StandardWebService/RespondInvitation: new window

Example

Input JSON Object

As POST request in the document envelope:

{
  context:"COO.1.1001.1.324322",

  teamroom:"COO.1.506.3.11579"

}

As GET request in the URL as parameter:

?teamroom=COO.1.506.3.11579

Output JSON Object

{
  "result":{

    "_":"
TeamRoom",
    "objaddress":"COO.1.506.3.11649",

    "
objname":"Marketing"
  },

  "
errors":null
}

Note: The context may be COO.1.1001.1.324322 (accept) or COO.1.1001.1.324317 (refuse).