Data Integration Connectors
Explore essential data integration connectors that streamline data flow and enhance connectivity across diverse platforms and systems.
Overview
Data Integration Connectors allow your team to automatically pull files from external storage systems into Makersite. Instead of manually uploading BOMs, IPCs, supplier data, and other files, you configure a connector once and Makersite syncs files on a schedule you define.
Supported Connectors
| Connector | Description | Best For | |--------------------|--------------------------------------------------------------|---------------------------------------------------| | Amazon S3 | AWS S3 buckets or S3-compatible storage (MinIO, Wasabi) | Teams already using AWS for file storage | | Azure Blob Storage | Microsoft Azure blob containers | Teams on Microsoft Azure | | SFTP | Secure file transfer via SSH | Legacy systems, on-premise file servers | | SharePoint Online | Microsoft 365 SharePoint document libraries via MS Graph API | Teams using Microsoft 365 for document management |
Prerequisites
**Team Manager** plan
Administrator access to your external storage system
Access to the **Data Sources** configuration in Makersite by your team administrator
Setting Up Data Sources
Accessing Data Sources Settings
2
Open **Team Settings** .
3
Click the **Data Sources** tab.
You will see a grid listing all configured data sources with their name, connector type, status, and sync frequency.
Creating a New Data Source
2
Enter the following fields:
- **Name** : A label for the connector (e.g., "Production BOM Files") - **Connector Type** : Select one of the following: - Amazon S3 - Azure Blob - SFTP - SharePoint
**Purpose** : What type of data this source provides (BOM, IPC, Supplier Data, IMDS, CoC, Activity, Transactions, Process, or Master Data)
**Refresh Frequency** : How frequently Makersite checks for new/changed files (Daily, Weekly, Biweekly, Monthly, or Quarterly)
**Enabled** : Toggle to pause/resume automatic syncing
3
Enter the connector-specific fields.
4
Click **Test Connection** to verify your settings
5
Click **Save** to create the data source.
After saving, Makersite will begin syncing files according to the configured schedule.
Amazon S3 Configuration
**Required Information**
| Field | Description | Where to find it | |-------------------|------------------------------------------------------------|----------------------------------------------------------------| | S3 Bucket | The name of your S3 bucket | AWS Console > S3 > Your bucket name | | S3 Region | AWS region where the bucket is hosted (e.g., eu-central-1) | AWS Console > S3 > Bucket > Properties > AWS Region | | Access Key ID | IAM access key for authentication | AWS Console > IAM > Users > Security credentials > Access keys | | Secret Access Key | IAM secret key paired with the Access Key ID | Shown once when creating the access key -- save it securely |
**Optional Fields**
| Field | Description | |--------------|----------------------------------------------------------------------------------------------------| | Path Prefix | Folder path within the bucket (e.g., data/bom-files/). Only files under this prefix will be synced | | Endpoint URL | Custom endpoint for S3-compatible services like MinIO or Wasabi. Leave empty for standard AWS S3 |
Setting Up IAM Credentials
1. In the **AWS Console** , go to **IAM** > **Users** . 2. Create a new user or select an existing one. 3. Attach a policy with the following minimum permissions: - s3:GetObject - download files - s3:ListBucket - list files in the bucket - s3:GetBucketLocation - verify bucket exists
Under **Security Credentials** , create an Access Key.
Copy both the **Access Key ID** and **Secret Access Key** .
**Note** : Use a dedicated IAM user with minimal permissions. Do not use your AWS root account credentials.
Azure Blob Storage Configuration
Azure Blob supports three authentication methods. Use whichever your organization prefers.
**Method 1: Connection String**
| Field | Description | Where to find it | |-------------------|--------------------------------------|------------------------------------------------------------------| | Connection String | Full Azure Storage connection string | Azure Portal > Storage Account > Access keys > Connection string |
Copy the entire connection string -- it includes the account name, key, and endpoint.
**Method 2: SAS Token**
| Field | Description | Where to find it | |-----------------|-------------------------------|----------------------------------------------------------| | Storage Account | Azure Storage account name | Azure Portal > Storage Account > Overview | | Container | Blob container name | Azure Portal > Storage Account > Containers | | SAS Token | Shared Access Signature token | Azure Portal > Storage Account > Shared access signature |
When generating a SAS token, ensure these permissions are granted:
**Read** - download files
**List** - enumerate files in the container
Set an appropriate expiry date. When the token expires, the connector will stop working until you update it.
**Method 3: Service Principal (Most Secure)**
| Field | Description | Where to find it | |-----------------|----------------------------|----------------------------------------------------------------------| | Storage Account | Azure Storage account name | Azure Portal > Storage Account > Overview | | Container | Blob container name | Azure Portal > Storage Account > Containers | | Tenant ID | Azure AD tenant ID | Azure Portal > Azure Active Directory > Overview > Tenant ID | | Client ID | Application (client) ID | Azure Portal > App registrations > Your app > Overview | | Client Secret | Client secret value | Azure Portal > App registrations > Your app > Certificates & secrets |
Setting Up
Register an application in **Azure AD** > **App registrations** .
Create a client secret under **Certificates & secrets** .
Assign the **Storage Blob Data Reader** role to the application on the storage account ( **IAM** > **Add role assignment** ).
**Common Azure Fields**
| Field | Description | |-------------|-------------------------------------------------------------------------------| | Path Prefix | Folder path within the container. Only blobs under this prefix will be synced |
SFTP Configuration
**Required Information**
| Field | Description | |----------|-------------------------------------------| | Host | Hostname or IP address of the SFTP server | | Username | Login username |
**Plus one of** :
| Authentication Method | Field | Description | |-------------------------|-------------|----------------------------------------------------| | Password | Password | User login password | | SSH Key | Private Key | PEM-formatted private key (RSA, Ed25519, or ECDSA) |
**Optional Fields**
| Field | Description | Default | |---------|------------------------------------|----------------| | Port | TCP port for SFTP | 22 | | Path | Remote directory path to sync from | Home directory |
SSH Key Authentication
If using SSH key authentication:
Generate a key pair (if you don't have one): ssh-keygen -t ed25519.
Add the **public key** to the SFTP server authorized\_keys.
Paste the entire **private key** content (including -----BEGIN ... KEY----- headers) into the Private Key field.
Supported key types: RSA, Ed25519, and ECDSA.
SharePoint Online Configuration
SharePoint connectors use Microsoft Graph API with Azure AD service principal authentication.
**Required Information**
| Field | Description | Where to find it | |---------------|------------------------------------------|----------------------------------------------------------------------------------------------------------| | Site URL | Full SharePoint site URL (must be HTTPS) | Your browser address bar when on the SharePoint site (e.g., https://contoso.sharepoint.com/sites/MyTeam) | | Drive Name | Document library name | SharePoint site > Document library name (e.g., "Documents", "Shared Documents") | | Tenant ID | Azure AD tenant ID | Azure Portal > Azure Active Directory > Overview | | Client ID | Application (client) ID | Azure Portal > App registrations > Your app | | Client Secret | Client secret value | Azure Portal > App registrations > Your app > Certificates & secrets |
**Optional Fields**
| Field | Description | |-------------|----------------------------------------------------| | Folder Path | Subfolder within the document library to sync from | | Folder Path | Subfolder within the document library to sync from |
Setting Up Azure AD Application for SharePoint
1. Go to **Azure Portal** > **Azure Active Directory** > **App registrations** > **New registration** . 2. Name it (e.g., "Makersite SharePoint Connector"). 3. Under **API permissions** , add the following: - Sites.Read.All (Application permission) -- read site data - Files.Read.All (Application permission) -- read files
Grant **admin consent** for these permissions.
Create a **Client Secret** under Certificates & secrets.
Note the **Application (client) ID** and **Directory (tenant) ID** from the Overview page.
**Note** : The Site URL must use HTTPS. HTTP URLs are not accepted.
Testing Your Connection
Before saving, always test your connection:
1. Fill in all required fields for your chosen connector type. 2. Click **Test Connection** . 3. Wait for the result: - "Connected" (green) -- your settings are correct and Makersite can access the storage - Error message (red) -- explains what went wrong
**Common Test Errors**
| Error | Cause | Solution | |--------------------------|------------------------------------------------|-------------------------------------------------------------------| | Authentication failed | Invalid credentials | Verify your access keys, passwords, or client secrets | | Insufficient permissions | Credentials are valid but lack required access | Check IAM/RBAC roles -- ensure read and list permissions | | Endpoint unreachable | Cannot reach the storage server | Verify the hostname/URL, check network connectivity and firewalls | | Resource not found | Bucket, container, path, or site doesn't exist | Double-check the bucket/container name, path prefix, or site URL | | Connection timeout | Server didn't respond in time | Check if the server is online, verify network path |
How Automatic Syncing Works
Once a data source is saved and enabled:
1. Makersite checks your storage on the configured schedule (daily, weekly, and so on). 2. Only **new** or **changed** files are downloaded. Change detection uses: - File ETag/hash (preferred) - Last-modified timestamp - File size
1. Downloaded files are automatically routed to the appropriate Makersite importer based on the Purpose you configured: - BOM files go to the BOM importer - IPC files go to the IPC importer - and so on for each data type
Files with **Master Data** purpose are stored for direct access rather than imported.
**Sync Status**
| Status | Meaning | |---------------|------------------------------------------------| | Connected | Connection test passed, waiting for first sync | | Synced | Last sync completed successfully | | Partial Error | Some files synced, some failed | | Error | Last sync failed entirely |
**Failure Notifications**
If files fail to sync, the data source creator receives an email report listing which files failed and why. Files that fail are retried up to 3 times before being marked as permanently failed.
Editing and Deleting Data Sources
Editing
Click the **Edit** icon on the data source row in the grid.
Modify any fields. **Note** : Password/secret fields appear empty when editing -- this is by design (secrets are never displayed). Leave them empty to keep the existing values, or enter new values to update them.
Click **Test Connection** to verify changes.
Click **Save** .
Deleting
Click the **Delete** icon on the data source row.
Confirm the deletion in the dialog box.
The data source and all its synced file records are permanently removed.
**Note** : Deleting a data source does not delete files that were already imported into Makersite. It only removes the connector configuration and sync history.
**Frequently Asked Questions**
Can I have multiple data sources of the same type?
What file formats are supported?
Can I sync files from a specific subfolder only?
How do I pause syncing temporarily?
What happens if my credentials expire?
Are my credentials stored securely?
Yes. You can configure multiple S3 buckets, multiple SFTP servers, etc. Each is an independent data source with its own schedule and credentials.
CSV, XLSX, XLS, XML, JSON, ZIP, and PDF. The specific formats accepted depend on the import type (BOM, IPC, etc.).
Yes. Use the **Path Prefix** (S3/Azure) or **Path** (SFTP) or **Folder Path** (SharePoint) field to limit syncing to a specific directory.
Edit the data source and uncheck **Enabled** . The connector configuration is preserved but no syncs will run until you re-enable it.
Syncs will fail with an authentication error. The data source status changes to "Error" and the creator receives an email notification. Update the credentials by editing the data source.
Yes. All sensitive fields (passwords, access keys, secrets, private keys) are encrypted using AES-256 (Fernet) before being stored. They are never displayed in the UI or returned by the API.