Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Swagger open api macro
{
  "swagger" : "2.0",
  "info" : {
    "description" : "You can create/read/update/delete metadata value via UI or the following Rest API",
    "version" : "1.0",
    "title" : "Metadata for Jira Rest API",
    "contact" : {
      "name" : "evolu software GmbH",
      "url" : "http://evolu.software/"
    }
  },
  "host" : "your_jira_base_url",
  "basePath" : "/rest/metadata/1.0",
  "tags" : [ {
    "name" : "admin",
    "description" : "Metadata admin services"
  }, {
    "name" : "component",
    "description" : "project component metadata resource"
  }, {
    "name" : "configurationfield",
    "description" : "metadata field configuration resource"
  }, {
    "name" : "configurationproject",
    "description" : "project configuration metadata resource"
  }, {
    "name" : "configurationscreen",
    "description" : "metadata screen configuration resource"
  }, {
    "name" : "group",
    "description" : "group metadata resource"
  }, {
    "name" : "project",
    "description" : "project metadata resource"
  }, {
    "name" : "projects",
    "description" : "project overview metadata resource"
  }, {
    "name" : "servicedesk",
    "description" : "service desk related metadata screen resource"
  }, {
    "name" : "user",
    "description" : "user metadata resource"
  }, {
    "name" : "version",
    "description" : "project version metadata resource"
  } ],
  "schemes" : [ "http", "https" ],
  "paths" : {
    "/admin/cleanupProjectAuditLog" : {
      "get" : {
        "tags" : [ "admin" ],
        "summary" : "internal: removes defect project metadata entries from audit log",
        "description" : "",
        "operationId" : "auditlogProblems",
        "produces" : [ "application/json" ],
        "responses" : {
          "200" : {
            "description" : "Request was processed and there are more details within the server log"
          },
          "403" : {
            "description" : "User has no Admin permission"
          }
        }
      }
    },
    "/admin/disableMetadataEventSubSystem" : {
      "get" : {
        "tags" : [ "admin" ],
        "summary" : "experimental: should only be used in exceptional cases. Disables the metadata event sub system (auditlog, indexing)",
        "description" : "",
        "operationId" : "disableMetadataEventSubSystem",
        "produces" : [ "application/json" ],
        "responses" : {
          "200" : {
            "description" : "Request was processed and there are more details within the server log"
          },
          "403" : {
            "description" : "User has no Admin permission"
          }
        }
      }
    },
    "/admin/enableMetadataEventSubSystem" : {
      "get" : {
        "tags" : [ "admin" ],
        "summary" : "experimental: should only be used in exceptional cases. Enables the metadata event sub system (auditlog, indexing)",
        "description" : "",
        "operationId" : "enableMetadataEventSubSystem",
        "produces" : [ "application/json" ],
        "responses" : {
          "200" : {
            "description" : "Request was processed and there are more details within the server log"
          },
          "403" : {
            "description" : "User has no Admin permission"
          }
        }
      }
    },
    "/component/{projectkey}/{identifier}" : {
      "get" : {
        "tags" : [ "component" ],
        "summary" : "get metadata values for a given object (e.g. version/component) as object array (not unlimited since 4.2)",
        "description" : "",
        "operationId" : "getAllMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "includeHidden",
          "in" : "query",
          "description" : "will include the hidden metadata values, if the user has the permission to edit (create/update) metadata values",
          "required" : false,
          "type" : "boolean",
          "default" : false
        }, {
          "name" : "startAt",
          "in" : "query",
          "description" : "the index of the first metadata value to return (0-based)",
          "required" : false,
          "type" : "integer",
          "default" : 0,
          "format" : "int32"
        }, {
          "name" : "maxResults",
          "in" : "query",
          "description" : "the maximum number of metadata values to return (defaults to 100 (if startAt >= 1)). The maximum allowable value is dictated to 500. If you specify a value that is higher than this number, your search results will be truncated.",
          "required" : false,
          "type" : "integer",
          "default" : 100,
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "component" ],
        "summary" : "create / update metadata as object array",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata object array",
          "required" : true,
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          },
          "400" : {
            "description" : "the specified version/component can't be loaded"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/component/{projectkey}/{identifier}/{key}" : {
      "get" : {
        "tags" : [ "component" ],
        "summary" : "get the specified metadata",
        "description" : "",
        "operationId" : "getMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        }
      },
      "put" : {
        "tags" : [ "component" ],
        "summary" : "create / update one metadata",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object, the specified version/component can't be loaded or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      },
      "delete" : {
        "tags" : [ "component" ],
        "summary" : "delete the specified metadata",
        "description" : "",
        "operationId" : "deleteMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "400" : {
            "description" : "the specified version/component can't be loaded"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "404" : {
            "description" : "there is no metadata object with the given key"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/component/{projectkey}/{identifier}/{key}/value" : {
      "get" : {
        "tags" : [ "component" ],
        "summary" : "get the specified metadata value",
        "description" : "",
        "operationId" : "getMetadataValue",
        "produces" : [ "text/plain" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "string"
            }
          }
        }
      }
    },
    "/configuration/field/project" : {
      "put" : {
        "tags" : [ "configurationfield" ],
        "summary" : "experimental: the given (valid) project field will be updated",
        "description" : "",
        "operationId" : "updateFieldProject",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "MetadataField",
          "description" : "the to change metadata field",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/configuration/field/project/all" : {
      "get" : {
        "tags" : [ "configurationfield" ],
        "summary" : "experimental: get all project fields",
        "description" : "",
        "operationId" : "getFieldProjects",
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      }
    },
    "/configuration/field/project/allEnriched" : {
      "get" : {
        "tags" : [ "configurationfield" ],
        "summary" : "experimental: get all project fields with related screens (used within admin interface)",
        "description" : "",
        "operationId" : "getEnrichtedFieldProjects",
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      }
    },
    "/configuration/field/project/{identifier}" : {
      "delete" : {
        "tags" : [ "configurationfield" ],
        "summary" : "experimental: the specified project field will be deleted",
        "description" : "",
        "operationId" : "deleteFieldProject",
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the field identifier",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          },
          "500" : {
            "description" : "Error when deleting"
          }
        }
      }
    },
    "/configuration/project/{projectKey}" : {
      "get" : {
        "tags" : [ "configurationproject" ],
        "summary" : "experimental: returns the project configuration for the specified project",
        "description" : "",
        "operationId" : "getProjectConfiguration",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectKey",
          "in" : "path",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/ProjectConfiguration"
            }
          }
        }
      }
    },
    "/configuration/project/{projectKey}/screen/{screenKey}" : {
      "get" : {
        "tags" : [ "configurationproject" ],
        "summary" : "experimental: applies the project screen to the specified project",
        "description" : "",
        "operationId" : "setProjectScreen",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectKey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "screenKey",
          "in" : "path",
          "description" : "the screen key",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "403" : {
            "description" : "User has no Project Admin permission"
          }
        }
      }
    },
    "/configuration/screen/customer/default" : {
      "get" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: get the default customer screen",
        "description" : "",
        "operationId" : "getCustomerScreenDefault",
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      },
      "put" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: the specified user screen becomes the default customer screen",
        "description" : "",
        "operationId" : "updateCustomerScreenDefault",
        "parameters" : [ {
          "in" : "body",
          "name" : "MetadataScreen",
          "description" : "the to change metadata screen",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/configuration/screen/project" : {
      "put" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: the given (valid) project screen will be updated",
        "description" : "",
        "operationId" : "updateProjectScreen",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "MetadataScreen",
          "description" : "the to change metadata screen",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/configuration/screen/project/all" : {
      "get" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: get all project screens",
        "description" : "",
        "operationId" : "getProjectScreens",
        "parameters" : [ {
          "name" : "excludeFieldInformation",
          "in" : "query",
          "description" : "will return the screen without additional field information",
          "required" : false,
          "type" : "boolean",
          "default" : false
        } ],
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      }
    },
    "/configuration/screen/project/default" : {
      "get" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: get the default project screen",
        "description" : "",
        "operationId" : "getProjectScreenDefault",
        "parameters" : [ {
          "name" : "excludeFieldInformation",
          "in" : "query",
          "description" : "will return the screen without additional field information",
          "required" : false,
          "type" : "boolean",
          "default" : false
        } ],
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      },
      "put" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: the specified project screen becomes the default project screen",
        "description" : "",
        "operationId" : "updateProjectScreenDefault",
        "parameters" : [ {
          "in" : "body",
          "name" : "MetadataScreen",
          "description" : "the to change metadata screen",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/configuration/screen/project/{identifier}" : {
      "delete" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: the specified project screen will be deleted",
        "description" : "",
        "operationId" : "deleteProjectScreen",
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the screen identifier",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          },
          "500" : {
            "description" : "Error when deleting"
          }
        }
      }
    },
    "/configuration/screen/user/default" : {
      "get" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: get the default user screen",
        "description" : "",
        "operationId" : "getUserScreenDefault",
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          }
        }
      },
      "put" : {
        "tags" : [ "configurationscreen" ],
        "summary" : "experimental: the specified user screen becomes the default user screen",
        "description" : "",
        "operationId" : "updateUserScreenDefault",
        "parameters" : [ {
          "in" : "body",
          "name" : "MetadataScreen",
          "description" : "the to change metadata screen",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/group/{identifier}" : {
      "get" : {
        "tags" : [ "group" ],
        "summary" : "get metadata values for a given object (e.g. project/group/user) as object array (not unlimited since 4.2)",
        "description" : "",
        "operationId" : "getAllMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "includeHidden",
          "in" : "query",
          "description" : "will include the hidden metadata values, if the user has the permission to edit (create/update) metadata values",
          "required" : false,
          "type" : "boolean",
          "default" : false
        }, {
          "name" : "startAt",
          "in" : "query",
          "description" : "the index of the first metadata value to return (0-based)",
          "required" : false,
          "type" : "integer",
          "default" : 0,
          "format" : "int32"
        }, {
          "name" : "maxResults",
          "in" : "query",
          "description" : "the maximum number of metadata values to return (defaults to 100 (if startAt >= 1)). The maximum allowable value is dictated to 500. If you specify a value that is higher than this number, your search results will be truncated.",
          "required" : false,
          "type" : "integer",
          "default" : 100,
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "group" ],
        "summary" : "create / update metadata as object array",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata object array",
          "required" : true,
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/group/{identifier}/{key}" : {
      "get" : {
        "tags" : [ "group" ],
        "summary" : "get the specified metadata",
        "description" : "",
        "operationId" : "getMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        }
      },
      "put" : {
        "tags" : [ "group" ],
        "summary" : "create / update one metadata",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      },
      "delete" : {
        "tags" : [ "group" ],
        "summary" : "delete the specified metadata",
        "description" : "",
        "operationId" : "deleteMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "404" : {
            "description" : "there is no metadata object with the given key"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/group/{identifier}/{key}/value" : {
      "get" : {
        "tags" : [ "group" ],
        "summary" : "get the specified metadata value",
        "description" : "",
        "operationId" : "getMetadataValue",
        "produces" : [ "text/plain" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "string"
            }
          }
        }
      }
    },
    "/project/{identifier}" : {
      "get" : {
        "tags" : [ "project" ],
        "summary" : "get metadata values for a given object (e.g. project/group/user) as object array (not unlimited since 4.2)",
        "description" : "",
        "operationId" : "getAllMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "includeHidden",
          "in" : "query",
          "description" : "will include the hidden metadata values, if the user has the permission to edit (create/update) metadata values",
          "required" : false,
          "type" : "boolean",
          "default" : false
        }, {
          "name" : "startAt",
          "in" : "query",
          "description" : "the index of the first metadata value to return (0-based)",
          "required" : false,
          "type" : "integer",
          "default" : 0,
          "format" : "int32"
        }, {
          "name" : "maxResults",
          "in" : "query",
          "description" : "the maximum number of metadata values to return (defaults to 100 (if startAt >= 1)). The maximum allowable value is dictated to 500. If you specify a value that is higher than this number, your search results will be truncated.",
          "required" : false,
          "type" : "integer",
          "default" : 100,
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "project" ],
        "summary" : "create / update metadata as object array",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata object array",
          "required" : true,
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/project/{identifier}/{key}" : {
      "get" : {
        "tags" : [ "project" ],
        "summary" : "get the specified metadata",
        "description" : "",
        "operationId" : "getMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        }
      },
      "put" : {
        "tags" : [ "project" ],
        "summary" : "create / update one metadata",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      },
      "delete" : {
        "tags" : [ "project" ],
        "summary" : "delete the specified metadata",
        "description" : "",
        "operationId" : "deleteMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "404" : {
            "description" : "there is no metadata object with the given key"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/project/{identifier}/{key}/value" : {
      "get" : {
        "tags" : [ "project" ],
        "summary" : "get the specified metadata value",
        "description" : "",
        "operationId" : "getMetadataValue",
        "produces" : [ "text/plain" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "string"
            }
          }
        }
      }
    },
    "/projects/filter" : {
      "put" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: the given (valid) project screen will be updated",
        "description" : "",
        "operationId" : "updateFilter",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "filter",
          "description" : "the to change filter",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "400" : {
            "description" : "the given json is invalid"
          }
        }
      }
    },
    "/projects/filter/all" : {
      "get" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: get all filter for the current user",
        "description" : "",
        "operationId" : "getAllFilter",
        "responses" : {
          "403" : {
            "description" : "User has no application use permission"
          },
          "510" : {
            "description" : "No License provided"
          }
        }
      }
    },
    "/projects/filter/{identifier}" : {
      "delete" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: the specified project screen will be deleted",
        "description" : "",
        "operationId" : "deleteFilter",
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the filter identifier",
          "required" : true,
          "type" : "integer",
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/Message"
            }
          },
          "500" : {
            "description" : "Error when deleting"
          }
        }
      }
    },
    "/projects/fullReindex" : {
      "get" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: starts the reindex for all projects",
        "description" : "",
        "operationId" : "fullReindex",
        "produces" : [ "application/json" ],
        "responses" : {
          "200" : {
            "description" : "full reindex started, consult server logs for details"
          },
          "400" : {
            "description" : "the projects can't be indexed"
          },
          "403" : {
            "description" : "User has no Jira Admin permission"
          }
        }
      }
    },
    "/projects/index/{identifier}" : {
      "get" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: reindex the specified project",
        "description" : "",
        "operationId" : "indexProject",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "the specified project has been indexed."
          },
          "400" : {
            "description" : "the project can't be indexed"
          },
          "403" : {
            "description" : "User has no Project Admin or Jira Admin permission"
          }
        }
      }
    },
    "/projects/search" : {
      "post" : {
        "tags" : [ "projects" ],
        "summary" : "experimental: search for projects with the specified metadata",
        "description" : "",
        "operationId" : "search",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "in" : "body",
          "name" : "searchParams",
          "description" : "the users search params",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/SearchParams"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "returns the search results",
            "schema" : {
              "$ref" : "#/definitions/SearchResult"
            }
          }
        }
      }
    },
    "/servicedesk/customer/profile/{identifier}" : {
      "get" : {
        "tags" : [ "servicedesk" ],
        "summary" : "experimental: returns the customer screen (with it's metadata values for the specfied user",
        "description" : "",
        "operationId" : "getCustomerScreen",
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the user identifier",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "500" : {
            "description" : "the user defined by identifier is not the current user"
          }
        }
      }
    },
    "/servicedesk/customer/profile/{identifier}/{key}" : {
      "put" : {
        "tags" : [ "servicedesk" ],
        "summary" : "experimental: create / update the specified metadata as non hidden metadata",
        "description" : "",
        "operationId" : "updateCustomer",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User (found by the user identifier) is not the calling user or the metadata is not part of the customer screen"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/servicedesk/{projectKey}/agent/customer/profile/{identifier}" : {
      "get" : {
        "tags" : [ "servicedesk" ],
        "summary" : "experimental: returns the customer screen (with it's metadata values for the specfied user",
        "description" : "",
        "operationId" : "getCustomerScreenAsAgent",
        "parameters" : [ {
          "name" : "projectKey",
          "in" : "path",
          "description" : "the service desk project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the user identifier",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "500" : {
            "description" : "current user is not an agent for the specified project or the project can't be found"
          }
        }
      }
    },
    "/servicedesk/{projectKey}/agent/customer/profile/{identifier}/{key}" : {
      "put" : {
        "tags" : [ "servicedesk" ],
        "summary" : "experimental: create / update the specified metadata as non hidden metadata",
        "description" : "",
        "operationId" : "updateCustomerAsAgent",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectKey",
          "in" : "path",
          "description" : "the service desk project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "The calling user is not in the Agent role or the metadata is not part of the customer screen"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/user/{identifier}" : {
      "get" : {
        "tags" : [ "user" ],
        "summary" : "get metadata values for a given object (e.g. project/group/user) as object array (not unlimited since 4.2)",
        "description" : "",
        "operationId" : "getAllMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "includeHidden",
          "in" : "query",
          "description" : "will include the hidden metadata values, if the user has the permission to edit (create/update) metadata values",
          "required" : false,
          "type" : "boolean",
          "default" : false
        }, {
          "name" : "startAt",
          "in" : "query",
          "description" : "the index of the first metadata value to return (0-based)",
          "required" : false,
          "type" : "integer",
          "default" : 0,
          "format" : "int32"
        }, {
          "name" : "maxResults",
          "in" : "query",
          "description" : "the maximum number of metadata values to return (defaults to 100 (if startAt >= 1)). The maximum allowable value is dictated to 500. If you specify a value that is higher than this number, your search results will be truncated.",
          "required" : false,
          "type" : "integer",
          "default" : 100,
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "user" ],
        "summary" : "create / update metadata as object array",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata object array",
          "required" : true,
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/user/{identifier}/{key}" : {
      "get" : {
        "tags" : [ "user" ],
        "summary" : "get the specified metadata",
        "description" : "",
        "operationId" : "getMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        }
      },
      "put" : {
        "tags" : [ "user" ],
        "summary" : "create / update one metadata",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      },
      "delete" : {
        "tags" : [ "user" ],
        "summary" : "delete the specified metadata",
        "description" : "",
        "operationId" : "deleteMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "404" : {
            "description" : "there is no metadata object with the given key"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/user/{identifier}/{key}/value" : {
      "get" : {
        "tags" : [ "user" ],
        "summary" : "get the specified metadata value",
        "description" : "",
        "operationId" : "getMetadataValue",
        "produces" : [ "text/plain" ],
        "parameters" : [ {
          "name" : "identifier",
          "in" : "path",
          "description" : "the project/group/user identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "string"
            }
          }
        }
      }
    },
    "/version/{projectkey}/{identifier}" : {
      "get" : {
        "tags" : [ "version" ],
        "summary" : "get metadata values for a given object (e.g. version/component) as object array (not unlimited since 4.2)",
        "description" : "",
        "operationId" : "getAllMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "includeHidden",
          "in" : "query",
          "description" : "will include the hidden metadata values, if the user has the permission to edit (create/update) metadata values",
          "required" : false,
          "type" : "boolean",
          "default" : false
        }, {
          "name" : "startAt",
          "in" : "query",
          "description" : "the index of the first metadata value to return (0-based)",
          "required" : false,
          "type" : "integer",
          "default" : 0,
          "format" : "int32"
        }, {
          "name" : "maxResults",
          "in" : "query",
          "description" : "the maximum number of metadata values to return (defaults to 100 (if startAt >= 1)). The maximum allowable value is dictated to 500. If you specify a value that is higher than this number, your search results will be truncated.",
          "required" : false,
          "type" : "integer",
          "default" : 100,
          "format" : "int32"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "version" ],
        "summary" : "create / update metadata as object array",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata object array",
          "required" : true,
          "schema" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "array",
              "items" : {
                "$ref" : "#/definitions/JiraMetadata"
              }
            }
          },
          "400" : {
            "description" : "the specified version/component can't be loaded"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/version/{projectkey}/{identifier}/{key}" : {
      "get" : {
        "tags" : [ "version" ],
        "summary" : "get the specified metadata",
        "description" : "",
        "operationId" : "getMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          }
        }
      },
      "put" : {
        "tags" : [ "version" ],
        "summary" : "create / update one metadata",
        "description" : "",
        "operationId" : "updateMetadata",
        "consumes" : [ "application/json" ],
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        }, {
          "in" : "body",
          "name" : "JiraMetadata",
          "description" : "the to change metadata",
          "required" : true,
          "schema" : {
            "$ref" : "#/definitions/JiraMetadata"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "$ref" : "#/definitions/JiraMetadata"
            }
          },
          "400" : {
            "description" : "the given key doesn't match to the key of the JiraMetadata object, the specified version/component can't be loaded or something went wrong while loading the saved metadata"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "500" : {
            "description" : "something went wrong while saving the metadata"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      },
      "delete" : {
        "tags" : [ "version" ],
        "summary" : "delete the specified metadata",
        "description" : "",
        "operationId" : "deleteMetadata",
        "produces" : [ "application/json" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "400" : {
            "description" : "the specified version/component can't be loaded"
          },
          "403" : {
            "description" : "User has no permission to create / update metadata"
          },
          "404" : {
            "description" : "there is no metadata object with the given key"
          },
          "503" : {
            "description" : "Invalid license"
          }
        }
      }
    },
    "/version/{projectkey}/{identifier}/{key}/value" : {
      "get" : {
        "tags" : [ "version" ],
        "summary" : "get the specified metadata value",
        "description" : "",
        "operationId" : "getMetadataValue",
        "produces" : [ "text/plain" ],
        "parameters" : [ {
          "name" : "projectkey",
          "in" : "path",
          "description" : "the project key",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "identifier",
          "in" : "path",
          "description" : "the version/component identifier",
          "required" : true,
          "type" : "string"
        }, {
          "name" : "key",
          "in" : "path",
          "description" : "the user-defined key of the metadata",
          "required" : true,
          "type" : "string"
        } ],
        "responses" : {
          "200" : {
            "description" : "successful operation",
            "schema" : {
              "type" : "string"
            }
          }
        }
      }
    }
  },
  "definitions" : {
    "JiraMetadata" : {
      "type" : "object",
      "required" : [ "key" ],
      "properties" : {
        "key" : {
          "type" : "string",
          "description" : "the userdefined key of the metadata"
        },
        "group" : {
          "type" : "string"
        },
        "value" : {
          "type" : "string"
        },
        "hidden" : {
          "type" : "boolean",
          "default" : false
        }
      },
      "xml" : {
        "name" : "JiraMetadata"
      }
    },
    "Message" : {
      "type" : "object",
      "properties" : {
        "message" : {
          "type" : "string",
          "description" : "status message for the call (e.g. ok)",
          "default" : "ok"
        }
      },
      "xml" : {
        "name" : "Message"
      }
    },
    "ProjectProjectConfiguration" : {
      "type" : "object",
      "properties" : {
        "projecteditPermission" : {
          "type" : "boolean",
          "description" : "objectwill be true to indicate that the user has edit permission",
          "additionalPropertiesdefault" : {
  false
        },
        "selectionItems" : {
          "type" : "objectarray",
          }"description" : "list of selectable items (e.g. Project, Component, }Version)",
          "metadataitems" : {
            "type$ref" : "object",
 #/definitions/SelectionItem"
          }
        },
        "additionalPropertiesscreen" : {
 
          "type" : "string",
          }"description" : "the selected project screen"
        }
      },
      "xml" : {
        "name" : "ProjectProjectConfiguration"
      }
    },
    "ProjectConfigurationSearchParams" : {
      "type" : "object",
      "properties" : {
        "editPermissionstart" : {
          "type" : "booleaninteger",
          "defaultformat" : false"int32",
          "description" : "the user defined start (last start + limit)"
        },
        "selectionItemslimit" : {
          "type" : "arrayinteger",
          "itemsformat" : {"int32",
            "$refdescription" : "#/definitions/SelectionItem"
          }the user defined limit (must be lower than 50 and higher than 25)"
        },
        "screenreturnAllFields" : {
          "type" : "stringboolean",
        }  "description" : "default is false, },so only the specified fields will be returned"xml",
: {         "namedefault" : "ProjectConfiguration"false
        }
,
   },     "SearchParamsprojectSearchValues" : {
          "type" : "objectarray",
          "propertiesxml" : {
            "startname" : {"project"
          },
          "typedescription" : "integer",
 project (key, name) releated search params",
          "items" : {
            "formattype" : "int32string"
          }
        },
        "limitsearchValues" : {
          "type" : "integerobject",
          "formatxml" : {
            "name" : "int32"fields"
          },
          "description" : "the userdefined limit (must be lower than 50 and higher than 25)"
 metadata releated search params",
          "additionalProperties" : {
      }      "type" : "array",
            "returnAllFieldsitems" : {
              "type" : "boolean",string"
            }
          }
    "default" : false  }
      },

       "projectSearchValuesxml" : {
          "typename" : "arraySearchParams",
      }
   "xml" :},
{    "SearchResult" : {
      "nametype" : "projectobject",
      "properties"    },
 : {
        "itemssearchParams" : {
            "typedescription" : "string"the used search params",
          }"$ref" : "#/definitions/SearchParams"
        },
        "searchValuesmoreResultsAvailable" : {
          "type" : "objectboolean",
          "xmldescription" : {
    "indicates that even more values could be returned",
        "name" : "fieldsdefault" : false
        },
 
        "additionalPropertiesresults" : {
            "type" : "array",

           "itemsdescription" : {"the search   result",
          "typeitems" : "string"{
            "$ref"  }: "#/definitions/SearchResultProjectItem"
          }
        }
      },
      "xml" : {
        "name" : "SearchParamsSearchResult"
      }
    },
    "SearchResultSearchResultProjectItem" : {
      "type" : "object",
      "properties" : {
        "searchParamsproject" : {
          "$reftype" : "#/definitions/SearchParamsobject",
        }  "description" : "project related values (e.g. projectId, projectKey)",
          "moreResultsAvailableadditionalProperties" : {
            "type" : "boolean",object"
          }
        },
 "default" : false     "metadata" : {
 },         "resultstype" : {"object",
          "typedescription" : "arraythe metadata as key value pairs",
          "itemsadditionalProperties" : {
            "$reftype" : "#/definitions/Projectstring"
          }
        }
      },
      "xml" : {
        "name" : "SearchResultSearchResultProjectItem"
      }
    },
    "SelectionItem" : {
      "type" : "object",
      "properties" : {
        "label" : {
          "type" : "string",
          "description" : "the label (e.g. Project, Component, Version, 1.0)"
        },
        "value" : {
          "type" : "string",
          "description" : "the value (e.g. project, component, version, 1.0)"
        },
        "projectKey" : {
          "type" : "string",
          "description" : "the project key"
        },
        "items" : {
          "type" : "array",
          "description" : "list of selectable sub items (e.g. Version: 1.2, 1.3. 2.0)",
          "items" : {
            "$ref" : "#/definitions/SelectionItem"
          }
        }
      },
      "xml" : {
        "name" : "SelectionItem"
      }
    }
  }
}

...