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

# Microsoft SharePoint file gem

> Use SharePoint as a file source or target in a gem

export const execution_engine_0 = "Prophecy Automate"

<Info>This gem runs in {execution_engine_0}.</Info>

## Overview

Use a Source or Target gem to read from or write to SharePoint in Prophecy pipelines. This page covers supported file formats, how to create the gem, and how to configure connection details and paths for both Source and Target gems.

## Supported file formats

| Format                                                                       | Read | Write |
| ---------------------------------------------------------------------------- | ---- | ----- |
| [CSV](/data-analysis/gems/source-target/file/file-types/csv)                 | ✔    | ✔     |
| [Fixed width](/data-analysis/gems/source-target/file/file-types/fixed-width) | ✔    |       |
| [JSON](/data-analysis/gems/source-target/file/file-types/json)               | ✔    | ✔     |
| [XLSX](/data-analysis/gems/source-target/file/file-types/excel)              | ✔    | ✔     |
| [XML](/data-analysis/gems/source-target/file/file-types/xml)                 | ✔    | ✔     |

## Create a SharePoint gem

To create a SharePoint Source or Target gem in your pipeline:

<Steps>
  <Step title="Add a Source or Target gem to the pipeline">
    1. Open your pipeline in the [Studio](/data-analysis/development/studio/studio).
    2. Click on **Source/Target** in the canvas.
    3. Select **Source** or **Target** from the dropdown.
    4. Click on the gem to open the configuration.
  </Step>

  <Step title="Select SharePoint format">
    In the **Type** tab, select **SharePoint**. Then, click **Next**.
  </Step>

  <Step title="Set location details">
    In the **Location** tab, set your file format and connection details. To learn more, jump to [Location](#location).
  </Step>

  <Step title="Set file properties">
    In the **Properties** tab, set the file properties. These vary based on the file type that you are working with.

    <Info>See the list of properties per file type, such as [CSV](/data-analysis/gems/source-target/file/file-types/csv).</Info>
  </Step>

  <Step title="Preview data (Source only)">
    In the **Preview** tab, load a sample of the data and verify that it looks correct.
  </Step>
</Steps>

## Source location

| Parameter                   | Description                                                                                                                           |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| Select or create connection | Select an existing SharePoint connection or [create a new one](/data-analysis/environment/connections/sharepoint).                    |
| File Path                   | Path to the file in SharePoint. <br /><br />Example: `/sites/sitename/SharedDocuments/file.csv`                                       |
| Examine                     | Automatically determine the file format, compression type (if any), properties, and schema of the file to read.                       |
| Format type                 | Type of file to read, such as `csv` or `json`.                                                                                        |
| Compression                 | The compression type of the file to read. <br /><br />Supported types: `uncompressed`,`gzip`, `zstd`, `lz4`, `zlib`, `snappy`, `lzop` |

## Target location

| Parameter                   | Description                                                                                                                                   |
| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Select or create connection | Select an existing SharePoint connection or [create a new one](/data-analysis/environment/connections/sharepoint).                            |
| File Path                   | Path to the file in SharePoint. <br /><br />Example: `/sites/sitename/SharedDocuments/file.csv`                                               |
| Examine                     | If an existing file exists at the target path, click **Examine** to automatically determine the file format and compression type (if any).    |
| Encryption Algorithm        | The encryption algorithm to use when writing the file.<br /><br />Supported algorithms: `AES-192`, `AES-296`, `BlowFish`                      |
| Format type                 | Type of file to write, such as `csv` or `json`.                                                                                               |
| Compression                 | The compression type to use when writing the file.<br /><br />Supported types: `uncompressed`,`gzip`, `zstd`, `lz4`, `zlib`, `snappy`, `lzop` |

<Note>
  Configure encryption in a Target gem to encrypt an entire file. Use the
  [DataEncoderDecoder](/data-analysis/gems/transform/encoder-decoder) gem to encrypt individual
  columns.
</Note>
