Note: These ticket contents were written by AI, but I experienced the problem as a human and couldn't find my own workaround.
acli jira workitem create --from-json accepts custom field values via the additionalAttributes key, and this works correctly. The equivalent acli jira workitem edit --from-json rejects every shape of custom-field payload I have tried, making it impossible to update custom fields on existing tickets via acli. This forces users to fall back to the web UI or to call the REST API directly with curl, defeating the purpose of having a CLI for scripted ticket maintenance.
acli jira workitem edit --from-json <payload> should accept the same additionalAttributes shape as create --from-json, allowing custom field values (e.g. Acceptance Criteria, Story Points, Epic Link) to be updated on existing work items.
The Go JSON decoder rejects custom-field payloads with json: unknown field "<key>". The advertised edit schema (visible via acli jira workitem edit --generate-json) is a strict subset of the create schema and contains only:
issuessummarytypedescriptionassigneelabelsToAddlabelsToRemovecustomfield_NNNNN).acli edit --from-json. Every wrapper I tried fails the same way:additionalAttributes (works on create, fails on edit)$ cat payload-1.json
{
"issues": ["ABC-12345"],
"additionalAttributes": {
"customfield_12345": { "type": "doc", "version": 1, "content": [ ... ] }
}
}
$ acli jira workitem edit --from-json payload-1.json --yes
✗ Error: json: unknown field "additionalAttributes"customfield_NNNNN at the top level$ cat payload-2.json
{
"issues": ["ABC-12345"],
"customfield_12345": { "type": "doc", "version": 1, "content": [ ... ] }
}
$ acli jira workitem edit --from-json payload-2.json --yes
✗ Error: json: unknown field "customfield_10966"fields wrapper (the underlying REST API shape)$ cat payload-3.json
{
"issues": ["ABC-12345"],
"fields": {
"customfield_12345": { "type": "doc", "version": 1, "content": [ ... ] }
}
}
$ acli jira workitem edit --from-json payload-3.json --yes
✗ Error: json: unknown field "fields"customFields wrapper$ cat payload-4.json
{
"issues": ["ABC-12345"],
"customFields": {
"customfield_12345": { "type": "doc", "version": 1, "content": [ ... ] }
}
}
$ acli jira workitem edit --from-json payload-4.json --yes
✗ Error: json: unknown field "customFields"$ cat payload-5.json
{
"issues": ["ABC-12345"],
"Acceptance Criteria": { "type": "doc", "version": 1, "content": [ ... ] }
}
$ acli jira workitem edit --from-json payload-5.json --yes
✗ Error: json: unknown field "Acceptance Criteria"For comparison, create --from-json accepts the additionalAttributes shape from payload 1 without issue, and the resulting ticket renders the custom field correctly. The same JSON, sent to edit, is rejected outright by the strict decoder.
This blocks any automated workflow that needs to amend custom-field values on existing tickets — common cases include:
PUT /rest/api/3/issue/{key}handles this with {"fields": {...}} — so this is purely an acli wrapper gap, not a Jira capability gap.Extend the edit --from-json decoder to accept additionalAttributes (matching the create schema) and pass its contents through to the underlying PUT /rest/api/3/issue/{key} call's fields object. Updating acli jira workitem edit --generate-json to include additionalAttributes in the template would also help discoverability.
curl against PUT /rest/api/3/issue/{key} with the API token from the macOS Keychain entry acli(base64-encoded with a go-keyring-base64: prefix).create --from-json — loses the key, only viable for tickets with no comments, links, or watchers.| Field | Value |
|---|---|
| acli version | acli version 1.3.18-stable |
| OS | macOS (darwin) |
| Site | Jira Cloud |
| Authentication | API token stored via acli jira auth login (macOS Keychain, acli service) |
Hi Warren_ Jodi,
My assessment is the behaviour your seeing is a current gap in the acli wrapper for "edit work item".
To add weight to this theory you can run the commands:
You will see the supported json shape includes additionalAttributes in create but not in edit.
I would be inclined to raise a support ticket with Atlassian to confirm.
Regards,
Ben
@Ben Spillane Thank you for checking too, it's exactly what I found.
Do you know the best way to create tickets or raise tickets for acli? I don't seem to be able to do so on https://support.atlassian.com/contact/.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Warren_ Jodi did you manage to find an avenue for raising a ticket?
You're required to be signed in to log tickets. Also the support options available are based on the app subscription level. For example, I know some free-tier subscriptions have fewer support options than paid plans.
I hope this helps.
Ben
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Ben Spillane Unfortunately not. It turns out that you need to be an admin to raise tickets with Atlassian if you're on a paid tier, so I'm going through the very laborious process of asking several different people at my org to raise this one by one. I suspect it won't be raised as it's not important from their POV.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.