API | 变更 |
|---|---|
• POST /tracker/{trackerId}/item • POST /tracker/{trackerId}/item/{parentItemId} • PUT /item/{itemId} | 接受 TrackerItem 模型而非操作特定的模型。 |
• PUT /item/{itemId}/field • PUT /item/{itemId}/field/table/{tableFieldId} | 端点与跟踪器项字段进行交互。因此,在输入模型中引入了内部变更。 |
• POST /tracker/{trackerId}/item • GET /item/{itemId} • PUT /item/{itemId} • DELETE /item/{itemId} • GET /item • POST /item • POST /items • PUT /item/{itemId}/field • PUT /item/{itemId}/field/table/{tableFieldId} | 响应模型会随着端点创建 TrackerItem 模型而发生变化。 |
• GET /tracker/{trackerId}/field • GET /tracker/{trackerId}/field/{fieldId} | 向 AbstractField 模型中添加了新的 valueModel 属性。因此,以下端点的返回值会发生变化。 |
旧的更新有效载荷 | 新的更新有效载荷 |
|---|---|
{ "rows": [ { "fieldValues": [ { "fieldId": 1000001, "uri": "/tracker/160275/field/1000001", "name": "cal", "value": "calibrate", "type": "TextFieldValue" } ] } ] } | { "rows": [ [ { "fieldId": 1000001, "name": "cal", "value": "calibrate", "type": "TextFieldValue" } ] ] } |
旧模型 | 新模型 |
|---|---|
TrackerItemReference | TrackerItemReference |
ChoiceOptionReference | ChoiceOptionReference |
CommentReference | CommentReference |
GroupReferenceField | GroupReferencel |
ParticipantReference | deleted |
ProjectReference | ProjectReference |
RepositoryReference | RepositoryReference |
RoleReferenceField | deleted |
RoleReference | RoleReference |
TrackerItemChildReference | TrackerItemChildReference |
TrackerItemChildReference | TrackerItemChildReference |
TrackerItemRelationsResult | TrackerItemRelationsResult |
TrackerReference | TrackerReference |
UserGroupReference | UserGroupReference |
UserReferenceField | deleted |
UserReference | UserReference |
旧的 FieldReferences | 新的 FieldValues |
|---|---|
BoolCustomFieldReference | BoolFieldValueModel |
ChoiceCustomFieldReference | ChoiceFieldValueModel |
ColorCustomFieldReference | ColorFieldValueModel |
CountryCustomFieldReference | CountryFieldValueModel |
DateCustomFieldReference | DateFieldValueModel |
DecimalCustomFieldReference | DecimalFieldValueModel |
DurationCustomFieldReference | DurationFieldValueModel |
IntegerCustomFieldReference | IntegerFieldValueModel |
LanguageCustomFieldReference | LanguageFieldValueModel |
MemberCustomFieldReference | ChoiceFieldValueModel |
TableCustomFieldReference | TableFieldValueModel |
TextCustomFieldReference | TextFieldValueModel |
TrackerItemCustomFieldReference | ChoiceFieldValueModel |
UrlCustomFieldReference | UrlFieldValueModel |
WikiTextCustomFieldReference | WikiTextFieldValueModel |
- | NotSupportedFieldValueModel |
旧选择 FieldReference | 新选择 FieldValueModel |
|---|---|
ChoiceFieldReference | ChoiceFieldValueModel<ChoiceOptionReference> |
ProjectFieldReference | ChoiceFieldValueModel<ProjectReference> |
ScmFieldReference | ChoiceFieldValueModel<RepositoryReference> |
TrackerFieldReference | ChoiceFieldValueModel<TrackerReference> |
TrackerItemFieldReference | ChoiceFieldValueModel<TrackerItemReference> |
UserFieldReference | ChoiceFieldValueModel<UserReference> |
v2 | v3 |
|---|---|
[ { "id": 0, "name": "ID", "type": "IntegerField", "hidden": false }, { "id": 2, "name": "Priority", "type": "OptionChoiceField", "hidden": false, "title": "P", "multipleValues": false, "options": [ { "id": 1, "uri": "/tracker/160275/field/2/option/1", "name": "Highest", "type": "ChoiceOptionReference" }, { "id": 2, "uri": "/tracker/160275/field/2/option/2", "name": "High", "type": "ChoiceOptionReference" }, { "id": 3, "uri": "/tracker/160275/field/2/option/3", "name": "Normal", "type": "ChoiceOptionReference" }, { "id": 4, "uri": "/tracker/160275/field/2/option/4", "name": "Low", "type": "ChoiceOptionReference" }, { "id": 5, "uri": "/tracker/160275/field/2/option/5", "name": "Lowest", "type": "ChoiceOptionReference" } ] }, { "id": 3, "name": "Summary", "type": "TextField", "hidden": false }, { "id": 4, "name": "Submitted at", "type": "DateField", "hidden": false }, { "id": 5, "name": "Assigned to", "type": "UserField", "hidden": false, "multipleValues": true }, { "id": 6, "name": "Submitted by", "type": "UserField", "hidden": false, "multipleValues": false }, { "id": 7, "name": "Status", "type": "OptionChoiceField", "hidden": false, "multipleValues": false, "options": [ { "id": 1, "uri": "/tracker/160275/field/7/option/1", "name": "New", "type": "ChoiceOptionReference" }, { "id": 2, "uri": "/tracker/160275/field/7/option/2", "name": "Suspended", "type": "ChoiceOptionReference" }, { "id": 3, "uri": "/tracker/160275/field/7/option/3", "name": "In progress", "type": "ChoiceOptionReference" }, { "id": 4, "uri": "/tracker/160275/field/7/option/4", "name": "Partly completed", "type": "ChoiceOptionReference" }, { "id": 5, "uri": "/tracker/160275/field/7/option/5", "name": "Completed", "type": "ChoiceOptionReference" }, { "id": 6, "uri": "/tracker/160275/field/7/option/6", "name": "To Verify", "type": "ChoiceOptionReference" }, { "id": 7, "uri": "/tracker/160275/field/7/option/7", "name": "InQA", "type": "ChoiceOptionReference" } ] }, { "id": 10, "name": "Planned Effort", "type": "DurationField", "hidden": false, "title": "PlannedEffort" }, { "id": 11, "name": "Spent Effort", "type": "DurationField", "hidden": false, "title": "SpentEffort" }, { "id": 12, "name": "% Spent / Plan", "type": "DecimalField", "hidden": false }, { "id": 14, "name": "Severity", "type": "OptionChoiceField", "hidden": false, "multipleValues": false, "options": [ { "id": 1, "uri": "/tracker/160275/field/14/option/1", "name": "Blocker", "type": "ChoiceOptionReference" }, { "id": 2, "uri": "/tracker/160275/field/14/option/2", "name": "Critical", "type": "ChoiceOptionReference" }, { "id": 3, "uri": "/tracker/160275/field/14/option/3", "name": "Minor", "type": "ChoiceOptionReference" }, { "id": 4, "uri": "/tracker/160275/field/14/option/4", "name": "Trivial", "type": "ChoiceOptionReference" } ] }, { "id": 15, "name": "Resolution", "type": "OptionChoiceField", "hidden": false, "multipleValues": false, "options": [ { "id": 1, "uri": "/tracker/160275/field/15/option/1", "name": "Successful", "type": "ChoiceOptionReference" }, { "id": 2, "uri": "/tracker/160275/field/15/option/2", "name": "Invalid", "type": "ChoiceOptionReference" }, { "id": 3, "uri": "/tracker/160275/field/15/option/3", "name": "Duplicate", "type": "ChoiceOptionReference" } ] }, { "id": 18, "name": "Accrued Effort", "type": "DurationField", "hidden": false, "title": "AccruedEffort" }, { "id": 19, "name": "Story Points", "type": "IntegerField", "hidden": false, "title": "Points" }, { "id": 74, "name": "Modified at", "type": "DateField", "hidden": false }, { "id": 75, "name": "Modified by", "type": "UserField", "hidden": false, "multipleValues": false }, { "id": 80, "name": "Description", "type": "WikiTextField", "hidden": false }, { "id": 84, "name": "Description Format", "type": "TextField", "hidden": false }, { "id": 10000, "name": "Color", "type": "ColorField", "hidden": false }, { "id": 1000000, "name": "table", "type": "TableField", "hidden": false, "columns": [ { "id": 1000001, "name": "cal", "type": "TextField", "hidden": false }, { "id": 1000002, "name": "col", "type": "DurationField", "hidden": false } ] } ] | [ { "id": 0, "name": "ID", "type": "IntegerField", "hidden": false, "valueModel": "IntegerFieldValue", "mandatoryInStatuses": [], "legacyRestName": "id", "trackerItemField": "id" }, { "id": 2, "name": "Priority", "type": "OptionChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<ChoiceOptionReference>", "title": "P", "mandatoryInStatuses": [], "multipleValues": false, "options": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "Highest", "type": "ChoiceOptionReference" }, { "id": 2, "name": "High", "type": "ChoiceOptionReference" }, { "id": 3, "name": "Normal", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Low", "type": "ChoiceOptionReference" }, { "id": 5, "name": "Lowest", "type": "ChoiceOptionReference" } ], "legacyRestName": "priority", "trackerItemField": "priority", "referenceType": "ChoiceOptionReference" }, { "id": 3, "name": "Summary", "type": "TextField", "hidden": false, "valueModel": "TextFieldValue", "mandatoryInStatuses": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "To Do", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Rejected", "type": "ChoiceOptionReference" }, { "id": 3, "name": "In Progress", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Implemented", "type": "ChoiceOptionReference" }, { "id": 7, "name": "Done", "type": "ChoiceOptionReference" } ], "legacyRestName": "name", "trackerItemField": "name" }, { "id": 4, "name": "Submitted at", "type": "DateField", "hidden": false, "valueModel": "DateFieldValue", "mandatoryInStatuses": [], "legacyRestName": "submittedAt", "trackerItemField": "createdAt" }, { "id": 5, "name": "Assigned to", "type": "UserChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<UserReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "assignedTo", "trackerItemField": "assignedTo", "referenceType": "UserReference" }, { "id": 6, "name": "Submitted by", "type": "UserChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<UserReference>", "mandatoryInStatuses": [], "multipleValues": false, "legacyRestName": "submitter", "trackerItemField": "createdBy", "referenceType": "UserReference" }, { "id": 7, "name": "Status", "type": "OptionChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<ChoiceOptionReference>", "mandatoryInStatuses": [], "multipleValues": false, "options": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "To Do", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Rejected", "type": "ChoiceOptionReference" }, { "id": 3, "name": "In Progress", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Implemented", "type": "ChoiceOptionReference" }, { "id": 7, "name": "Done", "type": "ChoiceOptionReference" } ], "legacyRestName": "status", "trackerItemField": "status", "referenceType": "ChoiceOptionReference" }, { "id": 8, "name": "Start Date", "type": "DateField", "hidden": true, "valueModel": "DateFieldValue", "mandatoryInStatuses": [], "legacyRestName": "startDate", "trackerItemField": "startDate" }, { "id": 9, "name": "End Date", "type": "DateField", "hidden": true, "valueModel": "DateFieldValue", "mandatoryInStatuses": [], "legacyRestName": "endDate", "trackerItemField": "endDate" }, { "id": 10, "name": "Planned Effort", "type": "DurationField", "hidden": false, "valueModel": "DurationFieldValue", "title": "Planned<br>Effort", "mandatoryInStatuses": [], "legacyRestName": "estimatedMillis", "trackerItemField": "estimatedMillis" }, { "id": 11, "name": "Spent Effort", "type": "DurationField", "hidden": false, "valueModel": "DurationFieldValue", "title": "Spent<br>Effort", "mandatoryInStatuses": [], "legacyRestName": "spentMillis", "trackerItemField": "spentMillis" }, { "id": 12, "name": "% Spent / Plan", "type": "DecimalField", "hidden": false, "valueModel": "DecimalFieldValue", "mandatoryInStatuses": [], "legacyRestName": "spentEstimatedHours" }, { "id": 13, "name": "Category", "type": "OptionChoiceField", "hidden": true, "valueModel": "ChoiceFieldValue<ChoiceOptionReference>", "mandatoryInStatuses": [], "multipleValues": false, "options": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "Folder", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Information", "type": "ChoiceOptionReference" } ], "legacyRestName": "category", "trackerItemField": "categories", "referenceType": "ChoiceOptionReference" }, { "id": 14, "name": "Severity", "type": "OptionChoiceField", "hidden": true, "valueModel": "ChoiceFieldValue<ChoiceOptionReference>", "mandatoryInStatuses": [], "multipleValues": false, "options": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "Blocker", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Critical", "type": "ChoiceOptionReference" }, { "id": 3, "name": "Major", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Minor", "type": "ChoiceOptionReference" }, { "id": 5, "name": "Trivial", "type": "ChoiceOptionReference" } ], "legacyRestName": "severity", "trackerItemField": "severities", "referenceType": "ChoiceOptionReference" }, { "id": 15, "name": "Resolution", "type": "OptionChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<ChoiceOptionReference>", "mandatoryInStatuses": [ { "id": 2, "name": "Rejected", "type": "ChoiceOptionReference" }, { "id": 7, "name": "Done", "type": "ChoiceOptionReference" } ], "multipleValues": false, "options": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Invalid", "type": "ChoiceOptionReference" }, { "id": 3, "name": "Duplicate", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Implemented", "type": "ChoiceOptionReference" } ], "legacyRestName": "resolution", "trackerItemField": "resolutions", "referenceType": "ChoiceOptionReference" }, { "id": 16, "name": "Platform", "type": "TrackerItemChoiceField", "hidden": true, "valueModel": "ChoiceFieldValue<TrackerItemReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "platform", "trackerItemField": "platforms", "referenceType": "TrackerItemReference" }, { "id": 17, "name": "Backlog Item", "type": "TrackerItemChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<TrackerItemReference>", "mandatoryInStatuses": [ { "id": 0, "name": "Unset", "type": "ChoiceOptionReference" }, { "id": 1, "name": "To Do", "type": "ChoiceOptionReference" }, { "id": 2, "name": "Rejected", "type": "ChoiceOptionReference" }, { "id": 3, "name": "In Progress", "type": "ChoiceOptionReference" }, { "id": 4, "name": "Implemented", "type": "ChoiceOptionReference" }, { "id": 7, "name": "Done", "type": "ChoiceOptionReference" } ], "multipleValues": false, "legacyRestName": "backlogItem", "trackerItemField": "subjects", "referenceType": "TrackerItemReference" }, { "id": 18, "name": "Accrued Effort", "type": "DurationField", "hidden": false, "valueModel": "DurationFieldValue", "title": "Accrued<br>Effort", "mandatoryInStatuses": [], "legacyRestName": "accruedMillis", "trackerItemField": "accruedMillis" }, { "id": 19, "name": "Story Points", "type": "IntegerField", "hidden": true, "valueModel": "IntegerFieldValue", "title": "Points", "mandatoryInStatuses": [], "legacyRestName": "storyPoints", "trackerItemField": "storyPoints" }, { "id": 21, "name": "Team", "type": "TrackerItemChoiceField", "hidden": true, "valueModel": "ChoiceFieldValue<TrackerItemReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "team", "trackerItemField": "teams", "referenceType": "TrackerItemReference" }, { "id": 29, "name": "Assigned at", "type": "DateField", "hidden": false, "valueModel": "DateFieldValue", "mandatoryInStatuses": [], "legacyRestName": "assignedAt", "trackerItemField": "assignedAt" }, { "id": 31, "name": "Release", "type": "TrackerItemChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<TrackerItemReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "versions", "trackerItemField": "versions", "referenceType": "TrackerItemReference" }, { "id": 32, "name": "Owner", "type": "UserChoiceField", "hidden": true, "valueModel": "ChoiceFieldValue<UserReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "supervisors", "trackerItemField": "owners", "referenceType": "UserReference" }, { "id": 74, "name": "Modified at", "type": "DateField", "hidden": false, "valueModel": "DateFieldValue", "mandatoryInStatuses": [], "legacyRestName": "modifiedAt", "trackerItemField": "modifiedAt" }, { "id": 75, "name": "Modified by", "type": "UserChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<UserReference>", "mandatoryInStatuses": [], "multipleValues": false, "legacyRestName": "modifier", "trackerItemField": "modifiedBy", "referenceType": "UserReference" }, { "id": 76, "name": "Parent", "type": "ReferenceField", "hidden": true, "valueModel": "NotSupportedFieldValue", "mandatoryInStatuses": [], "legacyRestName": "parent", "trackerItemField": "parent" }, { "id": 79, "name": "Children", "type": "ReferenceField", "hidden": false, "valueModel": "NotSupportedFieldValue", "mandatoryInStatuses": [], "legacyRestName": "children", "trackerItemField": "children" }, { "id": 80, "name": "Description", "type": "WikiTextField", "hidden": false, "valueModel": "WikiTextFieldValue", "mandatoryInStatuses": [], "legacyRestName": "description", "trackerItemField": "description" }, { "id": 83, "name": "Staff", "type": "UserChoiceField", "hidden": false, "valueModel": "ChoiceFieldValue<UserReference>", "mandatoryInStatuses": [], "multipleValues": true, "legacyRestName": "staff", "referenceType": "UserReference" }, { "id": 84, "name": "Description Format", "type": "TextField", "hidden": false, "valueModel": "TextFieldValue", "mandatoryInStatuses": [], "legacyRestName": "descFormat", "trackerItemField": "descriptionFormat" }, { "id": 85, "name": "Flags", "type": "IntegerField", "hidden": false, "valueModel": "IntegerFieldValue", "mandatoryInStatuses": [], "legacyRestName": "flags" }, { "id": 88, "name": "Attachments", "type": "ReferenceField", "hidden": false, "valueModel": "NotSupportedFieldValue", "mandatoryInStatuses": [], "legacyRestName": "comments", "trackerItemField": "comments" }, { "id": 10000, "name": "Color", "type": "ColorField", "hidden": false, "valueModel": "ColorFieldValue", "mandatoryInStatuses": [], "legacyRestName": "color" }, { "id": 1000000, "name": "table", "type": "TableField", "hidden": false, "valueModel": "TableFieldValue", "mandatoryInStatuses": [], "columns": [ { "id": 1000001, "name": "cal", "type": "TextField", "hidden": false, "valueModel": "TextFieldValue", "mandatoryInStatuses": [], "legacyRestName": "cal" }, { "id": 1000002, "name": "col", "type": "DurationField", "hidden": false, "valueModel": "DurationFieldValue", "mandatoryInStatuses": [], "legacyRestName": "col" } ], "legacyRestName": "table" } ] |
v2 | v3 |
|---|---|
{ "id": 1869, "uri": "/item/1869", "name": "Define Test Cases", "type": "TrackerItem", "version": 4, "description": "Define Test Cases", "descriptionFormat": "Wiki", "submittedAt": "2019-09-22T19:48:48", "submitter": { "id": 1, "uri": "/user/1", "name": "bond", "type": "UserReference" }, "modifiedAt": "2019-09-27T09:26:06", "modifier": { "id": 1, "uri": "/user/1", "name": "bond", "type": "UserReference" }, "storyPoints": 4, "tracker": { "id": 160275, "uri": "/tracker/160275", "name": "Tasks", "type": "TrackerReference" }, "customFields": [ { "fieldId": 1000000, "uri": "/tracker/160275/field/1000000", "name": "table", "type": "TableCustomFieldReference", "values": [ [ { "fieldId": 1000001, "uri": "/tracker/160275/field/1000001", "name": "cal", "type": "TextCustomFieldReference", "value": "calculate" }, { "fieldId": 1000002, "uri": "/tracker/160275/field/1000002", "name": "col", "type": "DurationCustomFieldReference", "value": 835200000 } ], [ { "fieldId": 1000001, "uri": "/tracker/160275/field/1000001", "name": "cal", "type": "TextCustomFieldReference", "value": "calibrate" }, { "fieldId": 1000002, "uri": "/tracker/160275/field/1000002", "name": "col", "type": "DurationCustomFieldReference", "value": 1558800000 } ] ] } ], "priority": { "uri": "/tracker/160275/field/2", "values": [ { "id": 3, "uri": "/tracker/160275/field/2/option/3", "name": "Normal", "type": "ChoiceOptionReference" } ], "fieldId": 2, "trackerId": 160275, "type": "ChoiceFieldReference" }, "estimatedMillis": 82800000, "status": { "uri": "/tracker/160275/field/7", "values": [ { "id": 1, "uri": "/tracker/160275/field/7/option/1", "name": "New", "type": "ChoiceOptionReference" } ], "fieldId": 7, "trackerId": 160275, "type": "ChoiceFieldReference" }, "teams": { "uri": "/tracker/160275/field/21", "values": [ { "id": 1940, "uri": "/item/1940", "name": "Test Team", "type": "TrackerItemReference" } ], "fieldId": 21, "trackerId": 160275, "type": "TrackerItemFieldReference" }, "versions": { "uri": "/tracker/160275/field/31", "values": [ { "id": 1815, "uri": "/item/1815", "name": "Sprint 1.1", "type": "TrackerItemReference" } ], "fieldId": 31, "trackerId": 160275, "type": "TrackerItemFieldReference" }, "ordinal": 13, "typeName": "Task" } | { "id": 1869, "name": "Define Test Cases", "description": "Define Test Cases", "descriptionFormat": "Wiki", "createdAt": "2020-10-28T15:03:39.004", "createdBy": { "id": 1, "name": "bond", "type": "UserReference" }, "modifiedAt": "2020-10-28T15:03:39.004", "modifiedBy": { "id": 1, "name": "bond", "type": "UserReference" }, "version": 1, "assignedTo": [], "storyPoints": 4, "tracker": { "id": 2351, "name": "Tasks", "type": "TrackerReference" }, "children": [], "customFields": [ { "fieldId": 1000000, "name": "table", "values": [ [ { "fieldId": 1000001, "name": "cal", "value": "calculate", "type": "TextFieldValue" }, { "fieldId": 1000002, "name": "col", "value": 835200000, "type": "DurationFieldValue" } ], [ { "fieldId": 1000001, "name": "cal", "value": "calibrate", "type": "TextFieldValue" }, { "fieldId": 1000002, "name": "col", "value": 1558800000, "type": "DurationFieldValue" } ] ], "type": "TableFieldValue" } ], "priority": { "id": 3, "name": "Normal", "type": "ChoiceOptionReference" }, "estimatedMillis": 82800000, "status": { "id": 1, "name": "To Do", "type": "ChoiceOptionReference" }, "resolutions": [], "teams": [], "versions": [], "ordinal": 22, "typeName": "Task", "comments": [] } |