Authentication

DevTrack admin will generate a token for every user, we need pass this user token to the API. We support the following:

  • Use URL query string to pass the token.
    e.g. https://abc.com/api/project?projectid=181&token=2A693723-2ACC-4493-BF9C-17FDA531643A
  • Use the Authorization header to pass the token.
    e.g. Authorization: bearer 2A693723-2ACC-4493-BF9C-17FDA531643A
  • User cookie named 'UserToken' to pass the token.
    e.g. Cookie: UserToken=2A693723-2ACC-4493-BF9C-17FDA531643A;
The Rest API will take the precedence of URI, header and then cookie to check if the request is valid.

Multilingual

We need pass language id to the API, We support English(language id is 1), Chinese(language id is 2) and Japenese(language id is 3), we support following methods to pass language id:

  • Use URL query string to pass language id.
    e.g. https://abc.com/api/project?projectid=181&token=2A693723-2ACC-4493-BF9C-17FDA531643A&LanguageID=2
  • User cookie named 'LangaugeID' to pass the token.
    e.g. Cookie: UserToken=2A693723-2ACC-4493-BF9C-17FDA531643A;LanguageID=2;
The Rest API will take the precedence of URI and then cookie to check what the language id is.

Task

APIDescription
POST api/Task/Delete

Delete a task based on task id.

POST api/Task/DailyFinishedWorkSummary

Get the finished work summary of a specified day

POST api/Task/DailyFinishedWorkSummary2

Get the work summary that finished and to be finished on a specified day

POST api/Task/AssignSpec

Assign a spec issue to development

POST api/Task/QuickAssignSpec

Assign a spec to development with quick mode

POST api/Task/GroupUpdate

Batch update multiple tasks based on task ids.

POST api/Task/Copy

Copy multiple tasks to a sub project.

POST api/Task/applicableOwners

Get applicable owners of a task

GET api/Task/allLinks?projectId={projectId}&taskId={taskId}

Get linked issues of a development issue or a management issue

POST api/Task/applicableStatus

Get applicable status of a task

POST api/Task/TaskBoardsByPlanDate

Get task board data grouped by owner

POST api/Task/MonthlyTaskCount

Get monthly task count

POST api/Task/Get

Get a task info based on task id

POST api/Task/Query

Get Tasks base on query condition.

POST api/Task/GroupedTaskListByOwner

Get Tasks base on query condition, and returned tasks are grouped by owner.

POST api/Task/StoryboardTaskList

Get Task list for story board based on query condition.

POST api/Task/GroupedStoryboardTaskListByOwner

Get Task list for story board based on query condition, and returned story board is grouped by owner.

POST api/Task/GetTaskListSummary

Get Task list summary based on query condition.

POST api/Task/GetGroupedTaskListSummaryByOwner

Get Task list summary group by current owner based on query condition.

POST api/Task/Create

Create a task.

POST api/Task/Update

Edit a task based on binder.ProjectId and binder.TaskId,

TeamMember

APIDescription
GET api/AccessibleOwners?projectId={projectId}

Get accessible members for current user based on project id

GET api/ProjectMembers?projectId={projectId}

Get all project members based on project id

POST api/ProjectMembers/EditOrAdd?projectId={projectId}

Bulk Add/Edit Users to Project Base

GET api/TeamMember/GetApplicableWorkingModules?projectId={projectId}&memberId={memberId}

No documentation available.

POST api/TeamMember/SaveApplicableWorkingModules

No documentation available.

P1UserPreference

APIDescription
POST api/P1UserPreference/preferences

Get P1 user settings

POST api/P1UserPreference/save

Save P1 User settings

PeriodScore

APIDescription
GET api/PeriodScore/list?projectId={projectId}&jobIssueId={jobIssueId}&ownerId={ownerId}

Get score list based on job performance issue id

GET api/PeriodScore/get?projectId={projectId}&scoreId={scoreId}

Get a period score based on score item id

POST api/PeriodScore/add

Add a score object into sprint.

POST api/PeriodScore/edit

Update a score object.

GET api/PeriodScore/delete?projectId={projectId}&jobIssueId={jobIssueId}&scoreItemId={scoreItemId}

Delete a score object.

POST api/PeriodScore/relatedSprints

Get a person's related sprints based on a range of date.

POST api/PeriodScore/relatedSprintScores

Get a person's related sprints based on a range of date.

POST api/PeriodScore/AverageScore?projectId={projectId}&jobIssueId={jobIssueId}&ownerId={ownerId}

Get average score based on job performance issue id and score owner id

Import

APIDescription
POST api/Import/AddTxtFile

Add a txt file to do import user

POST api/Import/TestAddFile

test , do not use

POST api/Import/SetImpFileFormatByFileID

SetImpFileFormatByFileID

GET api/Import/GetImportFileProcessInfoByFileID?fileID={fileID}

SetImpFileFormatByFileID

GET api/Import/StartImportFileByFileID?fileID={fileID}

SetImpFileFormatByFileID

GET api/Import/StopImportFileByFileID?fileID={fileID}

SetImpFileFormatByFileID

GET api/Import/DeleteImportFileByFileID?fileID={fileID}

SetImpFileFormatByFileID

POST api/Import/SetImpFileFieldMapByFileID?fileID={fileID}

SetImpFileFormatByFileID

POST api/Import/SetImpFileOptionFileID?fileID={fileID}&OverWriteIfSameLoginOrMail={OverWriteIfSameLoginOrMail}&LogFailOrSkip={LogFailOrSkip}

SetImpFileFormatByFileID

Employee

APIDescription
POST api/employee/UpdateCurrentStatus

Update employee's status (e.g online, offline)

POST api/employee/currentStatus

Get employee's status(e.g online, offline)

POST api/employee/timeSpent

Get employee's time spent of a specified date

POST api/employee/detailedSummary

Get employee's dading summary for a period of time

POST api/employee/dailySummary

Get employee's daily dading summary for a period of time

Report

APIDescription
POST api/report/personalDailyWork

Get personal daily work summary by person id and the date

GET api/report/sprintWorkloadSummary?projectId={projectId}&sprintId={sprintId}

Sprint workload summary

GET api/report/sprintScoreSummary?projectId={projectId}&sprintId={sprintId}

Sprint score summary report

GET api/report/P1ProjectScoreSummary?projectId={projectId}&spaceId={spaceId}

P1 Project score summary report

POST api/report/MonthlyTeamScoreSummary

Monthly P1 Project score summary report

POST api/report/EmployeeScoresByP1

Employee score report based on a P1 Project

POST api/report/EmployeeScoresByFamily

Employee score report based on a ProjectBase Family

POST api/report/DailySpecFinishedSummary

Get finished percentage of spec on a specified day

POST api/report/WeeklySpecFinishedSummary

Get finished percentage of spec on a specified week

POST api/report/WeeklySpecWorkSummary

Get work summary of spec on a specified week

POST api/report/MonthlySpecWorkSummary

Get work summary of spec on a specified month

FileAttachment

File attachment operation.

APIDescription
POST api/fileAttachment/add

Add a file attachment to a issue

POST api/fileAttachment/downloadTesting

Test devspec downloading

Clock

APIDescription
POST api/clock/clockOn?personId={personId}

Save the time when a person clocked on

POST api/clock/clockOff?personId={personId}

Save the time when a person clocked off

POST api/clock/ResetLeaveTime

Reset leave time

POST api/clock/ResetArriveTime

Reset arrive time

POST api/clock/info

return a clock info based on a person id and a date

POST api/clock/save

Save clock info of one person and one day

POST api/clock/groupedClocksByPerson

Group clocks by person

POST api/clock/currentStatusOfEmployees

Get employee's status(e.g online, offline)

SubProject

APIDescription
POST api/SubProject/GetTree

Get the SubProject and its child SubProjects based on SubProject ID

POST api/SubProject/GetMultilevelTree

According to an user setting, Get the SubProject tree.

POST api/SubProject/GetTaskBoardFolderTree

Get project task board folder tree in a management space

POST api/SubProject/LinkedSpaces

Get the linked ALM Spaces based on a Space ID

POST api/SubProject

Get a SubProject info based on SubProject ID

POST api/SubProject/Path

Get a SubProject's full path based on SubProject ID

POST api/SubProject/Create

Create a SubProject

POST api/SubProject/Update

Update a SubProject

POST api/SubProject/Delete

Delete a subproject and its child subprojects

POST api/SubProject/SprintDate

Get sprint subproject's plan start date and plan finish date based on subproject id

POST api/SubProject/Sprints

Get sprints of a space.

POST api/SubProject/TitleExists

Indicate if there is a child subproject with the specified name.

POST api/SubProject/Move

Move a subproject to a special position

POST api/SubProject/applicableSubProjectTypes

Get all applicable subproject types of a specified subproject.

POST api/SubProject/applicableSubProjectStatuses

Get all applicable subproject statuses of a specified subproject.

GET api/SubProject/SprintsInProcess?projectId={projectId}&spaceId={spaceId}

Get all the sprint folders which are in process today based on a specified space

POST api/SubProject/initialization

Get the initialization of new subproject

POST api/SubProject/saveMembers

Save subproject members

APIDescription
POST api/taskLink/Add

Add links

POST api/taskLink/Delete

Delete links

POST api/taskLink/DeleteDTK2DTTLinksByTestIssue

Delete DTK2DTT Links by Test Issue Ids

WorkObjective

Everything about Work Objective

APIDescription
GET api/WorkObjective/Get?projectId={projectId}&workObjectiveId={workObjectiveId}

Get work objective by workObjective id

POST api/WorkObjective/Create

Create a work objective

POST api/WorkObjective/CreateFromTemplates

Create work objective from work template

POST api/WorkObjective/Update

Update an existed work objective based on workObjective id

POST api/WorkObjective/Delete?projectId={projectId}&workObjectiveId={workObjectiveId}

Delete a work objective based on work objective ID

POST api/WorkObjective/Query

Query work objective

POST api/WorkObjective/GroupedWorkObjectivesByOwner

Get grouped work objective list by owner

GET api/workObjective/CloneAll?projectId={projectId}&fromSprintId={fromSprintId}&toSprintId={toSprintId}

Clone all work objectives from a sprint to the other sprint

POST api/workObjective/CloneAll?projectId={projectId}&fromSprintId={fromSprintId}&toSprintId={toSprintId}

Clone all work objectives from a sprint to the other sprint

GET api/workObjective/WorkObjectiveExists?projectId={projectId}&sprintId={sprintId}&ownerId={ownerId}&systemType={systemType}&workType={workType}

Get whether the work objective exists or not

GET api/workObjective/WorkObjectiveTypes?projectId={projectId}

Get work objective types based on project id

GET api/WorkObjective/LinkedTasksSummary?projectId={projectId}&workObjectiveId={workObjectiveId}

Get linked tasks summary of a work objective

Story

APIDescription
GET api/Story/Get?projectId={projectId}&storyId={storyId}

Get story info based on story item id

POST api/Story/BatchGet

Batch get story info based on story item id

POST api/Story/List

List stories based on a subproject id

POST api/Story/ListBySpec

List stories based on a spec item

POST api/Story/StoryCountBySpec

Get story counts based on spec item

POST api/Story/Update

Update a story based on story item id.

GET api/Story/Delete?projectId={projectId}&storyId={storyId}

Delete a story based on story item id

POST api/Story/CreateStandaloneStory

Create a standalone story

POST api/Story/ChangeLinkedRequirement

Make a standalone story(does not link a requirement issue) to be linked with a requirement issue, and move the story's attachment to the requirement issue.

GET api/Story/applicableStoryStatuses?projectId={projectId}

Get all applicable story statuses .

ProjectRequest

APIDescription
GET api/ProjectRequest/IfSupportForCreatingProject?projectId={projectId}&issueId={issueId}

Indicate whether the issue supports for creating project or not.

PersonalWorkTemplate

Everything about Personal Work Template

APIDescription
GET api/PersonalWorkTemplate/Get?projectId={projectId}&templateId={templateId}

Get a personal work template info.

POST api/PersonalWorkTemplate/Create

Create personal work templates by copying standard work templates

POST api/PersonalWorkTemplate/Update

Update a personal work template by work template id

POST api/PersonalWorkTemplate/Delete?projectId={projectId}&templateId={templateId}

Delete a Personal work template by work template id

POST api/PersonalWorkTemplate/Query

Query personal work template list

P1HomeReports

APIDescription
GET api/P1HomeReports/MonthlyTeamScoreReport?projectId={projectId}&spaceId={spaceId}

No documentation available.

GET api/P1HomeReports/TeamScoreReport?projectBaseFamilyId={projectBaseFamilyId}

No documentation available.

SprintScore

A sprint score describes a member's score in a sprint.

APIDescription
GET api/SprintScore/list?projectId={projectId}&sprintId={sprintId}

Get score list based on sprint id

GET api/SprintScore/get?projectId={projectId}&scoreId={scoreId}

Get a sprint score based on score item id

POST api/SprintScore/add

Add a score object into sprint.

POST api/SprintScore/edit

Update a score object.

GET api/SprintScore/delete?projectId={projectId}&scoreItemId={scoreItemId}

Delete a score object.

Admin

APIDescription
POST api/Admin/SetFieldsOnPage?projectId={projectId}&pageId={pageId}

SetFieldsOnPage

GET api/Admin/GetFields4AddOnPage?projectId={projectId}&pageId={pageId}

GetFields4AddOnPage

GET api/Admin/GetSpecIssueTypes?projectId={projectId}

GetSpecIssueTypes

GET api/Admin/GetSpecIssueTypeSysTypes

GetSpecIssueTypeSysTypes

GET api/Admin/GetSpecIssueTypeDefaultActions?projectId={projectId}

GetSpecIssueTypeDefaultActions

GET api/Admin/DeleteSpecIssueType?projectId={projectId}&specIssueTypeID={specIssueTypeID}&mergeToSpecIssueTypeID={mergeToSpecIssueTypeID}

Delete a specIssueTypeID from a project based on project ID and specIssueTypeID

POST api/Admin/EditSpecIssueType?projectID={projectID}

EditSpecIssueType

POST api/Admin/CreateSpecIssueType?projectID={projectID}

Create a Spec issueType

POST api/Admin/GetPPMSummaryReport?projectId={projectId}&fresh={fresh}

Get PPM project Summary info based on project id

POST api/Admin/GetSubProjectStatusByIDs?projectId={projectId}&fresh={fresh}

Get SubProject Status Counts info based on project id

GET api/Admin/GetSubProjectProcessByIDs?projectId={projectId}&fresh={fresh}

Get SubProject Process Counts info based on project id

GET api/Admin/GetPPMSubProjectHierachyReportByIDs?projectId={projectId}&fresh={fresh}

Get SubProject Process Counts info based on project id

POST api/Admin/GetSubProjectLinkedDelaySpecCounts?projectId={projectId}&fresh={fresh}

GetSubProjectLinkedDelaySpecCounts info based on project id

POST api/Admin/GetSubProjectLinkedDelaySpecCountsByIDs?projectId={projectId}&fresh={fresh}

GetSubProjectLinkedDelaySpecCountsByIDs info based on project id

GET api/Admin/GetSubProjectLinkedDelaySpecByIDs?projectId={projectId}&SubProjectID={SubProjectID}&fresh={fresh}

GetSubProjectLinkedDelaySpecInfoByIDs info based on project id

POST api/Admin/GetSubProjectLinkedAlarmDefectCountsByIDs?projectId={projectId}&fresh={fresh}

GetSubProjectLinkedAlarmDefectCountsByIDs info based on project id

GET api/Admin/GetSubProjectLinkedAlarmDefectInfoByIDs?projectId={projectId}&SubProjectID={SubProjectID}&fresh={fresh}

GetSubProjectLinkedAlarmDefectInfoByIDs info based on project id

GET api/Admin/GetSubProjectLinkedDelayedTaskInfoByIDs?projectId={projectId}&SubProjectID={SubProjectID}&fresh={fresh}

GetSubProjectLinkedAlarmDefectInfoByIDs info based on project id

POST api/Admin/GetProjectHierachySummaryInfoByIDs?projectId={projectId}&fresh={fresh}

GetProjectHierachySummaryInfoByIDs info based on project id

POST api/Admin/GetProjectHierachyTreeInfo?projectId={projectId}&fresh={fresh}

GetProjectHierachyTreeInfo info based on project id

POST api/Admin/GetSubProjectAndFilterInfo?projectId={projectId}&fresh={fresh}

GetSubProjectAndFilterInfo info based on project id

POST api/Admin/SetProjectHierachyFilter?projectId={projectId}

SetProjectHierachyFilter info based on project id

POST api/Admin/GetProjectHierachyFilter?projectId={projectId}

GetProjectHierachyFilter info based on project id

POST api/Admin/GetCustomDefectReportSetting?projectId={projectId}

GetCustomDefectReportSetting info based on project id

POST api/Admin/GetCustomDefectReportSettingList?projectId={projectId}

GetCustomDefectReportSetting info based on project id

POST api/Admin/SetCustomDefectReportSettingList?projectId={projectId}

SetCustomDefectReportSettingList info based on project id

POST api/Admin/DelCustomDefectReportSetting

GetCustomDefectReportSetting info based on project id

POST api/Admin/AddOrEditCustomDefectReportSetting

GetCustomDefectReportSetting info based on project id

POST api/Admin/GetUserLinkedOwnerSpace?projectId={projectId}&userID={userID}

No documentation available.

POST api/Admin/GetProjectEmailIntegration?projectId={projectId}

No documentation available.

POST api/Admin/SetProjectEmailIntegration?projectId={projectId}

SetCustomDefectReportSettingList info based on project id

GET api/Admin/Test1

No documentation available.

GET api/Admin/GetIssueTypes?projectId={projectId}

Get DTK IssueTypes info based on project id

GET api/Admin/DeleteIssueType?projectId={projectId}&issueTypeID={issueTypeID}

Delete a DTK IssueType from a project based on project ID and issueTypeID

POST api/Admin/EditIssueType?projectID={projectID}

Edit a DTK IssueType

POST api/Admin/CreateIssueType?projectID={projectID}

Create a DTK issueType

POST api/Admin/AddTimeOff4User?userID={userID}&FromDate={FromDate}&ToDate={ToDate}

AddTimeOff4User

POST api/Admin/SetP1ProjectSettingValue?projectId={projectId}&projectSpaceId={projectSpaceId}&settingId={settingId}&settingValue={settingValue}

SetP1ProjectSettingValue

POST api/Admin/SetP1ProjectSettingListValue?projectId={projectId}&projectSpaceId={projectSpaceId}

SetP1ProjectSettingListValue

POST api/Admin/GetP1ProjectSettingValue?projectId={projectId}&projectSpaceId={projectSpaceId}&settingId={settingId}

GetP1ProjectSettingValue

POST api/Admin/GetP1ProjectSettingListValue?projectId={projectId}&projectSpaceId={projectSpaceId}

GetP1ProjectSettingListValue

POST api/Admin/GetProjectSettingIntValue?projectId={projectId}&settingId={settingId}

GetP1ProjectSettingValue

GET api/Admin/GetIssueSystemTypeDef

Get Issue SystemType Define

GET api/Admin/GetPPMSummary?projectId={projectId}&fresh={fresh}

Get PPM project Summary info based on project id

GET api/Admin/GetTasksByOwnerId?personID={personID}

Get Tasks By Owner personID

GET api/Admin/GetDTKTasksByOwnerId?personID={personID}

Get DTK Tasks By Owner personID

GET api/Admin/GetDTKDefectTasksByOwnerId?personID={personID}

Get DTK Defect Tasks By Owner personID

GET api/Admin/GetPPMTasksByOwnerId?personID={personID}

Get PPM Tasks By Owner personID

GET api/Admin/GetKWTasksByOwnerId?personID={personID}

Get KW Tasks By Owner personID

GET api/Admin/GetSpecTasksByOwnerId?personID={personID}

Get Spec Tasks By Owner personID

GET api/Admin/GetTestTempTasksByOwnerId?personID={personID}

Get TestTemp Tasks By Owner personID

GET api/Admin/GetTestTaskTasksByOwnerId?personID={personID}

Get TestTask Tasks By Owner personID

POST api/Admin/GetTasksByLogin?loginName={loginName}

Get Tasks By loginName

GET api/Admin/GetTaskCountsByOwnerId?personID={personID}

Get Task Counts By Owner personID

POST api/Admin/GetTaskCountsByLogin?loginName={loginName}

Get Tasks Counts By loginName

GET api/Admin/GetPPMTimeCount?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

Get PPM project Summary info based on project id and subProjectID

GET api/Admin/GetPPMLinkedTimeCount?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

Get PPM project Linked Summary info based on project id and subProjectID

GET api/Admin/GetPPMDelayedAndExpectedTaskCounts?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

Get PPM project DelayedAndExpected Summary info based on project id and subProjectID

GET api/Admin/GetPPMSubProjectTeamScore?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

Get PPM SubProjectTeamScore Summary info based on project id and subProjectID

GET api/Admin/GetSpecProjectMonthlyPointsNew_Finished?projectId={projectId}&fresh={fresh}

Get SpecProjectMonthlyPointsNew_Finished Summary info based on project id

GET api/Admin/GetSpecProjectMonthlyPointsNew_FinishedByPPMSubProjectID?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

Get SpecProjectMonthlyPointsNew_Finished Summary info based on project id

GET api/Admin/GetPPMProjectMonthlyModuleFinishedPointsBySubprojectIDs?projectId={projectId}&subProjectID={subProjectID}&month={month}&fresh={fresh}

GetPPMProjectMonthlyModuleFinishedPointsBySubprojectIDs info based on projectId subProjectID and month

GET api/Admin/GetSubProjectLinkedTaskMonthlyTimeSpent_Remain?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetSubProjectLinkedTaskMonthlyTimeSpent_Remain Summary info based on project id and subProjectID

GET api/Admin/GetMonthlyEpic_SpecPoints?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetMonthlyEpic_SpecPoints Summary info based on project id and subProjectID

GET api/Admin/GetEpic_SpecTaskCounts?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetEpic_SpecTaskCounts Summary info based on project id and subProjectID

GET api/Admin/GetMonthlyTaskPoints?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetMonthlyTaskPoints Summary info based on project id and subProjectID

GET api/Admin/GetSprintTaskDaylyTimeSpent_Remain?dtkProjectId={dtkProjectId}&sprintID={sprintID}&fresh={fresh}

GetSprintTaskDaylyTimeSpent_Remain Summary info based on project id and sprintID

GET api/Admin/GetSubProjectStatus?projectId={projectId}&fresh={fresh}

Get SubProject Status Counts info based on project id

GET api/Admin/GetTestTaskWeeklyCountsGroupByStatus?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetTestTaskWeeklyCountsGroupByStatus Counts info group by Status, based on project id and subProjectID

GET api/Admin/GetTestTempWeeklyCountsGroupByStatus?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetTestTempWeeklyCountsGroupByStatus Counts info group by Status, based on project id and subProjectID

GET api/Admin/GetTestTaskCountsGroupByStatus?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetTestTaskCountsGroupByStatus Counts info group by Status, based on project id and subProjectID

GET api/Admin/GetTestTempCountsGroupByStatus?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetTestTempCountsGroupByStatus Counts info group by Status, based on project id and subProjectID

GET api/Admin/GetSubProjectProcess?projectId={projectId}&fresh={fresh}

Get SubProject Process Counts info based on project id

GET api/Admin/GetLinkedDTKSprints?projectId={projectId}&subProjectID={subProjectID}

GetLinkedDTKSprints based on project id and subProjectID

GET api/Admin/GetChildSubProjects?projectId={projectId}&subProjectID={subProjectID}

Get ChildSubProjects info based on project id and subProjectID

GET api/Admin/GetSubProjectLinkedDelayTask?projectId={projectId}&fresh={fresh}

GetSubProjectLinkedDelayTask info based on project id

GET api/Admin/GetMonthlySubProjectLinkedDelayTask?projectId={projectId}&subProjectID={subProjectID}&fresh={fresh}

GetMonthlySubProjectLinkedDelayTask info based on project id and subProjectID

POST api/Admin/SetSystemSettingValue?settingId={settingId}&settingValue={settingValue}

SetSystemSettingValue settingId, int settingValue

POST api/Admin/SetSystemSettingValue

SetSystemSettingValue settingId, int settingValue

POST api/Admin/SetSystemSettingListValue

SetSystemSettingListValue settingValues

POST api/Admin/GetSystemSettingValue?settingId={settingId}

GetSystemSettingValue settingId, int settingValue

POST api/Admin/SetSystemSettingListValues

SetSystemSettingListValues settingValues

POST api/Admin/GetSystemSettingListValues

No documentation available.

GET api/Admin/GetDTKPagesOrder?projectID={projectID}

GetDTKPagesOrder

GET api/Admin/SetDTKPagesOrder?projectID={projectID}

SetDTKPagesOrder

GET api/Admin/GetDTKUIPageOption?projectID={projectID}

GetDTKUIPageOption

GET api/Admin/SetDTKDisableStatusPage?projectID={projectID}&DisableStatusPage={DisableStatusPage}

SetDTKDisableStatusPage

GET api/Admin/SetDTKEnableSmartScreenBasedOnTaskType?projectID={projectID}&EnableSmartScreenBasedOnTaskType={EnableSmartScreenBasedOnTaskType}

SetDTKEnableSmartScreenBasedOnTaskType

GET api/Admin/GetSpecEnableSmartScreenBasedOnTaskType?projectID={projectID}

GetSpecEnableSmartScreenBasedOnTaskType

GET api/Admin/SetSpecEnableSmartScreenBasedOnTaskType?projectID={projectID}&EnableSmartScreenBasedOnTaskType={EnableSmartScreenBasedOnTaskType}

SetSpecEnableSmartScreenBasedOnTaskType

GET api/Admin/GetDTKMainPages?projectID={projectID}

GetDTKMainPages

GET api/Admin/GetDTKSmartPages?projectID={projectID}

GetDTKSmartPages

POST api/Admin/NewDTKSmartPage?projectID={projectID}

NewDTKSmartPage

POST api/Admin/NewDTKCustomPage

NewDTKCustomPage

GET api/Admin/DeleteDTKCustomPage?projectID={projectID}&pageID={pageID}

DeleteDTKCustomPage

GET api/Admin/GetDTKPageMultilingual?ProjectId={ProjectId}&PageId={PageId}

Get Page Multilingual name

POST api/Admin/EditDTKPageName

EditDTKPageName

GET api/Admin/GetDTKPageFieldsOrder?projectID={projectID}&pageID={pageID}

GetDTKPageFieldsOrder

GET api/Admin/SetDTKPageFieldsOrder?projectID={projectID}&pageID={pageID}

SetDTKPageFieldsOrder

GET api/Admin/GetBugGUIDisplayPage?projectId={projectId}&issueTypeId={issueTypeId}

GetBugGUIDisplayPage for a project and issuetype

POST api/Admin/SetBugGUIDisplayPage?projectId={projectId}&issueTypeId={issueTypeId}

SetBugGUIDisplayPage for a project and issuetype

GET api/Admin/GetDSPages?projectID={projectID}

GetDSPages

POST api/Admin/NewDSCustomPage

NewDSCustomPage

POST api/Admin/NewDSSmartPage?projectID={projectID}

NewDSSmartPage

GET api/Admin/DeleteDSCustomPage?projectID={projectID}&pageID={pageID}

DeleteDSCustomPage

GET api/Admin/GetDSPageMultilingual?ProjectId={ProjectId}&PageId={PageId}

Get DS Page Multilingual name

POST api/Admin/EditDSPageName

EditDSPageName

GET api/Admin/GetKWGUIPageSpec?projectId={projectId}&specTypeId={specTypeId}

GetKWGUIPageSpec for a project and spectype

POST api/Admin/SetKWGUIPageSpec?projectId={projectId}&specTypeId={specTypeId}

SetKWGUIPageSpec for a project and spectype

GET api/Admin/GetDTTCustomPages?projectID={projectID}

GetDTTCustomPages

POST api/Admin/NewDTTCustomPage

NewDTTCustomPage

GET api/Admin/DeleteDTTCustomPage?projectID={projectID}&pageID={pageID}

DeleteDTTCustomPage

GET api/Admin/GetDTTPageMultilingual?ProjectId={ProjectId}&PageId={PageId}

Get DTT Page Multilingual name

POST api/Admin/EditDTTPageName

EditDTTPageName

GET api/Admin/GetFieldsOnPage?projectId={projectId}&pageId={pageId}

GetFieldsOnPage

POST api/Admin/GetFieldsOnPages?projectId={projectId}

GetFieldsOnPages

UserPreference

Everything about user preference

APIDescription
POST api/UserPreference/Preferences

Get a specified user's preference values base on preference ids

POST api/UserPreference/Save

Save a specified user's reference value based on reference id.

POST api/UserPreference/BatchSave

Batch Save multiple user reference values.

POST api/UserPreference/ApplyToOthers

Apply a user preference setting to others

GET api/UserPreference/ListviewSetting?projectId={projectId}&option={option}

Get columns of listview based on projectid

POST api/UserPreference/SaveListviewSetting

Save columns of listview

GET api/UserPreference/Get?projectId={projectId}&prefId={prefId}

Get current user's preference value base on reference id

Budget

APIDescription
GET api/Budget/GetCostGroup

Get member group for budget

GET api/Budget/GetCategoryTree?projectId={projectId}

Get Budget Category tree

POST api/Budget/CreateCategory

Create new category under cost group

GET api/Budget/GetBudgeProject?ppmProjectID={ppmProjectID}

Get Budget ProjectID

POST api/Budget/SaveCostSheet

Save a direct cost

P1QueryDefinition

Query definition

APIDescription
GET api/P1QueryDefinition/ApplicableColumns?projectId={projectId}

all searchable columns

GET api/P1QueryDefinition/Get?projectId={projectId}&queryId={queryId}

Get a query definition info based on query id

GET api/P1QueryDefinition/List?projectId={projectId}

Get saved query list

POST api/P1QueryDefinition/Save

Save query definition

POST api/P1QueryDefinition/GetQueriesByName

Get saved query list based on name

POST api/P1QueryDefinition/Rename

Rename a specified query

POST api/P1QueryDefinition/Delete?projectId={projectId}&queryId={queryId}

Delete a specified query

TeamHierarchy

Everything about Team Hierarchy

APIDescription
GET api/TeamHierarchy/Get?FID={FID}

Get a Team Hierarchy based on name.

POST api/TeamHierarchy/Add

Add a Team Hierarchy.

POST api/TeamHierarchy/Edit

Edit a Team Hierarchy based on Team Hierarchy FID.

POST api/TeamHierarchy/EditOrAdd

if Team Hierarchy FID exists then edit the Team Hierarchy info, or create a new Team Hierarchy.

POST api/TeamHierarchy/Delete?FID={FID}

Delete a Team Hierarchy based on Team Hierarchy FID.

GET api/TeamHierarchy/GetUsers?FID={FID}

Get users belong to a Team Hierarchy.

POST api/TeamHierarchy/AddUsers?FID={FID}

Add users to a Team Hierarchy.

POST api/TeamHierarchy/RemoveUsers?FID={FID}

Remove users from a Team Hierarchy.

Planning

APIDescription
GET api/Planning/Options?projectId={projectId}&spaceId={spaceId}

No documentation available.

GET api/Planning/Data?projectId={projectId}&spaceId={spaceId}&roadmapMode={roadmapMode}

No documentation available.

POST api/Planning/WorkData

No documentation available.

POST api/Planning/Item

No documentation available.

POST api/Planning/Item/ChangeTime

No documentation available.

POST api/Planning/Item/Move

No documentation available.

POST api/Planning/Item/GetDependencies

No documentation available.

POST api/Planning/Item/DeleteDependencies

No documentation available.

POST api/Planning/Dependency/Check

No documentation available.

POST api/Planning/Dependency/Create

No documentation available.

POST api/Planning/Dependency/Update

No documentation available.

POST api/Planning/Dependency/Delete

No documentation available.

POST api/Planning/Preference/ExpandFolder

No documentation available.

Project

APIDescription
GET api/Project?projectId={projectId}

Get project info based on project id

GET api/DevTrackProjects

Get all accessible DevTrack projects for current user

GET api/Projects

Get all accessible projects for current user

GET api/Project/GetAllProjects

GetAllProjects

GET api/Project/GetAllDTTProjects

Get GetAllDTTProjects

GET api/Spaces?pageSize={pageSize}&pageIndex={pageIndex}

Get project administrators (excluding system admins) based on project id

GET api/Project/Admins?projectId={projectId}

Get project administrators (excluding system admins) based on project id

GET api/Project/GetPPMProjects

List PPM Projects

GET api/Project/GetFamilyProjects?projectID={projectID}

List Project Base Family by PPMProjectID

GET api/Project/GetAllProjectTypes

List AllProjectTypes

GET api/Project/GetSpaceLinks?projectID={projectID}&spaceID={spaceID}

List Project Base Family by PPMProjectID

GET api/Project/GetFamilyMembers?projectID={projectID}

List all members belongs to Project Base Family based on PPM Project ID

GET api/Project/GetProjectMembers?projectID={projectID}&projectType={projectType}

No documentation available.

GET api/Project/GetFamilyAccountTypes?projectID={projectID}

No documentation available.

GET api/Project/GetProjectAccountTypes?projectID={projectID}&projectType={projectType}

No documentation available.

GET api/Project/AddOrEditProjectMember?projectID={projectID}&projectType={projectType}&PersonID={PersonID}&AccountTypeID={AccountTypeID}

No documentation available.

POST api/Project/DeleteProjectMember?projectId={projectId}&memberId={memberId}

Delete a member from a project based on project ID

GET api/Project/GetOverview?projectId={projectId}

Get project overview based on project ID

POST api/Project/UpdateOverview

Update the overview for a given project based on project ID

GET api/Project/BugTypes?projectId={projectId}

Get bug/task types for a project

GET api/Project/Pages?projectId={projectId}

Get pages for a project

GET api/Project/PageFields?projectId={projectId}&pageId={pageId}

Get fields for a page/project

GET api/Project/GetDTKProjectOptions?projectId={projectId}

Get Options of DTK project

POST api/Project/UpdateDTKProjectOptions

Update the DTKProject Options based on project ID

GET api/Project/GetSpecProjectOptions?projectId={projectId}

Get Options of Spec project

POST api/Project/UpdateSpecProjectOptions

Update the SpecProject Options based on project ID

GET api/Project/GetDTTProjectOptions?projectId={projectId}

Get Options of DTT project

POST api/Project/UpdateDTTProjectOptions

Update the DTTProject Options based on project ID

GET api/Project/IsAdministrator?projectId={projectId}

Indicate if current user is a project administrator.

POST api/Project/BatchGetProjectData

Get project's data.

GET api/Project/linkedTimesheetProject?projectId={projectId}

Get the timesheet mangagement project base based on a Devtrack project base.

GET api/Project/projectBaseFamilyTree?projectId={projectId}

Get projectBase family by tree

GET api/Project/GetProjectFilterQuerys?projectId={projectId}

GetProjectFilterQuerys

GET api/Project/DeleteProjectFilterQuery?projectId={projectId}&ProjectFilterQueryID={ProjectFilterQueryID}

Delete a ProjectFilterQueryID from a project based on project ID and ProjectFilterQueryID

POST api/Project/EditProjectFilterQuery?projectID={projectID}

No documentation available.

POST api/Project/CreateProjectFilterQuery?projectID={projectID}

Create a issueType

System

APIDescription
GET api/System/authenticationSetting

Get authenticatin setting.

POST api/System/ImportUserFromLDAP

Import user from LDAP Server based on user name

GET api/System/ResetProject?projectId={projectId}

Reset DevTrack Project based on project id.

GET api/System/warmUp?ids={ids}

Warm up projects.

POST api/System/BatchCall

No documentation available.

User

Everything about User info

APIDescription
POST token

Get a user token.

POST api/user/EditUserPassword

EditUserPassword

POST api/user/ChangeUserOldPassword

EditUserPassword

POST api/user/ValidateToken4PeerTime

Validate a user token. it was provided for PeerTime

GET token4Peertime?peertimeUserToken={peertimeUserToken}

Get a P1 token by a Peertime token

POST api/User/Register

Register a user.

GET api/User/Info

Get current user info

POST api/User/Add

Add a user.

POST api/User/Edit

Edit user info based on userInfo.FID.

POST api/User/EditOrAdd

Edit or Add user info based on userInfo.FID.

POST api/User/Delete

Delete user based on user name.

POST api/User/Inactivate?userName={userName}

Inactivate the user based on user name.

POST api/User/Activate?userName={userName}

Activate the user based on user name.

POST api/User/Find

Find user

GET api/User/GetAll

Get All users

POST api/User/Get1ByQuery

Find one user by search condition

POST api/User/AddUsersToProject

Add users to project

POST api/User/AddUserToProject?projectOption={projectOption}&projectValue={projectValue}&userOption={userOption}&userValue={userValue}&accountOption={accountOption}&accountValue={accountValue}

Add user to project

POST api/User/Get1ByEmail?eMail={eMail}

Find one user by email

POST api/User/Get1ByLogin?login={login}

Find one user by login

POST api/User/GenerateCodeByMail?eMail={eMail}

GenerateCodeByMail by eMail

POST api/User/VerifyCode?eMail={eMail}&code={code}

VerifyCode by eMail

POST api/User/EditPassword?eMail={eMail}&code={code}&pwd={pwd}

VerifyCode by eMail

POST api/User/RegisterByInvitation

Register a user.

GET api/User/Get?userName={userName}

Get a user info based on user name.

Mail

APIDescription
GET api/Mail/Test1

No documentation available.

GET api/Mail/ReloadEmailSettings?projectID={projectID}

ReloadEmailSettings

GET api/Mail/GetMailSettingBaseData?projectID={projectID}&mailType={mailType}

GetMailSetting

GET api/Mail/GetMailNotifySetting?projectID={projectID}&mailType={mailType}

GetMailSetting

POST api/Mail/SetMailNotifySetting

SetMailNotifySetting

GET api/Mail/SetMailRuleOrder?projectID={projectID}&ruleID={ruleID}&orderNo={orderNo}

SetMailRuleOrder

GET api/Mail/GetMailRuleList?projectID={projectID}&mailType={mailType}

GetMailRuleList

POST api/Mail/AddOrEditMailRule

AddOrEditMailRule

GET api/Mail/DeleteMailRule?projectID={projectID}&ruleID={ruleID}

DeleteMailRule

GET api/Mail/GetMailRuleAction?projectID={projectID}&ruleID={ruleID}

GetMailSetting

POST api/Mail/SetMailRuleAction

SetMailNotifySetting

GET api/Mail/GetEmailNotificationRecipientList?projectID={projectID}&mailType={mailType}&ruleID={ruleID}

GetMailRuleList

GET api/Mail/DeleteNotificationRecipient?projectID={projectID}&ruleID={ruleID}&recipientTypeID={recipientTypeID}&recipientID={recipientID}

DeleteNotificationRecipient

POST api/Mail/AddOrEditNotificationRecipient

AddOrEditNotificationRecipient

GET api/Mail/GetEmailNotificationSubscriberList?projectID={projectID}&ruleID={ruleID}

GetMailRuleList

POST api/Mail/SetNotificationSubscriber

SetMailNotifySetting

GET api/Mail/GetUserSubscriptionList?projectID={projectID}&ruleID={ruleID}

GetMailRuleList

POST api/Mail/SetUserSubscription

SetMailNotifySetting

GET api/Mail/GetMailFormatFieldMap?projectID={projectID}&mailType={mailType}

GetMailSetting

GET api/Mail/GetEmailFormatsList?projectID={projectID}&mailType={mailType}&destinationID={destinationID}

GetMailRuleList

GET api/Mail/GetMailFormat?projectID={projectID}&formatID={formatID}

GetMailFormat

POST api/Mail/AddOrEditMailFormat

SetMailNotifySetting

GET api/Mail/DeleteMailFormat?projectID={projectID}&formatID={formatID}

DeleteMailRule

GET api/Mail/GetMailTriggerFieldMap?projectID={projectID}&mailType={mailType}

GetMailSetting

GET api/Mail/GetNotificationRuleTriggerList?projectID={projectID}

GetNotificationRuleTriggerList

GET api/Mail/GetEmailNotificationTrigger?projectID={projectID}&ID={ID}

GetMailFormat

POST api/Mail/AddOrEditEmailNotificationTrigger

SetMailNotifySetting

GET api/Mail/DeleteEmailNotificationTrigger?projectID={projectID}&triggerID={triggerID}

DeleteMailRule

GET api/Mail/GetFindQueryConditionsList?projectID={projectID}&mailType={mailType}

GetNotificationRuleTriggerList

GET api/Mail/GetFindQueryCondition?projectID={projectID}&ID={ID}

GetMailFormat

POST api/Mail/AddOrEditFindQueryConditionBinder

SetMailNotifySetting

GET api/Mail/DeleteFindQueryCondition?projectID={projectID}&ID={ID}

DeleteMailRule

WorkQualityTracking

APIDescription
GET api/workQualityTracking/workQualityTrackings?projectBaseId={projectBaseId}&taskId={taskId}

get work quality tracking based on a task

POST api/workQualityTracking/saveWorkQualityTracking

save work quality tracking based on a task

P1SpecPoints

APIDescription
GET api/specPoints/estimatedPoints?projectId={projectId}&specId={specId}

get estimated points based on a spec item

POST api/specPoints/saveEstPoints

save estimated points based on a spec item

POST api/specPoints/removeEstPoints

delete estimated points based on a spec item

GET api/specPoints/actualPoints?projectId={projectId}&specId={specId}

get estimated points based on a spec item

ProjectOne

Something about new concept named "Project one".

APIDescription
GET api/projectone/GroupedApplicableProjectBaseByModule?projectId={projectId}

This api is not recommended, it will be removed soon, please use api/projectone/ApplicableProjectBases. Get all applicable project base grouped by module (e.g Knowledge, Requirement, Development , Management, TestRun, TestLiberary module) based on a development project base id or a management project base id

GET api/projectone/ApplicableProjectBases?projectId={projectId}

Get all applicable project bases (e.g Knowledge, Requirement, Development , Management, TestRun, TestLiberary module) based on a management project base id

POST api/projectone/projectMembers

Get all members based on every project base id listed in binder

POST api/projectone/applicableSpaces

Get management or development spaces based on a projectBase Id

POST api/projectone/createP1Project

Create project with various modules (e.g Management, Development, Requirement, Knowledge, Test Run, Test Liberary, Defect module)

POST api/projectone/applicableMembers

Get applicable members based on projectBase ids

POST api/projectone/applicableAccountTypes

Get all applicable account types grouped by module (e.g Knowledge, Requirement, Development , Management, TestRun, TestLiberary module)

POST api/projectone/memberAccountType

Get a person's account types in vairous modules(e.g Management, Development, Requirement, Knowledge, Test Run, Test Liberary, Defect module)

GET api/projectone/P1Members?projectId={projectId}&spaceId={spaceId}

Get project members in a P1 project (include Management, Development, Requirement, Knowledge, Test Run, Test Liberary and Defect module)

POST api/projectone/UpdateP1Member

Add a person to a P1 Project if he is not member of the P1 project, and update the person's account type in vairous modules(e.g Management, Development, Requirement, Knowledge, Test Run, Test Liberary and Defect module)

POST api/projectone/addP1Members

Batch add persons to a P1 Project

POST api/projectone/DeleteP1Member

Remove a person from a P1 Project.

GET api/projectone/P1ProjectInfo?projectId={projectId}&spaceId={spaceId}

Get P1 project overview based on a management space or a development space

GET api/projectone/P1Modules?projectId={projectId}&spaceId={spaceId}

Get P1 Project modules based on a mangagement space or a development space

POST api/projectone/UpdateP1Modules

Update a P1 Project's modules based on a management space or a development space

GET api/projectone/P1Milestones?projectId={projectId}&spaceId={spaceId}

List p1 project's milestone info.

GET api/projectone/P1ProjectBaseFamilies

Get all accessable Project base families

POST api/projectone/P1Projects

Get all p1 projects in a ProjectBase Family based on query option

POST api/projectone/GroupedP1ProjectsByHierarchy

Group p1 projects in a ProjectBase Family based on query option by Project Hierarchy

POST api/projectone/P1ProjectsEx

Get all p1 projects in a ProjectBase Family based on query option

GET api/projectone/standaloneSpaces?projectId={projectId}

Get all standalone spaces based on project base id

GET api/projectone/referencableSpaces?projectId={projectId}

Get all referencable spaces based on project id

GET api/projectone/groupedStandaloneSpaceCount

Get standalone spaces count per project base.

POST api/projectone/import

Import standalone space.

GET api/projectone/archive?projectId={projectId}&spaceId={spaceId}

Archive a p1 project based on a management space

GET api/projectone/active?projectId={projectId}&spaceId={spaceId}

Active an archived p1 project based on a management space

GET api/projectone/delete?projectId={projectId}&spaceId={spaceId}

Delete a p1 project based on a management space

DELETE api/projectone/delete?projectId={projectId}&spaceId={spaceId}

Delete a p1 project based on a management space

GET api/projectone/P1ProjectOptions?projectId={projectId}&spaceId={spaceId}

Get a p1 project's feature options.

POST api/projectone/P1ProjectOptions2?projectId={projectId}&spaceId={spaceId}

Get a p1 project's feature options.

POST api/projectone/UpdateProjectOptions

Save a p1 project's feature options.

POST api/projectone/UpdateProjectOptions2

Save a p1 project's feature options.

GET api/projectone/P1Project?projectId={projectId}&spaceId={spaceId}

Get P1 Project modules and Project Settings based on a mangagement space or a development space

POST api/projectone/P1Project2?projectId={projectId}&spaceId={spaceId}

Get P1 Project modules and Project Settings based on a mangagement space or a development space

GET api/projectone/P1FamilyProjects?projectId={projectId}

Get all ALM ProjectBases in a family

GET api/projectone/P1ProjectOverview?projectId={projectId}&spaceId={spaceId}

Get P1 project overview

POST api/projectone/UpdateP1ProjectOverview

Update a p1 project's overview

POST api/projectone/P1ProjectMultilingualLabels

Get a multilingual label of a P1 Project by label id

POST api/projectone/P1ProjectMultilingualLabels2

Batch get multilingual label of a P1 Project

POST api/projectone/SaveP1ProjectMultilingualLabels

save multilingual label

POST api/projectone/P1ProjectIdentifierExists

Indicate whether the identifier exists or not.

Language

APIDescription
GET api/Languages?projectId={projectId}

Get applicable languages

UserInvitation

APIDescription
GET api/Invitations?projectId={projectId}&spaceId={spaceId}

Get user invitations for a given subproject/project family

GET api/Invitations/Invited?invitation={invitation}

No documentation available.

POST api/Invitations

Add user invitations for a subproject/family

POST api/UpdateInvitation

Update user invitation for a subproject/family

DELETE api/Invitations?key={key}&projectId={projectId}&spaceId={spaceId}

Remove an invitation for a user to a subproject

Session

Session ID used in DevSuite web and DevTest web

APIDescription
GET api/DevSuiteSession

DevSuite web session id

GET api/DevTestSession

DevTest web session id

POST api/EndSession?sessionId={sessionId}

No documentation available.

License

APIDescription
GET api/License

No documentation available.

POST api/License

No documentation available.

Integration

APIDescription
GET api/integration/settings

Get integration settings.

GET api/enableIntegrationWithPeertime?newAppKeyRequired={newAppKeyRequired}

Enable integration with Peertime.

GET api/disableIntegrationWithPeertime

Disable integration with Peertime.

GET api/integration/auth?appKey={appKey}

Validate the integratin app key.

POST api/integration/SaveIntegrationInfoWithPeertime

Save the infomations of integration with peertime

GET api/integration/IntegrationInfoWithPeertime

Get the infomations of integration with peertime.

StandardWorkTemplate

Everythings about Standard work template .

APIDescription
GET api/StandardWorkTemplate/Get?projectId={projectId}&templateId={templateId}

Get a standard work template info.

POST api/StandardWorkTemplate/Create

Create a standard work template

POST api/StandardWorkTemplate/Update

Update a standard work template by work template id

POST api/StandardWorkTemplate/Delete?projectId={projectId}&templateId={templateId}

Delete a standard work template by work template id

POST api/StandardWorkTemplate/ListByAccountType

Get standard work template list based on an account type

POST api/StandardWorkTemplate/List

Get template list based on project base

POST api/StandardWorkTemplate/addTemplatesToAccountType

add the templates to account type

POST api/StandardWorkTemplate/removeTemplatesFromAccountType

remove the templates from account type

UserPrivilege

Every things about user privilege

APIDescription
GET api/userPrivilege/get?projectId={projectId}

Get user privilege based on privilege id

GET api/userPrivilege/TaskPermissions?projectId={projectId}&taskId={taskId}

Get current user's permissions to task

GET api/userPrivilege/SubProjectPermissions?projectId={projectId}&subProjectId={subProjectId}

Get current user's permissions to subproject

TimeTracking

APIDescription
GET api/timeTracking?projectId={projectId}&taskId={taskId}

Get detail info about a task's time tracking

POST api/timeTracking/GetTimeSpentHistoryItem

Get a time spent history entry based on history item id

POST api/timeTracking/AddTimeSpentItem

If support multiple time entries or support multiple time entries with category and cost, the method will add a time spent entry, else return an error.

POST api/timeTracking/UpdateTimeSpentHistoryItem

Update a Time spent History item based on history item id,

POST api/timeTracking/DeleteTimeSpentHistoryItem

Delete a Time Spent history item based on history item id

POST api/timeTracking/UpdateTimeSpent

If support single tiem entry per task, the method will update task's time spent property only, else return an error.

POST api/timeTracking/TimeCagetories?projectId={projectId}

Get time categories based on project id.

Storyboard

APIDescription
POST api/storyboard/listByStatus

Get story board which is listed by Progress Status based on query condition.

POST api/storyboard/listByStatus2

Get story board which is listed by Progress Status based on query condition, and returned story board is grouped by owner.

POST api/storyboard/listByPlanEndDate

Get story board list by plan end date based on query condition.

POST api/storyboard/listByPlanStartDate

Get story board list by plan start date based on query condition.

POST api/storyboard/moveTasks

Move tasks to a cell in Story board, update the moved tasks with the cell's value and reorder tasks in the cell

Methodology

Everything about Methodology Support of one Project

APIDescription
GET api/Methodology/ImplementationModuleTemplates

Get implementation module templates

POST api/Methodology/AddOrEditImplementationModuleTemplate

Save implementation module template

POST api/Methodology/deleteImplementationModuleTemplate?moduleId={moduleId}

Delete implementation module template based on module id

GET api/Methodology/ImplementationModules?projectId={projectId}

Get Implementation modules base on project id

POST api/Methodology/AddImplementationModule?projectId={projectId}&moduleId={moduleId}

Save implementation Module

POST api/Methodology/DeleteImplementationModules?projectId={projectId}&moduleId={moduleId}

Delete implementationModule

TaskList

Everything about Task list.

APIDescription
POST api/tasklist/query

Get Tasks base on query condition.

POST api/tasklist/groupByOwner

Get Tasks base on query condition, and returned tasks are grouped by owner.

POST api/tasklist/summary

Get Task list summary based on query condition.

POST api/tasklist/groupedSummaryByOwner

Get Task list summary group by current owner based on query condition.

Workflow

APIDescription
GET api/Workflow/GetOptions?projectId={projectId}&projectType={projectType}

No documentation available.

GET api/Workflow/GetList?projectId={projectId}&projectType={projectType}

No documentation available.

GET api/Workflow/GetStates?projectId={projectId}&projectType={projectType}

No documentation available.

POST api/Workflow/SetState

No documentation available.

GET api/Workflow/GetDetail?projectId={projectId}&projectType={projectType}&workflowId={workflowId}

No documentation available.

POST api/Workflow/SetDetail

No documentation available.

POST api/Workflow/Create

No documentation available.

POST api/Workflow/CopySubWorkflow

Copy a sub workflow to a project

Note

APIDescription
POST api/Note

Get a note based on task id and note id

GET api/Notes?projectId={projectId}&taskId={taskId}

Get note list of a task based on task id

POST api/Note/Delete

Delete notes based on note id or task id

POST api/Note/Add

Add a note to a existed task.

POST api/Note/Update

Update an existing note .

Everything about Links of Standalone devtrack space

APIDescription
GET api/SpaceLinks/Get?projectId={projectId}&spaceId={spaceId}

Get linked spaces of a devtrack space

Field

APIDescription
GET api/Field?projectId={projectId}&fieldId={fieldId}&fieldName={fieldName}

Get field info based by field id or field name

POST api/Field

Get field info based by field id or field name

GET api/Fields?projectId={projectId}

Get all fields based on project id

GET api/ChoiceList?projectId={projectId}&fieldId={fieldId}&fieldName={fieldName}

Get field choice list based on field id or field name

POST api/ChoiceList

Get field choice list based on field id or field name

POST api/ChildFieldChoiceList

No documentation available.

POST api/ChoiceList/BatchGet

Batch get field choice list based on multiple fields id or name

GET api/Field/GroupedStatusList?projectId={projectId}

Get status list grouped by Status group or Open,Closed

POST api/Field/IssueTypes

Get issue type list based on project id.

GET api/Field/IsIssueTypeEnabled?projectId={projectId}

Get if enabel Issue Type and return the field which issue type linked to

GET api/Field/ApplicableFields?projectId={projectId}&option={option}

Get all applicable fields based on project id

GET api/Field/GetDTKFieldChoiceList?ProjectId={ProjectId}&FieldId={FieldId}

Get field choice list based on field id

GET api/Field/GetDSFieldChoiceList?ProjectId={ProjectId}&FieldId={FieldId}

Get field choice list based on field id

GET api/Field/GetDTTTempFieldChoiceList?ProjectId={ProjectId}&FieldId={FieldId}

Get field choice list based on field id

GET api/Field/GetDTKFieldMultilingual?ProjectId={ProjectId}&FieldId={FieldId}

Get field Multilingual name

GET api/Field/GetDSFieldMultilingual?ProjectId={ProjectId}&FieldId={FieldId}

Get field Multilingual name

GET api/Field/GetDTTFieldMultilingual?ProjectId={ProjectId}&FieldId={FieldId}

Get field Multilingual name

GET api/Field/GetDTTTempFieldMultilingual?ProjectId={ProjectId}&FieldId={FieldId}

Get field Multilingual name

GET api/Field/GetDTTTaskFieldMultilingual?ProjectId={ProjectId}&FieldId={FieldId}

Get field Multilingual name

GET api/Field/GetDTKFieldChoiceMultilingual?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Get field choice list based on field id or field name

GET api/Field/GetDSFieldChoiceMultilingual?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Get field choice list based on field id or field name

GET api/Field/GetDTTFieldChoiceMultilingual?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Get field choice list based on field id or field name

POST api/Field/EditDTKSysFieldName

Get field info based by field id or field name

POST api/Field/EditDTKCusFieldName

Get field info based by field id or field name

POST api/Field/NewDTKCusField

Get field info based by field id or field name

POST api/Field/NewDSCusField

Get field info based by field id or field name

POST api/Field/NewDTTCusField

Get field info based by field id or field name

POST api/Field/EditDSSysFieldName

Edit field name

POST api/Field/EditDSCusFieldName

Get field info based by field id or field name

POST api/Field/EditDTTTempSysFieldName

Edit field name

POST api/Field/EditDTTCusFieldName

Get field info based by field id or field name

POST api/Field/EditDTTTaskSysFieldName

Edit field name

POST api/Field/AddOrEditDTKFieldChoiceName

AddOrEditDTKFieldChoiceName ChoiceId=0 for new, else for edit

POST api/Field/AddOrEditDSFieldChoiceName

AddOrEditDTKFieldChoiceName ChoiceId=0 for new, else for edit

POST api/Field/AddOrEditDTKFieldChoiceNames

AddDTKFieldChoiceNames ChoiceId=0 for new, else for edit

POST api/Field/AddOrEditDSFieldChoiceNames

AddDTKFieldChoiceNames ChoiceId=0 for new, else for edit

POST api/Field/AddOrEditDTTFieldChoiceNames

AddDTKFieldChoiceNames ChoiceId=0 for new, else for edit

POST api/Field/AddOrEditDTTFieldChoiceName

AddOrEditDTTFieldChoiceName ChoiceId=0 for new, else for edit

POST api/Field/UpdateSysFieldName

Get field info based by field id or field name

GET api/Field/GetDTKSystemFields?projectId={projectId}

Get all fields based on project id

GET api/Field/GetDTKCustomFields?projectId={projectId}

Get all fields based on project id

GET api/Field/GetPPMSystemFields?projectId={projectId}

Get all fields based on project id

GET api/Field/GetDTKSystemFieldTypeDef

Get DTK all field Types

GET api/Field/GetDSSystemFieldTypeDef

Get DevSpec all field Types

GET api/Field/GetDTTSystemFieldTypeDef

Get DevTest all field Types

GET api/Field/GetDSSystemFields?projectId={projectId}

Get all sys fields based on project id

GET api/Field/GetDSCustomFields?projectId={projectId}

Get all cus fields based on project id

GET api/Field/GetDTTCustomFields?projectId={projectId}

Get all cus fields based on project id

GET api/Field/GetDTTTempSystemFields?projectId={projectId}

Get all sys fields based on project id

GET api/Field/GetDTTTaskSystemFields?projectId={projectId}

Get all sys fields based on project id

GET api/Field/DeleteDTKFieldChoice?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Delete field choice based on choice id

GET api/Field/DeleteDSFieldChoice?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Delete field choice based on choice id

GET api/Field/DeleteDTTFieldChoice?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Delete field choice based on choice id

GET api/Field/DeleteDTKCustomField?ProjectId={ProjectId}&FieldId={FieldId}

Delete field choice based on choice id

GET api/Field/DeleteDSCustomField?ProjectId={ProjectId}&FieldId={FieldId}

Delete field choice based on choice id

GET api/Field/DeleteDTTCustomField?ProjectId={ProjectId}&FieldId={FieldId}

Delete field choice based on choice id

GET api/Field/DeleteDTTTempFieldChoice?ProjectId={ProjectId}&FieldId={FieldId}&ChoiceId={ChoiceId}

Delete field choice based on choice id

GET api/Field/canDefineChoice?projectId={projectId}&fieldId={fieldId}

To User Definable Dropdown, indicate whether current user can difine choice or not.

POST api/Field/SaveUserDefinedChoice

No documentation available.

P1ProjectSetting

APIDescription
GET api/P1ProjectSetting/Get?p1ProjectBaseId={p1ProjectBaseId}&p1SpaceId={p1SpaceId}&settingId={settingId}

Get p1 project setting by setting id

POST api/P1ProjectSetting/BatchGet

Batch get p1 project settings by setting id

POST api/P1ProjectSetting/Save

Save p1 project settings

TaskHistory

APIDescription
GET api/taskHistory/ownerAndStatusChanges?projectId={projectId}&taskId={taskId}

Get task's Owner and Status change history based on task id

GUI

Something about task detail pages gui

APIDescription
GET api/GUI/DefaultListviewSetting?projectId={projectId}&UIOption={UIOption}

Get listview setting of project base

POST api/GUI/SubmissionPages

Get all fields which should be displayed on the submission pages

POST api/GUI/EditingPages

Get all fields that should be displayed on the editing pages

POST api/GUI/GroupEditingPages

Get all pages and fields for group editing

POST api/GUI/H5AppSubmissionPage

Get all fields that should be displayed on the task info page of H5 App.

POST api/GUI/H5AppEditingPage

Get all fields which should be displayed on the task info page of H5 App.

GET api/GUI/applicableEditingPages?projectId={projectId}

Get applicable task editing pages

GET api/GUI/AppGuiSetting?projectId={projectId}&issueTypeId={issueTypeId}

Get gui setting in H5 App based on issue type

GET api/GUI/AllAppGuiSettings?projectId={projectId}

Get all gui settings in H5 App

GET api/GUI/GuiOptions?projectId={projectId}

Get GUI options

P1SSE

APIDescription
GET api/p1sse/get

No documentation available.

Event

APIDescription
POST api/Event/Delete

Delete event based on event id or task id

GET api/Events?projectId={projectId}&taskId={taskId}

Get the events of a task based on task id

GET api/Event?projectId={projectId}&taskId={taskId}&eventId={eventId}

Get a event of a task based on event id

POST api/Event/Add

Add a event to a task

POST api/Event/Update

Update an existing event

WorkObjectiveType

Everything about work objective type

APIDescription
GET api/workObjectiveType/list?projectId={projectId}

Get work objective types based on project id

POST api/workObjectiveType/create

New a work objective type

POST api/workObjectiveType/edit

Edit a work objective type

POST api/workObjectiveType/delete?projectId={projectId}&id={id}

Delete a work objective type

PPM

Something of PPM Project.

APIDescription
GET api/PPMProjectTypes?projectId={projectId}

Get ppm space types based on a PPM project id

GET api/PPM/PSTypes?projectId={projectId}

Get ppm space types based on a PPM project id

GET api/PPM/PSMilestones?projectId={projectId}&PSTypeId={PSTypeId}

Get ppm space milestones based on ppm space type id

GET api/PPM/PSStatusList?projectId={projectId}&PSTypeId={PSTypeId}

Get ppm space status list based on PPM

Dading

APIDescription
POST api/dading/personDadings

Get a person' dings

POST api/dading/activeDadings

Get multiple person's active Dadings

POST api/dading/employeeTodayDadings

Get multiple person's Dadings today

GET api/dading/todayDadings?projectBaseId={projectBaseId}&personId={personId}

Get one person's active Dadings and closed Dadings on today.

POST api/dading/dadingsOfOneDay

Get one person's dadings on the specified day

POST api/dading/createOrEdit

Create a dading or edit an existing dading.

POST api/dading/close

Close the specified Dadings

POST api/dading/delete

Close the specified Dadings

POST api/dading/detailedSummary

Get employee's dading summary for a period of time

POST api/dading/dailySummary

Get employee's daily dading summary for a period of time

ApplicableWorkingModule

APIDescription
GET api/ApplicableWorkingModule/GetModulesByMember?projectId={projectId}&personId={personId}

No documentation available.

GetFieldValueInfo

APIDescription
POST api/GetFieldValueInfo/GetPagesByProjectID

No documentation available.

POST api/GetFieldValueInfo/GetPageFieldValueInfo

No documentation available.

POST api/GetFieldValueInfo/GetOnePageFieldValueInfo

No documentation available.

CRM

Only one function for CRM

APIDescription
GET api/CRM/GetTotalAmount?contractCode={contractCode}

Get total amount based on Contract Code