Issue Tracker - Tickets¶
GET /api/issue-tracker-tickets
GET /api/issue-tracker-tickets/{id}
POST /api/issue-tracker-tickets
PUT /api/issue-tracker-tickets/{id}
DELETE /api/issue-tracker-tickets/{id}
GET /api/issue-tracker-tickets/{id}/notes
Required privilege: Issue Tracker / View (read) ยท Issue Tracker / Edit (write)
The Issue Tracker allows users to log, track, and resolve supply chain issues and exceptions directly within Knosc.
Ticket Object¶
{
"id": "TKT-001",
"Title": "Delayed shipment from Acme",
"Description": "PO-2024-001 ETA pushed by 5 days.",
"Status": "Open",
"Priority": "High",
"Category": "Procurement",
"Assignee Email": "jane.doe@acme.com",
"Reporter Email": "john.smith@acme.com",
"Created At": "2024-03-10T09:00:00Z",
"Updated At": "2024-03-10T09:00:00Z",
"Due Date": "2024-03-20",
"Linked PO Id": 42,
"Linked PO Number": "PO-2024-001",
"Notes": [],
"Subscribers": ["jane.doe@acme.com"]
}
| Field | Type | Description |
|---|---|---|
id |
string | Unique ticket identifier (e.g., TKT-001) |
Title |
string | Ticket summary |
Description |
string | null | Detailed description |
Status |
string | Open, In Progress, Resolved, Closed |
Priority |
string | Low, Medium, High, Critical |
Category |
string | Issue category |
Assignee Email |
string | null | Assigned user |
Due Date |
string | null | Resolution target date (ISO 8601) |
Linked PO Id |
integer | null | Linked purchase order |
Notes |
array | Ticket notes - see Notes |
GET - List Tickets¶
Supports filter, sort, and pagination. Filterable fields include: Status, Priority, Category, Assignee Email.
GET - Get Ticket¶
GET - Get Ticket Notes¶
Returns all notes for a ticket.
POST - Create Ticket¶
POST /api/issue-tracker-tickets HTTP/1.1
Content-Type: application/json
X-XSRF-TOKEN: <csrf>
{
"Title": "Delayed shipment from Acme",
"Description": "PO-2024-001 ETA pushed by 5 days.",
"Priority": "High",
"Category": "Procurement",
"Assignee Email": "jane.doe@acme.com",
"Due Date": "2024-03-20",
"Linked PO Id": 42
}
| Field | Type | Required | Description |
|---|---|---|---|
Title |
string | Yes | Ticket summary |
Description |
string | No | Detailed description |
Priority |
string | Yes | Low, Medium, High, Critical |
Category |
string | No | Issue category |
Assignee Email |
string | No | User to assign |
Due Date |
string | No | ISO 8601 date |
Linked PO Id |
integer | No | Link to a purchase order |
PUT - Update Ticket¶
PUT /api/issue-tracker-tickets/TKT-001 HTTP/1.1
Content-Type: application/json
X-XSRF-TOKEN: <csrf>
{
"Status": "In Progress",
"Assignee Email": "ops.team@acme.com"
}
DELETE - Delete Ticket¶
Code Example¶
csrf = session.cookies.get("csrf_access_token")
# Create a ticket
r = session.post(
"https://acme.knosc.com/api/issue-tracker-tickets",
headers={"X-XSRF-TOKEN": csrf},
json={
"Title": "Delayed shipment from Acme",
"Priority": "High",
"Linked PO Id": 42
}
)
ticket_id = r.json()["id"]
# Update status
session.put(
f"https://acme.knosc.com/api/issue-tracker-tickets/{ticket_id}",
headers={"X-XSRF-TOKEN": csrf},
json={"Status": "Resolved"}
)