This page explains how to access the value of User-created custom fields of different field types using Groovy.  You can access them using the getters of the Issue interface. However, accessing custom fields using the native Jira API can be much more complex, depending on the type of the custom field being accessed. Instead, it is easier to access the fields using the methods provided by JMCF. 

'xxxxx' in the custom fields detailed below is the ID of the custom field. Click here to know how to find the ID of custom fields.

In this page:

Select list

Checkboxes / Multi-select list

  • Description: A Field of the type Checkboxes/Multi-select list, is an array of objects. Each selected option is an object in itself.

  • Accessing a field of Checkboxes/Multi-select list type: You can access a custom field of Checkboxes/Multi-select type using any of the following getters of the Issue interface:


Radio buttons / Single-select list


Cascading

  • Description: A field of Cascading type is a Map with the Key as String and Value as the Option

  • Accessing a field of Cascading type: You can access a custom field of Cascading type using any of the following getters of the Issue interface:
    • get("<Your custom field name>") or get("customfield_xxxxx") that returns a Map<StringOption>
      • Example: Parent of the cascading field

        issue.get("Cascade")?.get(null)?.getValue()


      • Example: Return parent and child of the cascading field as Strings separated by a comma:

        if (issue.get("<Cascading type field name>"))
        {
          if(issue.get("<Cascading type field name>").get("1"))
          {
            return issue.get("<Cascading type field name>").get(null).getValue() + "," + issue.get("<Cascading type field name>").get("1") 
          }
          return issue.get("<Cascading type field name>").get(null).getValue()
        }


    • getAsString("<Your custom field name>") or getAsString("customfield_xxxxx") that returns a String with the parent and child value separated by a comma

      • Example: Return parent and child of the cascading field as Strings separated by a comma:

        issue.getAsString("<Cascading type field name>")


Groups

Single-Group Picker

  • Description: A field of Single-group picker type is an object that represents a group.

  • Accessing a field of Single-Group picker type: You can access a custom field of Single-group picker type using any of the following getters of the Issue interface:


Multi-Group Picker

  • Description: A field of Multi-group picker is an array of objects. Each group is an object in itself.

  • Access a field of Multi-group picker typeYou can access a custom field of Multi-group picker type using any of the following getters of the Issue interface:

Users

Single-User picker


Multi-user picker

  • Description: A field of multi-user picker type is an array of objects. Each user is an object in itself.

  • Accessing a field of Multi-user picker typeYou can access a custom field of Multi-user picker type using any of the following getters of the Issue interface:


Watchers field type

  • Description: A field of the Watchers type is an array of objects. Each user is an object in itself.

  • Accessing a field of Watchers field typeYou can access a custom field of Watchers field type using any of the following getters of the Issue interface:

Versions

Single-version picker


Multi-version picker

  • Description: A field of Multi-version picker type is an array of objects. Each version is an object in itself.

  • Accessing a field of Multi-version picker typeYou can access a custom field of Multi-version picker type using any of the following getters of the Issue interface:

Text

Single-line text field type


Multi-line text field type


Read-only text field type

Date/Time picker

Date picker


Date time picker

Others

Numeric field


Project picker type


URL field type