PowerPlatformConnectors/independent-publisher-conne.../Atlassian Jira/apiDefinition.swagger.json

1003 строки
33 KiB
JSON

{
"swagger": "2.0",
"info": {
"version": "1.0",
"title": "Jira",
"description": "This Jira Connector extends the current offering by Microsoft, increasing the API endpoints offered by the Jira Cloud platform REST API. This adds Issues, Tasks, Projects, Project Categories and User endpoints.",
"contact": {
"name": "Joe Unwin",
"url": "https://www.hitachisolutions.com",
"email": "junwin@hitachisolutions.com"
}
},
"host": "flowyco.atlassian.net",
"basePath": "/rest/api/3",
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/issue/{issueIdOrKey}": {
"put": {
"description": "Edits an issue. A transition may be applied and issue properties updated as part of the edit.",
"summary": "Edit Issue",
"tags": [
"Issues"
],
"operationId": "editIssue",
"deprecated": false,
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"parameters": [
{
"name": "issueIdOrKey",
"in": "path",
"required": true,
"type": "string",
"x-ms-summary": "Issue ID or Key",
"description": "Provide the Issue ID or Key for the issue you wish to edit",
"x-ms-url-encoding": "single"
},
{
"name": "notifyUsers",
"in": "query",
"required": false,
"type": "boolean",
"x-ms-summary": "Notify Users",
"description": "Do you want to notify users?"
},
{
"name": "overrideScreenSecurity",
"in": "query",
"required": false,
"type": "boolean",
"x-ms-summary": "Override Screen Security",
"description": "Do you want to override the screen security?"
},
{
"name": "overrideEditableFlag",
"in": "query",
"required": false,
"type": "boolean",
"x-ms-summary": "Override Editable Flag",
"description": "Do you want to override the editable flag?"
},
{
"name": "body",
"in": "body",
"required": false,
"schema": {
"type": "object",
"properties": {
"transition": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Transition ID"
},
"looped": {
"type": "string",
"description": "Transition looped"
}
},
"description": "Transition"
},
"fields": {
"type": "string",
"description": "Fields"
},
"update": {
"type": "string",
"description": "Update"
},
"historyMetadata": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "History meta data type"
},
"description": {
"type": "string",
"description": "History meta data description"
},
"descriptionKey": {
"type": "string",
"description": "History meta data description key"
},
"activityDescription": {
"type": "string",
"description": "History meta data activity description"
},
"activityDescriptionKey": {
"type": "string",
"description": "History meta data activity description key"
},
"emailDescription": {
"type": "string",
"description": "History meta data email description"
},
"emailDescriptionKey": {
"type": "string",
"description": "History meta data email description key"
},
"actor": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Actor ID"
},
"displayName": {
"type": "string",
"description": "Actor display name"
},
"displayNameKey": {
"type": "string",
"description": "Actor display name key"
},
"type": {
"type": "string",
"description": "Actor type"
},
"avatarUrl": {
"type": "string",
"description": "Actor avatar url"
},
"url": {
"type": "string",
"description": "Actor url"
}
},
"description": "Actor"
},
"generator": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Generator id"
},
"displayName": {
"type": "string",
"description": "Generator display name"
},
"displayNameKey": {
"type": "string",
"description": "Generator display name key"
},
"type": {
"type": "string",
"description": "Generator type"
},
"avatarUrl": {
"type": "string",
"description": "Generator avatar url"
},
"url": {
"type": "string",
"description": "Generator url"
}
},
"description": "Generator"
},
"cause": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Cause id"
},
"displayName": {
"type": "string",
"description": "Cause display name"
},
"displayNameKey": {
"type": "string",
"description": "Cause display name key"
},
"type": {
"type": "string",
"description": "Cause type"
},
"avatarUrl": {
"type": "string",
"description": "Cause avatar url"
},
"url": {
"type": "string",
"description": "Cause url"
}
},
"description": "Cause"
},
"extraData": {
"type": "string",
"description": "Extra data"
}
},
"description": "History meta data"
},
"properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Key"
},
"value": {
"type": "object",
"properties": {},
"description": "Value"
}
}
},
"description": "Properties"
}
}
}
}
],
"responses": {
"201": {
"description": "Returned if the request is successful.",
"schema": {},
"examples": {
"application/json": {
"self": "https://your-domain.atlassian.net/rest/api/3/issue/10100",
"id": "10100",
"name": "EDITED",
"description": "Issue Edited"
}
},
"headers": {}
},
"204": {
"description": "Returned if the request is successful.",
"schema": {
"type": "object"
},
"headers": {}
},
"400": {
"description": "Returned if the request body is missing. The user does not have the necessary permission to edit one or more fields. The request includes one or more fields that are not found or are not associated with the issue's edit screen. The request includes an invalid transition.",
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if the user uses `overrideScreenSecurity` or `overrideEditableFlag` but doesn't have the necessary permission.",
"headers": {}
},
"404": {
"description": "Returned if the issue is not found or the user does not have permission to view it.",
"headers": {}
}
}
}
},
"/project/{projectIdOrKey}": {
"delete": {
"description": "Deletes a project. Permissions required: Administer Jira (global permissions)",
"summary": "Delete Project",
"tags": [
"Projects"
],
"operationId": "deleteProject",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [
{
"name": "projectIdOrKey",
"in": "path",
"required": true,
"type": "string",
"description": "The project ID or project key (case sensitive).",
"x-ms-summary": "Project ID or Key",
"x-ms-url-encoding": "single"
},
{
"name": "enableUndo",
"in": "query",
"required": false,
"default": false,
"type": "boolean",
"description": "Whether this project is placed in the Jira recycle bin where it will be available for restoration.",
"x-ms-summary": "Enable Undo"
}
],
"responses": {
"204": {
"description": "Returned if the project is deleted.",
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"404": {
"description": "Returned if the project is not found or the user does not have permission to delete it.",
"headers": {}
}
}
},
"put": {
"description": "Updates the project details of a project.",
"summary": "Update Project",
"tags": [
"Projects"
],
"operationId": "updateProject",
"deprecated": false,
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"parameters": [
{
"name": "projectIdOrKey",
"in": "path",
"required": true,
"type": "string",
"x-ms-summary": "Project ID or Key",
"description": "Provide the project ID or Key you want to update1",
"x-ms-url-encoding": "single"
},
{
"name": "body",
"in": "body",
"required": false,
"schema": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Key"
},
"name": {
"type": "string",
"description": "Name"
},
"projectTypeKey": {
"type": "string",
"description": "Project Type Key"
},
"projectTemplateKey": {
"type": "string",
"description": "Project Template Key"
},
"description": {
"type": "string",
"description": "Description"
},
"lead": {
"type": "string",
"description": "Lead"
},
"leadAccountId": {
"type": "string",
"description": "Lead Account ID"
},
"url": {
"type": "string",
"description": "URL"
},
"assigneeType": {
"type": "string",
"description": "Assignee Type"
},
"avatarId": {
"type": "string",
"description": "Avatar ID"
},
"issueSecurityScheme": {
"type": "string",
"description": "Issue Security Scheme"
},
"permissionScheme": {
"type": "string",
"description": "Permission Scheme"
},
"notificationScheme": {
"type": "string",
"description": "Notification Scheme"
},
"categoryId": {
"type": "string",
"description": "Category ID"
}
}
}
}
],
"responses": {
"200": {
"description": "Returned if the project is updated.",
"schema": {},
"headers": {}
},
"400": {
"description": "Returned if the request is not valid.",
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if:\n\n * the user does not have the necessary permission to update project details.\n * the permission scheme is being changed and the Jira instance is Jira Core Free or Jira Software Free. Permission schemes cannot be changed on free plans.",
"headers": {}
},
"404": {
"description": "Returned if the project is not found.",
"headers": {}
}
}
}
},
"/projectCategory": {
"get": {
"description": "Returns all project categories.",
"summary": "Get All Project Categories",
"tags": [
"Project categories"
],
"operationId": "getAllProjectCategories",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"200": {
"description": "Returned if the request is successful.",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"self": {
"type": "string",
"description": "Self"
},
"id": {
"type": "string",
"description": "ID"
},
"description": {
"type": "string",
"description": "Description"
},
"name": {
"type": "string",
"description": "Name"
}
}
}
},
"examples": {
"application/json": [
{
"self": "https://your-domain.atlassian.net/rest/api/3/projectCategory/10000",
"id": "10000",
"name": "FIRST",
"description": "First Project Category"
},
{
"self": "https://your-domain.atlassian.net/rest/api/3/projectCategory/10001",
"id": "10001",
"name": "SECOND",
"description": "Second Project Category"
}
]
}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
}
}
},
"post": {
"description": "Creates a project category. Permissions required: Administer Jira (global permissions)",
"summary": "Create Project Category",
"tags": [
"Project categories"
],
"operationId": "createProjectCategory",
"deprecated": false,
"produces": [
"application/json"
],
"consumes": [
"application/json"
],
"parameters": [
{
"name": "body",
"in": "body",
"required": false,
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name",
"title": "name"
},
"description": {
"type": "string",
"description": "Description",
"title": "description"
}
}
}
}
],
"responses": {
"201": {
"description": "Returned if the request is successful.",
"schema": {},
"examples": {
"application/json": {
"self": "https://your-domain.atlassian.net/rest/api/3/projectCategory/10100",
"id": "10100",
"name": "CREATED",
"description": "Created Project Category"
}
},
"headers": {}
},
"400": {
"description": "Returned if:\n\n * `name` is not provided or exceeds 255 characters.\n * `description` is not provided or exceeds 1000 characters.",
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if the user does not have the necessary permission.",
"headers": {}
},
"409": {
"description": "Returned if the project category name is in use.",
"headers": {}
}
}
}
},
"/projectCategory/{id}": {
"delete": {
"description": "Deletes a project category. Permissions required: Administer Jira (global permissions)",
"summary": "Remove Project Category",
"tags": [
"Project categories"
],
"operationId": "removeProjectCategory",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"type": "integer",
"format": "int64",
"description": "ID of the project category to delete.",
"x-ms-summary": "Project ID",
"x-ms-url-encoding": "single"
}
],
"responses": {
"204": {
"description": "Returned if the request is successful.",
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if the user does not have the necessary permission.",
"headers": {}
},
"404": {
"description": "Returned if the project category is not found.",
"headers": {}
}
}
}
},
"/task/{taskId}": {
"get": {
"description": "Returns the status of a long-running asynchronous task. When a task has finished, this operation returns the JSON blob applicable to the task.",
"summary": "Get Task",
"tags": [
"Tasks"
],
"operationId": "getTask",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [
{
"name": "taskId",
"in": "path",
"required": true,
"type": "string",
"description": "The ID of the task.",
"x-ms-summary": "Task ID",
"x-ms-url-encoding": "single"
}
],
"responses": {
"200": {
"description": "Returned if the request is successful.",
"schema": {},
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if the user does not have the necessary permission.",
"headers": {}
},
"404": {
"description": "Returned if the task is not found.",
"headers": {}
}
}
}
},
"/task/{taskId}/cancel": {
"post": {
"description": "Cancels a task. Permissions required: either of: Administer Jira or Creator of the task.",
"summary": "Cancel Task",
"tags": [
"Tasks"
],
"operationId": "cancelTask",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [
{
"name": "taskId",
"in": "path",
"required": true,
"type": "string",
"description": "The ID of the task.",
"x-ms-summary": "Task ID",
"x-ms-url-encoding": "single"
},
{
"name": "X-Atlassian-Token",
"in": "header",
"required": true,
"type": "string",
"description": "The X-Atlassian-Token nocheck requirement",
"x-ms-summary": "Token",
"default": "nocheck",
"x-ms-visibility": "internal"
}
],
"responses": {
"201": {
"description": "Returned if the request is successful.",
"schema": {},
"examples": {
"application/json": {
"self": "https://your-domain.atlassian.net/rest/api/3/issue/10100",
"id": "10100",
"name": "CANCELLED",
"description": "Task Cancelled"
}
},
"headers": {}
},
"202": {
"description": "Returned if the request is successful.",
"schema": {
"type": "object"
},
"headers": {}
},
"400": {
"description": "Returned if cancellation of the task is not possible.",
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"headers": {}
},
"403": {
"description": "Returned if the user does not have the necessary permission.",
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"headers": {}
},
"404": {
"description": "Returned if the task is not found.",
"schema": {
"type": "array",
"items": {
"type": "string"
}
},
"headers": {}
}
}
}
},
"/user": {
"get": {
"description": "Returns a user. Permissions required: Browse users and groups.",
"summary": "Get User",
"tags": [
"Users"
],
"operationId": "getUser",
"deprecated": false,
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "query",
"required": true,
"type": "string",
"maxLength": 128,
"description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required.",
"x-ms-summary": "Account ID"
},
{
"name": "expand",
"in": "query",
"required": false,
"type": "string",
"description": "Use expand to include additional information about users in the response. This parameter accepts a comma-separated list. Expand options include: * `groups` includes all groups and nested groups to which the user belongs. * `applicationRoles` includes details of all the applications to which the user has access.",
"x-ms-summary": "Expand"
}
],
"responses": {
"200": {
"description": "Returned if the request is successful.",
"schema": {},
"examples": {
"application/json": {
"self": "https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g",
"key": "",
"accountId": "5b10a2844c20165700ede21g",
"name": "",
"emailAddress": "mia@example.com",
"avatarUrls": {
"48x48": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48",
"24x24": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24",
"16x16": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16",
"32x32": "https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"
},
"displayName": "Mia Krystof",
"active": true,
"timeZone": "Australia/Sydney",
"groups": {
"size": 3,
"items": []
},
"applicationRoles": {
"size": 1,
"items": []
}
}
},
"headers": {}
},
"401": {
"description": "Returned if the authentication credentials are incorrect or missing.",
"headers": {}
},
"403": {
"description": "Returned if the calling user does not have the browse users and groups global permission.",
"headers": {}
},
"404": {
"description": "Returned if the Account ID is missing.",
"headers": {}
}
}
}
},
"/rest/webhooks/1.0/webhook": {
"x-ms-notification-content": {
"description": "Project Create Response",
"schema": {
"type": "object",
"properties": {
"self": {
"type": "string",
"description": "Self"
},
"id": {
"type": "string",
"description": "ID"
},
"key": {
"type": "string",
"description": "Key"
},
"name": {
"type": "string",
"description": "Name"
},
"avatarUrls": {
"type": "object",
"properties": {
"48x48": {
"type": "string",
"description": "48x48 Avatar URL"
},
"24x24": {
"type": "string",
"description": "24x24 Avatar URL"
},
"16x16": {
"type": "string",
"description": "16x16 Avatar URL"
},
"32x32": {
"type": "string",
"description": "32x32 Avatar URL"
}
},
"description": "Avatar URLs"
},
"projectCategory": {
"type": "object",
"properties": {
"self": {
"type": "string",
"description": "Self"
},
"id": {
"type": "string",
"description": "ID"
},
"name": {
"type": "string",
"description": "Name"
},
"description": {
"type": "string",
"description": "Description"
}
},
"description": "Project Category"
},
"simplified": {
"type": "boolean",
"description": "Simplified"
},
"style": {
"type": "string",
"description": "Style"
},
"insight": {
"type": "object",
"properties": {
"totalIssueCount": {
"type": "integer",
"format": "int32",
"description": "Total Issue Count"
},
"lastIssueUpdateTime": {
"type": "string",
"description": "Last Issue Update Time"
}
},
"description": "Insight"
}
}
}
}
}
},
"definitions": {},
"parameters": {},
"responses": {},
"securityDefinitions": {
"basic_auth": {
"type": "basic"
}
},
"security": [
{
"basic_auth": []
}
],
"tags": [
{
"name": "Issues",
"description": "This resource represents Jira issues. Use it to edit issues."
},
{
"name": "Issue attachments",
"description": "This resource represents issue attachments and the attachment settings for Jira. Use it to add an attachment."
},
{
"name": "Projects",
"description": "This resource represents projects. Use this resource to update and delete projects."
},
{
"name": "Project categories",
"description": "This resource represents project categories. Use it to create, and delete project categories as well as obtain a list of all project categories."
},
{
"name": "Tasks",
"description": "This resource represents a [long-running asynchronous tasks](#async-operations). Use it to obtain details about the progress of a long-running task or cancel a long-running task."
},
{
"name": "Users",
"description": "This resource represent users. Use this resource to get a User."
}
],
"externalDocs": {
"url": "http://www.atlassian.com",
"description": "Find out more about Atlassian products and services."
},
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/"
},
{
"propertyName": "Privacy policy",
"propertyValue": "https://www.atlassian.com/legal/privacy-policy"
},
{
"propertyName": "Categories",
"propertyValue": "IT Operations;Collaboration"
}
]
}