built by solve-studio

Privacy·Terms

Loop Developers
Loop Developers
API ReferenceMCPDashboard

Introduction

Loop Developer APIGetting Started

Reference

API ReferenceProjectsFeedbackCommentsBoardsTicketsClients
MCP ServerMCP SetupMCP Tools

Other

Rate Limits
API Reference

Tickets

List, update, and generate AI-powered developer tickets.

Developer tickets are AI-generated structured tasks created from raw feedback items or board cards. They include prioritisation, acceptance criteria, and labels to accelerate your development workflow.

List tickets

Returns dev tickets with optional filters and pagination.

GET /api/v1/tickets

Query parameters

ParameterTypeDefaultDescription
project_idstring—Filter by project
statusstring—Filter by status: open, in_progress, done
limitnumber50Results per page (max 100)
offsetnumber0Items to skip

Response

{
  "data": [
    {
      "id": "ticket-001",
      "org_id": "org-001",
      "project_id": "proj-001",
      "source_type": "feedback",
      "source_id": "fb-001",
      "title": "Fix CTA button colour on iOS Safari",
      "description": "## Summary\nThe CTA button renders as grey on iOS Safari...\n\n## Acceptance Criteria\n- Button shows correct blue (#3B82F6) on Safari 17+\n- Visual regression test added",
      "priority": "high",
      "status": "open",
      "labels": ["bug", "mobile", "urgent"],
      "ai_context": {},
      "created_by": "user-001",
      "assigned_to": null,
      "created_at": "2025-06-20T16:00:00Z",
      "updated_at": "2025-06-20T16:00:00Z"
    }
  ],
  "meta": { "total": 1, "limit": 50, "offset": 0 }
}

Ticket fields

FieldTypeDescription
idstringTicket ID
org_idstringOrganisation ID
project_idstringAssociated project ID
source_type"feedback" | "board_card"What the ticket was generated from
source_idstringID of the source feedback or card
titlestringAI-generated title
descriptionstringAI-generated markdown description with acceptance criteria
priority"low" | "medium" | "high" | "critical"AI-assigned priority
status"open" | "in_progress" | "done"Current status
labelsstring[]AI-generated labels
created_bystring | nullUser who triggered generation
assigned_tostring | nullAssigned user ID
created_atstringISO 8601 timestamp
updated_atstringISO 8601 timestamp

Get ticket

Retrieve a single ticket with all fields.

GET /api/v1/tickets/:id

Path parameters

ParameterTypeDescription
idstringTicket ID

Errors

StatusError
404Ticket not found

Update ticket

Update a ticket's editable fields.

PATCH /api/v1/tickets/:id

Path parameters

ParameterTypeDescription
idstringTicket ID

Request body

FieldTypeDescription
statusstringopen, in_progress, or done
prioritystringlow, medium, high, or critical
titlestringUpdated title
descriptionstringUpdated description (markdown)
assigned_tostring | nullUser ID to assign
labelsstring[]Updated labels array

All fields are optional. At least one must be provided.

Example

curl -X PATCH \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status": "in_progress", "assigned_to": "user-002"}' \
  https://loop.solve-studio.co/api/v1/tickets/ticket-001

Errors

StatusError
400No valid fields / Invalid status / Invalid priority
404Ticket not found

Generate ticket

Use AI to create a structured developer ticket from a feedback item or board card. The AI analyses the source content (including comments) and generates a title, description with acceptance criteria, priority, and labels.

POST /api/v1/tickets/generate

Request body

FieldTypeRequiredDescription
source_typestringYesfeedback or board_card
source_idstringYesID of the feedback item or board card

Example

curl -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"source_type": "feedback", "source_id": "fb-001"}' \
  https://loop.solve-studio.co/api/v1/tickets/generate

Response (201 Created)

{
  "data": {
    "id": "ticket-002",
    "title": "Fix CTA button colour on iOS Safari",
    "description": "## Summary\n...",
    "priority": "high",
    "status": "open",
    "labels": ["bug", "mobile"],
    "source_type": "feedback",
    "source_id": "fb-001",
    "created_at": "2025-06-21T10:00:00Z"
  }
}

Errors

StatusError
400Missing source_type or source_id / Invalid source_type
404Source item not found
500AI generation failed

Boards

Access Kanban board lists and cards.

Clients

List clients in your organisation.

On this page

List ticketsQuery parametersResponseTicket fieldsGet ticketPath parametersErrorsUpdate ticketPath parametersRequest bodyExampleErrorsGenerate ticketRequest bodyExampleResponse (201 Created)Errors