# Update Issue — Jira

> Updates an issue. A transition may be applied and issue properties updated as part of the edit. See the documentation

- Key: `jira-update-issue`
- Type: Action (Write)
- Version: 0.3.1
- App: Jira (`jira`) — https://pipedream.com/apps/jira.md
- This page (HTML): https://pipedream.com/apps/jira/actions/update-issue
- Hints: destructive · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/jira/actions/update-issue/update-issue.mjs

## Description

Updates an issue. A transition may be applied and issue properties updated as part of the edit. [See the documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `cloudId` | `string` | Yes | The Jira Cloud site ID (for example, 11223344-a1b2-3b33-c444-def123456789). Use Get Cloud ID to discover IDs. See the documentation Options are loaded from the connected account. |
| `historyMetadata` | `object` | No | Additional issue history details |
| `properties` | `string` | No | Details of issue properties to be added or updated. Please provide an array of objects with keys and values. |
| `update` | `object` | No | A Map containing the field name and a list of operations to perform on the issue screen field. Note that fields included here cannot be included in fields. |
| `additionalProperties` | `object` | No | Extra properties of any type may be provided to this object |
| `projectId` | `string` | Yes | The project ID Options are loaded from the connected account. |
| `issueIdOrKey` | `string` | Yes | The ID or key of an issue Options are loaded from the connected account. |
| `issueTypeId` | `string` | No | An ID identifying the type of issue. Check the API docs to see available options Options are loaded from the connected account. |
| `notifyUsers` | `boolean` | No | Whether a notification email about the issue update is sent to all watchers. To disable the notification, administer Jira or administer project permissions are required. If the user doesn't have the necessary permission the request is ignored. |
| `overrideScreenSecurity` | `boolean` | No | Whether screen security should be overridden to enable hidden fields to be edited. Available to Connect app users with admin permissions. |
| `overrideEditableFlag` | `boolean` | No | Whether screen security should be overridden to enable uneditable fields to be edited. Available to Connect app users with admin permissions. |
| `transitionId` | `string` | No | The ID of the issue transition. Retrieving options requires a static issueIdOrKey. Required when specifying a transition to undertake. Options are loaded from the connected account. |
| `transitionLooped` | `boolean` | No | Whether the transition is looped |

## Run it

**MCP**

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "jira",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
  name: "jira-update-issue",
  arguments: {
    cloudId: "Cloud ID",
    historyMetadata: "History Metadata",
  },
})
```

**TypeScript**

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "jira-update-issue",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    jira: { authProvisionId: "apn_xxxxxxx" },
    cloudId: "Cloud ID",
    historyMetadata: "History Metadata",
  },
})

console.log(result)
```

**cURL**

```bash
curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
  -H "Content-Type: application/json" \
  -H "X-PD-Environment: production" \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "external_user_id": "{external_user_id}",
    "id": "jira-update-issue",
    "configured_props": {
      "jira": { "authProvisionId": "apn_xxxxxxx" },
      "cloudId": "Cloud ID",
      "historyMetadata": "History Metadata"
    }
  }'
```

---

- App: https://pipedream.com/apps/jira.md · All apps: https://pipedream.com/apps
