Skip to main content

Sharepoint Integration

Written by Ben Feldman

What it does
SharePoint syncs employee files (documents, contracts, etc.) between SharePoint document libraries and employee file fields in Shapes.

Two sync modes

1. One-time import
A single, on-demand pull from SharePoint → Shapes. Useful for migrating existing employee documents into Shapes at setup time.

2. Daily two-way sync
An automated bidirectional file sync that runs once per day:

  • SharePoint → Shapes: Files in SharePoint that don't exist in Shapes yet are uploaded to the matching employee file field

  • Shapes → SharePoint: Files in Shapes that don't exist in SharePoint yet are pushed to the matching subfolder

Important: the sync is additive only — nothing is ever deleted on either side. If a file is removed in one place, it stays in the other.

How files are matched

  • Each employee gets a folder in SharePoint (matched by email address)

  • Inside that folder, subfolders map to file fields in Shapes (e.g., a "Contracts" subfolder maps to the "Contracts" file field)

How to set up the integration

Step 1 — Connect
Enter your Microsoft app credentials:

  • Tenant ID

  • Client ID

  • Client Secret

    These come from an Azure App Registration. Shapes uses them to connect to the Microsoft Graph API.

Step 2 — Scope

  • Select which SharePoint site to connect to

  • Select which document library (drive) within that site

Optionally filter to specific employees (all employees, or a filtered group)

Step 3 — Sync mode
Choose between:

  • One-time import — runs once immediately

  • Daily two-way sync — runs automatically every day


Step 4 — Map folders
Map SharePoint subfolder names → Shapes file fields. At least one mapping is required to proceed.

Authentication
Uses OAuth 2.0 via Microsoft Graph API — the Azure App Registration credentials you enter in Step 1. Shapes connects as the registered app (not as an individual user).

If you have any questions, please reach out to support@shapes.co

Did this answer your question?