47
Comindware ® Web Services API Developer‘s Guide © 2012 Comindware Inc.

Comindware® Web Services API Developer's Guide

  • Upload
    others

  • View
    19

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Comindware® Web Services API Developer's Guide

Comindware® Web Services API Developer‘s Guide

© 2012 Comindware Inc.

Page 2: Comindware® Web Services API Developer's Guide

Copyright © Comindware, 2009-2012. All rights reserved.

“Comindware”, “Comindware Task Management”, “Comindware Tracker” areregistered trademarks of Comindware. “ElasticData”, “ConnectStep” and theComindware logo are trademarks of Comindware.

All other trademarks and copyrights referred to are the property of their respectiveowners.

Distribution of substantively modified versions of this document is prohibitedwithout the explicit permission of the copyright holder.

Distribution of this work or derivative work in any standard (paper) book form forcommercial purposes is prohibited unless prior permission is obtained from thecopyright holder.

DOCUMENTATION IS PROVIDED «AS IS» AND ALL EXPRESS OR IMPLIEDCONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIEDWARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE ORNON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCHDISCLAIMERS ARE HELD TO BE LEGALLY INVALID.

Third party code may be provided with the Software and/or Service. The licenseterms for such third-parties are detailed in the license.txt file located in the rootinstallation directory. You can always find the latest up-to-date list of the third partycode and the associated license terms used with the Software and/or Service athttp://kb.comindware.com/article/AA-00290/29/Third-Party-Software-Used-in-Comindware-products.html.

Page 3: Comindware® Web Services API Developer's Guide

Copyright © Comindware, 2009-2012 3

Contents

..................................................................................................................... 5

Contents

About this guide

................................................................................................................ 6About Comindware Web Services APIChapter 1

.............................................................................................................. 6Introducing Comindware web services API

.............................................................................................................. 6The list of Comindware web services

.............................................................................................................. 7Standards compliance

.............................................................................................................. 7Development platforms

................................................................................................................ 8

Installing and configuring Comindware webservices

Chapter 2

.............................................................................................................. 8Installing the web services

.............................................................................................................. 8Configuring the web services

.............................................................................................................. 9Obtaining a security certificate

.................................................................................................. 9Viewing existing certificates

.................................................................................................. 10Generating a temporary certificate

.............................................................................................................. 10Configuring the web services over HTTP

.............................................................................................................. 12Configuring the web services over HTTPS

.............................................................................................................. 13Verifying the web services configuration

................................................................................................................ 14Creating a test applicationChapter 3

.............................................................................................................. 14General information

.............................................................................................................. 14Preliminary steps

.............................................................................................................. 14Setting up a test application

................................................................................................................ 18Integration examplesChapter 4

.............................................................................................................. 18General information

.............................................................................................................. 19Preliminary steps

.................................................................................................. 19Obtaining the source code

.................................................................................................. 19Configuring general project settings

.................................................................................................. 19Microsoft Exchange connection settings

.............................................................................................................. 20Synching sales info between Salesforce and Comindware Web Services API

.................................................................................................. 20Salesforce Synchronization parameters

Page 4: Comindware® Web Services API Developer's Guide

www.comindware.com

Comindware Web Services API

4

.............................................................................................................. 21SurveyGizmo: Post Surveys

.................................................................................................. 21SurveyGizmo: Post Surveys parameters

.............................................................................................................. 22SurveyGizmo: Collect Surveys

.................................................................................................. 23SurveyGizmo: Collect Surveys parameters

.............................................................................................................. 24Moving an Item through Workflow Steps

.................................................................................................. 24Moving an Item through Workflow Steps parameters

.............................................................................................................. 24CleverBridgeSales Parsing

.................................................................................................. 24CleverBridgeSales Parsing parameters

................................................................................................................ 26API methodsChapter 5

.............................................................................................................. 26AdministrationWebService Class Reference

.............................................................................................................. 27Platform CoreWebService Class Reference

.............................................................................................................. 44Tracker CoreWebService Class Reference

Page 5: Comindware® Web Services API Developer's Guide

This guide is intended for application developers interested in developing applications usingComindware web services API. It provides you with the list of Comindware web services APImethods, and integration examples.

About this guide

Copyright © Comindware, 2009-2012 5

Page 6: Comindware® Web Services API Developer's Guide

Comindware Web Services API

6 www.comindware.com

About Comindware Web Services API

Chapter 1

This chapter includes the following topics:

Introducing Comindware web services API

The list of Comindware web services

Standards compliance

Development platforms

Introducing Comindware web services APIWeb services can help companies solve the interoperability problem by giving differentapplications a way to link their data. With web services you can exchange databetween different applications and different platforms. Comindware web servicesconnect your Comindware Web Services API with another software or web service, forexample, Salesforce, or SurveyGizmo.

The list of Comindware web servicesComindware Web Services API provides access to the following web services:

AdministrationWebService

The AdministrationWebService.svc service is comprised of classes and methods thatallow you to use the administration features. The service can be accessed using thefollowing link:

http://<YourServerName>/webService/platform/AdministrationWebService.svc

CoreWebService

The CoreWebService.svc service provides methods that can be used to manage itemsand tasks. The service can be accessed using the following link:

http://<YourServerName>/webService/platform/CoreWebService.svc

TrackerWebService

The TrackerWebService.svc service provides methods that can be used to manage workitems. The service can be accessed using the following link:

http://<YourServerName>/webService/tracker/TrackerWebService.svc

6

6

7

7

Page 7: Comindware® Web Services API Developer's Guide

About Comindware Web Services API

Copyright © Comindware, 2009-2012 7

Standards complianceComindware web services API has been developed in compliance to the followingspecifications:

Simple Object Access Protocol (SOAP) 1.1

Web Service Description Language (WSDL) 1.1

Development platformsComindware web services support SOAP development platforms including .NET 4.0. Inthis document we provide examples in C Sharp.

Page 8: Comindware® Web Services API Developer's Guide

Comindware Web Services API

8 www.comindware.com

Installing and configuring Comindwareweb services

Chapter 2

This chapter includes the following topics:

Installing the web services

Configuring the web services

Obtaining a security certificate

Configuring the web services over HTTP

Configuring the web services over HTTPS

Verifying the web services configuration

Installing the web servicesThe web services components are installed with Comindware Web Services API duringComindware Web Services API installation. The default installation folder forComindware web services is:

for Windows x86: C:\Program Files\Comindware\Products\Site\webService\

for Windows x64: C:\Program Files (x86)\Comindware\Products\Site\webService\

After installation you need to configure the web services security in a configurationproperties file.

Configuring the web servicesThe behavior of Comindware web services is defined in prebuilt Web.config files locatedin the product installation folder.

Path to the web.config file to enable Comindware Tracker functionality:

C:\Program Files (x86)\Comindware\Products\Site\webService\tracker\Web.config

Path to the web.config file to enable Comindware Task Management and ComindwareAdministration functionality:

C:\Program Files (x86)\Comindware\Products\Site\webService\platform\Web.config

In both the web.config files you will need to manually set the security settings, whichshould match the security settings of your Comindware Web Services API installation:you will need to set a security type (HTTP or HTTPS), and specify a security certificate(HTTP only).

8

8

9

10

12

13

Page 9: Comindware® Web Services API Developer's Guide

Installing and configuring Comindware web services

Copyright © Comindware, 2009-2012 9

Obtaining a security certificateComindware web services use security certificate authentication. A security certificateis required when:

you connect to the web services over HTTPS. No extra configuration of the web.configfile is required as you have already chosen a security certificate during ComindwareWeb Services API installation.

you connect to the web services over HTTP. You will have to provide a securitycertificate name in the web.config file. You can use an existing security certificate,obtain a certificate from a public certification authority, or generate a temporarycertificate for testing and development purposes.

Viewing existing certificates

Your existing security certificates are located in the Trusted Root Certificate store ofyour host operating system. You can view your existing certificates in the MMC snap-in.

To view existing certificates:

1. Open MMC: Click Start, click Run, type mmc, and press the ENTER key. Note that toview certificates in the local machine store, you must be logged in asAdministrator.

2. On the File menu, click Add/Remove Snap-in, or press CTRL+M.

The "Add/Remove Snap in"command

3. Click Add.

4. In the Add Standalone Snap-in dialog box, select Certificates from the list of snap-ins, and then click Add.

The Certificates Snap-in is added

Page 10: Comindware® Web Services API Developer's Guide

Comindware Web Services API

10 www.comindware.com

5. In the Certificates snap-in dialog box, select the Computer account, and click Next.

The "Certificates Snap-in" dialog box

6. In the Select Computer dialog box, click Finish.

7. In the Console Root window, click Certificates (Local Computer) > Personal >Certificates, choose the certificate, and copy its name (right-click and select Copy).

Your certificate has been installed in the Certificate store

Generating a temporary certificate

If you do not have a security certificate installed, you may generate a temporarycertificate yourself for testing and development purposes. Note, that when deploying aservice, be sure to use an appropriate certificate provided by a certification authority.

To generate a temporary certificate, use the Certificate Creation Tool (MakeCert.exe),which is provided by the .NET Framework SDK. For example, the following commandcreates a certificate with a subject name of "CN=GlobalCoreWebServiceTestCert".

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\makecert.exe" -r -pe -n"CN=GlobalCoreWebServiceTestCert" -b 01/01/2005 -e 01/01/2060 -sky exchange -ssMy -sr LocalMachine

Configuring the web services over HTTPIf your Comindware Web Services API is configured for the HTTP protocol, you will alsoneed to configure Comindware web services over HTTP. You will need to change thesettings in both web.config files. The file contains comments that make editing the fileself-explanatory.

Page 11: Comindware® Web Services API Developer's Guide

Installing and configuring Comindware web services

Copyright © Comindware, 2009-2012 11

To configure the web services over HTTP:

1. Open the Web.config file in a text editor such as Notepad. The Web.config files arelocated in the following folders:

For Comindware Tracker functionality:

C:\Program Files (x86)\Comindware\Products\Site\webService\tracker\Web.config

For Comindware Task Management and Comindware Administration functionality:

C:\Program Files (x86)\Comindware\Products\Site\webService\platform\Web.config

2. Change the following configuration settings:

Connection type (HTTP or HTTPS). The code example below illustrates the initialcontents of the Web.config file. Default settings are given for a secure SSLconnection. To use a HTTP connection, uncomment the appropriate blocks andreplace default settings with them.

<!--Default settings are given for a secure SSL connection. To use a HTTP connection, uncomment the appropriate blocks and replace default settings withthem.-->

<?xml version="1.0" encoding="utf-8"?><configuration> <system.serviceModel> <bindings> <wsHttpBinding> <!-- The following block is used for secure connection (HTTPS)--> <binding name="TrackerWebServiceBinding" maxReceivedMessageSize="2147483647"maxBufferPoolSize="2147483647" receiveTimeout="00:05:00" sendTimeout="00:05:00"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> <security mode="TransportWithMessageCredential"> <transport clientCredentialType="None" /> <message clientCredentialType="UserName" /> </security> </binding> <binding name="TrackerWebServiceBindingWauth" maxReceivedMessageSize="2147483647"maxBufferPoolSize="2147483647" receiveTimeout="00:05:00" sendTimeout="00:05:00"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> <security mode="TransportWithMessageCredential"> <transport clientCredentialType="None" /> <message clientCredentialType="Windows" /> </security> </binding> <!--End of HTTPS block-->

<!-- The following block is used for HTTP connection--> <!-- <binding name="TrackerWebServiceBinding" maxReceivedMessageSize="2147483647"maxBufferPoolSize="2147483647" receiveTimeout="00:05:00" sendTimeout="00:05:00"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> <security mode="Message"> <message clientCredentialType="UserName" negotiateServiceCredential="true"/> </security> </binding> <binding name="TrackerWebServiceBindingWauth" maxReceivedMessageSize="2147483647"maxBufferPoolSize="2147483647" receiveTimeout="00:05:00" sendTimeout="00:05:00"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> <security mode="Message"> <message clientCredentialType="Windows"/> </security>

Page 12: Comindware® Web Services API Developer's Guide

Comindware Web Services API

12 www.comindware.com

</binding>--> <!--End of HTTP block--> </wsHttpBinding> </bindings> <services> <service name="Comindware.Tracker.WebService.CoreWebService" behaviorConfiguration="TrackerWebServiceBehavior"> <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TrackerWebServiceBinding" contract="Comindware.Tracker.WebService.ICoreWebService"/> <endpoint address="wauth" binding="wsHttpBinding" bindingConfiguration="TrackerWebServiceBindingWauth" contract="Comindware.Tracker.WebService.ICoreWebService"/> <!-- The following line is used for secure connection (HTTPS)--> <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/> <!-- The following line is used for HTTP connection--> <!--<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>--> </service> </services> <behaviors> <serviceBehaviors> <behavior name="TrackerWebServiceBehavior"> <dataContractSerializer maxItemsInObjectGraph="2147483647" /> <serviceCredentials> <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="Comindware.Platform.WebService.WebServiceAuthValidator,Comindware.Platform.WebService"/> <!-- The following line is used for HTTP connection--> <!-- <serviceCertificate findValue="GlobalCoreWebServiceTestCert"storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName"/>--> </serviceCredentials> <!-- The following line is used for secure connection (HTTPS)--> <serviceMetadata httpsGetEnabled="true" /> <!-- The following line is used for HTTP connection--> <!--<serviceMetadata httpGetEnabled="true" />--> </behavior> </serviceBehaviors> </behaviors> </system.serviceModel></configuration>

Security certificate name. Type the security certificate name into the<serviceCertificate/> line of both Web.config files (see the figure below).

Entering the security certificate name

Configuring the web services over HTTPSIf Comindware Web Services API is configured for the HTTPS protocol, no extraconfiguration of the web.config file is required, as you have already chosen a securitytype and a security certificate during the Comindware Web Services API installationprocess.

Page 13: Comindware® Web Services API Developer's Guide

Installing and configuring Comindware web services

Copyright © Comindware, 2009-2012 13

Verifying the web services configurationAfter you configure the web services, you can verify its proper configuration byobtaining the web services WSDL.

AdministrationWebService

The AdministrationWebService.svc service is comprised of classes and methods thatallow you to use the administration features. The service can be accessed using thefollowing link:

http://<YourServerName>/webService/platform/AdministrationWebService.svc

CoreWebService

The CoreWebService.svc service provides methods that can be used to manage itemsand tasks. The service can be accessed using the following link:

http://<YourServerName>/webService/platform/CoreWebService.svc

TrackerWebService

The TrackerWebService.svc service provides methods that can be used to manage workitems. The service can be accessed using the following link:

http://<YourServerName>/webService/tracker/TrackerWebService.svc

The following page is displayed in the web browser if all the required parameters areconfigured correctly:

Web service has been installed and configured correctly

Page 14: Comindware® Web Services API Developer's Guide

Comindware Web Services API

14 www.comindware.com

Creating a test application

Chapter 3

This chapter includes the following topics:

General information

Preliminary steps

Setting up a test application

General informationLet's create a test integration example using Comindware web services. The exampleshows how to create a personal task with Comindware web services. The example wascreated using Microsoft Visual Studio.

While creating a test application, we will configure the application general settings,which will be further used by all integration scenarios.

Preliminary stepsBefore creating a test application, make sure that you have configured the ComindwareWeb Services API environment, i.e. you have the list of users, and configured securitysettings in web.config files.

Creating Comindware users

If your company uses Active Directory, import user profiles from Active Directory intoComindware Web Services API. Log in to Comindware Web Services API, go to theAdministration area, click Active Directory Integration. Specify connection settings,specify the polling interval, and import Active Directory groups.

Otherwise, add users manually into the Comindware Web Services API database. In theAdministration area, click Users, then click Add new user, and specify the userinformation.

Configuring web.config security settings

You should have the security settings configured in web.config files. See Installing andconfiguring Comindware web services .

Setting up a test application

To create a test application:

1. Create a C Sharp console application project in Microsoft Visual Studio: click File >New Project > Console Application.

2. Add a link to a required web service into the project. Right click on a project nameand select Add service reference in the shortcut menu. Then type the http://

14

14

14

8

Page 15: Comindware® Web Services API Developer's Guide

Creating a test application

Copyright © Comindware, 2009-2012 15

<YourServerName>/webService/platform/CoreWebService link, or the http://<YourServerName>/webService/tracker/CoreWebService link in the address boxand click the Go button.

3. Open the App.Config file of your application.

4. Choose how you wish to authenticate the web services. You can use either ActiveDirectory authentication or Comindware internal authentication, depending on theauthentication type used in your Comindware Web Services API installation.

To authenticate a web service:

Find the configuration\system .serviceModel\client section in the App.Config file,

Choose the appropriate endpoint, and copy its name to your application.

In our example we use Comindware Web Services API internal authentication, sowe copy the name of the endpoint in which a security certificate is used to validatea server to a client (see the figure below).

The endpoint name to be copied

5. If you use a temporary security certificate, you will need to define an endpointbehavior in the App.Config file of your application. Add the <behaviors> codesection and copy the name of the behavior to the <behaviorConfiguration>parameter.

Page 16: Comindware® Web Services API Developer's Guide

Comindware Web Services API

16 www.comindware.com

An endpoint behavior is defined. Certificate validation is skipped.

6. Provide a user name and a password.

var cmwClient = new Comindware.CoreWebServiceClient("WSHttpBinding_ICoreWebService"); cmwClient.ClientCredentials.UserName.UserName = "user1"; cmwClient.ClientCredentials.UserName.Password = "user1";

7. Having specified the connection settings, add commands to create a personal task.Use the TaskCreate method to create a task.

The "TaskCreate" method is used for task creation

8. Provide a title and description of the task being created.

Page 17: Comindware® Web Services API Developer's Guide

Creating a test application

Copyright © Comindware, 2009-2012 17

var taskData = new Dictionary<string, object>(); taskData["title"] = "Hello, world"; taskData["description"] = "Ws task"; cmwClient.TaskCreate(null, taskData); cmwClient.Close();

9. The final code of our test application will look as follows:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Security.Cryptography.X509Certificates;using System.Net.Security;using System.Net;

namespace TestWebServices{ class Program { static void Main(string[] args) { ServicePointManager.ServerCertificateValidationCallback = newRemoteCertificateValidationCallback(RemoteServerCertificateValidationCallback);

var cmwClient = new Comindware.CoreWebServiceClient("WSHttpBinding_ICoreWebService"); cmwClient.ClientCredentials.UserName.UserName = "user1"; cmwClient.ClientCredentials.UserName.Password = "user1";

var taskData = new Dictionary<string, object>(); taskData["title"] = "Hello, world"; taskData["description"] = "Ws task"; cmwClient.TaskCreate(null, taskData); cmwClient.Close(); } private static bool RemoteServerCertificateValidationCallback(object sender,X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)  {  return true;  } }}

10. Log in to Comindware Web Services API with the user name and password providedin Step 6 to view the created personal task.

A personal task has been successfully created

16

Page 18: Comindware® Web Services API Developer's Guide

Comindware Web Services API

18 www.comindware.com

Integration examples

Chapter 4

This chapter includes the following topics:

General information

Preliminary steps

Synching sales info between Salesforce and Comindware Web Services API

SurveyGizmo: Post Surveys

SurveyGizmo: Collect Surveys

Moving an Item through Workflow Steps

CleverBridgeSales Parsing

General informationThere are five examples which represent integration of Comindware Web Services APIwith third party applications using Comindware Web Services API.

Synching sales info between Salesforce and Comindware Web Services API

This example shows how to perform a two-way synchronization of the list of leadsbetween Comindware Web Services API and the Salesforce CRM. This example alsoautomatically creates Comindware Web Services API work environment: a set of fields,a template, item group and a workspace, unlike other examples which use pre-builtComindware Web Services API workspaces, templates, and groups.

Integrating a SurveyGizmo survey with Comindware Web Services APIsupport requests

This example shows how to integrate support requests created in Comindware WebServices API with the SurveyGizmo online surveys. After a technical support item isclosed in Comindware Web Services API, it is moved to the "Closed Support Requests"list. The SurveyGizmoPostLinks example periodically checks the list for new items.Once the item is found, the program will take the following actions:

generates a survey link

updates the item with the link

sends the link to a customer via e-mail

changes the survey status to Awaiting response

SurveyGizmoCollectSurveys

This example shows how to gather the customer's feedback on how satisfied the usersare. The SurveyGizmoCollectSurveys example searches for completed surveys on theSurveyGizmo application server. After a survey is found, the program:

18

19

20

21

23

24

24

Page 19: Comindware® Web Services API Developer's Guide

Integration examples

Copyright © Comindware, 2009-2012 19

imports the data to the appropriate item fields

changes the survey status to Complete

Moving an Item through Workflow Steps

This example checks all Comindware Web Services API items, selects items byspecified status, and then moves them to the next step, i.e. in other words, movesthem through workflow steps.

ParseCleverBridgeSales

When a customer purchases software using the CleverBridge solution, an e-mailnotification is automatically sent to the customer's mailbox. A copy of the e-mail issent to a pre-registered inbox. Received e-mails are converted into Comindware WebServices API items via the Create Items by E-mail feature. This example parses an itemdescription and item attachments. Then it copies the required information to thecorresponding item fields.

Preliminary stepsBefore implementing integration examples, you should prepare your workenvironment: get the source code of integration examples, configure general projectsettings in Microsoft Visual Studio, and specify connection settings for MicrosoftExchange Server. You should also have administrative rights in Comindware WebServices API.

Obtaining the source code

Comindware provides you with the source code of the integration examples. Theexamples are written in C Sharp, and can be opened in Microsoft Visual Studio 2010.

You can download all samples in one zip archive from the Comindware web site at:

http://dl2.comindware.com/Samples/WebServices_API_Samples.zip

Configuring general project settings

The best way to configure general settings for working with web services is to create anew test project as described in the Creating a Test Application section. Once thetest project has been created, open the app.config file of the created project andreplace the following parameters in ComindwareLib\serviceModelClient.config file with theparameters from the app.config file:

endpoint.address for each endpoint

certificate.encodedValue

userPrincipalName.value

Microsoft Exchange connection settings

Each test project uses a connection to Microsoft Exchange Server. The connection isrequired to send log files.

The following settings may be configured:

14

Page 20: Comindware® Web Services API Developer's Guide

Comindware Web Services API

20 www.comindware.com

Parameter Description

ExchangeVersion Microsoft Exchange Server Version.

Possible values: EXCHANGE2007_SP1 ||EXCHANGE2010 || EXCHANGE2010_SP1

ExchangeUri Uniform resource identifier of exchange webservices.

ExchangeDomain/ExchangeLogin/ExchangePassword

Exchange server domain/login/password.

ExchangeLogRecipients E-mail addresses of log file recipients.

Synching sales info between Salesforce andComindware Web Services API

This example shows how to perform a two-way synchronization of the list of sales leadsbetween Comindware Web Services API and the Salesforce CRM. This example alsoautomatically creates Comindware Web Services API work environment: a set of fields,a template, item group and a workspace, unlike other integration examples which usepre-built Comindware Web Services API workspaces, templates, and groups.

Template name: SfWebLead

Workspace name: Online Marketing

Item Group name: Web Leads

List name: Sync- All Web Leads

Salesforce Synchronization parameters

Parameter Description

ComindwareLogin/ComindwarePassword

a username and a password.

ComindwareTemplateId

template's ID (automatically generated if it doesn't exist inthe DataBase).

ComindwareWorkspaceName

a workspace name (automatically generated if it doesn'texist in the DataBase).

ComindwareLibr a group name (automatically generated if it doesn't exist

Page 21: Comindware® Web Services API Developer's Guide

Integration examples

Copyright © Comindware, 2009-2012 21

Parameter Description

aryName in the DataBase).

ComindwareSyncDatasetName

a list name for synchronization.

SalesforceLogin/SalesforcePassword

a username and a password to log in to Salesforce.com.

SurveyGizmo: Post SurveysThis example shows how to integrate support requests created in Comindware WebServices API with the SurveyGizmo online surveys. After a technical support item isclosed in Comindware Web Services API, it is moved to the "Closed Support Requests"list. The SurveyGizmoPostLinks example periodically checks the list for new items.Once the item is found, the program:

generates a survey link

updates the item with the link

sends the link to a customer via e-mail

changes the survey status to Awaiting response

SurveyGizmo: Post Surveys parameters

Parameter Description

SurveyGizmoLogin/SurveyGizmoPassword

a username and a password to log in toSurveyGizmo.

SurveyGizmoSurveyIds ID of a survey in SurveyGizmo.

ComindwareLogin/ComindwarePassword

a username and a password.

ComindwareDatasetId ID of the list which the program checks.

ComindwareCustomerField

stores a link to an item with the customer'sinformation.

ComindwareCustomerNameField

a customer name.

ComindwareCustomerEmailField

a customer e-mail.

Page 22: Comindware® Web Services API Developer's Guide

Comindware Web Services API

22 www.comindware.com

Parameter Description

ComindwareCustomerSkipSurveyField

indicates that survey sending has been skipped fora customer.

ComindwareCustomerLastSurveyDateField

the date when the last survey was sent

ComindwareCustomerLanguageField

a customer language.

ComindwareSurveySentToEmailField

an e-mail address of a survey recipient.

ComindwareSurveyLinkIdField

ID of a link which was sent to a customer.

ComindwareSurveyLinkUriField

uniform resource identifier of a link which was sentto a customer.

ComindwareSurveyStateField

state of a survey.

possible values: pending; awaiting response;complete; canceled (expired); canceled (opt-out);canceled (3 months rule); link generated/not sent.

ComindwareSurveyStateReadyToSend

indicates that a survey is ready to send.

ComindwareSurveyStateLinkCreated

indicates that a link to a survey has been created.

ComindwareSurveyStateLinkSent

indicates that a link to a survey has been sent.

ComindwareSurveyStateSkippedByCustomerSettings

indicates that survey sending has been skipped.

ComindwareSurveyStateSkippedByTooOftenRule

indicates that a link to a survey has not been sentaccording to the '3 months rule'.

SurveyGizmo: Collect SurveysThis example shows how to gather the customer's feedback on how satisfied the usersare. The SurveyGizmoCollectSurveys example looks for completed surveys on theSurveyGizmo application server. After the survey has been found, the program:

takes the data from the SurveyGizmo survey and copies the data into theComindware Tracker item

Page 23: Comindware® Web Services API Developer's Guide

Integration examples

Copyright © Comindware, 2009-2012 23

changes the survey status to Complete

SurveyGizmo: Collect Surveys parameters

Parameter Description

SurveyGizmoLogin/SurveyGizmoPassword

a username and a password to login to SurveyGizmo.

SurveyGizmoSurveyIds

ID of a survey in SurveyGizmo.

ComindwareLogin/ComindwarePassword

a username and a password.

ComindwareDatasetId

ID of the list which the program checks.

ComindwareCustomerField

stores a link to an item with the customer's information.

ComindwareCustomerLastSurveyDateField

a date when a survey was last sent.

ComindwareCustomerLanguageField

a customer language.

ComindwareSurveyLinkIdField

ID of a link which was sent to a customer.

ComindwareSurveyStateField

state of a survey.

possible values: pending; awaiting response; complete;canceled (expired); canceled (opt-out); canceled (3months rule); link generated/not sent.

ComindwareSurveyStateResponseReceived

indicates that a response has been received.

ComindwareSurveyStateSkippedByTimeout

indicates that a survey has been canceled.

ComindwareResponseFields_{language}

correspondence in the SurveyGizmo survey fields andthe Comindware Tracker fields.

Page 24: Comindware® Web Services API Developer's Guide

Comindware Web Services API

24 www.comindware.com

Moving an Item through Workflow StepsThis example checks all Comindware Web Services API items, selects items byspecified status, and then moves them to the next step, i.e. in other words, movesthem through workflow steps.

Moving an Item through Workflow Steps parameters

Parameter Description

ComindwareLogin/ComindwarePassword

a username and a password.

ComindwareDatasetId

ID of the list which the program checks.

ComindwareSourceState

a current step, from which items should be moved.

ComindwareTargetState

a next step, to which items should be moved.

ComindwareSourceStateDateField

a date, when an item was moved to a current step.

ComindwareDurationBeforeMove

maximum duration of an item staying on a current step (inISO 8601 format).

CleverBridgeSales ParsingWhen a customer purchases software using the CleverBridge solution, an e-mailnotification is automatically sent to the customer's mailbox. A copy of the e-mail issent to a pre-registered inbox. Received e-mails are converted into Comindware WebServices API items via the Create Items by E-mail feature. This example parses an itemdescription and item attachments. Then it copies the required information to thecorresponding item fields.

CleverBridgeSales Parsing parameters

Parameter Description

ComindwareLogin/ComindwarePassword

a username and a password.

Page 25: Comindware® Web Services API Developer's Guide

Integration examples

Copyright © Comindware, 2009-2012 25

Parameter Description

ComindwareDatasetId

ID of the list which the program checks.

ComindwareIsProcessedField

a boolean parameter indicates whether an item has beenprocessed or not.

ComindwareCustomerNameField

a customer name.

ComindwareCustomerEmailField

a customer e-mail.

ComindwareReferenceNumberField

a number of an order.

ComindwareCustomerDataField

stores information about the message sender.

ComindwareCleverBridgeSignature

indicates whether a message was sent or not.

Page 26: Comindware® Web Services API Developer's Guide

Comindware Web Services API

26 www.comindware.com

API methods

Chapter 5

This chapter includes the following topics:

AdministrationWebService Class Reference

Platform CoreWebService Class Reference

Tracker CoreWebService Class Reference

AdministrationWebService Class Reference

Public Member Functions

object LicensingListInstalledProducts ()object LicensingBindUsers (string product, object users)object LicensingRebindUsers (string product, object users)object LicensingUnbindUsers (string product, object users)object LicensingListUsers (string product)LicensingAccountProductInfoOut LicensingGetAccountProductInfo ()

Member Function Documentation

Method Returns

object LicensingBindUsers (string product, object users)

Bind users to the product

Parameters:

product Product to bind to

users Users to bind

object

LicensingAccountProductInfoOut LicensingGetAccountProductInfo ()

Retrieve account product info

LicensingAccountProductInfoOut

Public Attributes:

string[] roles

string[] products

string domain

string platformVersion

bool saas

doublefreeDiskSpacePercent

double freeDiskSpaceBytes

string

26

27

44

Page 27: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 27

Method Returns

sampleDataWorkspaceId

object LicensingListInstalledProducts ()

Retrieve a list of licenses for installed products

object

object LicensingListUsers (string product)

List licensed users for the product

Parameters:

product Product to view users bound to

object

object LicensingRebindUsers (string product, object users)

Rebind users to the products

Parameters:

product Product to bind to

users Users to bind

object

object LicensingUnbindUsers (string product, object users)

Unbind users from the product

Parameters:

product Product to unbind from

users Users to unbind

object

Platform CoreWebService Class Reference

Public Member Functions

DatasetListItemOut[] DataSetList (string id)DatasetListItemOut[] DataSetListAll ()DataSetOut DataSetGetConfiguration (string id)DatasetDataSetDataOut DataSetGetData (DatasetQueryConfigIn query)DatasetDataSetItemDataOut DataSetGetItemData (string id, string itemId)string DataSetCreate (string id, DataSetIn config)void DataSetEdit (string id, DataSetIn config)void DataSetClone (string id, string newId, string container)void DataSetDeleteConfiguration (string id)DatasetDataSetDataOut DataSetExecuteQuery (DataSetIn config, DatasetQueryConfigInquery)HistorySingleRecordOut[] HistoryRead (string id)string AttachmentCreate (string id, AttachmentIn config)string AttachmentSetData (string id, string attachmentId, string streamPath,AttachmentAttachmentRevisionIn config)

Page 28: Comindware® Web Services API Developer's Guide

Comindware Web Services API

28 www.comindware.com

bool AttachmentDelete (string attachmentId)bool AttachmentDeleteRevision (string revisionId)AttachmentOut[] AttachmentList (string id)AttachmentAttachmentRevisionOut[] AttachmentGetHistory (string attachmentId)CommentOut[] CommentList (string commentSubject)CommentOut[] CommentListTree (string commentSubject, bool showChildSubjects)CommentOut[] CommentListTreeFromTop (string commentSubject, bool showChildSubjects)string CommentAdd (CommentIn config)void CommentEdit (CommentIn config)object[] AccountList ()void AccountCreate (string id, AccountIn config)void AccountEdit (string id, AccountIn config)void AccountDelete (string id)AccountOut AccountGet (string id)object[] GroupList ()AccountGroupOut GroupGet (string id)void GroupDelete (string id)void GroupEdit (string id, AccountGroupIn config)void GroupCreate (string id, AccountGroupIn config)string ObjectCreate (string id, string prototypeId, object data)string ObjectCreatePrototype (string id, PrototypeIn config)string ObjectEditPrototype (string id, PrototypeIn config)void ObjectDelete (string id)void ObjectDeletePrototype (string id)string ObjectEdit (string id, object data)object ObjectGet (string id)PrototypeListItemOut[] ObjectListPrototypes ()void ObjectFollow (string id, bool follow)string[] ObjectGetFollowers (string id)void ObjectSetFollowers (string id, string[] followers)object[] ObjectGetSubtasks (string id)string TaskCreate (string id, object data)void TaskDelete (string id)string TaskReassign (string id, string assignee, object data, string comment)string TaskStartWork (string id, object data)string TaskDefer (string id, object data)bool TaskComplete (string id, bool?completeSubtasks, object data)void TaskAccept (string id)void TaskDecline (string id, string comment)string TimesheetCreateRecord (TimesheetRecordIn data)void TimesheetEditRecord (string id, TimesheetRecordIn data)void TimesheetDeleteRecord (string id)TimesheetRecordListOut TimesheetListTaskRecords (string id)SearchSearchItemOut[] SearchFullTextSearchEx (ParametersIn searchParams, stringsearchString)void SearchRebuild ()ContainerListItemOut[] ContainerListAvailableContainers (string id, bool forCreation)WorkspaceOut WorkspaceGet (string id)string WorkspaceCreate (string id, TemplateParametersCreateIn workspaceTemplate,WorkspaceIn config)string WorkspaceEdit (string id, WorkspaceIn config)void WorkspaceDelete (string id)ContainerListItemOut[] WorkspaceList ()ContainerListItemOut[] WorkspaceListAll ()LibraryOut LibraryGet (string id)

Page 29: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 29

string LibraryCreate (string id, LibraryIn config)string LibraryEdit (string id, LibraryIn config)void LibraryDelete (string id)LibraryListItemOut[] LibraryList (string id)TaskContainerOut TaskContainerGet (string id)string TaskContainerCreate (string id, TaskContainerIn config)string TaskContainerEdit (string id, TaskContainerIn config)void TaskContainerDelete (string id)TaskContainerListItemOut[] TaskContainerList (string id)PropertiesListItemOut[] PropertyList ()PropertiesListItemOut[] PropertyListUserProperties ()void PropertyDelete (string id)UserPropertyOut PropertyGet (string id)string PropertyCreate (string id, UserPropertyIn config)string PropertyEdit (string id, UserPropertyIn config)

Member Function Documentation

Method Returns

void AccountCreate (string id, AccountIn config)

Create an account

Parameters:

id New account id

config Account configuration settings

None

void AccountDelete (string id)

Delete an account

Parameters:

id Account id

None

void AccountEdit (string id, AccountIn config)

Modify an account

Parameters:

id Account id

config Account configuration settings

None

AccountOut AccountGet (string id)

Retrieve an account

Parameters:

id Account id

AccountOut

Public Attributes:

string[] systemType

string creator

DateTime creationDate

DateTime lastWriteDate

string name

Page 30: Comindware® Web Services API Developer's Guide

Comindware Web Services API

30 www.comindware.com

Method Returns

string fullName

string manager

string mbox

string phone

string instantMessagingId

string username

bool active

DateTime lastLoginDate

string localization

string sid

string[] notificationSettings

string workspace

string password

bool noDefaultDatasets

string taskContainer

string userpic

string title

string department

string[] userGroupMembership

string authenticationMethod

string[] subordinates

string id

object [] AccountList ()

Retrieve accounts list

object[]

string AttachmentCreate (string id, AttachmentInconfig)

Create an attachment

Parameters:

id Object id to attache to

config Attachment field values

Created attachment id

bool AttachmentDelete (string attachmentId)

Delete an attachment

Parameters:

attachmentId

Attachment id

bool

bool AttachmentDeleteRevision (string revisionId)

Delete attachment revision

bool

Page 31: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 31

Method Returns

Parameters:

revisionId

Attachment revision id

AttachmentAttachmentRevisionOut []AttachmentGetHistory (string attachmentId)

Retrieve attachment history

Parameters:

attachmentId

Attachment id

List of revisions of selected attachment (activerevision is not included)

AttachmentOut [] AttachmentList (string id)

Retrieve objects attachment

Parameters:

id Subject to get attachments for

List of attachments to selected subject

string AttachmentSetData (string id, stringattachmentId, string streamPath,AttachmentAttachmentRevisionIn config)

Set attachment data

Parameters:

id Object id to attache to

attachmentId

Attachment id

streamPath

Path to stream to attach

config Attachment revision field values

Created revision (or attachment if created) id

string CommentAdd (CommentIn config)

Add comment

Parameters:

config Comment field values

Created comment id

void CommentEdit (CommentIn config)

Edit comment

Parameters:

config Comment field values

None

Page 32: Comindware® Web Services API Developer's Guide

Comindware Web Services API

32 www.comindware.com

Method Returns

CommentOut [] CommentList (stringcommentSubject)

Retrieve all comments for the object as a list

Parameters:

commentSubject

Subject to list comments for

List of comments to selected subject

CommentOut [] CommentListTree (stringcommentSubject, bool showChildSubjects)

Retrieve all comments for the object as a tree

Parameters:

commentSubject

Subject to list comments for

showChildSubjects

List comments from all childs ofsubject

List of comments to selected subject

CommentOut [] CommentListTreeFromTop (stringcommentSubject, bool showChildSubjects)

Retrieve all comments for the object as a tree

Parameters:

commentSubject

Subject to list comments for

showChildSubjects

List comments from all childs ofsubject

List of comments to selected subject

ContainerListItemOut []ContainerListAvailableContainers (string id, boolforCreation)

List all containers

Parameters:

id Root workspace, optional

forCreation

True if need containers where creationis permitted

List contains all containers accessible to current userfor item creation or query

void DataSetClone (string id, string newId, stringcontainer)

Clone shared dataset to user's container

Parameters:

id Data set id to clone

None

Page 33: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 33

Method Returns

newId Cloned DataSet id

container

Container id to clone to

string DataSetCreate (string id, DataSetIn config)

Create new DataSet

Parameters:

id Data set id

config Data set configuration settings

string

void DataSetDeleteConfiguration (string id)

Delete Dataset

Parameters:

id Data set id to delete

None

void DataSetEdit (string id, DataSetIn config)

Edit DataSet configuration

Parameters:

id Data set id

config Data set configuration settings

None

DatasetDataSetDataOut DataSetExecuteQuery(DataSetIn config, DatasetQueryConfigIn query)

Execute query using dataset configurationformat

Parameters:

config Dataset configuration

query Additional query params

DatasetDataSetDataOut

Public Attributes:

object[] items

object scalar

double total

DataSetOut config

DataSetOut DataSetGetConfiguration (string id)

Get dataset configuration contents

Parameters:

id DataSet id

DataSetOut

Public Attributes:

string container

string query

string expression

string[] sourceContainer

string[] sourceItemPrototype

DatasetColumnOut[] columns

DatasetSortByOut[] sortBy

DatasetGroupByOut[] groupBy

Page 34: Comindware® Web Services API Developer's Guide

Comindware Web Services API

34 www.comindware.com

Method Returns

string name

string description

string idColumn

bool public__

bool system

long itemsLimit

DateTime lastWriteDate

string modifiedBy

string clientData

string clientDataUri

string id

DatasetDataSetDataOut DataSetGetData(DatasetQueryConfigIn query)

Get dataset data

Parameters:

query Data set query params

DatasetDataSetDataOut

Public Attributes:

object[] items

object scalar

double total

DataSetOut config

DatasetDataSetItemDataOut DataSetGetItemData(string id, string itemId)

Get dataset item data

Parameters:

id Data set id

itemId Item id

DatasetDataSetItemDataOut

Public Attributes:

object item

DatasetListItemOut [] DataSetList (string id)

Get a list of all datasets

Parameters:

id Container id, null for global list

DatasetListItemOut[]

Public Attributes:

string id

string name

string container

string containerName

bool readOnly

bool shared

DatasetListItemOut [] DataSetListAll ()

Get a list of all datasets

DatasetListItemOut[]

Public Attributes:

string id

string name

string container

string containerName

bool readOnly

Page 35: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 35

Method Returns

bool shared

void GroupCreate (string id, AccountGroupInconfig)

Create a group

Parameters:

id New group id

config Group configuration settings

None

void GroupDelete (string id)

Delete specified group

Parameters:

id Group id

None

void GroupEdit (string id, AccountGroupIn config)

Modify specified group

Parameters:

id Group id

config Group configuration settings

None

AccountGroupOut GroupGet (string id)

Retrieve specified group

Parameters:

id Group id

AccountGroupOut

Public Attributes:

string groupName

string description

double userCount

string[] groupUsers

string[] subGroups

string[] groupParents

string[] member

string sid

string consistsOf

string id

object [] GroupList ()

List all groups

object[]

HistorySingleRecordOut [] HistoryRead (string id)

Read objects history

HistorySingleRecordOut

Public Attributes:

string singleSubject

Page 36: Comindware® Web Services API Developer's Guide

Comindware Web Services API

36 www.comindware.com

Method Returns

Parameters:

id Object id to get history for

string singleSubjectName

string singleSubjectSystemType

string singleSubjectUserType

string singleEvent

string singleEventGroup

string singleAuthor

string singleAuthorName

string singleUserpic

DateTime singleDate

HistoryChangeOut[] singleChange

string LibraryCreate (string id, LibraryIn config)

Create a library. Library is equivalent to ItemGroup

Parameters:

id Library id

config Library settings

Created library id

void LibraryDelete (string id)

Delete specified library. Library is equivalentto Item Group

Parameters:

id Library to delete

None

string LibraryEdit (string id, LibraryIn config)

Modify specified library. Library is equivalentto Item Group

Parameters:

id Library to edit

config Library settings

Edited library id

LibraryOut LibraryGet (string id)

Retrieve specified library. Library isequivalent to Item Group

Parameters:

id Library to get

Library settings

LibraryListItemOut [] LibraryList (string id)

List libraries. Library is equivalent to ItemGroup

Global libraries list

Page 37: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 37

Method Returns

Parameters:

id Container id, null for global list

string ObjectCreate (string id, string prototypeId,object data)

Create an object

Parameters:

id Object id, optional

prototypeId

PrototypeId id, null for default

data Object data

Created object id

string ObjectCreatePrototype (string id,PrototypeIn config)

Create a prototype

Parameters:

id Prototype id

config Prototype settings

Created prototype id

void ObjectDelete (string id)

Delete specified object

Parameters:

id Object id

None

void ObjectDeletePrototype (string id)

Delete specified prototype

Parameters:

id Prototype id

None

string ObjectEdit (string id, object data)

Modify specified object

Parameters:

id Object id

data Object data

Edited object id

string ObjectEditPrototype (string id, PrototypeInconfig)

Modify prototype

Edited prototype id

Page 38: Comindware® Web Services API Developer's Guide

Comindware Web Services API

38 www.comindware.com

Method Returns

Parameters:

id Prototype id

config Prototype settings

void ObjectFollow (string id, bool follow)

Follow or unfollow specified object

Parameters:

id Object id

follow Follow status

None

object ObjectGet (string id)

Retrieve specified object

Parameters:

id Object id

Object data

string [] ObjectGetFollowers (string id)

Retrieve object followers

Parameters:

id Object id

IDs of objects

object [] ObjectGetSubtasks (string id)

Get object subtasks

Parameters:

id Object id

Subtasks data

PrototypeListItemOut [] ObjectListPrototypes ()

List all prototypes

PrototypeListItemOut[]

Public Attributes:

string id

string name

string instanceSystemType

bool system

ContainerListItemOut[] usedIn

void ObjectSetFollowers (string id, string[]followers)

Set followers for the object

Parameters:

id Object id

None

Page 39: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 39

Method Returns

followers

Followers IDs

string PropertyCreate (string id, UserPropertyInconfig)

Create a property

Parameters:

id Id of property

config Property settings

Created Property id

void PropertyDelete (string id)

Delete specified property

Parameters:

id Id of property to remove

None

string PropertyEdit (string id, UserPropertyInconfig)

Modify specified property

Parameters:

id Id of property

config Property settings

Edited Property id

UserPropertyOut PropertyGet (string id)

Retrieve specified property

Parameters:

id Id of property

Property settings

PropertiesListItemOut [] PropertyList ()

List all properties

List of all of the properties

PropertiesListItemOut []PropertyListUserProperties ()

List all user properties

List of all of the user created properties

SearchSearchItemOut [] SearchFullTextSearchEx(ParametersIn searchParams, string searchString)

Perform full text search

SearchSearchItemOut[]

Public Attributes:

string id

string title

SearchFieldMatchOut[] match

Page 40: Comindware® Web Services API Developer's Guide

Comindware Web Services API

40 www.comindware.com

Method Returns

Parameters:

searchParams

Full text search parameters

searchString

String to search for

string systemType

string type

string typeName

string state

DateTime creationDate

DateTime lastWriteDate

void SearchRebuild ()

Rebuild search

None

void TaskAccept (string id)

Accept the task

Parameters:

id Task id

None

bool TaskComplete (string id, bool?completeSubtasks, object data)

Complete the task

Parameters:

id Task id

completeSubtasks

Force subtasks completion

data Task data

true if completed, false if task has subtasks andcompleteSubtasks is false.

string TaskContainerCreate (string id,TaskContainerIn config)

Create Task Conitainer

Parameters:

id TaskContainer id

config TaskContainer settings

Created TaskContainer id

void TaskContainerDelete (string id)

Delete Task Conitainer

Parameters:

id TaskContainer to delete

None

Page 41: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 41

Method Returns

string TaskContainerEdit (string id,TaskContainerIn config)

Modify Task Conitainer

Parameters:

id TaskContainer to edit

config TaskContainer settings

Edited TaskContainer id

TaskContainerOut TaskContainerGet (string id)

Retrieve specified library. Library isequivalent to Item Group

Parameters:

id TaskContainer to get

TaskContainer settings

TaskContainerListItemOut [] TaskContainerList(string id)

List Task Conitainers

Parameters:

id Container id, null for global list

Global task container list

string TaskCreate (string id, object data)

Create a task

Parameters:

id Task id

data Task data

Created Task id

void TaskDecline (string id, string comment)

Reject the task

Parameters:

id Task id

comment

Rejection comment

None

string TaskDefer (string id, object data)

Defer the task

Parameters:

id Task id

data Task data

Created Task id

Page 42: Comindware® Web Services API Developer's Guide

Comindware Web Services API

42 www.comindware.com

Method Returns

void TaskDelete (string id)

Delete specified task

Parameters:

id Task id

None

string TaskReassign (string id, string assignee,object data, string comment)

Reassign specified task

Parameters:

id Task id

assignee

New Assignee

data Task data

comment

Operation Comment

Created Task id

string TaskStartWork (string id, object data)

Start work for the task

Parameters:

id Task id

data Task data

Created Task id

string TimesheetCreateRecord(TimesheetRecordIn data)

Create timesheet record

Parameters:

data Timesheet data

Created Timesheet id

void TimesheetDeleteRecord (string id)

Delete timesheet record

Parameters:

id Record id

None

void TimesheetEditRecord (string id,TimesheetRecordIn data)

Edit timesheet record

Parameters:

id Record id

data Timesheet data

None

Page 43: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 43

Method Returns

TimesheetRecordListOutTimesheetListTaskRecords (string id)

List all timesheet records for the task

Parameters:

id Task id

TimesheetRecordListOut

Public Attributes:

TimesheetRecordOut[] list

TimeSpan timeSpent

TimeSpan timeSpentSum

string WorkspaceCreate (string id,TemplateParametersCreateIn workspaceTemplate,WorkspaceIn config)

Create a workspace

Parameters:

id Workspace id

workspaceTemplate

Workspace template parameters

config Workspace settings

Created workspace id

void WorkspaceDelete (string id)

Delete specified workspace

Parameters:

id Workspace to delete

None

string WorkspaceEdit (string id, WorkspaceInconfig)

Modify specified workspace

Parameters:

id Workspace to edit

config Workspace settings

Edited workspace id

WorkspaceOut WorkspaceGet (string id)

Retrieve specified workspace

Parameters:

id Workspace to get

Workspace settings

ContainerListItemOut [] WorkspaceList ()

List workspaces

Workspaces list for current user

ContainerListItemOut [] WorkspaceListAll ()

List workspaces

Global workspaces list

Page 44: Comindware® Web Services API Developer's Guide

Comindware Web Services API

44 www.comindware.com

Tracker CoreWebService Class Reference

Public Member Functions

void WorkflowSetConfiguration (string id, WorkflowIn config)WorkflowOut WorkflowGetConfiguration (string id)string WorkflowListStates ()WorkflowStateOut WorkflowCreateState (string id, WorkflowStateIn config)void WorkflowEditState (string id, WorkflowStateIn config)void WorkflowDeleteState (string id)TrackerListItemOut[] TrackerList (string id)TrackerOut TrackerGet (string id)string TrackerCreate (string id, TrackerIn config)string TrackerEdit (string id, TrackerIn config)void TrackerDelete (string id)string TrackerCreateObject (string id, string prototypeId, object data)string TrackerCreateObjectPrototype (string id, Comindware.Platform.WebService.PrototypeInconfig)Comindware.Platform.WebService.PrototypeListItemOut[] TrackerListObjectPrototypes ()string TrackerMoveObjectWorkflow (string id, object data, string transition, object objectData,string comment)string TrackerReassignCurrentSubtask (string id, string assignee, object data, string comment)string TrackerMoveTrackerTaskWorkflow (string id, object data, string transition, objecttaskData, string comment)PossibleResolutionsListItemOut[] TrackerGetPossibleResolutions (string id)

Member Function Documentation

Method Returns

string TrackerCreate (string id, TrackerIn config)

Create a trackable item group (tracker)

Parameters:

id Tracker id

config Tracker settings

Created tracker id

string TrackerCreateObject (string id, string prototypeId, objectdata)

Create an object in the trackable item group (tracker)

Parameters:

id Object id, optional

prototypeId Object prototype, null for default

data Object data

Created object id

void TrackerDelete (string id)

Delete the trackable item group (tracker)

None

Page 45: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 45

Method Returns

Parameters:

id Tracker to delete

string TrackerEdit (string id, TrackerIn config)

Modify the trackable item group (tracker)

Parameters:

id Tracker to edit

config Tracker settings

Edited tracker id

TrackerOut TrackerGet (string id)

Retrieve settings for specified trackable item group(tracker)

Parameters:

id Tracker to get

Tracker settings

PossibleResolutionsListItemOut []TrackerGetPossibleResolutions (string id)

List all possible resolutions

Parameters:

id Object id

All possible resolutions

TrackerListItemOut [] TrackerList (string id)

List all trackable item groups (trackers)

Parameters:

id Container id, null for global list

Trackers list

Comindware.Platform.WebService.PrototypeListItemOut []TrackerListObjectPrototypes ()

List all object prototypes

PrototypeListItemOut

string Comindware.Tracker.WebService.CoreWebService.TrackerMoveObjectWorkflow (string id, object data, stringtransition, object objectData, string comment)

Move object via workflow

Parameters:

id Object id

data Task settings

transition Workflow transition id

Created task id (if any)

Page 46: Comindware® Web Services API Developer's Guide

Comindware Web Services API

46 www.comindware.com

Method Returns

objectData Object data

comment Comment

string TrackerMoveTrackerTaskWorkflow (string id, object data,string transition, object taskData, string comment)

Move task via workflow

Parameters:

id Object id

data Task settings

transition Workflow transition id

objectData Task data

comment Comment

Created task id (if any)

string TrackerReassignCurrentSubtask (string id, stringassignee, object data, string comment)

Reassign current subtask for the object

Parameters:

id Object id

assignee New Task Assignee

data Object data

comment Comment

Object id (if any)

WorkflowStateOut WorkflowCreateState (string id,WorkflowStateIn config)

Create a state for the workflow

Parameters:

id State id

config State settings

Created state id

void WorkflowDeleteState (string id)

Delete specified workflow state

Parameters:

id State id

None

void WorkflowEditState (string id, WorkflowStateIn config)

Modify the state for the workflow

None

Page 47: Comindware® Web Services API Developer's Guide

API methods

Copyright © Comindware, 2009-2012 47

Method Returns

Parameters:

id State id

config State settings

WorkflowOut WorkflowGetConfiguration (string id)

Retrieve workflow configuration

Parameters:

id Workflow target

WorkflowOut

Public Attributes:

WorkflowEventOut[] events

WorkflowTransitionOut[] transitions

string config

string currentEvent

string type

string id

string WorkflowListStates ()

Retrieve list with workflows states

string

void WorkflowSetConfiguration (string id, WorkflowIn config)

Set configuration for the workflow

Parameters:

id Workflow target

config Workflow settings

None