Skip to main content
Annotation issues enable quality control by tracking problems found in annotations. Issues can be created at the sequence or dataset level and include details about the problem type, severity, and suggested fixes.

List issues by sequence

Retrieve all annotation issues for a specific sequence.
const issues = await avala.annotationIssues.listBySequence('sequence-uid', {
  datasetItemUid: 'item-uid',
  projectUid: 'project-uid'
});

Parameters

sequenceUid
string
required
The unique identifier of the sequence
options.datasetItemUid
string
Filter by specific dataset item UID
options.projectUid
string
Filter by specific project UID

Returns

Returns an array of annotation issue objects.

Create an annotation issue

Create a new annotation issue for a sequence.
const issue = await avala.annotationIssues.create('sequence-uid', {
  toolUid: 'tool-uid',
  problemUid: 'problem-uid',
  datasetItemUid: 'item-uid',
  projectUid: 'project-uid',
  priority: 'high',
  severity: 'critical',
  description: 'Incorrect bounding box placement',
  wrongClass: 'car',
  correctClass: 'truck',
  shouldReAnnotate: true,
  shouldDelete: false,
  framesAffected: '1-10',
  coordinates: { x: 100, y: 200 },
  objectUid: 'object-uid'
});

Parameters

sequenceUid
string
required
The unique identifier of the sequence
options.toolUid
string
required
UID of the annotation tool related to the issue
options.problemUid
string
required
UID of the problem type
options.datasetItemUid
string
Dataset item UID where the issue was found
options.projectUid
string
Project UID where the issue was found
options.priority
string
Priority level of the issue (e.g., ‘low’, ‘medium’, ‘high’)
options.severity
string
Severity of the issue (e.g., ‘minor’, ‘major’, ‘critical’)
options.description
string
Detailed description of the issue
options.wrongClass
string
The incorrect class that was annotated
options.correctClass
string
The correct class that should be annotated
options.shouldReAnnotate
boolean
Whether the item should be re-annotated
options.shouldDelete
boolean
Whether the annotation should be deleted
options.framesAffected
string
Range of frames affected by the issue
options.coordinates
unknown
Coordinates of the issue location
options.queryParams
Record<string, unknown>
Additional query parameters
options.objectUid
string
UID of the specific object with the issue

Returns

Returns the created annotation issue object.
uid
string
Unique identifier for the issue
datasetItemUid
string | null
Dataset item UID
sequenceUid
string | null
Sequence UID
project
object | null
Project details
reporter
object | null
User who reported the issue
priority
string | null
Priority level
severity
string | null
Severity level
description
string | null
Issue description
status
string | null
Current status of the issue
tool
object | null
Tool details
problem
object | null
Problem type details
wrongClass
string | null
Incorrect class
correctClass
string | null
Correct class
shouldReAnnotate
boolean | null
Whether re-annotation is needed
shouldDelete
boolean | null
Whether deletion is recommended
framesAffected
string | null
Affected frame range
coordinates
unknown
Location coordinates
queryParams
object | null
Additional query parameters
objectUid
string | null
Object UID
createdAt
string | null
ISO 8601 timestamp of creation
closedAt
string | null
ISO 8601 timestamp when closed

Update an annotation issue

Update an existing annotation issue.
const issue = await avala.annotationIssues.update('sequence-uid', 'issue-uid', {
  status: 'resolved',
  priority: 'low',
  description: 'Updated description'
});

Parameters

sequenceUid
string
required
The unique identifier of the sequence
issueUid
string
required
The unique identifier of the issue to update
options.status
string
New status for the issue
options.priority
string
New priority level
options.severity
string
New severity level
options.description
string
Updated description
options.toolUid
string
Updated tool UID
options.problemUid
string
Updated problem UID
options.wrongClass
string
Updated wrong class
options.framesAffected
string
Updated frame range

Returns

Returns the updated annotation issue object.

Delete an annotation issue

Delete an annotation issue.
await avala.annotationIssues.delete('sequence-uid', 'issue-uid');

Parameters

sequenceUid
string
required
The unique identifier of the sequence
issueUid
string
required
The unique identifier of the issue to delete

Returns

Returns void on success.

List issues by dataset

Retrieve all annotation issues for a dataset.
const issues = await avala.annotationIssues.listByDataset('owner', 'dataset-slug', {
  sequenceUid: 'sequence-uid'
});

Parameters

owner
string
required
The owner of the dataset (username or organization slug)
datasetSlug
string
required
The slug of the dataset
options.sequenceUid
string
Filter by specific sequence UID

Returns

Returns an array of annotation issue objects.

Get issue metrics

Retrieve metrics and statistics about annotation issues in a dataset.
const metrics = await avala.annotationIssues.getMetrics('owner', 'dataset-slug', {
  sequenceUid: 'sequence-uid'
});

Parameters

owner
string
required
The owner of the dataset (username or organization slug)
datasetSlug
string
required
The slug of the dataset
options.sequenceUid
string
Filter metrics by specific sequence UID

Returns

statusCount
object | null
Count of issues by status
priorityCount
object | null
Count of issues by priority
severityCount
object | null
Count of issues by severity
meanSecondsCloseTimeAll
number | null
Average time to close all issues in seconds
meanSecondsCloseTimeCustomer
number | null
Average time to close customer-reported issues in seconds
meanUnresolvedIssueAgeAll
number | null
Average age of unresolved issues in seconds
meanUnresolvedIssueAgeCustomer
number | null
Average age of unresolved customer-reported issues in seconds
objectCountByAnnotationIssueProblemUid
object[] | null
Count of objects by problem type

List available tools

Retrieve available annotation tools for creating issues.
const tools = await avala.annotationIssues.listTools({
  datasetType: 'image'
});

Parameters

options.datasetType
string
required
Type of dataset (e.g., ‘image’, ‘video’, ‘lidar’)

Returns

Returns an array of annotation issue tool details.
[].uid
string
Unique identifier for the tool
[].name
string
Name of the tool
[].datasetType
string | null
Dataset type the tool is for
[].default
boolean | null
Whether this is a default tool
[].problems
object[] | null
Array of available problem types for this tool

Build docs developers (and LLMs) love