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

# SharePoint Integration

> Read and ingest SharePoint integration artifacts.

<Warning>
  **Upcoming release — Zylon 1.58**

  These docs are published ahead of release so you can prepare your API integrations. The release image is not yet available. For installations running 1.57, use the [1.57 documentation](/en/v1.57/overview).
</Warning>

SharePoint integrations are stored as artifacts. The integration identifier used by these endpoints is the integration artifact ID.

## Prerequisites

Enable SharePoint at the instance level first. See [SharePoint integration setup](/en/v1.58/operator-manual/knowledge-base/sharepoint).

Create or reconnect the integration through the login flow documented in [OpenID & OAuth](/en/v1.58/developer-manual/build-with-zylon/workspace-api/authentication/openid). Use the artifact endpoints below after OAuth creates the integration artifact.

## Get a SharePoint integration

This endpoint returns public artifact metadata. It never returns access tokens, refresh tokens, or other private properties.

<Accordion title="Endpoint parameters">
  | Type | Name | Required | Notes |
  | - | - | - | - |
  | Path | `integrationArtifactID` | Yes | SharePoint integration artifact identifier. |
</Accordion>

```bash theme={null}
curl "https://{BASE_URL}/api/v1/app/artifact/{integrationArtifactID}" \
  -H "Authorization: Bearer {API_TOKEN}" \
  -H "x-org: {org_slug}"
```

<Accordion title="Example response">
  ```json theme={null}
  {
    "id": "{integrationArtifactID}",
    "child_count": 0,
    "project_id": "{projectID}",
    "name": "SharePoint",
    "type": "Integration",
    "source": "SharePoint",
    "state": "Published",
    "ingest_status": "NotApplicable",
    "props": {},
    "keep_file_after_ingestion": true,
    "created_by": {
      "id": "{accountID}",
      "state": "Active",
      "email": "operator@example.com",
      "name": "API operator",
      "provider": "Credentials",
      "roles": [],
      "created_at": "2026-03-01T10:55:00Z",
      "updated_at": "2026-03-01T10:55:00Z"
    },
    "created_at": "2026-03-01T11:00:00Z",
    "updated_at": "2026-03-01T11:00:00Z",
    "scopes": [
      {
        "scope_type": "project",
        "scope_id": "{projectID}",
        "enabled": true,
        "ws_auto_select": false
      }
    ]
  }
  ```
</Accordion>

## Start a SharePoint ingest

The endpoint returns a server-sent event (SSE) stream. Each selected item needs both its SharePoint drive ID and item ID.

<Accordion title="Endpoint parameters">
  | Type | Name | Required | Notes |
  | - | - | - | - |
  | Path | `integrationArtifactID` | Yes | SharePoint integration artifact identifier. |
  | Body | `project_id` | Yes | Destination project identifier. |
  | Body | `items` | Yes | SharePoint items to ingest. |
  | Body | `items[].drive_id` | Yes | Drive identifier containing the item. |
  | Body | `items[].id` | Yes | SharePoint item identifier. |
</Accordion>

```bash theme={null}
curl -N -X POST "https://{BASE_URL}/api/v1/app/artifact/{integrationArtifactID}/ingest" \
  -H "Authorization: Bearer {API_TOKEN}" \
  -H "x-org: {org_slug}" \
  -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" \
  -d '{
    "project_id": "{projectID}",
    "items": [
      {
        "drive_id": "drive_b7e4c102",
        "id": "item_9d2a50f1"
      }
    ]
  }'
```

<Accordion title="Example stream">
  ```text theme={null}
  event: SyncEvent
  data: {"type":"sync_started","current_artifact_count":18,"integration_item_count":64}

  event: SyncEvent
  data: {"type":"sync_completed"}
  ```
</Accordion>

## Errors and edge cases

* **400**: invalid SharePoint item or ingest parameters.
* **403**: integration not enabled or missing permission.
* **404**: integration artifact or project not found, or they do not belong together.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.