Skip to main content

Issue Time-in-Status Export API

Last updated on

The Issue Time-in-Status Export API exports issue lifecycle analytics showing how long issues spend in each workflow status. Exports can be aggregated by sprint or team and are returned in CSV format.

Authentication

All requests require the following headers:

HeaderValue
authorizationApiKey <YOUR_SEI_API_KEY>
Content-Typeapplication/json

You must also include the following query parameters on all requests:

ParameterDescription
projectIdentifierHarness project identifier
orgIdentifierHarness organization identifier

Export workflow

Creates a new asynchronous issue time-in-status export job.

# Replace BASE_URL with your Harness cluster URL
POST {BASE_URL}/v2/insights/ticket-data/exports
Request Body
{
"scope": {
"teamId": "team_abc123", // String identifier; use either teamId OR orgTreeName (not both)
"orgTreeName": "string",
"orgIdentifier": "string", // Required when using `orgTreeName`
"projectIdentifier": "string"
},
"dateRange": {
"start": "2024-01-01", // Required
"end": "2024-03-31" // Required
},
"issueStatuses": [
"In Progress",
"In Review",
"QA",
"Done"
],
"options": {
"aggregationLevel": "sprint",
"granularity": "weekly",
"terminalDateColumn": "issue_resolved_at"
}
}

The following request fields are available:

FieldDescription
scope.teamIdExport data for a specific team.
scope.orgTreeNameExport data for an organization tree.
dateRange.startExport start date (yyyy-MM-dd).
dateRange.endExport end date (yyyy-MM-dd).
issueStatusesList of workflow statuses to measure (In Progress, In Review, QA, or Done).
options.aggregationLevelAggregation level (sprint or team).
options.granularityReporting interval (daily, weekly, monthly, quarterly).
options.terminalDateColumnTerminal date used for calculations (issue_resolved_at or version_release_date).
Example Request
curl -X POST "${BASE_URL}/v2/insights/ticket-data/exports?projectIdentifier=${PROJECT_ID}&orgIdentifier=${ORG_ID}" \
-H "Content-Type: application/json" \
-H "authorization: ApiKey <YOUR_SEI_API_KEY>" \
-d '{
"scope": {
"teamId": "team_abc123"
},
"dateRange": {
"start": "2024-01-01",
"end": "2024-03-31"
},
"issueStatuses": [
"In Progress",
"In Review",
"QA",
"Done"
],
"options": {
"aggregationLevel": "sprint",
"granularity": "weekly",
"terminalDateColumn": "issue_resolved_at"
}
}'
Example Response
{
"exportId": "exp_9F0A1B2C",
"status": "QUEUED",
"createdAt": "2025-05-13T10:00:00Z",
"message": "Export job created successfully"
}

Downloads are gzip-compressed by default and export responses include team hierarchy information where applicable.