# Create Item — Sharepoint

> Create a new item in a SharePoint list. Provide the column names and values for the new item as a fields object. See the documentation

- Key: `sharepoint-create-item`
- Type: Action (Write)
- Version: 1.0.0
- App: Sharepoint (`sharepoint`) — https://pipedream.com/apps/sharepoint.md
- This page (HTML): https://pipedream.com/apps/sharepoint/actions/create-item
- Hints: open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/sharepoint/actions/create-item/create-item.mjs

## Description

Create a new item in a SharePoint list. Provide the column names and values for the new item as a `fields` object. [See the documentation](https://learn.microsoft.com/en-us/graph/api/listitem-create?view=graph-rest-1.0&tabs=http)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `siteId` | `string` | Yes | The ID of the SharePoint site. Use the List Sites action to find available sites and their IDs. Accepts a composite ID (e.g. contoso.sharepoint.com,<guid>,<guid>) or a server-relative path (e.g. contoso.sharepoint.com:/sites/site-name). |
| `listId` | `string` | Yes | The ID of the SharePoint list. Use the List Lists action to find lists and their IDs. The ID is also available in the list URL or on the List Settings page in SharePoint (Settings → List Settings → the List query parameter in the page URL). |
| `fields` | `object` | Yes | An object mapping SharePoint list column names to their values (e.g. { "Title": "My Item", "Status": "Active" }). Column names are case-sensitive and must match the internal field names in SharePoint. For partial updates, only the provided fields will be changed — omitted fields are left unchanged. To find valid column names, inspect existing list items or check the list settings in SharePoint. |

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

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: "sharepoint-create-item",
  arguments: {
    siteId: "Site ID",
    listId: "List 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: "sharepoint-create-item",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    sharepoint: { authProvisionId: "apn_xxxxxxx" },
    siteId: "Site ID",
    listId: "List 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": "sharepoint-create-item",
    "configured_props": {
      "sharepoint": { "authProvisionId": "apn_xxxxxxx" },
      "siteId": "Site ID",
      "listId": "List ID"
    }
  }'
```

---

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