APIIssues
List issues
List roadmap issues in the workspace. Cursor-paginated. Requires the issues:read scope.
GET
/issuescurl -X GET "https://productlane.com/api/v2/issues" \
-H "Authorization: Bearer $PRODUCTLANE_API_KEY"Authorization
AuthorizationstringheaderrequiredBearer authentication header of the form
Bearer <token>, where<token>is your auth token.
Parameters
limitintegerquerycursorstringqueryproject_idstringquerystatusstringqueryLifecycle state (
triage,backlog,unstarted,started,completed,canceled). Forwarded raw from Linear so custom workflows resolve to their real names.name_containsstringquerylinear_team_idstringqueryportal_instance_idstringqueryFilter to a single portal by its id (from GET /portal/instances). Pass
__main__for the Main (Root) portal. Omit to return items across all portals.visibilityenum<string>queryvisibleitems show on their portals,hiddenitems were taken down,pendingitems were never reviewed.One of:visiblehiddenpendingsortenum<string>querycreated_at(newest first) ortotal_score(highest demand first). Both break ties by id.One of:created_attotal_scoreDefault:created_atcreated_afterstring<date-time>querycreated_beforestring<date-time>queryupdated_afterstring<date-time>queryupdated_beforestring<date-time>query
Response
application/json
Successful response
dataobject[]requiredpageobjectrequired
{
"data": [
{
"id": "string",
"identifier": "string",
"title": "string",
"description": "string",
"priority": "string",
"status": "string",
"linear_team_id": "string",
"url": "string",
"project_id": "string",
"sort_order": 0,
"total_score": 0,
"is_visible": true,
"portal_instance_ids": [
"string"
],
"created_at": "string",
"updated_at": "string",
"linear_ticket_id": "string"
}
],
"page": {
"cursor": "string",
"has_more": true,
"limit": 0
}
}