> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pinkfish.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# microsoft-365-drive

> Microsoft 365 OneDrive — manage files and folders, search, share, and copy items in personal OneDrive

**Server path:** `/microsoft-365-drive` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                                                                    | Description                                                                                                                                                                                                                                                                                       |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`microsoft-365-drive_copy_drive_item`](#microsoft-365-drive_copy_drive_item)                           | Copy a drive item                                                                                                                                                                                                                                                                                 |
| [`microsoft-365-drive_create_drive_folder`](#microsoft-365-drive_create_drive_folder)                   | Create a new folder                                                                                                                                                                                                                                                                               |
| [`microsoft-365-drive_create_drive_item_share_link`](#microsoft-365-drive_create_drive_item_share_link) | Create a sharing link for a drive item                                                                                                                                                                                                                                                            |
| [`microsoft-365-drive_delete_item`](#microsoft-365-drive_delete_item)                                   | Delete a drive item                                                                                                                                                                                                                                                                               |
| [`microsoft-365-drive_download_file`](#microsoft-365-drive_download_file)                               | Download a OneDrive file by item ID. In an agent chat it returns a downloadable file artifact (a signed `url` plus `id`/`filename`/`mimeType`); in workflow/no-chat mode it returns the file content as base64. For supported document types (PDF, DOCX, PPTX, XLSX) also returns extracted text. |
| [`microsoft-365-drive_filter_files_by_extension`](#microsoft-365-drive_filter_files_by_extension)       | Find files in OneDrive with a given file extension (e.g. "pdf", "xlsx"), searching recursively from a starting folder up to a depth limit.                                                                                                                                                        |
| [`microsoft-365-drive_get_item`](#microsoft-365-drive_get_item)                                         | Get a drive item                                                                                                                                                                                                                                                                                  |
| [`microsoft-365-drive_get_item_by_path`](#microsoft-365-drive_get_item_by_path)                         | Get a OneDrive item (file or folder) by its path, e.g. "Documents/report.pdf". Useful when you know the path but not the item ID.                                                                                                                                                                 |
| [`microsoft-365-drive_get_my_drive`](#microsoft-365-drive_get_my_drive)                                 | Get my OneDrive                                                                                                                                                                                                                                                                                   |
| [`microsoft-365-drive_get_shared_items`](#microsoft-365-drive_get_shared_items)                         | List items (files and folders) that other people have shared with the signed-in user.                                                                                                                                                                                                             |
| [`microsoft-365-drive_list_drive_item_children`](#microsoft-365-drive_list_drive_item_children)         | List contents of a folder                                                                                                                                                                                                                                                                         |
| [`microsoft-365-drive_list_folder_contents`](#microsoft-365-drive_list_folder_contents)                 | Recursively list the contents of a OneDrive folder (and its subfolders) up to a depth limit. Use folder\_path "" or omit it to start at the drive root.                                                                                                                                           |
| [`microsoft-365-drive_list_my_drive_root_items`](#microsoft-365-drive_list_my_drive_root_items)         | List files and folders in OneDrive root                                                                                                                                                                                                                                                           |
| [`microsoft-365-drive_search_my_drive`](#microsoft-365-drive_search_my_drive)                           | Search OneDrive                                                                                                                                                                                                                                                                                   |
| [`microsoft-365-drive_update_drive_item`](#microsoft-365-drive_update_drive_item)                       | Rename or move a drive item                                                                                                                                                                                                                                                                       |
| [`microsoft-365-drive_upload_file`](#microsoft-365-drive_upload_file)                                   | Upload a file to OneDrive at the given path. Provide the file content as a base64-encoded string. Creates the file or replaces it if one already exists at that path.                                                                                                                             |

***

## microsoft-365-drive\_copy\_drive\_item

Copy a drive item

**Parameters:**

| Parameter         | Type   | Required | Default | Description                                                          |
| ----------------- | ------ | -------- | ------- | -------------------------------------------------------------------- |
| `item_id`         | string | Yes      | —       | The unique ID of the drive item to copy                              |
| `name`            | string | No       | —       | New name for the copied item (optional — defaults to original name)  |
| `parentReference` | object | No       | —       | Destination folder for the copy (optional — defaults to same folder) |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item to copy"
      },
      "name": {
        "type": "string",
        "description": "New name for the copied item (optional — defaults to original name)"
      },
      "parentReference": {
        "type": "object",
        "description": "Destination folder for the copy (optional — defaults to same folder)",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the destination folder"
          },
          "driveId": {
            "type": "string",
            "description": "Drive ID of the destination (if different drive)"
          }
        }
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_create\_drive\_folder

Create a new folder

**Parameters:**

| Parameter                           | Type   | Required | Default | Description                                                             |
| ----------------------------------- | ------ | -------- | ------- | ----------------------------------------------------------------------- |
| `item_id`                           | string | Yes      | —       | The unique ID of the parent folder where the new folder will be created |
| `@microsoft.graph.conflictBehavior` | string | No       | —       | Conflict resolution behavior if name already exists                     |
| `folder`                            | object | Yes      | —       | Indicates this is a folder (use empty object \{})                       |
| `name`                              | string | Yes      | —       | Name for the new folder                                                 |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the parent folder where the new folder will be created"
      },
      "@microsoft.graph.conflictBehavior": {
        "type": "string",
        "description": "Conflict resolution behavior if name already exists",
        "enum": [
          "rename",
          "replace",
          "fail"
        ]
      },
      "folder": {
        "type": "object",
        "description": "Indicates this is a folder (use empty object {})"
      },
      "name": {
        "type": "string",
        "description": "Name for the new folder"
      }
    },
    "required": [
      "PCID",
      "item_id",
      "folder",
      "name"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_create\_drive\_item\_share\_link

Create a sharing link for a drive item

**Parameters:**

| Parameter            | Type   | Required | Default | Description                              |
| -------------------- | ------ | -------- | ------- | ---------------------------------------- |
| `item_id`            | string | Yes      | —       | The unique ID of the drive item to share |
| `expirationDateTime` | string | No       | —       | Optional expiration time for the link    |
| `scope`              | string | Yes      | —       | Scope of the sharing link                |
| `type`               | string | Yes      | —       | Type of sharing link to create           |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item to share"
      },
      "expirationDateTime": {
        "type": "string",
        "description": "Optional expiration time for the link"
      },
      "scope": {
        "type": "string",
        "description": "Scope of the sharing link",
        "enum": [
          "anonymous",
          "organization"
        ]
      },
      "type": {
        "type": "string",
        "description": "Type of sharing link to create",
        "enum": [
          "view",
          "edit",
          "embed"
        ]
      }
    },
    "required": [
      "PCID",
      "item_id",
      "scope",
      "type"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_delete\_item

Delete a drive item

**Parameters:**

| Parameter | Type   | Required | Default | Description                               |
| --------- | ------ | -------- | ------- | ----------------------------------------- |
| `item_id` | string | Yes      | —       | The unique ID of the drive item to delete |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item to delete"
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_download\_file

Download a OneDrive file by item ID. In an agent chat it returns a downloadable file artifact (a signed `url` plus `id`/`filename`/`mimeType`); in workflow/no-chat mode it returns the file content as base64. For supported document types (PDF, DOCX, PPTX, XLSX) also returns extracted text.

**Parameters:**

| Parameter      | Type    | Required | Default | Description                                                                                                       |
| -------------- | ------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `item_id`      | string  | Yes      | —       | The unique ID of the drive item (file) to download.                                                               |
| `extract_text` | boolean | No       | —       | Whether to extract text for supported document types (default true). Set false to return only the base64 content. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item (file) to download."
      },
      "extract_text": {
        "type": "boolean",
        "description": "Whether to extract text for supported document types (default true). Set false to return only the base64 content."
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_filter\_files\_by\_extension

Find files in OneDrive with a given file extension (e.g. "pdf", "xlsx"), searching recursively from a starting folder up to a depth limit.

**Parameters:**

| Parameter     | Type    | Required | Default | Description                                                                      |
| ------------- | ------- | -------- | ------- | -------------------------------------------------------------------------------- |
| `extension`   | string  | Yes      | —       | File extension to match, with or without a leading dot (e.g. "pdf" or ".pdf").   |
| `folder_path` | string  | No       | —       | Path to the starting folder relative to the drive root. Omit or "" for the root. |
| `max_depth`   | integer | No       | —       | Maximum recursion depth (default 3).                                             |
| `max_results` | integer | No       | —       | Maximum number of matching files to return (default 100).                        |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "extension": {
        "type": "string",
        "description": "File extension to match, with or without a leading dot (e.g. \"pdf\" or \".pdf\")."
      },
      "folder_path": {
        "type": "string",
        "description": "Path to the starting folder relative to the drive root. Omit or \"\" for the root."
      },
      "max_depth": {
        "type": "integer",
        "description": "Maximum recursion depth (default 3)."
      },
      "max_results": {
        "type": "integer",
        "description": "Maximum number of matching files to return (default 100)."
      }
    },
    "required": [
      "PCID",
      "extension"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_get\_item

Get a drive item

**Parameters:**

| Parameter | Type   | Required | Default | Description                          |
| --------- | ------ | -------- | ------- | ------------------------------------ |
| `item_id` | string | Yes      | —       | The unique ID of the drive item      |
| `$select` | string | No       | —       | Comma-separated properties to return |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item"
      },
      "$select": {
        "type": "string",
        "description": "Comma-separated properties to return"
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_get\_item\_by\_path

Get a OneDrive item (file or folder) by its path, e.g. "Documents/report.pdf". Useful when you know the path but not the item ID.

**Parameters:**

| Parameter | Type   | Required | Default | Description                                                                           |
| --------- | ------ | -------- | ------- | ------------------------------------------------------------------------------------- |
| `path`    | string | Yes      | —       | Path to the item relative to the drive root, e.g. "Documents/report.pdf" or "Photos". |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "path": {
        "type": "string",
        "description": "Path to the item relative to the drive root, e.g. \"Documents/report.pdf\" or \"Photos\"."
      }
    },
    "required": [
      "PCID",
      "path"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_get\_my\_drive

Get my OneDrive

**Parameters:**

| Parameter | Type   | Required | Default | Description                                                                   |
| --------- | ------ | -------- | ------- | ----------------------------------------------------------------------------- |
| `$select` | string | No       | —       | Comma-separated list of properties to return (e.g. "id,name,quota,driveType") |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "$select": {
        "type": "string",
        "description": "Comma-separated list of properties to return (e.g. \"id,name,quota,driveType\")"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_get\_shared\_items

List items (files and folders) that other people have shared with the signed-in user.

**Parameters:**

| Parameter | Type    | Required | Default | Description                       |
| --------- | ------- | -------- | ------- | --------------------------------- |
| `$top`    | integer | No       | —       | Maximum number of items to return |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "$top": {
        "type": "integer",
        "description": "Maximum number of items to return"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_list\_drive\_item\_children

List contents of a folder

**Parameters:**

| Parameter  | Type    | Required | Default | Description                          |
| ---------- | ------- | -------- | ------- | ------------------------------------ |
| `item_id`  | string  | Yes      | —       | The unique ID of the folder to list  |
| `$top`     | integer | No       | —       | Number of items to return (max 200)  |
| `$orderby` | string  | No       | —       | Sort order (e.g. "name asc")         |
| `$select`  | string  | No       | —       | Comma-separated properties to return |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the folder to list"
      },
      "$top": {
        "type": "integer",
        "description": "Number of items to return (max 200)"
      },
      "$orderby": {
        "type": "string",
        "description": "Sort order (e.g. \"name asc\")"
      },
      "$select": {
        "type": "string",
        "description": "Comma-separated properties to return"
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_list\_folder\_contents

Recursively list the contents of a OneDrive folder (and its subfolders) up to a depth limit. Use folder\_path "" or omit it to start at the drive root.

**Parameters:**

| Parameter     | Type    | Required | Default | Description                                                                                        |
| ------------- | ------- | -------- | ------- | -------------------------------------------------------------------------------------------------- |
| `folder_path` | string  | No       | —       | Path to the starting folder relative to the drive root, e.g. "Documents". Omit or "" for the root. |
| `max_depth`   | integer | No       | —       | Maximum recursion depth (default 3). 0 lists only the immediate folder.                            |
| `max_results` | integer | No       | —       | Maximum number of items to return across all levels (default 200).                                 |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "folder_path": {
        "type": "string",
        "description": "Path to the starting folder relative to the drive root, e.g. \"Documents\". Omit or \"\" for the root."
      },
      "max_depth": {
        "type": "integer",
        "description": "Maximum recursion depth (default 3). 0 lists only the immediate folder."
      },
      "max_results": {
        "type": "integer",
        "description": "Maximum number of items to return across all levels (default 200)."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_list\_my\_drive\_root\_items

List files and folders in OneDrive root

**Parameters:**

| Parameter  | Type    | Required | Default | Description                                                                                |
| ---------- | ------- | -------- | ------- | ------------------------------------------------------------------------------------------ |
| `$top`     | integer | No       | —       | Number of items to return (max 200)                                                        |
| `$filter`  | string  | No       | —       | OData filter expression (e.g. "file ne null" for files only, "folder ne null" for folders) |
| `$orderby` | string  | No       | —       | Sort order (e.g. "name asc", "lastModifiedDateTime desc")                                  |
| `$select`  | string  | No       | —       | Comma-separated properties to return (e.g. "id,name,size,webUrl,lastModifiedDateTime")     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "$top": {
        "type": "integer",
        "description": "Number of items to return (max 200)"
      },
      "$filter": {
        "type": "string",
        "description": "OData filter expression (e.g. \"file ne null\" for files only, \"folder ne null\" for folders)"
      },
      "$orderby": {
        "type": "string",
        "description": "Sort order (e.g. \"name asc\", \"lastModifiedDateTime desc\")"
      },
      "$select": {
        "type": "string",
        "description": "Comma-separated properties to return (e.g. \"id,name,size,webUrl,lastModifiedDateTime\")"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_search\_my\_drive

Search OneDrive

**Parameters:**

| Parameter     | Type    | Required | Default | Description                                                 |
| ------------- | ------- | -------- | ------- | ----------------------------------------------------------- |
| `search_text` | string  | Yes      | —       | Search query string (e.g. "budget", "presentation", "2024") |
| `$top`        | integer | No       | —       | Maximum number of results to return                         |
| `$select`     | string  | No       | —       | Comma-separated properties to return                        |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "search_text": {
        "type": "string",
        "description": "Search query string (e.g. \"budget\", \"presentation\", \"2024\")"
      },
      "$top": {
        "type": "integer",
        "description": "Maximum number of results to return"
      },
      "$select": {
        "type": "string",
        "description": "Comma-separated properties to return"
      }
    },
    "required": [
      "PCID",
      "search_text"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_update\_drive\_item

Rename or move a drive item

**Parameters:**

| Parameter         | Type   | Required | Default | Description                                    |
| ----------------- | ------ | -------- | ------- | ---------------------------------------------- |
| `item_id`         | string | Yes      | —       | The unique ID of the drive item to update      |
| `name`            | string | No       | —       | New name for the item (to rename)              |
| `parentReference` | object | No       | —       | New parent folder reference (to move the item) |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "item_id": {
        "type": "string",
        "description": "The unique ID of the drive item to update"
      },
      "name": {
        "type": "string",
        "description": "New name for the item (to rename)"
      },
      "parentReference": {
        "type": "object",
        "description": "New parent folder reference (to move the item)",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the destination folder"
          }
        }
      }
    },
    "required": [
      "PCID",
      "item_id"
    ]
  }
  ```
</Expandable>

***

## microsoft-365-drive\_upload\_file

Upload a file to OneDrive at the given path. Provide the file content as a base64-encoded string. Creates the file or replaces it if one already exists at that path.

**Parameters:**

| Parameter        | Type   | Required | Default | Description                                                                                                                         |
| ---------------- | ------ | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `path`           | string | Yes      | —       | Destination path in OneDrive including the filename, e.g. "report.pdf" for the root or "Documents/2024/report.pdf" for a subfolder. |
| `content_base64` | string | Yes      | —       | The file content, encoded as a base64 string.                                                                                       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "path": {
        "type": "string",
        "description": "Destination path in OneDrive including the filename, e.g. \"report.pdf\" for the root or \"Documents/2024/report.pdf\" for a subfolder."
      },
      "content_base64": {
        "type": "string",
        "description": "The file content, encoded as a base64 string."
      }
    },
    "required": [
      "PCID",
      "path",
      "content_base64"
    ]
  }
  ```
</Expandable>
