Missing Status IDs in the Changelog API

Good day,

I’m reaching out for assistance in understanding an issue we’ve encountered following our recent migration from Jira Data Center to Jira Cloud.

We’ve noticed that some of our external integrations are failing due to missing status ID data in the changelog. Specifically, when reviewing the changelog via the API endpoint /rest/api/2/issue/{key}/changelog, we see that certain status field entries are missing the to ID. Here’s an example from the payload:

"items": [
  {
    "field": "status",
    "fieldtype": "jira",
    "fieldId": "status",
    "from": "3",
    "fromString": "In Progress",
    "to": null,
    "toString": "Testing in Dev env"
  }
]

The status “Testing in Dev env” does exist and I’m able to retrieve it using the /rest/api/2/status/{id} endpoint. However, the missing to ID in the changelog is causing integration issues.

Could you provide any insight into why this data might be missing or how we can ensure the status IDs are consistently included in the changelog entries?

Hello @TMonatisa

I cannot replicate that problem. You said “we see that certain status field entries are missing the to ID”. What exactly to you mean by ‘certain’ entries:

  1. All log entries for every single change to the status field both before and after the migration
  2. All new log entries for new changes to the status field (IE, changes after the migration)
  3. Only some log entries for some changes to the status field (IE, something erratic or maybe only happens when changing from one particular status to another particular status)

Also, is this problem only for the status field or other fields too? Is this problem only for one specific Work Item type or many?

Please trying getting the Work Item’s changelog using the ‘indirect’ method, by calling the Get Issue endpoint and getting the changelog field, like this:

https://{{Instance}}/{{path}}/issue/{{issueId}}?fields=changelog&expand=changelog

When I use that method, I absolutely get the both the from and to IDs of the different values of the status field when they change for a Work Item:

"items": [
  {
    "field": "status",
    "fieldtype": "jira",
    "fieldId": "status",
    "from": "10002",
    "fromString": "Testing",
    "to": "10000",
    "toString": "YET TO DO"
  }
 ]

I have also tested by getting the changelog of a Work Item directly via the Get Changelogs endpoint and gotten the exact same result… the from and to is returned if the string value changes for the status field:

"items": [
  {
    "field": "status",
    "fieldtype": "jira",
    "fieldId": "status",
    "from": "10000",
    "fromString": "YET TO DO",
    "to": "3",
    "toString": "Failed"
  }
]

Hi @sunnyape

I am still getting the same results. There is no status IDs. It seems like it is affecting all issues in the instance.

Kind regards

Personally, I don’t think there is any fault with the REST API; it’s only reporting what it’s finding in the Issue changelogs, and the information needed isn’t there.

I’m not able to think of any circumstances where the Status field can have a status that doesn’t have an ID and where that ID isn’t being recorded in the changelog when the Issue status changes. I think there is something fundamentally wrong with that field’s configuration in your Jira instance.

Given this, I can’t be of any further assistance, and I recommend that you open a support case with Atlassian and work with them to diagnose the cause of the problem.

Have fun

Hi @TMonatisa
Actually, as far as I can remember, this can happen if the issue was imported from another instance or from DC. Is that the case?