> For the complete documentation index, see [llms.txt](https://docs.opshub.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opshub.com/v7.237/connectors/jirazephyrscale/sample-json-file-for-jira-zephyr.md).

# Jira Zephyr Sample JSON File

* Below is the sample JSON for Jira Zephyr entities. Based on your use case and Jira Zephyr instance configuration, the JSON needs to be modified.

```json
{
	"entities": [
		{
			"internalName": "testcase-zephyr",
			"displayName": "Zephyr Scale Test Case",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "name",
						"displayName": "Name",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "key",
						"displayName": "Key",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "createdOn",
						"displayName": "Created Date",
						"dataType": "date_string",
						"readOnly": true,
						"mandatory": false,
						"dateFormat": "yyyy-MM-dd'T'HH:mm:ss'Z'",
						"historyEnabled": false
					},
					{
						"internalName": "component",
						"displayName": "Component",
						"dataType": "lookup",
						"mandatory": false,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "objective",
						"displayName": "Objective",
						"dataType": "html",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "precondition",
						"displayName": "Precondition",
						"dataType": "html",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "estimatedTime",
						"displayName": "Estimated run time",
						"dataType": "numeric",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "labels",
						"displayName": "Labels",
						"dataType": "text",
						"multiselect": true,
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "priority",
						"displayName": "Priority",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "status",
						"displayName": "Status",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "owner",
						"displayName": "Owner",
						"dataType": "user",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "folder",
						"displayName": "Folder",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "folder-zephyr"
						}
					},
					{
						"internalName": "OH_Folder_Path",
						"displayName": "OH_Folder_Path",
						"dataType": "text"
					},
					{
						"internalName": "OH_Test_Steps",
						"displayName": "Test Steps",
						"dataType": "test-step",
						"mandatory": false,
						"historyEnabled": false
					}
				],
				"custom": [
                		    {
                                "internalName": "CustomText",
                            	"displayName": "CustomText",
                            	"dataType": "text",
                            	"mandatory": true
                            }
                		]
			}
		},
		{
			"internalName": "folder-zephyr",
			"displayName": "Zephyr Scale Test Folder",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "name",
						"displayName": "Name",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "folderType",
						"displayName": "Folder Type",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false,
						"lookUpValues": {
							"TEST_CASE": "TEST_CASE",
							"TEST_CYCLE": "TEST_CYCLE",
							"TEST_PLAN": "TEST_PLAN"
						}
					},
					{
						"internalName": "index",
						"displayName": "Index",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					}
				]
			}
		},
		{
			"internalName": "testcycle-zephyr",
			"displayName": "Zephyr Scale Test Cycle",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "name",
						"displayName": "Name",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "key",
						"displayName": "Key",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "plannedStartDate",
						"displayName": "Planned start date",
						"dataType": "date_string",
						"mandatory": true,
						"dateFormat": "yyyy-MM-dd'T'HH:mm:ss'Z'",
						"historyEnabled": false
					},
					{
						"internalName": "plannedEndDate",
						"displayName": "Planned end date",
						"dataType": "date_string",
						"mandatory": true,
						"dateFormat": "yyyy-MM-dd'T'HH:mm:ss'Z'",
						"historyEnabled": false
					},
					{
						"internalName": "description",
						"displayName": "Description",
						"dataType": "html",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "folder",
						"displayName": "Folder",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "folder-zephyr"
						}
					},
					{
						"internalName": "jiraProjectVersion",
						"displayName": "Jira Project Version",
						"dataType": "lookup",
						"mandatory": false,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "status",
						"displayName": "Status",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "owner",
						"displayName": "Owner",
						"dataType": "user",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "OH_Folder_Path",
						"displayName": "OH_Folder_Path",
						"dataType": "text"
					}
				]
			}
		},
		{
			"internalName": "testplan-zephyr",
			"displayName": "Zephyr Scale Test Plan",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"systemSpecific": {
				"readCustomFieldsMeta": true
			},
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "name",
						"displayName": "Name",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "key",
						"displayName": "Key",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "objective",
						"displayName": "Objective",
						"dataType": "html",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "labels",
						"displayName": "Labels",
						"dataType": "text",
						"multiselect": true,
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "status",
						"displayName": "Status",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "folder",
						"displayName": "Folder",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "folder-zephyr"
						}
					},
					{
						"internalName": "owner",
						"displayName": "Owner",
						"dataType": "user",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "OH_Folder_Path",
						"displayName": "OH_Folder_Path",
						"dataType": "text"
					}
				]
			}
		},
		{
			"internalName": "testexecution-zephyr",
			"displayName": "Zephyr Scale Test Execution",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "key",
						"displayName": "Key",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "jiraProjectVersion",
						"displayName": "Jira Project Version",
						"dataType": "lookup",
						"mandatory": false,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "testExecutionStatus",
						"displayName": "Execution Status ",
						"dataType": "lookup",
						"mandatory": true,
						"multiselect": false,
						"historyEnabled": false
					},
					{
						"internalName": "actualEndDate",
						"displayName": "Actual End Date",
						"dataType": "date_string",
						"mandatory": true,
						"dateFormat": "yyyy-MM-dd'T'HH:mm:ss'Z'",
						"historyEnabled": false
					},
					{
						"internalName": "estimatedTime",
						"displayName": "Estimated Time",
						"dataType": "numeric",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "executionTime",
						"displayName": "Execution Time",
						"dataType": "numeric",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "executedById",
						"displayName": "Executed by",
						"dataType": "user",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "assignedToId",
						"displayName": "Assigned To",
						"dataType": "user",
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "comment",
						"displayName": "Comment",
						"dataType": "html",
						"multiselect": false,
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "automated",
						"displayName": "Automated",
						"dataType": "boolean",
						"multiselect": false,
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "environment",
						"displayName": "Environment",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "environment-zephyr"
						}
					},
					{
						"internalName": "testCase",
						"displayName": "Test Case",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "testcase-zephyr"
						}
					},
					{
						"internalName": "testCycle",
						"displayName": "Test Cycle",
						"dataType": "reference",
						"systemSpecific": {
							"referencedEntityType": "testcycle-zephyr"
						}
					}
				]
			}
		},
		{
			"internalName": "environment-zephyr",
			"displayName": "Test Environment",
			"readMechanism": "NON_HISTORY",
			"hasReadSupport": true,
			"hasWriteSupport": true,
			"entityScope": "Global",
			"fields": {
				"system": [
					{
						"internalName": "id",
						"displayName": "Id",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false,
						"readOnly": true
					},
					{
						"internalName": "project",
						"displayName": "Project",
						"dataType": "text",
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "name",
						"displayName": "Name",
						"dataType": "text",
						"multiselect": false,
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "description",
						"displayName": "Description",
						"dataType": "text",
						"multiselect": false,
						"mandatory": false,
						"historyEnabled": false
					},
					{
						"internalName": "archived",
						"displayName": "Archived",
						"dataType": "boolean",
						"multiselect": false,
						"mandatory": true,
						"historyEnabled": false
					},
					{
						"internalName": "index",
						"displayName": "Index",
						"dataType": "numeric",
						"mandatory": true,
						"historyEnabled": false
					}
				]
			}
		}
	]
}
```

* This template lists the system fields for each entity supported by the Zephyr plugin.
* Users can add custom field metadata after the system field metadata.
* The final JSON for an entity with custom fields will appear as follows:

```json
{
	"internalName": "Entity Internal ID",
	"displayName": "Entity Display ID",
	"readMechanism": "NON_HISTORY",
	"hasReadSupport": true,
	"hasWriteSupport": true,
	"entityScope": "Global",
	"fields": {
		"system": [
			{
				"internalName": "field1",
				"displayName": "Field1",
				"dataType": "text",
				"mandatory": true,
				"historyEnabled": false,
				"readOnly": true
			},
			{
				"internalName": "field2",
				"displayName": "Field2",
				"dataType": "text",
				"mandatory": true,
				"historyEnabled": false
			}
		],
		"custom": [
		    {
                "internalName": "field1",
            	"displayName": "Field1",
            	"dataType": "text",
            	"mandatory": true
            },
            {
            	"internalName": "field2",
       			"displayName": "Field2",
       			"dataType": "text",
            	"mandatory": true
            }
		]
	}
}
```

## Test Plan Specific JSON Input

* Additional fields need to be included in the JSON for Test Plans:
  * At the field level: Add the system-specific field requestFieldKey in the system-specific map for all custom fields.
    * This is used by <code class="expression">space.vars.OIM</code> to update Test Plan custom fields via a private API.
    * The value of requestFieldKey can be obtained by inspecting the private update API of the Test Plan from the browser for each field.
* At the entity level: Add the system-specific field readCustomFieldsMeta in the metadata to define whether <code class="expression">space.vars.OIM</code> can use the private API to load custom field information.

  * Default value: true (can be explicitly set to false).
  * If set to false, the custom field ID must be provided manually.
  * Since updates for Test Plans use a private API (which requires the custom field ID), the value of readCustomFieldsMeta determines whether this ID is auto-fetched or must be provided manually.
  * Example JSON for a Test Plan with readCustomFieldsMeta set to true:

  ```json
      {
    	"internalName": "testplan-zephyr",
    	"displayName": "Zephyr Scale Test Plan",
    	"readMechanism": "NON_HISTORY",
    	"hasReadSupport": true,
    	"hasWriteSupport": true,
    	"systemSpecific": {
    	"readCustomFieldsMeta": true
    	},
    	"entityScope": "Global",
    	"fields": {
    	    "system": (...System Fields Meta as mentioned in the template...),
    	    "custom": [
    	        {
                    "internalName": "customNumber",
                	"displayName": "customNumber",
                	"dataType": "numeric",
                	"multiselect": false,
                	"mandatory": false,
                	"historyEnabled": false,
                	"systemSpecific": {
                	    "requestFieldKey": "intValue"
                    }
                }
    	    ]
    	}
    }
  ```
* The JSON for a Test Plan when readCustomFieldsMeta is false will be as follows:

```json
{
	"internalName": "testplan-zephyr",
	"displayName": "Zephyr Scale Test Plan",
	"readMechanism": "NON_HISTORY",
	"hasReadSupport": true,
	"hasWriteSupport": true,
	"systemSpecific": {
		"readCustomFieldsMeta": false
	},
	"entityScope": "Global",
	"fields": {
		"system": (...System Fields Meta as mentioned in the template...),
		"custom": [
			{
				"internalName": "customSelect",
				"displayName": "customSelect",
				"dataType": "lookup",
				"mandatory": false,
				"multiselect": false,
				"historyEnabled": false,
				"lookUpValues": {
					"s1": "2331664",
					"s2": "2331665"
				},
				"systemSpecific": {
					"customFieldId": "508083",
					"requestFieldKey": "intValue"
				}
			},
			{
				"internalName": "customText",
				"displayName": "customText",
				"dataType": "text",
				"multiselect": false,
				"mandatory": false,
				"historyEnabled": false,
				"systemSpecific": {
					"customFieldId": "508081",
					"requestFieldKey": "stringValue"
                }
			}
		]
	}
}
```

* In the above JSON, the custom ID for each custom field should be specified in the systemSpecific map.
* Users must also provide the internal IDs for the lookup field values.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.opshub.com/v7.237/connectors/jirazephyrscale/sample-json-file-for-jira-zephyr.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
