Skip to main content
This page describes how to establish private connectivity between your dedicated instance and AWS-managed services. For self-hosted applications or AWS services that require a Network Load Balancer, see Connecting to customer-managed services on AWS.

AWS managed services

This section covers AWS-managed services that Unstructured can access using AWS-native private networking features, without requiring you to create a customer-managed endpoint service or Network Load Balancer. The tables below use Order to indicate the general sequence of the information exchange — items with the same Order value can usually be provided at the same stage. Values like <DI_AWS_ACCOUNT_ID> and <UNSTRUCTURED_IAM_ROLE_ARN> are placeholders; contact your Unstructured account team or open a ticket in the Unstructured Support Portal to get the actual values for your dedicated instance.
Each AWS service you connect to via PrivateLink must be in the same AWS region as your dedicated instance — cross-region PrivateLink is not supported. The example region codes in the tables below are illustrative; use the region your dedicated instance is deployed in. See Known limitations.

AWS S3 (gateway endpoint)

This section also covers Delta Tables in Amazon S3 — the S3 Gateway Endpoint configuration is the same. Example S3 Bucket Policy You must create a bucket policy that grants Unstructured’s IAM Role access to the required S3 buckets. For read-only access:
Use this Action clause for write access (e.g., if S3 is a destination):
Replace:
  • <UNSTRUCTURED_IAM_ROLE_ARN> — Unstructured’s IAM Role ARN (provided during setup).
  • <BUCKET_NAME> — Your S3 bucket name.

AWS Bedrock

Amazon Bedrock is accessed via AWS-provided VPC endpoints. Unstructured configures VPC endpoints in our VPC to ensure all traffic to Bedrock stays off the public internet. Access to customer-specific Bedrock resources is controlled via IAM policies. Unstructured configures the Bedrock VPC endpoint on the Unstructured platform. You must create IAM policies that grant access to Unstructured’s IAM Role. Example IAM Policy
Replace:
  • <UNSTRUCTURED_IAM_ROLE_ARN> — Unstructured’s AWS IAM Role ARN (provided during setup).
  • <CUSTOMER_ACC_NO> — Your AWS Account ID.
  • <REGION> — Your Bedrock region.

Amazon Managed Streaming for Apache Kafka (MSK)

Amazon MSK supports native multi-VPC private connectivity via PrivateLink. This enables Unstructured to connect to the customer’s MSK cluster (as a Kafka source) entirely within the AWS private network. You must have an MSK cluster with Multi-VPC Connectivity enabled. MSK Multi-VPC Connectivity requires MSK cluster type provisioned (not serverless). The cluster must use TLS or SASL/TLS authentication. Enabling MSK Multi-VPC Connectivity Use the AWS Console:
  1. Navigate to Amazon MSK > select your cluster.
  2. Choose Actions > Edit cluster connectivity.
  3. Enable Multi-VPC connectivity.
  4. Confirm — MSK will create a VPC Endpoint Service automatically.
Use the AWS CLI:
After enabling, retrieve the VPC Endpoint Service name:
Adding Unstructured as an Allowed Principal Once Multi-VPC Connectivity is enabled, use the AWS CLI to add Unstructured’s AWS Account ID as an allowed principal on the endpoint service:
Replace:
  • <MSK_ENDPOINT_SERVICE_ID> — The endpoint service ID created by MSK Multi-VPC Connectivity.
  • <UNSTRUCTURED_AWS_ACCOUNT_ID> — Unstructured’s AWS Account ID (provided during setup).

Amazon OpenSearch Service

Amazon OpenSearch Service supports native Interface VPC Endpoints. Unstructured creates a VPC endpoint in our VPC targeting the customer’s OpenSearch domain. Example Domain Access Policy
Replace:
  • <UNSTRUCTURED_IAM_ROLE_ARN> — Unstructured’s AWS Role ARN (provided during setup).
  • <CUSTOMER_ACC_NO> — Your AWS Account ID.
  • <REGION> — Your OpenSearch region.
  • <DOMAIN_NAME> — Your OpenSearch domain name.

AWS OpenSearch Serverless

OpenSearch Serverless uses a fundamentally different access model compared to OpenSearch Service. It does not use resource-based access policies. Instead, access is controlled through data access policies and network access policies tied to VPC endpoints.
Step 1: Create a Network Access Policy The network access policy must allow Unstructured’s VPC endpoint to access the collection. Create or update the network policy for your collection:
Using AWS CLI:
Step 2: Create a Data Access Policy The data access policy grants Unstructured’s IAM Role permissions to read/write the collection’s indexes. For a vector store destination (read/write):
Using AWS CLI:
Replace:
  • <UNSTRUCTURED_VPC_ENDPOINT_ID> — VPC Endpoint ID provided by Unstructured (from Step 2 of the information exchange).
  • <UNSTRUCTURED_IAM_ROLE_ARN> — Unstructured’s IAM Role ARN (provided during setup).
  • my-vector-store — Your OpenSearch Serverless collection name.

AWS Databricks

Databricks on AWS supports native PrivateLink connectivity. The customer must have a Databricks Enterprise plan with a customer-managed VPC and PrivateLink enabled on their workspace. Example: Databricks Private Access Settings (ENDPOINT level) If using ENDPOINT level access, add Unstructured’s VPC Endpoint ID to the allowed list via the Databricks Account Console or API:
Replace:
  • <UNSTRUCTURED_VPCE_ID> — VPC Endpoint ID provided by Unstructured.
  • <REGION> — Your Databricks region.
For ACCOUNT level access, no explicit endpoint allowlisting is required — any VPC endpoint registered in the Databricks account can connect.
Some AWS managed services support native PrivateLink endpoints. You must first create a VPC endpoint for the service. Unstructured then connects to it. This pattern applies to services like Amazon ElastiCache (Redis) and AWS Elasticsearch Service (legacy).
The Order column indicates the general sequence for the information exchange. Items with the same order value can usually be provided at the same stage.