createCustomField
Create custom field
Details
- Method:
POST - Path:
/rest/api/3/field - Operation ID:
createCustomField
Parameters
{
"description": {
"description": "The description of the custom field, which is displayed in Jira.",
"required": false,
"location": "body",
"type": "string"
},
"name": {
"description": "The name of the custom field, which is displayed in Jira. This is not the unique identifier.",
"required": true,
"location": "body",
"type": "string"
},
"searcherKey": {
"description": "The searcher defines the way the field is searched in Jira. For example, *com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher*. \nThe search UI (basic search and JQL search) will display different operations and values for the field, based on the field searcher. You must specify a searcher that is valid for the field type, as listed below (abbreviated values shown):\n\n * `cascadingselect`: `cascadingselectsearcher`\n * `datepicker`: `daterange`\n * `datetime`: `datetimerange`\n * `float`: `exactnumber` or `numberrange`\n * `grouppicker`: `grouppickersearcher`\n * `importid`: `exactnumber` or `numberrange`\n * `labels`: `labelsearcher`\n * `multicheckboxes`: `multiselectsearcher`\n * `multigrouppicker`: `multiselectsearcher`\n * `multiselect`: `multiselectsearcher`\n * `multiuserpicker`: `userpickergroupsearcher`\n * `multiversion`: `versionsearcher`\n * `project`: `projectsearcher`\n * `radiobuttons`: `multiselectsearcher`\n * `readonlyfield`: `textsearcher`\n * `select`: `multiselectsearcher`\n * `textarea`: `textsearcher`\n * `textfield`: `textsearcher`\n * `url`: `exacttextsearcher`\n * `userpicker`: `userpickergroupsearcher`\n * `version`: `versionsearcher`\n\nIf no searcher is provided, the field isn't searchable. However, [Forge custom fields](https://developer.atlassian.com/platform/forge/manifest-reference/modules/#jira-custom-field-type--beta-) have a searcher set automatically, so are always searchable.",
"required": false,
"location": "body",
"type": "string",
"enum": [
"com.atlassian.jira.plugin.system.customfieldtypes:cascadingselectsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:daterange",
"com.atlassian.jira.plugin.system.customfieldtypes:datetimerange",
"com.atlassian.jira.plugin.system.customfieldtypes:exactnumber",
"com.atlassian.jira.plugin.system.customfieldtypes:exacttextsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:labelsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:multiselectsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:numberrange",
"com.atlassian.jira.plugin.system.customfieldtypes:projectsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:textsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:userpickergroupsearcher",
"com.atlassian.jira.plugin.system.customfieldtypes:versionsearcher"
]
},
"type": {
"description": "The type of the custom field. These built-in custom field types are available:\n\n * `cascadingselect`: Enables values to be selected from two levels of select lists (value: `com.atlassian.jira.plugin.system.customfieldtypes:cascadingselect`)\n * `datepicker`: Stores a date using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`)\n * `datetime`: Stores a date with a time component (value: `com.atlassian.jira.plugin.system.customfieldtypes:datetime`)\n * `float`: Stores and validates a numeric (floating point) input (value: `com.atlassian.jira.plugin.system.customfieldtypes:float`)\n * `grouppicker`: Stores a user group using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker`)\n * `importid`: A read-only field that stores the ID the issue had in the system it was imported from (value: `com.atlassian.jira.plugin.system.customfieldtypes:importid`)\n * `labels`: Stores labels (value: `com.atlassian.jira.plugin.system.customfieldtypes:labels`)\n * `multicheckboxes`: Stores multiple values using checkboxes (value: ``)\n * `multigrouppicker`: Stores multiple user groups using a picker control (value: ``)\n * `multiselect`: Stores multiple values using a select list (value: `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`)\n * `multiuserpicker`: Stores multiple users using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker`)\n * `multiversion`: Stores multiple versions from the versions available in a project using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multiversion`)\n * `project`: Stores a project from a list of projects that the user is permitted to view (value: `com.atlassian.jira.plugin.system.customfieldtypes:project`)\n * `radiobuttons`: Stores a value using radio buttons (value: `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`)\n * `readonlyfield`: Stores a read-only text value, which can only be populated via the API (value: `com.atlassian.jira.plugin.system.customfieldtypes:readonlyfield`)\n * `select`: Stores a value from a configurable list of options (value: `com.atlassian.jira.plugin.system.customfieldtypes:select`)\n * `textarea`: Stores a long text string using a multiline text area (value: `com.atlassian.jira.plugin.system.customfieldtypes:textarea`)\n * `textfield`: Stores a text string using a single-line text box (value: `com.atlassian.jira.plugin.system.customfieldtypes:textfield`)\n * `url`: Stores a URL (value: `com.atlassian.jira.plugin.system.customfieldtypes:url`)\n * `userpicker`: Stores a user using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:userpicker`)\n * `version`: Stores a version using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:version`)\n\nTo create a field based on a [Forge custom field type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/#jira-custom-field-type--beta-), use the ID of the Forge custom field type as the value. For example, `ari:cloud:ecosystem::extension/e62f20a2-4b61-4dbe-bfb9-9a88b5e3ac84/548c5df1-24aa-4f7c-bbbb-3038d947cb05/static/my-cf-type-key`.",
"required": true,
"location": "body",
"type": "string"
}
}Response Schema
{
"additionalProperties": false,
"description": "Details about a field.",
"properties": {
"clauseNames": {
"description": "The names that can be used to reference the field in an advanced search. For more information, see [Advanced searching - fields reference](https://confluence.atlassian.com/x/gwORLQ).",
"items": {
"type": "string"
},
"type": "array",
"uniqueItems": true
},
"custom": {
"description": "Whether the field is a custom field.",
"type": "boolean"
},
"id": {
"description": "The ID of the field.",
"type": "string"
},
"key": {
"description": "The key of the field.",
"type": "string"
},
"name": {
"description": "The name of the field.",
"type": "string"
},
"navigable": {
"description": "Whether the field can be used as a column on the issue navigator.",
"type": "boolean"
},
"orderable": {
"description": "Whether the content of the field can be used to order lists.",
"type": "boolean"
},
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/JsonTypeBean"
}
],
"description": "The data schema for the field."
},
"scope": {
"allOf": [
{
"$ref": "#/components/schemas/Scope"
}
],
"description": "The scope of the field."
},
"searchable": {
"description": "Whether the content of the field can be searched.",
"type": "boolean"
}
},
"type": "object",
"xml": {
"name": "field"
}
}Usage
from ocp_agent import OCPAgent
agent = OCPAgent()
await agent.register_api('jira')
# Call this tool
result = await agent.call_tool('createCustomField', {
# Add required parameters here
})