# Upload File — Pixelbin

> Upload a file to Pixelbin. See the documentation

- Key: `pixelbin-upload-file`
- Type: Action (Write)
- Version: 0.1.3
- App: Pixelbin (`pixelbin`) — https://pipedream.com/apps/pixelbin.md
- This page (HTML): https://pipedream.com/apps/pixelbin/actions/upload-file
- Hints: open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/pixelbin/actions/upload-file/upload-file.mjs

## Description

Upload a file to Pixelbin. [See the documentation](https://www.pixelbin.io/docs/api-docs/)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `filePath` | `string` | Yes | The file to upload. Provide either a file URL or a path to a file in the /tmp directory (for example, /tmp/myFile.txt) |
| `path` | `string` | No | Path where you want to store the asset. Path of containing folder. Eg. folder1/folder2. Options are loaded from the connected account. |
| `name` | `string` | No | Name of the asset, if not provided name of the file will be used. Note - The provided name will be slugified to make it URL safe. |
| `access` | `string` | No | Access level of the asset. |
| `tags` | `string[]` | No | Tags for the asset. |
| `metadata` | `object` | No | Metadata for the asset. |
| `overwrite` | `boolean` | No | Overwrite flag. If set to true will overwrite any file that exists with same path, name and type. Defaults to false. |
| `filenameOverride` | `boolean` | No | If set to true will add unique characters to name if asset with given name already exists. If overwrite flag is set to true, preference will be given to overwrite flag. If both are set to false an error will be raised. |
| `syncDir` | `dir` | No | SyncDir |

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

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: "pixelbin-upload-file",
  arguments: {
    filePath: "File Path or URL",
    path: "Path",
  },
})
```

**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: "pixelbin-upload-file",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    pixelbin: { authProvisionId: "apn_xxxxxxx" },
    filePath: "File Path or URL",
    path: "Path",
  },
})

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": "pixelbin-upload-file",
    "configured_props": {
      "pixelbin": { "authProvisionId": "apn_xxxxxxx" },
      "filePath": "File Path or URL",
      "path": "Path"
    }
  }'
```

---

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