Cortex API reference
Use the Cortex API to work with Modules, Flashes, Issues, and their related resources. This reference is generated from the contract used by the Cortex service.
Send a Socra access token as a Bearer token in the Authorization header. Review access and permissions before choosing the principal and Account for the request. All methods use JSON unless the method has no request or response body.
curl https://cortex.socra.cloud/v1/modules \
--header "Authorization: Bearer $SOCRA_ACCESS_TOKEN"
The contract below is the source of truth for method paths, inputs, outputs, and required authorization scopes.
Base URL
https://cortex.socra.cloudModules
A context module — a self-contained unit of specific knowledge, addressed by name within an account.
Create module
/v1/modulesRequest body
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
dependenciesstring[]optionalNames of the direct module dependencies.
visibility"internal" | "private"optionalVisibility of the module within its account.
parentstring | nulloptionalName of the organizational parent, or null for a root module.
inherit_permissionsbooleanoptionalWhether the module uses the permission policy of its parent.
Response
13 fields
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
List modules
/v1/modulesQuery parameters
qstringoptionalText to find in module names or content.
ownerstringoptionalAccount-user ID by which to filter modules.
state"active" | "archived" | "all"optionalArchival state by which to filter modules.
limitintegeroptionalMaximum number of modules to return.
min: 1 · max: 100afterstringoptionalCursor after which to return modules.
Response
2 fields
dataobject[]requiredModules in this page.
dataobject[]requiredModules in this page.
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
has_morebooleanrequiredWhether more modules are available.
Get module
/v1/modules/{name}Path parameters
namestringrequiredAccount-unique name of the module.
Query parameters
No query parameters
Response
13 fields
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
Update module
/v1/modules/{name}Path parameters
namestringrequiredAccount-unique name of the module.
Request body
namestringoptionalNew account-unique name of the module.
contentstringoptionalNew authored knowledge content of the module.
dependenciesstring[]optionalComplete new set of direct module dependency names.
visibility"internal" | "private"optionalNew visibility of the module within its account.
ownerstringoptionalAccount-user ID of the new module owner.
default_assigneestring | nulloptionalNew default account-user ID for unassigned work, or null to clear it.
parentstring | nulloptionalNew organizational parent name, or null to make the module a root.
inherit_permissionsbooleanoptionalWhether the module uses the permission policy of its parent.
Response
13 fields
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
List module versions
/v1/modules/{name}/versionsPath parameters
namestringrequiredAccount-unique name of the module.
Query parameters
limitintegeroptionalMaximum number of module versions to return.
min: 1 · max: 100afterintegeroptionalVersion number before which to return older versions.
greater than: 0 · max: 9007199254740991Response
2 fields
dataobject[]requiredModule versions in this page.
dataobject[]requiredModule versions in this page.
module_idcustomrequiredStable ID of the versioned module.
versionintegerrequiredRevision number of this module version.
greater than: 0 · max: 9007199254740991namestringrequiredModule name in this version.
contentstringrequiredAuthored knowledge content in this version.
dependenciesstring[]requiredDirect dependency names in this version.
ownerstringrequiredAccount-user ID of the module owner in this version.
default_assigneestring | nullrequiredDefault account-user ID in this version, or null if none was set.
visibility"internal" | "private"requiredModule visibility in this version.
archivedboolean | nullrequiredArchive state in this version; null for older snapshots where it was not recorded.
authorstring | nullrequiredAccount-user ID of the version author, or null if unknown.
source"create" | "update" | "backfill"requiredOperation that created the module version.
changed_fields"name" | "content" | "dependencies" | "owner" | "default_assignee" | "visibility" | "archived"[]requiredModule fields that changed in this version.
created_atcustomrequiredDate and time when the module version was created.
has_morebooleanrequiredWhether more module versions are available.
Get module version
/v1/modules/{name}/versions/{version}Path parameters
namestringrequiredAccount-unique name of the module.
versionintegerrequiredModule version number.
greater than: 0 · max: 9007199254740991Query parameters
No query parameters
Response
13 fields
module_idcustomrequiredStable ID of the versioned module.
versionintegerrequiredRevision number of this module version.
greater than: 0 · max: 9007199254740991namestringrequiredModule name in this version.
contentstringrequiredAuthored knowledge content in this version.
dependenciesstring[]requiredDirect dependency names in this version.
ownerstringrequiredAccount-user ID of the module owner in this version.
default_assigneestring | nullrequiredDefault account-user ID in this version, or null if none was set.
visibility"internal" | "private"requiredModule visibility in this version.
archivedboolean | nullrequiredArchive state in this version; null for older snapshots where it was not recorded.
authorstring | nullrequiredAccount-user ID of the version author, or null if unknown.
source"create" | "update" | "backfill"requiredOperation that created the module version.
changed_fields"name" | "content" | "dependencies" | "owner" | "default_assignee" | "visibility" | "archived"[]requiredModule fields that changed in this version.
created_atcustomrequiredDate and time when the module version was created.
Archive module
/v1/modules/{name}/archivePath parameters
namestringrequiredAccount-unique name of the module.
Request body
No request body
Response
13 fields
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
Restore module
/v1/modules/{name}/restorePath parameters
namestringrequiredAccount-unique name of the module.
Request body
contentstringoptionalReplacement body committed with restoration; omitted preserves the body.
dependenciesstring[]optionalComplete final dependency list; omitted preserves links, [] removes all links.
Response
13 fields
idcustomrequiredStable unique ID of the module.
namestringrequiredAccount-unique name of the module.
contentstringrequiredAuthored knowledge content of the module.
versionintegerrequiredCurrent knowledge revision of the module.
greater than: 0 · max: 9007199254740991archivedbooleanrequiredWhether the module is archived.
visibility"internal" | "private"requiredVisibility of the module within its account.
dependenciesstring[]requiredNames of the direct module dependencies.
ownerstringrequiredAccount-user ID of the module owner.
default_assigneestring | nullrequiredDefault account-user ID for unassigned work, or null if none is set.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
inherit_permissionsbooleanrequiredWhether the module uses the permission policy of its parent.
created_atcustomrequiredDate and time when the module was created.
updated_atcustomrequiredDate and time when the module was last updated.
Delete module
/v1/modules/{name}Path parameters
namestringrequiredAccount-unique name of the module.
Query parameters
No query parameters
Response
No response body
Module graph
/v1/modules/graphRequest body
No request body
Response
1 field
nodesobject[]requiredAccessible modules and their direct dependency edges.
nodesobject[]requiredAccessible modules and their direct dependency edges.
namestringrequiredAccount-unique name of the module.
summarystringrequiredFirst meaningful line of the module content.
ownerstringrequiredAccount-user ID of the module owner.
visibility"internal" | "private"requiredVisibility of the module within its account.
parentstring | nullrequiredName of the organizational parent, or null for a root module.
depends_onstring[]requiredNames of the direct module dependencies.
Module permissions
The effective permission policy projected through a Cortex module.
Get module permissions
/v1/modules/{name}/permissionsPath parameters
namestringrequiredAccount-unique name of the module.
Query parameters
No query parameters
Response
4 fields
inheritedbooleanrequiredWhether the module uses the permission policy of an ancestor.
inherited_fromstring | nullrequiredName of the module that owns the effective policy, or null for this module.
etagstringrequiredOpaque revision tag of the effective permission policy.
bindingsobject[]requiredRole bindings in the effective policy.
bindingsobject[]requiredRole bindings in the effective policy.
role"admin" | "editor" | "commenter" | "viewer"requiredAccess role granted by this binding.
membersobject[]requiredPrincipals and groups that receive the access role.
min items: 1Set module permissions
/v1/modules/{name}/permissionsPath parameters
namestringrequiredAccount-unique name of the module.
Request body
etagstringrequiredRevision tag that the current policy must match.
min length: 1bindingsobject[]requiredComplete new set of role bindings.
bindingsobject[]requiredComplete new set of role bindings.
role"admin" | "editor" | "commenter" | "viewer"requiredAccess role granted by this binding.
membersobject[]requiredPrincipals and groups that receive the access role.
min items: 1Response
4 fields
inheritedbooleanrequiredWhether the module uses the permission policy of an ancestor.
inherited_fromstring | nullrequiredName of the module that owns the effective policy, or null for this module.
etagstringrequiredOpaque revision tag of the effective permission policy.
bindingsobject[]requiredRole bindings in the effective policy.
bindingsobject[]requiredRole bindings in the effective policy.
role"admin" | "editor" | "commenter" | "viewer"requiredAccess role granted by this binding.
membersobject[]requiredPrincipals and groups that receive the access role.
min items: 1Flashes
A flash — one assembly of a target module's dependency closure into a single context bundle. The metered consume verb of Cortex.
Flash a module
/v1/flashesRequest body
targetstringrequiredName of the module to flash.
Response
7 fields
idcustomrequiredUnique ID of the flash.
targetstringrequiredName of the module that was explicitly flashed.
total_tokensnumberrequiredTotal tokens in the assembled dependency closure.
module_countnumberrequiredNumber of modules in the assembled dependency closure.
linesobject[]requiredImmutable module manifest for the flash.
linesobject[]requiredImmutable module manifest for the flash.
modulestringrequiredName of the module in the flash closure.
versioninteger | nullrequiredModule revision used in the flash, or null for a legacy record.
tokensnumberrequiredTokens attributed to the module in this flash.
is_targetbooleanrequiredWhether this module was the explicit flash target.
created_atcustomrequiredDate and time when the flash was created.
assemblyobjectrequiredContext bundle produced by the flash.
assemblyobjectrequiredContext bundle produced by the flash.
targetstringrequiredName of the module that was explicitly flashed.
modulesobject[]requiredDependency closure in foundation-first order.
modulesobject[]requiredDependency closure in foundation-first order.
namestringrequiredAccount-unique name of the assembled module.
contentstringrequiredAuthored knowledge content of the assembled module.
depends_onstring[]requiredNames of the direct module dependencies.
List flashes
/v1/flashesQuery parameters
targetstringoptionalTarget module name by which to filter flashes.
limitintegeroptionalMaximum number of flashes to return.
min: 1 · max: 100afterstringoptionalCursor after which to return flashes.
Response
2 fields
dataobject[]requiredFlashes in this page.
dataobject[]requiredFlashes in this page.
idcustomrequiredUnique ID of the flash.
targetstringrequiredName of the module that was explicitly flashed.
total_tokensnumberrequiredTotal tokens in the assembled dependency closure.
module_countnumberrequiredNumber of modules in the assembled dependency closure.
linesobject[]requiredImmutable module manifest for the flash.
linesobject[]requiredImmutable module manifest for the flash.
modulestringrequiredName of the module in the flash closure.
versioninteger | nullrequiredModule revision used in the flash, or null for a legacy record.
tokensnumberrequiredTokens attributed to the module in this flash.
is_targetbooleanrequiredWhether this module was the explicit flash target.
created_atcustomrequiredDate and time when the flash was created.
has_morebooleanrequiredWhether more flashes are available.
Get a flash
/v1/flashes/{id}Path parameters
idcustomrequiredUnique ID of the flash.
Query parameters
No query parameters
Response
6 fields
idcustomrequiredUnique ID of the flash.
targetstringrequiredName of the module that was explicitly flashed.
total_tokensnumberrequiredTotal tokens in the assembled dependency closure.
module_countnumberrequiredNumber of modules in the assembled dependency closure.
linesobject[]requiredImmutable module manifest for the flash.
linesobject[]requiredImmutable module manifest for the flash.
modulestringrequiredName of the module in the flash closure.
versioninteger | nullrequiredModule revision used in the flash, or null for a legacy record.
tokensnumberrequiredTokens attributed to the module in this flash.
is_targetbooleanrequiredWhether this module was the explicit flash target.
created_atcustomrequiredDate and time when the flash was created.
Get a flash assembly
/v1/flashes/{id}/assemblyPath parameters
idcustomrequiredUnique ID of the flash.
Query parameters
No query parameters
Response
2 fields
targetstringrequiredName of the module that was explicitly flashed.
modulesobject[]requiredDependency closure in foundation-first order.
modulesobject[]requiredDependency closure in foundation-first order.
namestringrequiredAccount-unique name of the assembled module.
contentstringrequiredAuthored knowledge content of the assembled module.
depends_onstring[]requiredNames of the direct module dependencies.
Flash usage
/v1/flashes/usageRequest body
sincecustomoptionalInclusive start of the usage window.
untilcustomoptionalInclusive end of the usage window.
sort"flashed" | "pulled" | "tokens"optionalField by which to order module usage.
group_by"day" | "module_day"optionalOptional time grouping for usage.
Response
5 fields
total_flashesnumberrequiredNumber of flashes in the usage window.
total_tokensnumberrequiredTotal tokens served in the usage window.
modulesobject[]requiredUsage totals for each module in the window.
modulesobject[]requiredUsage totals for each module in the window.
modulestringrequiredAccount-unique name of the module.
explicit_flashesnumberrequiredNumber of times the module was an explicit flash target.
transitive_pullsnumberrequiredNumber of times the module was pulled into another closure.
total_tokensnumberrequiredTokens attributed to the module in the usage window.
last_flashed_atcustom | nullrequiredLast time the module was an explicit target, or null if it was not targeted.
per_dayobject[]optionalDaily usage buckets when time grouping is requested.
per_dayobject[]optionalDaily usage buckets when time grouping is requested.
datestringrequiredUTC date of the usage bucket in YYYY-MM-DD format.
flashesnumberrequiredNumber of explicit flashes on this date.
tokensnumberrequiredTotal tokens served on this date.
pullsnumberrequiredNumber of transitive module pulls on this date.
module_dailyobject[]optionalPer-module daily usage series when module-day grouping is requested.
module_dailyobject[]optionalPer-module daily usage series when module-day grouping is requested.
modulestringrequiredAccount-unique name of the module.
pointsobject[]requiredDaily explicit-flash usage points.
pointsobject[]requiredDaily explicit-flash usage points.
datestringrequiredUTC date of the usage point in YYYY-MM-DD format.
flashesnumberrequiredNumber of times the module was flashed on this date.
Issues
A unit of work in flight, owned by a module — the work supply chain over an account’s knowledge.
Create issue
/v1/issuesRequest body
modulestringrequiredName of the module that will own the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
assigneestring | nulloptionalAccount-user ID to assign, or null to leave the issue unassigned.
priority"low" | "medium" | "high" | "urgent" | nulloptionalIssue priority, or null if it is not triaged.
dependenciesstring[]optionalIDs of issues that must finish before this issue.
labelsstring[]optionalIDs of labels to attach to the issue.
Response
14 fields
idcustomrequiredUnique ID of the issue.
modulestringrequiredName of the module that owns the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"requiredCurrent lifecycle status of the issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredIssue priority, or null if it is not triaged.
originatorstringrequiredAccount-user ID of the user who created the issue.
assigneestring | nullrequiredAssigned account-user ID, or null if unassigned.
dependenciesstring[]requiredIDs of issues that must finish before this issue.
labelsobject[]requiredLabels attached to the issue.
labelsobject[]requiredLabels attached to the issue.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
schedulestring | nullrequiredID of the schedule that created the issue, or null if none did.
scheduled_forcustom | nullrequiredScheduled occurrence that created the issue, or null if it was not scheduled.
created_atcustomrequiredDate and time when the issue was created.
updated_atcustomrequiredDate and time when the issue was last updated.
List issues
/v1/issuesQuery parameters
modulestringoptionalModule name by which to filter issues.
status"open" | "in_progress" | "done" | "canceled"optionalLifecycle status by which to filter issues.
assigneestringoptionalAccount-user ID by which to filter issues.
labelstringoptionalLabel ID by which to filter issues.
qstringoptionalText to find in issue titles, descriptions, or comments.
limitintegeroptionalMaximum number of issues to return.
min: 1 · max: 100afterstringoptionalCursor after which to return issues.
Response
2 fields
dataobject[]requiredIssues in this page.
dataobject[]requiredIssues in this page.
idcustomrequiredUnique ID of the issue.
modulestringrequiredName of the module that owns the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"requiredCurrent lifecycle status of the issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredIssue priority, or null if it is not triaged.
originatorstringrequiredAccount-user ID of the user who created the issue.
assigneestring | nullrequiredAssigned account-user ID, or null if unassigned.
dependenciesstring[]requiredIDs of issues that must finish before this issue.
labelsobject[]requiredLabels attached to the issue.
labelsobject[]requiredLabels attached to the issue.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
schedulestring | nullrequiredID of the schedule that created the issue, or null if none did.
scheduled_forcustom | nullrequiredScheduled occurrence that created the issue, or null if it was not scheduled.
created_atcustomrequiredDate and time when the issue was created.
updated_atcustomrequiredDate and time when the issue was last updated.
has_morebooleanrequiredWhether more issues are available.
Issue inbox
/v1/issues/inboxRequest body
limitintegeroptionalMaximum number of issues to return.
min: 1 · max: 100afterstringoptionalCursor after which to return issues.
Response
2 fields
dataobject[]requiredIssues in this page.
dataobject[]requiredIssues in this page.
idcustomrequiredUnique ID of the issue.
modulestringrequiredName of the module that owns the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"requiredCurrent lifecycle status of the issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredIssue priority, or null if it is not triaged.
originatorstringrequiredAccount-user ID of the user who created the issue.
assigneestring | nullrequiredAssigned account-user ID, or null if unassigned.
dependenciesstring[]requiredIDs of issues that must finish before this issue.
labelsobject[]requiredLabels attached to the issue.
labelsobject[]requiredLabels attached to the issue.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
schedulestring | nullrequiredID of the schedule that created the issue, or null if none did.
scheduled_forcustom | nullrequiredScheduled occurrence that created the issue, or null if it was not scheduled.
created_atcustomrequiredDate and time when the issue was created.
updated_atcustomrequiredDate and time when the issue was last updated.
has_morebooleanrequiredWhether more issues are available.
Get issue
/v1/issues/{id}Path parameters
idcustomrequiredUnique ID of the issue.
Query parameters
No query parameters
Response
14 fields
idcustomrequiredUnique ID of the issue.
modulestringrequiredName of the module that owns the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"requiredCurrent lifecycle status of the issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredIssue priority, or null if it is not triaged.
originatorstringrequiredAccount-user ID of the user who created the issue.
assigneestring | nullrequiredAssigned account-user ID, or null if unassigned.
dependenciesstring[]requiredIDs of issues that must finish before this issue.
labelsobject[]requiredLabels attached to the issue.
labelsobject[]requiredLabels attached to the issue.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
schedulestring | nullrequiredID of the schedule that created the issue, or null if none did.
scheduled_forcustom | nullrequiredScheduled occurrence that created the issue, or null if it was not scheduled.
created_atcustomrequiredDate and time when the issue was created.
updated_atcustomrequiredDate and time when the issue was last updated.
Update issue
/v1/issues/{id}Path parameters
idcustomrequiredUnique ID of the issue.
Request body
titlestringoptionalNew short title of the issue.
descriptionstringoptionalNew premise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"optionalNew lifecycle status of the issue.
assigneestring | nulloptionalAccount-user ID to assign, or null to unassign the issue.
priority"low" | "medium" | "high" | "urgent" | nulloptionalNew issue priority, or null to clear the priority.
dependenciesstring[]optionalComplete new set of issue dependency IDs.
labelsstring[]optionalComplete new set of label IDs.
Response
14 fields
idcustomrequiredUnique ID of the issue.
modulestringrequiredName of the module that owns the issue.
titlestringrequiredShort title of the issue.
descriptionstringrequiredPremise and required outcome of the issue.
status"open" | "in_progress" | "done" | "canceled"requiredCurrent lifecycle status of the issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredIssue priority, or null if it is not triaged.
originatorstringrequiredAccount-user ID of the user who created the issue.
assigneestring | nullrequiredAssigned account-user ID, or null if unassigned.
dependenciesstring[]requiredIDs of issues that must finish before this issue.
labelsobject[]requiredLabels attached to the issue.
labelsobject[]requiredLabels attached to the issue.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
schedulestring | nullrequiredID of the schedule that created the issue, or null if none did.
scheduled_forcustom | nullrequiredScheduled occurrence that created the issue, or null if it was not scheduled.
created_atcustomrequiredDate and time when the issue was created.
updated_atcustomrequiredDate and time when the issue was last updated.
Delete issue
/v1/issues/{id}Path parameters
idcustomrequiredUnique ID of the issue.
Query parameters
No query parameters
Response
No response body
Labels
An account-scoped classification that can be attached to Cortex issues.
Create label
/v1/labelsRequest body
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nulloptionalHex color of the label, or null to create it without a color.
Response
5 fields
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
created_atcustomrequiredDate and time when the label was created.
updated_atcustomrequiredDate and time when the label was last updated.
List labels
/v1/labelsQuery parameters
namestringoptionalExact label name by which to filter labels.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$qstringoptionalText to find in label names.
limitintegeroptionalMaximum number of labels to return.
min: 1 · max: 100afterstringoptionalCursor after which to return labels.
Response
2 fields
dataobject[]requiredLabels in this page.
dataobject[]requiredLabels in this page.
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
created_atcustomrequiredDate and time when the label was created.
updated_atcustomrequiredDate and time when the label was last updated.
has_morebooleanrequiredWhether more labels are available.
Get label
/v1/labels/{id}Path parameters
idcustomrequiredUnique ID of the label.
Query parameters
No query parameters
Response
5 fields
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
created_atcustomrequiredDate and time when the label was created.
updated_atcustomrequiredDate and time when the label was last updated.
Update label
/v1/labels/{id}Path parameters
idcustomrequiredUnique ID of the label.
Request body
namestringoptionalNew account-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nulloptionalNew hex color of the label, or null to clear the color.
Response
5 fields
idcustomrequiredUnique ID of the label.
namestringrequiredAccount-unique name of the label.
min length: 1 · max length: 40 · pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$colorstring | nullrequiredHex color of the label, or null if it has no color.
created_atcustomrequiredDate and time when the label was created.
updated_atcustomrequiredDate and time when the label was last updated.
Delete label
/v1/labels/{id}Path parameters
idcustomrequiredUnique ID of the label.
Query parameters
No query parameters
Response
No response body
Issue schedules
A durable recurrence rule that materializes ordinary Cortex issues.
Create issue schedule
/v1/issue-schedulesRequest body
modulestringrequiredName of the module that will own generated issues.
titlestringrequiredTitle to assign to each generated issue.
min length: 1descriptionstringrequiredPremise to assign to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nulloptionalPriority to assign to generated issues, or null to leave them untriaged.
assigneestring | nulloptionalAccount-user ID to assign to generated issues, or null to leave them unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
min length: 1timezonestringoptionalIANA time zone in which to evaluate the cron expression.
default: "UTC" · min length: 1overlap_policy"coalesce" | "allow"optionalBehavior when a previous issue from the schedule is still open.
default: "coalesce"missed_run_policy"next_only" | "catch_up"optionalBehavior for occurrences missed while the schedule was inactive.
default: "next_only"Response
15 fields
idcustomrequiredUnique ID of the issue schedule.
modulestringrequiredName of the module that owns generated issues.
titlestringrequiredTitle assigned to each generated issue.
descriptionstringrequiredPremise assigned to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredPriority assigned to generated issues, or null if they are not triaged.
assigneestring | nullrequiredAccount-user ID assigned to generated issues, or null if they are unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
timezonestringrequiredIANA time zone in which to evaluate the cron expression.
overlap_policy"coalesce" | "allow"requiredBehavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"requiredBehavior for occurrences missed while the schedule was inactive.
enabledbooleanrequiredWhether the schedule can generate issues.
next_run_atcustomrequiredDate and time of the next scheduled occurrence.
created_bystringrequiredAccount-user ID of the user who created the schedule.
created_atcustomrequiredDate and time when the schedule was created.
updated_atcustomrequiredDate and time when the schedule was last updated.
List issue schedules
/v1/issue-schedulesQuery parameters
modulestringoptionalModule name by which to filter issue schedules.
enabledboolean | "true" | "false"optionalWhether to return enabled or disabled issue schedules.
limitintegeroptionalMaximum number of issue schedules to return.
min: 1 · max: 100afterstringoptionalCursor after which to return issue schedules.
Response
2 fields
dataobject[]requiredIssue schedules in this page.
dataobject[]requiredIssue schedules in this page.
idcustomrequiredUnique ID of the issue schedule.
modulestringrequiredName of the module that owns generated issues.
titlestringrequiredTitle assigned to each generated issue.
descriptionstringrequiredPremise assigned to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredPriority assigned to generated issues, or null if they are not triaged.
assigneestring | nullrequiredAccount-user ID assigned to generated issues, or null if they are unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
timezonestringrequiredIANA time zone in which to evaluate the cron expression.
overlap_policy"coalesce" | "allow"requiredBehavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"requiredBehavior for occurrences missed while the schedule was inactive.
enabledbooleanrequiredWhether the schedule can generate issues.
next_run_atcustomrequiredDate and time of the next scheduled occurrence.
created_bystringrequiredAccount-user ID of the user who created the schedule.
created_atcustomrequiredDate and time when the schedule was created.
updated_atcustomrequiredDate and time when the schedule was last updated.
has_morebooleanrequiredWhether more issue schedules are available.
Get issue schedule
/v1/issue-schedules/{id}Path parameters
idcustomrequiredUnique ID of the issue schedule.
Query parameters
No query parameters
Response
15 fields
idcustomrequiredUnique ID of the issue schedule.
modulestringrequiredName of the module that owns generated issues.
titlestringrequiredTitle assigned to each generated issue.
descriptionstringrequiredPremise assigned to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredPriority assigned to generated issues, or null if they are not triaged.
assigneestring | nullrequiredAccount-user ID assigned to generated issues, or null if they are unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
timezonestringrequiredIANA time zone in which to evaluate the cron expression.
overlap_policy"coalesce" | "allow"requiredBehavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"requiredBehavior for occurrences missed while the schedule was inactive.
enabledbooleanrequiredWhether the schedule can generate issues.
next_run_atcustomrequiredDate and time of the next scheduled occurrence.
created_bystringrequiredAccount-user ID of the user who created the schedule.
created_atcustomrequiredDate and time when the schedule was created.
updated_atcustomrequiredDate and time when the schedule was last updated.
Update issue schedule
/v1/issue-schedules/{id}Path parameters
idcustomrequiredUnique ID of the issue schedule.
Request body
titlestringoptionalNew title for generated issues.
min length: 1descriptionstringoptionalNew premise for generated issues.
priority"low" | "medium" | "high" | "urgent" | nulloptionalNew priority for generated issues, or null to leave them untriaged.
assigneestring | nulloptionalNew account-user ID for generated issues, or null to leave them unassigned.
cronstringoptionalNew five-field cron expression.
min length: 1timezonestringoptionalNew IANA time zone.
min length: 1overlap_policy"coalesce" | "allow"optionalNew behavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"optionalNew behavior for occurrences missed while the schedule was inactive.
enabledbooleanoptionalWhether the schedule can generate issues.
Response
15 fields
idcustomrequiredUnique ID of the issue schedule.
modulestringrequiredName of the module that owns generated issues.
titlestringrequiredTitle assigned to each generated issue.
descriptionstringrequiredPremise assigned to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredPriority assigned to generated issues, or null if they are not triaged.
assigneestring | nullrequiredAccount-user ID assigned to generated issues, or null if they are unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
timezonestringrequiredIANA time zone in which to evaluate the cron expression.
overlap_policy"coalesce" | "allow"requiredBehavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"requiredBehavior for occurrences missed while the schedule was inactive.
enabledbooleanrequiredWhether the schedule can generate issues.
next_run_atcustomrequiredDate and time of the next scheduled occurrence.
created_bystringrequiredAccount-user ID of the user who created the schedule.
created_atcustomrequiredDate and time when the schedule was created.
updated_atcustomrequiredDate and time when the schedule was last updated.
Delete issue schedule
/v1/issue-schedules/{id}Path parameters
idcustomrequiredUnique ID of the issue schedule.
Query parameters
No query parameters
Response
No response body
Queue an immediate issue schedule run
/v1/issue-schedules/{id}/runPath parameters
idcustomrequiredUnique ID of the issue schedule.
Request body
No request body
Response
15 fields
idcustomrequiredUnique ID of the issue schedule.
modulestringrequiredName of the module that owns generated issues.
titlestringrequiredTitle assigned to each generated issue.
descriptionstringrequiredPremise assigned to each generated issue.
priority"low" | "medium" | "high" | "urgent" | nullrequiredPriority assigned to generated issues, or null if they are not triaged.
assigneestring | nullrequiredAccount-user ID assigned to generated issues, or null if they are unassigned.
cronstringrequiredFive-field cron expression that defines the recurrence.
timezonestringrequiredIANA time zone in which to evaluate the cron expression.
overlap_policy"coalesce" | "allow"requiredBehavior when a previous issue from the schedule is still open.
missed_run_policy"next_only" | "catch_up"requiredBehavior for occurrences missed while the schedule was inactive.
enabledbooleanrequiredWhether the schedule can generate issues.
next_run_atcustomrequiredDate and time of the next scheduled occurrence.
created_bystringrequiredAccount-user ID of the user who created the schedule.
created_atcustomrequiredDate and time when the schedule was created.
updated_atcustomrequiredDate and time when the schedule was last updated.
Comments
An authored note on an issue — the issue's own progress narrative.
Create comment
/v1/commentsRequest body
issuestringrequiredID of the issue on which to comment.
bodystringrequiredAuthored content of the comment.
attachmentsstring[]optionalIDs of completed issue attachments to place in the comment.
max items: 20Response
6 fields
idcustomrequiredUnique ID of the comment.
issuecustomrequiredID of the issue that contains the comment.
authorstringrequiredAccount-user ID of the comment author.
bodystringrequiredAuthored content of the comment.
created_atcustomrequiredDate and time when the comment was created.
updated_atcustomrequiredDate and time when the comment was last updated.
List comments
/v1/commentsQuery parameters
issuestringrequiredID of the issue whose comments to return.
limitintegeroptionalMaximum number of comments to return.
min: 1 · max: 100afterstringoptionalCursor after which to return comments.
Response
2 fields
dataobject[]requiredComments in this page.
dataobject[]requiredComments in this page.
idcustomrequiredUnique ID of the comment.
issuecustomrequiredID of the issue that contains the comment.
authorstringrequiredAccount-user ID of the comment author.
bodystringrequiredAuthored content of the comment.
created_atcustomrequiredDate and time when the comment was created.
updated_atcustomrequiredDate and time when the comment was last updated.
has_morebooleanrequiredWhether more comments are available.
Get comment
/v1/comments/{id}Path parameters
idcustomrequiredUnique ID of the comment.
Query parameters
No query parameters
Response
6 fields
idcustomrequiredUnique ID of the comment.
issuecustomrequiredID of the issue that contains the comment.
authorstringrequiredAccount-user ID of the comment author.
bodystringrequiredAuthored content of the comment.
created_atcustomrequiredDate and time when the comment was created.
updated_atcustomrequiredDate and time when the comment was last updated.
Update comment
/v1/comments/{id}Path parameters
idcustomrequiredUnique ID of the comment.
Request body
bodystringrequiredNew authored content of the comment.
Response
6 fields
idcustomrequiredUnique ID of the comment.
issuecustomrequiredID of the issue that contains the comment.
authorstringrequiredAccount-user ID of the comment author.
bodystringrequiredAuthored content of the comment.
created_atcustomrequiredDate and time when the comment was created.
updated_atcustomrequiredDate and time when the comment was last updated.
Delete comment
/v1/comments/{id}Path parameters
idcustomrequiredUnique ID of the comment.
Query parameters
No query parameters
Response
No response body
Issue attachments
A private file owned by an issue and authorized through its module.
Prepare issue attachment upload
/v1/issue-attachmentsRequest body
issuestringrequiredID of the issue that will own the attachment.
filenamestringrequiredOriginal name of the file.
min length: 1 · max length: 255media_typestringrequiredMIME type of the file.
min length: 1 · max length: 255 · pattern: ^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$byte_sizeintegerrequiredSize of the file in bytes. The maximum size is 25 MiB.
greater than: 0 · max: 26214400checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
pattern: ^[A-Za-z0-9+/]{43}=$Response
2 fields
attachmentobjectrequiredAttachment that is ready for upload.
attachmentobjectrequiredAttachment that is ready for upload.
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
uploadobjectrequiredSigned upload request.
uploadobjectrequiredSigned upload request.
urlstringrequiredSigned URL that accepts the file upload.
format: urimethod"PUT"requiredHTTP method to use for the upload.
headersobjectrequiredHTTP headers to include in the upload request.
expires_atcustomrequiredDate and time when the upload URL expires.
List issue attachments
/v1/issue-attachmentsQuery parameters
issuestringrequiredID of the issue that owns the attachments.
limitintegeroptionalMaximum number of attachments to return.
min: 1 · max: 100afterstringoptionalCursor after which to return attachments.
Response
2 fields
dataobject[]requiredAttachments in this page.
dataobject[]requiredAttachments in this page.
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
has_morebooleanrequiredWhether more attachments are available.
Get issue attachment
/v1/issue-attachments/{id}Path parameters
idcustomrequiredUnique ID of the attachment.
Query parameters
No query parameters
Response
12 fields
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
Complete issue attachment upload
/v1/issue-attachments/{id}/completePath parameters
idcustomrequiredUnique ID of the attachment.
Request body
No request body
Response
12 fields
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
Get issue attachment download
/v1/issue-attachments/{id}/downloadPath parameters
idcustomrequiredUnique ID of the attachment.
Request body
No request body
Response
2 fields
urlstringrequiredSigned URL from which to download the file.
format: uriexpires_atcustomrequiredDate and time when the download URL expires.
Remove issue attachment
/v1/issue-attachments/{id}Path parameters
idcustomrequiredUnique ID of the attachment.
Query parameters
No query parameters
Response
No response body
Comment attachments
A placement of an issue-owned attachment in an authored issue comment.
Place attachment in comment
/v1/comment-attachmentsRequest body
commentstringrequiredID of the comment in which to place the attachment.
attachmentstringrequiredID of the attachment to place in the comment.
positionintegeroptionalZero-based display position of the attachment in the comment.
min: 0 · max: 9007199254740991Response
6 fields
idcustomrequiredUnique ID of the placement.
issuecustomrequiredID of the issue that owns the attachment.
commentcustomrequiredID of the comment that contains the attachment.
attachmentobjectrequiredAttachment placed in the comment.
attachmentobjectrequiredAttachment placed in the comment.
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
positionintegerrequiredZero-based display position of the attachment in the comment.
min: 0 · max: 9007199254740991created_atcustomrequiredDate and time when the placement was created.
List comment attachments
/v1/comment-attachmentsQuery parameters
commentstringoptionalID of the comment by which to filter placements.
issuestringoptionalID of the issue by which to filter placements.
Response
2 fields
dataobject[]requiredAttachment placements in this page.
dataobject[]requiredAttachment placements in this page.
idcustomrequiredUnique ID of the placement.
issuecustomrequiredID of the issue that owns the attachment.
commentcustomrequiredID of the comment that contains the attachment.
attachmentobjectrequiredAttachment placed in the comment.
attachmentobjectrequiredAttachment placed in the comment.
idcustomrequiredUnique ID of the attachment.
issuecustomrequiredID of the issue that owns the attachment.
filenamestringrequiredOriginal name of the uploaded file.
media_typestringrequiredMIME type of the uploaded file.
byte_sizeintegerrequiredSize of the file in bytes.
min: 0 · max: 9007199254740991checksum_sha256stringrequiredBase64-encoded SHA-256 checksum of the file.
state"pending" | "ready"requiredUpload state of the attachment.
uploaded_bystringrequiredAccount-user ID of the user who uploaded the file.
commentscustom[]requiredIDs of the comments that contain the attachment.
uploaded_atcustom | nullrequiredDate and time when the upload completed, or null if it is incomplete.
deleted_atcustom | nullrequiredDate and time when the file was removed, or null if it is available.
created_atcustomrequiredDate and time when the attachment was created.
positionintegerrequiredZero-based display position of the attachment in the comment.
min: 0 · max: 9007199254740991created_atcustomrequiredDate and time when the placement was created.
has_morefalserequiredWhether more attachment placements are available.
Remove attachment from comment
/v1/comment-attachments/{id}Path parameters
idcustomrequiredUnique ID of the placement.
Query parameters
No query parameters
Response
No response body
Issue events
An immutable record of a state change to an issue — its timeline.
List issue events
/v1/issue-eventsQuery parameters
issuestringrequiredID of the issue whose events to return.
limitintegeroptionalMaximum number of issue events to return.
min: 1 · max: 100afterstringoptionalCursor after which to return issue events.
Response
2 fields
dataobject[]requiredIssue events in this page.
dataobject[]requiredIssue events in this page.
idcustomrequiredUnique ID of the issue event.
issuecustomrequiredID of the issue that contains the event.
actorstringrequiredAccount-user ID that caused the state change.
type"created" | "status_changed" | "assigned" | "prioritized" | "retitled" | "redescribed" | "dependencies_changed" | "labels_changed"requiredType of state change recorded by the event.
dataobjectrequiredState-change details for the event.
created_atcustomrequiredDate and time when the state change occurred.
has_morebooleanrequiredWhether more issue events are available.
Get issue event
/v1/issue-events/{id}Path parameters
idcustomrequiredUnique ID of the issue event.
Query parameters
No query parameters
Response
6 fields
idcustomrequiredUnique ID of the issue event.
issuecustomrequiredID of the issue that contains the event.
actorstringrequiredAccount-user ID that caused the state change.
type"created" | "status_changed" | "assigned" | "prioritized" | "retitled" | "redescribed" | "dependencies_changed" | "labels_changed"requiredType of state change recorded by the event.
dataobjectrequiredState-change details for the event.
created_atcustomrequiredDate and time when the state change occurred.