Skip to content

Instantly share code, notes, and snippets.

@petrbroz
Created November 25, 2024 14:13
Show Gist options
  • Select an option

  • Save petrbroz/a4274548c52e2ee71914c9e644490e5e to your computer and use it in GitHub Desktop.

Select an option

Save petrbroz/a4274548c52e2ee71914c9e644490e5e to your computer and use it in GitHub Desktop.
ACC Issues OpenAPI spec
openapi: 3.1.0
info:
title: ACC Issues
version: "1.0"
description: An issue is an item that is created in ACC for tracking, managing and communicating tasks, problems and other points of concern through to resolution. You can manage different types of issues, such as design, safety, and commissioning. We currently support issues that are associated with a project.
servers:
- url: https://developer.api.autodesk.com
paths:
/construction/issues/v1/projects/{project_id}/issue-types:
get:
summary: List issue types
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/IssueType"
"400":
description: Bad Request
"403":
description: Forbidden
"404":
description: Not Found
"500":
description: Internal Server Error
operationId: getIssuesTypes
description: Retrieves issue categories and types.
parameters:
- schema:
type: string
in: query
name: include
description: Use include=subtypes to include the types (subtypes) for each category (type).
- schema:
type: string
name: project_id
in: path
required: true
/construction/issues/v1/projects/{project_id}/issues:
get:
summary: List issues
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/IssuesPage"
"400":
description: Bad Request
"403":
description: Forbidden
"404":
description: Not Found
operationId: getIssues
parameters:
- schema:
type: string
name: project_id
in: path
required: true
/construction/issues/v1/projects/{project_id}/issues/{issue_id}:
get:
summary: Get issue details
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: "#/components/schemas/Issue"
"400":
description: Bad Request
"403":
description: Forbidden
"404":
description: Not Found
operationId: getIssueDetails
description: Retrieves detailed information about a single issue. For general information about all the issues in a project.
parameters:
- schema:
type: string
name: project_id
in: path
required: true
description: The ID of the project.
- schema:
type: string
name: issue_id
in: path
required: true
description: The unique identifier of the issue.
components:
schemas:
IssueType:
type: object
properties:
pagination:
type: object
description: The pagination object.
properties:
limit:
type: integer
description: The number of items per page.
offset:
type: integer
description: The page number that the results begin from.
totalResults:
type: integer
description: The number of items in the response.
results:
type: array
description: A list of issue type categories.
items:
type: object
properties:
id:
type: string
description: The ID of the issue type.
containerId:
type: string
description: Not relevant
title:
type: string
description: "Max length: 250"
isActive:
type: boolean
description: States whether the issue type is active.
orderIndex:
type: integer
description: Not relevant
permittedActions:
type: array
description: Not relevant
items:
type: string
permittedAttributes:
type: array
description: Not relevant
items:
type: string
subtypes:
type: array
description: A list of subtypes of the specific issue type.
items:
type: object
properties:
id:
type: string
description: The ID of the issue subtype.
issueTypeId:
type: string
description: The ID of the parent issue type.
title:
type: string
description: "Max length: 250"
code:
type: string
description: 3 chars pin label.
isActive:
type: boolean
description: States whether the issue type is active.
orderIndex:
type: integer
description: Not relevant
isReadOnly:
type: boolean
description: Not relevant
permittedActions:
type: array
description: Not relevant
items:
type: string
permittedAttributes:
type: array
description: Not relevant
items:
type: string
createdBy:
type: string
description: The unique identifier of the user who created the issue type.
createdAt:
type: string
description: The date and time the issue was created, in ISO8601 format.
updatedBy:
type: string
description: The unique identifier of the user who updated the issue type.
updatedAt:
type: string
description: The date and time the issue type was updated, in ISO8601 format.
deletedBy:
type: string
description: The unique identifier of the user who deleted the issue type.
deletedAt:
type: string
description: The date and time the issue type was deleted, in ISO8601 format.
statusSet:
type: string
description: Not relevant
createdBy:
type: string
description: The unique identifier of the user who created the issue type.
createdAt:
type: string
description: The date and time the issue was created, in ISO8601 format.
updatedBy:
type: string
description: The unique identifier of the user who updated the issue type.
updatedAt:
type: string
description: The date and time the issue type was updated, in ISO8601 format.
deletedBy:
type: string
description: The unique identifier of the user who deleted the issue type.
deletedAt:
type: string
description: The date and time the issue type was deleted, in ISO8601 format.
Issue:
type: object
properties:
id:
type: string
description: The unique identifier of the issue.
containerId:
type: string
description: Not relevant
deleted:
type: boolean
description: "States whether the issue was deleted. Default value: false."
displayId:
type: integer
description: The chronological user-friendly identifier of the issue.
title:
type: string
description: "The description and purpose of the issue. Max length: 10000."
description:
type: string
description: "The description and purpose of the issue. Max length: 10000."
snapshotUrn:
type: string
description: Not relevant
issueTypeId:
type: string
description: The unique identifier of the type of the issue.
issueSubtypeId:
type: string
description: The unique identifier of the subtype of the issue.
status:
type: string
assignedTo:
type: string
description: The Autodesk ID of the member, role, or company you want to assign to the issue. Note that if you select an assignee ID, you also need to select a type (assignedToType).
assignedToType:
type: string
description: "The type of the current assignee of this issue. Possible values: user, company, role, null. Note that if you select a type, you also need to select the assignee ID (assignedTo)."
dueDate:
type: string
description: The due date of the issue, in ISO8601 format.
startDate:
type: string
description: The start date of the issue, in ISO8601 format.
locationId:
type: string
description: The unique LBS (Location Breakdown Structure) identifier that relates to the issue.
locationDetails:
type: string
description: "The location as plain text that relates to the issue. Max length: 8300."
linkedDocuments:
type: array
description: Information about the files associated with issues (pushpins).
items:
type: object
properties:
type:
type: string
description: "The type of file. Possible values: TwoDVectorPushpin (3D models) TwoDRasterPushpin (2D sheets and views)."
urn:
type: string
description: The ID of the file associated with the issue (pushpin). Note the we do not currently support data associated with the ACC Build Sheet tool.
createdBy:
type: string
description: The Autodesk ID of the user who created the pushpin issue.
createdAt:
type: string
description: The date and time the pushpin was created, in ISO8601 format.
createdAtVersion:
type: integer
description: The version of the file the pushin issue was added to. For information about file versions, see the Data Management API.
closedBy:
type: string
description: The Autodesk ID of the user who closed the pushpin issue.
closedAt:
type: string
description: The date and time the pushpin issue was closed, in ISO8601 format.
closedAtVersion:
type: integer
description: The version of the file when the pushpin issue was closed.
details:
type: object
description: Information about the individual viewable.
properties:
viewable:
type: object
description: The individual viewable associated with the issue (pushpin). This is relevant for both individual 2D sheets and views within a 3D model, and individual PDF sheets within a multi-sheet PDF file. It is only relevant if the issue is associated with a file.
properties:
id:
type: string
description: Not relevant
guid:
type: string
description: The ID of the viewable (guid).
viewableId:
type: string
description: Not relevant
name:
type: string
description: |-
The name of the viewable.
Max length: 1000
is3D:
type: boolean
description: True if it is a 3D viewable false if it is a 2D viewable
position:
type: object
description: The position of the pushpin in the viewable.
properties:
x:
type: integer
description: The x-value of the position in the viewable.
y:
type: integer
description: The y-value of the position in the viewable.
z:
type: integer
description: The z-value of the position in the viewable.
objectId:
type: integer
description: The ID of the element the pushpin is associated with in the viewable.
externalId:
type: string
description: An external identifier of the element the pushpin is associated with in the viewable.
viewerState:
type: object
description: "The viewer state at the time the pushpin was created. Maximum
length: 2,500,000 characters. You can get the viewer state
object by calling ViewerState.getState(). To restore the
viewer instance use ViewerState.restoreState(). See the
`Viewer API documentation
https://developer.autodesk.com/en/docs/viewer/v2/referenc\
e/javascript/viewerstate/`_ for more details."
links:
type: array
description: Not relevant
items:
type: object
ownerId:
type: string
description: Not relevant
rootCauseId:
type: string
description: The unique identifier of the type of root cause for the issue.
officialResponse:
type: object
description: Not relevant
issueTemplateId:
type: string
description: Not relevant
permittedStatuses:
type: array
description: >-
A list of statuses accessible to the current user, this is based on
the current status of the issue and the user permissions.
Possible Values: open, pending, in_review, closed.
items:
type: string
permittedAttributes:
type: array
description: A list of attributes the current user can manipulate in the current context. issueTypeId, linkedDocument, links, ownerId, officialResponse, rootCauseId, snapshotUrn are not applicable.
items:
type: string
published:
type: boolean
description: "States whether the issue is published. Default value: false (e.g. unpublished)."
permittedActions:
type: object
description: >-
The list of actions permitted for the user for this issue in its
current state.
Note that if a user with Create for my company permissions attempts
to assign a user from a another company to the issue, it will return
an error.
Possible Values: assign_all (can assign another user from another
company to the issue), assign_same_company (can only assign another
user from the same company to the issue), clear_assignee, delete,
add_comment, add_attachment, remove_attachment.
The following values are not relevant: add_attachment,
remove_attachment.
commentCount:
type: integer
description: The number of comments in this issue.
attachmentCount:
type: integer
description: Not relevant
openedBy:
type: string
description: Not relevant
openedAt:
type: string
description: Not relevant
closedBy:
type: string
description: The unique identifier of the user who closed the issue.
closedAt:
type: string
description: The date and time the issue was closed, in ISO8601 format.
createdBy:
type: string
description: The unique identifier of the user who created the issue
createdAt:
type: string
description: The date and time the issue was created, in ISO8601 format.
updatedBy:
type: string
description: The unique identifier of the user who updated the issue.
updatedAt:
type: string
description: The date and time the issue was updated, in ISO8601 format.
watchers:
type: array
description: The Autodesk ID of the member you want to assign as a watcher for
the issue.
items:
type: string
customAttributes:
type: array
description: A list of custom attributes of the specific issue.
items:
type: object
properties:
attributeDefinitionId:
type: string
description: The unique identifier of the custom attribute.
value:
type: object
description: "Custom attribute value. Possible value types: string, number,
null."
type:
type: string
description: "The type of attribute. Possible values: numeric, paragraph, list
(this corresponds to dropdown in the UI), text."
title:
type: string
description: Free text description of the attribute.
gpsCoordinates:
type: object
description: A GPS Coordinate which represents the geo location of the issue.
properties:
latitude:
type: number
longitude:
type: number
IssuesPage:
type: object
properties:
pagination:
type: object
description: The pagination object defining the limit, offset, total number of issues, next and previous URL
properties:
limit:
type: integer
description: The maximum number of issues to be returned in each page.
offset:
type: integer
description: The offset defining the start position from where the issues are
returned
totalResults:
type: integer
description: The total number of issues including the ones of the current page
results:
type: array
description: The list of issues in the current page
items:
$ref: "#/components/schemas/Results"
FilterId:
type: array
items:
type: string
FilterIssueTypeId:
type: array
items:
type: string
FilterIssueSubtypeId:
type: array
items:
type: string
Results:
type: object
properties:
id:
type: string
description: The unique identifier of the issue.
containerId:
type: string
description: Not relevant
deleted:
type: boolean
description: "States whether the issue was deleted. Default value: false."
displayId:
type: integer
description: The chronological user-friendly identifier of the issue.
title:
type: string
description: |-
The description and purpose of the issue.
Max length: 10000
description:
type: string
description: |-
The description and purpose of the issue.
Max length: 10000
snapshotUrn:
type: string
description: Not relevant
issueTypeId:
type: string
description: The unique identifier of the type of the issue.
issueSubtypeId:
type: string
description: The unique identifier of the subtype of the issue.
status:
type: string
description: The current status of the issue. To check the available statuses
for the project, call GET users/me and check the permitted statuses
list (issue.new.permittedStatuses). For more information about
statuses, see the Help documentation.
assignedTo:
type: string
description: The Autodesk ID of the member, role, or company you want to assign
to the issue. Note that if you select an assignee ID, you also need
to select a type (assignedToType).
assignedToType:
type: string
dueDate:
type: string
description: The due date of the issue, in ISO8601 format.
startDate:
type: string
description: The start date of the issue, in ISO8601 format.
locationId:
type: string
description: The unique LBS (Location Breakdown Structure) identifier that
relates to the issue.
locationDetails:
type: string
description: |-
The location as plain text that relates to the issue.
Max length: 8300
linkedDocuments:
type: array
description: Information about the files associated with issues (pushpins).
items:
type: object
properties:
type:
type: string
description: >-
The type of file. Possible values:
TwoDVectorPushpin (3D models) TwoDRasterPushpin (2D sheets and
views)
urn:
type: string
description: The ID of the file associated with the issue (pushpin). Note the we
do not currently support data associated with the ACC Build
Sheet tool.
createdBy:
type: string
description: The Autodesk ID of the user who created the pushpin issue.
createdAt:
type: string
description: The date and time the pushpin was created, in ISO8601 format.
createdAtVersion:
type: integer
description: The version of the file the pushin issue was added to. For
information about file versions, see the Data Management API.
closedBy:
type: string
description: The Autodesk ID of the user who closed the pushpin issue.
closedAt:
type: string
description: The date and time the pushpin issue was closed, in ISO8601 format.
closedAtVersion:
type: integer
description: The version of the file when the pushpin issue was closed.
details:
type: object
description: Information about the individual viewable.
properties:
viewable:
type: object
description: The individual viewable associated with the issue (pushpin). This
is relevant for both individual 2D sheets and views within
a 3D model, and individual PDF sheets within a multi-sheet
PDF file. It is only relevant if the issue is associated
with a file.
position:
type: object
description: The position of the pushpin in the viewable.
properties:
x:
type: integer
description: The x-value of the position in the viewable.
y:
type: integer
description: The y-value of the position in the viewable.
z:
type: integer
description: The z-value of the position in the viewable.
objectId:
type: integer
description: The ID of the element the pushpin is associated with in the
viewable.
externalId:
type: string
description: An external identifier of the element the pushpin is associated
with in the viewable.
viewerState:
type: object
description: "The viewer state at the time the pushpin was created. Maximum
length: 2,500,000 characters. You can get the viewer state
object by calling ViewerState.getState(). To restore the
viewer instance use ViewerState.restoreState(). See the
`Viewer API documentation
https://developer.autodesk.com/en/docs/viewer/v2/referenc\
e/javascript/viewerstate/`_ for more details."
links:
type: array
description: Not relevant
items:
type: object
ownerId:
type: string
description: Not relevant
rootCauseId:
type: string
description: The unique identifier of the type of root cause for the issue.
officialResponse:
type: object
description: Not relevant
issueTemplateId:
type: string
description: Not relevant
permittedStatuses:
type: array
description: >-
A list of statuses accessible to the current user, this is based on
the current status of the issue and the user permissions.
Possible Values: open, pending, in_review, closed.
items:
type: string
permittedAttributes:
type: array
description: A list of attributes the current user can manipulate in the current
context. issueTypeId, linkedDocument, links, ownerId,
officialResponse, rootCauseId, snapshotUrn are not applicable.
items:
type: string
published:
type: boolean
description: "States whether the issue is published. Default value: false (e.g.
unpublished)."
permittedActions:
type: object
description: >-
The list of actions permitted for the user for this issue in its
current state.
Note that if a user with Create for my company permissions attempts
to assign a user from a another company to the issue, it will return
an error.
Possible Values: assign_all (can assign another user from another
company to the issue), assign_same_company (can only assign another
user from the same company to the issue), clear_assignee, delete,
add_comment, add_attachment, remove_attachment.
The following values are not relevant: add_attachment,
remove_attachment.
commentCount:
type: integer
description: The number of comments in this issue.
attachmentCount:
type: integer
description: Not relevant
openedBy:
type: string
description: Not relevant
openedAt:
type: string
description: Not relevant
closedBy:
type: string
description: The unique identifier of the user who closed the issue.
closedAt:
type: string
description: The date and time the issue was closed, in ISO8601 format.
createdBy:
type: string
description: The unique identifier of the user who created the issue
createdAt:
type: string
description: The date and time the issue was created, in ISO8601 format.
updatedBy:
type: string
description: The unique identifier of the user who updated the issue.
updatedAt:
type: string
description: The date and time the issue was updated, in ISO8601 format.
watchers:
type: array
description: The Autodesk ID of the member you want to assign as a watcher for
the issue.
items:
type: string
customAttributes:
type: array
description: A list of custom attributes of the specific issue.
items:
type: object
properties:
attributeDefinitionId:
type: string
description: The unique identifier of the custom attribute.
value:
type: object
description: "Custom attribute value. Possible value types: string, number,
null."
type:
type: string
description: "The type of attribute. Possible values: numeric, paragraph, list
(this corresponds to dropdown in the UI), text."
title:
type: string
description: Free text description of the attribute.
gpsCoordinates:
type: object
description: A GPS Coordinate which represents the geo location of the issue.
properties:
latitude:
type: number
longitude:
type: number
securitySchemes:
3-legged:
type: oauth2
flows:
authorizationCode:
authorizationUrl: ""
tokenUrl: ""
refreshUrl: ""
scopes: {}
security:
- 3-legged: []
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment