/ /

Setup - Custom Connector

Updated 3 seconds ago

Overview

This guide is self-contained — every permission and credential required is listed in the steps below. For why each permission is needed and the full security and permission model, see Permissions & Security - Custom Connector.

Each Custom Connector instance connects to exactly one source type. Choose Amazon S3 or SharePoint Online before you start, and follow the matching part of Step 1 and Step 2. The source type cannot be changed after the connector is created — create a new connector instance if you need to switch source types later.

Prerequisites

Who you need to be

  • Amazon S3: an AWS IAM administrator, or someone able to create an IAM user/role, attach a policy, and generate an access key.

  • SharePoint Online: a Microsoft Entra ID (Azure AD) admin able to register an application and grant admin consent.

  • A Simpplr Enterprise Search admin role, to add and configure the connector in Simpplr.

Network and firewall

  • No firewall changes are typically required in your environment. If your organization restricts access to AWS S3 or your Microsoft 365 tenant by IP allowlist, confirm the required connection details with your Simpplr representative before proceeding.

Step 1 — Prepare the source

Amazon S3

Data Schema

Each entry in the S3 bucket should be a JSON document with the following schema:

JSON Field

Significance

id (mandatory)

Unique identifier for the document

title (mandatory)

Indexed for full-text search and used as the result title.

description

Indexed for full-text search and used as the search excerpt/snippet; also used for Smart Answers.

url

Navigable URL of the document, used to generate the result link.

created_at

Date and time when the document was created

updated_at

Date and time when the document was modified

author_email

Email of the document author

Sample Document

{ "id": "D-05", "title": "Employee Code of Conduct", "description": "Standards for workplace behavior, conflicts of interest, gifts, and reporting concerns.", "created_at": "2021-09-01T07:00:00Z", "updated_at": "2025-08-22T13:10:00Z", "author_email": "people@example.com", "url": "https://policies.example.com/documents/D-05" }

Non JSON files or entries that don’t adhere to the above schema will be skipped.

Credentials you will need from AWS

  • Bucket name(s) to index (or plan to use * to include every bucket the access key can list)

  • AWS Access Key ID

  • AWS Secret Access Key

  1. Sign in to the AWS Management Console (or use your IAM tooling), go to IAM -> Users.

  2. Create or select an IAM user for the connector.

  3. Create an IAM user dedicated to Simpplr Enterprise Search.

  4. Attach policy  - Either provide complete s3 read access by attaching policy AmazonS3ReadOnlyAccess that grants the required S3 actions on the buckets you plan to index.

    Or

    In the IAM console sidebar, click Policies, then click Create policy.
    Click on the JSON tab/editor view.
    Clear any default code and paste the following JSON block:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3ConnectorListBucketsWhenUsingWildcard", "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" }, { "Sid": "S3ConnectorReadConfiguredBuckets", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::YOUR-BUCKET-1", "arn:aws:s3:::YOUR-BUCKET-1/*", "arn:aws:s3:::YOUR-BUCKET-2", "arn:aws:s3:::YOUR-BUCKET-2/*" ] } ] }

image7-20260806-182712.png

image-20260807-065844.png

  1. Create an access key for that principal and save the access key ID and secret access key securely.

    image8-20260806-182712.png

    image5-20260806-182712.png

    image-20260807-070013.png

  2. Confirm the principal user can list and get objects in each target bucket.

  3. Go to Service Control Policies

    image-20260807-065926.png

  4. Verify in all Service Control Policies that GetBucketPublicAccessBlock should not be denied.

Note: For example, in the attached policy, the GetBucketPublicAccessBlockaction is not marked as denied. Similarly, ensure that this is the case for all other attached policies.

image6-20260806-182712.png

SharePoint Online

Credentials you will need from Microsoft 365

  • Tenant Name

  • Tenant ID

  • Client ID

  • Certificate (content of the certificate file)

  • Private Key (content of the private key file)

  1. Go to the Azure portal and sign in with your Azure account.

  2. Search for and navigate to the App registrations service.

    image16-20260720-215542.png

  3. Click New registration to register a new application.

    image-20260721-102919.png

  4. Provide a name for your app, and optionally select the supported account types (e.g., single tenant, multi-tenant) based on your Entra ID setup.

  5. Click Register to create the app registration.

  6. After registration completes, you're redirected to the app's overview page. Note the Application (client) ID and Directory (Tenant) ID — you'll need them later.

    image3-20260720-215542.png

  7. Create a certificate and private key. For example, run:

    openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout azure_app.key -out azure_app.crt

    image18-20260720-215542.png

  8. Enter your tenant's details when prompted (optional — can be left blank). This generates two files:

    • azure_app.crt — uploaded to both Azure and the Simpplr admin panel

    • azure_app.key — uploaded to the Simpplr admin panel only

    Store both files somewhere safe and secure.

  9. In the app registration, go to Manage → Certificates & secrets and select Upload certificate.

  10. Upload the certificate you created in the previous step (azure_app.crt).

    image15-20260720-215542.png

  11. Go to Manage → API permissions and click Add a permission.

    image19-20260720-215542.png

  12. Select Microsoft Graph as the API, then Application permissions, and add the following permissions (see Permissions & Security - SharePoint for why each is needed):

    • Sites.Read.All

    • Files.Read.All

    image26-20260720-215542.png

  13. Repeat the same steps to add the SharePoint API permissions:

    • Sites.Read.All

  14. Click Grant admin consent for the app. This requires administrative privileges.

    image6-20260720-215542.png

  15. To find your tenant name, go to Microsoft Entra ID in the Azure portal and locate the primary domain on the overview page (e.g., simpplr.onmicrosoft.com — the tenant name is simpplr).

    image23-20260720-215542.png

    image11-20260720-215542.png

Step 2 — Add the source in Simpplr Enterprise Search Admin Panel

  1. In Simpplr, go to: Manage features → Enterprise search → Add source.

    image-20260807-070636.png

  2. Search for and select Custom connector.

  3. Enter a Connection name for this instance.

  4. Choose the Source type: Amazon S3 or SharePoint Online.

    image-20260807-071000.png

  5. Enter the credentials from Step 1:

    • Amazon S3: Buckets, AWS Access Key ID, AWS Secret Access Key.

      image-20260807-071254.png

    • SharePoint Online: Tenant Name, Tenant ID, Client ID, Certificate, Private Key.

      image-20260807-071135.png

  6. Optionally, configure branding (custom display type / icon) for how this connector instance appears in Simpplr.

  7. Select the field mapping type:

    • Amazon S3: choose json. In this release there is no further field-mapping configuration — Simpplr applies a fixed default document mapping on save.

      image-20260807-071748.png

    • SharePoint Online: choose Custom. This configuration requires a predefined mapper to set mappings. Contact Simpplr support for guided assistance.

      image-20260807-071720.png

  8. Click Save configuration and confirm.

Step 3 — Add filters and ingestion scope

Filters control which content gets indexed. All filters are optional — if none are set (beyond the required bucket or site scope), all accessible content is indexed.

  1. Set filters — configure which content to include or exclude from indexing.

    • SharePoint Online:

      • Sites — include: optional list of sites to index. If empty, the connector can process all sites the app registration can access. Subsites of listed sites are included.

      • Sites — exclude: optional list of sites to skip (for example, confidential sites).

        image-20260807-072550.png

    • Amazon S3: the bucket list configured in Step 2 is the only scope control in this release; there are no separate sync-time filters to set here.

  2. Set Audience configuration (optional) — restrict the connector to a specific Simpplr audience. Only members of the selected audience will be able to find this content in Enterprise Search. If left unset, all users with access can search this content.

    image-20260807-071456.png

  3. Click Save and sync — this saves the configuration and initiates the first full sync.

    Alternatively, click Exit to save and resume setup later. To start the sync manually, go to Enterprise Search → Custom Connector → Status and click Sync now.

Step 4 — Verify the sync

  1. Monitor progress at: Enterprise Search → Custom Connector → Status.

  2. The dashboard shows sync status, total items indexed, and any errors.

    image-20260807-072757.png

What success looks like:

  • Shortly after the connector is initialized, the status shows In progress and the item count begins increasing.

  • When the initial full sync completes, the status shows Success, and Amazon S3 or SharePoint Online results (depending on the source type configured) appear in Enterprise Search.

  • Initial full sync duration depends on content volume — buckets or sites with a large number of files can take longer.

If the sync stays in Pending, fails, or completes with far fewer items than expected, see Troubleshooting - Enterprise Search Connectors and Troubleshooting & FAQs - Custom Connector.

Was this article helpful?
Subscribe to receive updates on this article