Tickets API
Create and manage remediation tickets linked to findings, controls, and risks.
List Tickets
GET /api/v1/tickets
Returns tickets for the authenticated organization.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | integer | 50 | Maximum results (1-200) |
offset | integer | 0 | Pagination offset |
status | string | - | Filter: open, in_progress, resolved, closed |
priority | string | - | Filter: critical, high, medium, low |
Example Request
curl "https://api.clawgrc.com/api/v1/tickets?status=open&priority=critical" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
{
"tickets": [
{
"id": "ticket-uuid",
"org_id": "org-uuid",
"title": "Patch SQL injection in user search",
"description": "Use parameterized queries for /api/users/search",
"priority": "critical",
"status": "open",
"finding_id": "finding-uuid",
"created_at": "2025-01-15T14:30:00Z",
"updated_at": "2025-01-15T14:30:00Z"
}
],
"total": 5,
"limit": 50,
"offset": 0
}
Create Ticket
POST /api/v1/tickets
Create a new remediation ticket.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Clear description of the work |
description | string | No | Detailed context and remediation steps |
priority | string | Yes | critical, high, medium, low |
finding_id | UUID | No | Link to an originating finding |
Example Request
curl -X POST https://api.clawgrc.com/api/v1/tickets \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Update TLS configuration",
"description": "Disable TLS 1.0 and 1.1 on all production endpoints.",
"priority": "high",
"finding_id": "finding-uuid"
}'
Example Response (201 Created)
{
"id": "ticket-uuid",
"title": "Update TLS configuration",
"priority": "high",
"status": "open",
"created_at": "2025-01-15T14:30:00Z"
}
Get Ticket
GET /api/v1/tickets/:id
Returns a single ticket with full details.
Update Ticket
PUT /api/v1/tickets/:id
Update ticket status, priority, or other fields.
Request Body
| Field | Type | Description |
|---|---|---|
title | string | Updated title |
description | string | Updated description |
priority | string | Updated priority |
status | string | open, in_progress, resolved, closed |
Example Request
curl -X PUT https://api.clawgrc.com/api/v1/tickets/ticket-uuid \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"status": "resolved"
}'