DataService API

Use this web service for programmatic access to data stored in ALM, for example to integrate with other tools you use. Every service method takes, as its first parameter, the key obtained after authorization.


Protocol: SOAP, WebService

Link: http://<host>/api/dataservice

WSDL description (rpc/encoded): http://<host>/api/dataservice?wsdl

WSDL description (document/literal): http://<host>/api/dataservice?wsdl&style=document&use=literal

Methods

Name Return value Purpose

<class>RemoteAdd (string token.Key, <class> object)

<class>

Creates an instance of <class> with the default attributes specified in object. Returns the created instance with Id and other fields filled in.

<class>RemoteAddBatch(string token.Key, <class>[] objects)

<class>

Creates instances of <class> from a vector. Returns a vector of created instances with Id and other fields filled in.

<class>RemoteLoad (string token.Key, string id)

<class>

Returns the <class> instance loaded by identifier id.

<class>RemoteStore (string token.Key, string id, <class> object)


Saves attributes of the <class> instance identified by id.

<class>RemoteStoreBatch(string token.Key, <class>[] objects)


Saves attributes of instances of type <class> identified by the Id attribute values.

<class>RemoteDelete(string token.Key, string id)


Deletes the <class> instance identified by id.

<class>RemoteDeleteBatch(string token.Key, <class>[] objects)


Deletes instances of type <class> identified by the Id attribute values.

<class>RemoteGetAll(string token.Key)

<class>[]

Returns all saved instances of <class> as an array of objects.

<class>RemoteFind (string token.Key, <class> object)

<class>[]

Searches for objects by an exact match of object attribute values. For example, to search by name, set object.Caption, and so on. Returns an array of <class> instances that match the search criteria.

Classes

Name Attribute Purpose

task

Id

Object identifier


Caption

Task title


Priority

Priority identifier (reference to priority)


TaskType

Task type identifier (reference to tasktype)


Release

Identifier of the iteration (sprint) the Task is included in (reference to iteration)


State

Text value of the current Task state, for example submitted or resolved


Assignee

Assignee identifier (reference to paticipant)


ChangeRequest

Identifier of the source Issue (reference to request)


Planned

Planned effort for the Task, in hours


LeftWork

Remaining effort for the Task, in hours


Fact

Time actually spent on the Task, in hours


Comments

Comment on the Task


RecordCreated

Date and time the Task was created


RecordModified

Date and time the Task was last modified


Result

Text value of the Task completion result

priority

Id

Object identifier


Caption

Display name of the priority

tasktype

Id

Object identifier


Caption

Display name of the Task type


ReferenceName

Code name of the Task type, for example testdesign

iteration

Id

Object identifier


ReleaseNumber

Display name of the iteration


StartDate

Iteration start date


StartDate

Iteration end date


IsActual

Iteration relevance flag. "N" means the iteration is outdated


InitialVelocity

Initial team velocity for this iteration


RecordCreated

Date and time the iteration was created


RecordModified

Date and time the iteration was last modified

participant

Id

Object identifier


Caption

Display name of the project member


Email

Member email address (readonly)


Login

System name of the member (readonly)


SystemUser

User identifier in the system (reference to user)

request

Id

Object identifier


Caption

Display name of the Issue (or user story)

requirement

Id

Object identifier


Caption

Display name of the Requirement section


ParentPage

Reference to an object of type requirement, which is the parent page


PageType

Reference to an object of type wikipagetype, which defines the Requirement section type


Content

Content of the Requirement section

Examples (C#)

// авторизуемся в проекте
 security.SecurityService api = new security.SecurityService() { 
      Url = 'http://<host>/api/securityservice'
 };
 data.DataService _dataService = new data.DataService() { 
      Url = 'http://<host>/api/dataservice'
 };
 
 security.Token _token = api.login("guest", "guest", "development");
 
 data.participant[] participants = _dataService.participantRemoteFind(
     _token.Key, new data.participant() { Caption = "Ivan Ivanovich" } );