# Update Card Item — Miro Developer App

> Updates a card item on a Miro board. See the documentation.

- Key: `miro_custom_app-update-card-item`
- Type: Action (Write)
- Version: 0.0.2
- App: Miro Developer App (`miro_custom_app`) — https://pipedream.com/apps/miro-custom-app.md
- This page (HTML): https://pipedream.com/apps/miro-custom-app/actions/update-card-item
- Hints: destructive · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/miro_custom_app/actions/update-card-item/update-card-item.mjs

## Description

Updates a card item on a Miro board. [See the documentation](https://developers.miro.com/reference/update-card-item).

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `teamId` | `string` | No | The team_id for which you want to retrieve the list of boards. |
| `boardId` | `string` | Yes | The ID of a board Options are loaded from the connected account. |
| `itemId` | `string` | Yes | The ID of an item (Shape) Options are loaded from the connected account. |
| `title` | `string` | No | A short text header for the card |
| `assigneeId` | `string` | No | The ID of the user to assign the card to Options are loaded from the connected account. |
| `description` | `string` | No | The description of the card |
| `dueDate` | `string` | No | The date when the task or activity described in the card is due to be completed. Example: 2023-10-12T22:00:55.000Z |
| `cardTheme` | `string` | No | Hex value of the border color of the card. Default: #2d9bf0 |
| `x` | `integer` | No | X-axis coordinate of the location of the item on the board. By default, all items have absolute positioning to the board, not the current viewport. The center point of the board has x: 0 and y: 0 coordinates. |
| `y` | `integer` | No | Y-axis coordinate of the location of the item on the board. By default, all items have absolute positioning to the board, not the current viewport. The center point of the board has x: 0 and y: 0 coordinates. |
| `height` | `string` | No | The height of the card in pixels |
| `rotation` | `string` | No | Rotation angle of an item, in degrees, relative to the board. You can rotate items clockwise (right) and counterclockwise (left) by specifying positive and negative values, respectively. |
| `width` | `string` | No | The width of the card in pixels |
| `parent` | `string` | No | The ID of the parent frame for the item Options are loaded from the connected account. |

## 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": "miro_custom_app",
      },
    },
  },
)

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: "miro_custom_app-update-card-item",
  arguments: {
    teamId: "Team ID",
    boardId: "Board ID",
  },
})
```

**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: "miro_custom_app-update-card-item",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    miro_custom_app: { authProvisionId: "apn_xxxxxxx" },
    teamId: "Team ID",
    boardId: "Board ID",
  },
})

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": "miro_custom_app-update-card-item",
    "configured_props": {
      "miro_custom_app": { "authProvisionId": "apn_xxxxxxx" },
      "teamId": "Team ID",
      "boardId": "Board ID"
    }
  }'
```

---

- App: https://pipedream.com/apps/miro-custom-app.md · All apps: https://pipedream.com/apps
