Documentation Index
Fetch the complete documentation index at: https://docs.city.atlas.krd/llms.txt
Use this file to discover all available pages before exploring further.
Endpoint
PATCH /api/v1/tickets/{id}/unassign
Authentication
Requires authentication with ticket:write permission.
Path Parameters
| Parameter | Type | Required | Description |
|---|
id | string (UUID) | Yes | Ticket ID to unassign |
Request Example
curl -X PATCH "http://localhost:3001/api/v1/tickets/550e8400-e29b-41d4-a716-446655440000/unassign" \
-H "Cookie: session=your-session-cookie"
Response
Success Response (200)
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"userId": "550e8400-e29b-41d4-a716-446655440002",
"status": "PENDING",
"category": "MAINTENANCE",
"title": "Elevator Malfunction",
"description": "Elevator not working on floor 3",
"attachments": ["https://example.com/image1.jpg"],
"assignedTo": null,
"notes": "Unassigned from technician",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T12:30:00Z"
}
Error Response (400)
{
"success": false,
"error": {
"message": "Invalid ticket ID format",
"code": "VALIDATION_ERROR"
}
}
Error Response (404)
{
"success": false,
"error": {
"message": "Ticket not found",
"code": "NOT_FOUND"
}
}
Error Response (401)
{
"success": false,
"error": {
"message": "Unauthorized access",
"code": "UNAUTHORIZED"
}
}
Error Response (403)
{
"success": false,
"error": {
"message": "Insufficient permissions",
"code": "FORBIDDEN"
}
}
Notes
- The ticket’s
updatedAt timestamp is automatically updated
- The
assignedTo field is set to null
- Unassigning a ticket doesn’t automatically change its status
- Use the Change Ticket Status endpoint to update status after unassigning