Parameters
1 query
Query parameters
· 1issueKeystringRequiredIssue key (e.g. "PROJ-123").
PROJ-123Lightweight version of /detail for use inside hover popovers on the issue grid. Skips attachments, internal notes and project chrome; collapses the comment thread to just the most recent row. Intended to be fetched lazily on first hover — the grid caches by issueKey.
1 query
issueKeystringRequiredIssue key (e.g. "PROJ-123").
PROJ-1231 status code documented
issueKeystringRequiredIssue key.
subjectstringRequiredIssue subject/title.
descriptionstringRequiredRaw markdown as stored. The renderer runs client-side (matches CmsMarkdownPreview). Empty string when the issue has no description.
aiSummarystring | nullRequiredLLM-produced short brief of the description (~2-4 sentences). Rendered above the description in hover cards so a reader sees the point of the ticket first. null when no summary has been generated yet.
prioritynumberRequiredPriority (1..5).
priorityLabelstringRequiredHuman-readable priority label.
statusobjectRequiredidnumberRequiredStatus ID.
labelstringRequiredStatus display label (localized to the viewing organisation).
categoryIdnumberRequiredStatus category ID (1=new, 2=progress, 3=waiting, 4=done).
categoryCodestringRequiredStatus category code.
assigneeobject | nullRequiredidnumberRequiredContact ID.
externalIdstring | nullRequiredPublic contact identifier used in admin URLs (/contact/{externalId}) and in /bff/contact/detail?customerId=.... null for legacy rows that predate the external-id backfill; the UI should render the name without a link in that case.
namestringRequiredFull name.
emailstring | nullRequiredContact e-mail. null for phone-only contacts (no e-mail registered) and for contacts anonymised via GDPR. UI should fall back to name or the contact ID.
reporterobject | nullRequiredidnumberRequiredContact ID.
externalIdstring | nullRequiredPublic contact identifier used in admin URLs (/contact/{externalId}) and in /bff/contact/detail?customerId=.... null for legacy rows that predate the external-id backfill; the UI should render the name without a link in that case.
namestringRequiredFull name.
emailstring | nullRequiredContact e-mail. null for phone-only contacts (no e-mail registered) and for contacts anonymised via GDPR. UI should fall back to name or the contact ID.
isSpamboolean | nullRequiredSpam classification. Null = not yet classified.
commentsCountnumberRequiredTotal comments across all author kinds.
isStalebooleanRequiredTrue when the issue is progress/waiting and has not moved in 7+ days. Mirrors the flag in /list.
insertedDateDate | string | string | numberRequiredWhen the issue was created.
When the issue was created.
updatedDateDate | string | string | number | nullRequiredLast update timestamp.
Last update timestamp.
dueDateDate | string | string | number | nullRequiredDue date, when set.
Due date, when set.
lastCommentobject | nullRequiredMost recent comment on the issue, or null if there are no comments yet.
authorKind"human" | "ai" | "system"RequiredauthorNamestringRequiredReady-to-render display name. For ai/system this is a synthetic label ("AI Agent" / "System"), NOT the FK contact's name.
messagestringRequiredComment text (raw markdown).
insertedDateDate | string | string | numberRequiredexist"false"Required{
"issueKey": "example_issueKey",
"subject": "example_subject",
"description": "example_description",
"priority": 0,
"priorityLabel": "example_priorityLabel",
"status": {
"id": 0,
"label": "example_label",
"categoryId": 0,
"categoryCode": "example_categoryCode"
},
"commentsCount": 0,
"isStale": false
}GET /bff/issue/preview
curl -X GET "https://api.bizkithub.com/bff/issue/preview?issueKey=PROJ-123" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY"All BizKitHub public API endpoints require authentication via API key.