Skip to main content
You can programmatically create issues/comments on data units using Encord’s SDK.

Create Issues

You can use the SDK to create a file issue, frame issue, or a pinned (coordinate) issue.
Issue tags are optional. However, if issue tags are specified while adding an issue using the SDK, the issue tags MUST exist in the Project.

Manage Project Issue Tags

Issue tags must be linked to a Project before you can use them on issues. Use project.get_issue_tags() to list the issue tags linked to a Project, and project.add_issue_tags() to link existing Workspace issue tags to a Project by name.

Create Issues on Annotations

Use task.issues.add_annotation_issue() to anchor an issue to a specific object or classification instance. Pass the instance’s object_hash (or classification_hash) as annotation_id. Leave frame_ranges empty to flag the instance on every frame it appears on, or pass one or more inclusive IssueFrameRange values to flag it on specific frames. For Data Groups and Scenes, use space_id to specify the space the annotation belongs to.

Supported Modalities

Not all modalities support all issue types.
ModalityFileFramePinned/Coordinate
Images✅❌✅
Videos✅✅✅
Audio files✅✅❌
Text files✅❌❌
HTML files✅❌❌
PDFs✅✅✅
DICOM✅✅✅
NifTi✅✅✅

Using Issues SDK

The following code provides an example of how you are likely going to use the SDK with Issues/Comments. ANNOTATE stage
  1. Issues/comments are added to the specified data units.
  2. A label is added to the data unit.
  3. The task is submitted for review.
REVIEW stage
  1. Issues/comments are added to the specified data units.
  2. The task is rejected.
Issues/Comments Annotate and Review Example

Delete Issues

Use task.issues.delete() to delete Issues from your Tasks. You can filter by a number of criteria.
Your Service Account MUST be added to the Project as an Admin to delete Issues.