# Update Profile — Anchor Browser

> Updates the description or data of an existing profile using a session. See the documentation.

- Key: `anchor_browser-update-profile`
- Type: Action (Write)
- Version: 0.0.2
- App: Anchor Browser (`anchor_browser`) — https://pipedream.com/apps/anchor-browser.md
- This page (HTML): https://pipedream.com/apps/anchor-browser/actions/update-profile
- Hints: destructive · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/anchor_browser/actions/update-profile/update-profile.mjs

## Description

Updates the description or data of an existing profile using a session. [See the documentation](https://docs.anchorbrowser.io/api-reference/profiles/update-profile).

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `profileName` | `string` | Yes | The name of the profile to update. Options are loaded from the connected account. |
| `description` | `string` | No | The description of the profile. |
| `source` | `string` | Yes | The source of the profile data. currently only session is supported. |
| `sessionId` | `string` | Yes | The session ID is required if the source is set to session. The session must be running, and the profile will be stored once the session terminates. 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": "anchor_browser",
      },
    },
  },
)

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: "anchor_browser-update-profile",
  arguments: {
    profileName: "Profile Name",
    description: "Profile Description",
  },
})
```

**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: "anchor_browser-update-profile",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    anchor_browser: { authProvisionId: "apn_xxxxxxx" },
    profileName: "Profile Name",
    description: "Profile Description",
  },
})

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": "anchor_browser-update-profile",
    "configured_props": {
      "anchor_browser": { "authProvisionId": "apn_xxxxxxx" },
      "profileName": "Profile Name",
      "description": "Profile Description"
    }
  }'
```

---

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