# Shared

## Domain Types

### Cloud Astra DB Vector Store

- `class CloudAstraDbVectorStore:`

  Cloud AstraDB Vector Store.

  This class is used to store the configuration for an AstraDB vector store, so that it can be
  created and used in LlamaCloud.

  Args:
  token (str): The Astra DB Application Token to use.
  api_endpoint (str): The Astra DB JSON API endpoint for your database.
  collection_name (str): Collection name to use. If not existing, it will be created.
  embedding_dimension (int): Length of the embedding vectors in use.
  keyspace (optional[str]): The keyspace to use. If not provided, 'default_keyspace'

  - `String token`

    The Astra DB Application Token to use

  - `String apiEndpoint`

    The Astra DB JSON API endpoint for your database

  - `String collectionName`

    Collection name to use. If not existing, it will be created

  - `long embeddingDimension`

    Length of the embedding vectors in use

  - `Optional<String> className`

  - `Optional<String> keyspace`

    The keyspace to use. If not provided, 'default_keyspace'

  - `Optional<SupportsNestedMetadataFilters> supportsNestedMetadataFilters`

    - `TRUE(true)`

### Cloud Az Storage Blob Data Source

- `class CloudAzStorageBlobDataSource:`

  - `String accountUrl`

    The Azure Storage Blob account URL to use for authentication.

  - `String containerName`

    The name of the Azure Storage Blob container to read from.

  - `Optional<String> accountKey`

    The Azure Storage Blob account key to use for authentication.

  - `Optional<String> accountName`

    The Azure Storage Blob account name to use for authentication.

  - `Optional<String> blob`

    The blob name to read from.

  - `Optional<String> className`

  - `Optional<String> clientId`

    The Azure AD client ID to use for authentication.

  - `Optional<String> clientSecret`

    The Azure AD client secret to use for authentication.

  - `Optional<String> prefix`

    The prefix of the Azure Storage Blob objects to read from.

  - `Optional<Boolean> supportsAccessControl`

  - `Optional<String> tenantId`

    The Azure AD tenant ID to use for authentication.

### Cloud Azure AI Search Vector Store

- `class CloudAzureAiSearchVectorStore:`

  Cloud Azure AI Search Vector Store.

  - `String searchServiceApiKey`

  - `String searchServiceEndpoint`

  - `Optional<String> className`

  - `Optional<String> clientId`

  - `Optional<String> clientSecret`

  - `Optional<Long> embeddingDimension`

  - `Optional<FilterableMetadataFieldKeys> filterableMetadataFieldKeys`

  - `Optional<String> indexName`

  - `Optional<String> searchServiceApiVersion`

  - `Optional<SupportsNestedMetadataFilters> supportsNestedMetadataFilters`

    - `TRUE(true)`

  - `Optional<String> tenantId`

### Cloud Box Data Source

- `class CloudBoxDataSource:`

  - `AuthenticationMechanism authenticationMechanism`

    The type of authentication to use (Developer Token or CCG)

    - `DEVELOPER_TOKEN("developer_token")`

    - `CCG("ccg")`

  - `Optional<String> className`

  - `Optional<String> clientId`

    Box API key used for identifying the application the user is authenticating with

  - `Optional<String> clientSecret`

    Box API secret used for making auth requests.

  - `Optional<String> developerToken`

    Developer token for authentication if authentication_mechanism is 'developer_token'.

  - `Optional<String> enterpriseId`

    Box Enterprise ID, if provided authenticates as service.

  - `Optional<String> folderId`

    The ID of the Box folder to read from.

  - `Optional<Boolean> supportsAccessControl`

  - `Optional<String> userId`

    Box User ID, if provided authenticates as user.

### Cloud Confluence Data Source

- `class CloudConfluenceDataSource:`

  - `String authenticationMechanism`

    Type of Authentication for connecting to Confluence APIs.

  - `String serverUrl`

    The server URL of the Confluence instance.

  - `Optional<String> apiToken`

    The API token to use for authentication.

  - `Optional<String> className`

  - `Optional<String> cql`

    The CQL query to use for fetching pages.

  - `Optional<FailureHandlingConfig> failureHandling`

    Configuration for handling failures during processing. Key-value object controlling failure handling behaviors.

    Example:
    {
    "skip_list_failures": true
    }

    Currently supports:

    - skip_list_failures: Skip failed batches/lists and continue processing

    - `Optional<Boolean> skipListFailures`

      Whether to skip failed batches/lists and continue processing

  - `Optional<Boolean> indexRestrictedPages`

    Whether to index restricted pages.

  - `Optional<Boolean> keepMarkdownFormat`

    Whether to keep the markdown format.

  - `Optional<String> label`

    The label to use for fetching pages.

  - `Optional<String> pageIds`

    The page IDs of the Confluence to read from.

  - `Optional<String> spaceKey`

    The space key to read from.

  - `Optional<Boolean> supportsAccessControl`

  - `Optional<String> userName`

    The username to use for authentication.

### Cloud Google Drive Data Source

- `class CloudGoogleDriveDataSource:`

  - `String folderId`

    The ID of the Google Drive folder to read from.

  - `Optional<String> className`

  - `Optional<ServiceAccountKey> serviceAccountKey`

    A dictionary containing secret values

  - `Optional<Boolean> supportsAccessControl`

### Cloud Jira Data Source

- `class CloudJiraDataSource:`

  Cloud Jira Data Source integrating JiraReader.

  - `String authenticationMechanism`

    Type of Authentication for connecting to Jira APIs.

  - `String query`

    JQL (Jira Query Language) query to search.

  - `Optional<String> apiToken`

    The API/ Access Token used for Basic, PAT and OAuth2 authentication.

  - `Optional<String> className`

  - `Optional<String> cloudId`

    The cloud ID, used in case of OAuth2.

  - `Optional<String> email`

    The email address to use for authentication.

  - `Optional<String> serverUrl`

    The server url for Jira Cloud.

  - `Optional<Boolean> supportsAccessControl`

### Cloud Jira Data Source V2

- `class CloudJiraDataSourceV2:`

  Cloud Jira Data Source integrating JiraReaderV2.

  - `String authenticationMechanism`

    Type of Authentication for connecting to Jira APIs.

  - `String query`

    JQL (Jira Query Language) query to search.

  - `String serverUrl`

    The server url for Jira Cloud.

  - `Optional<String> apiToken`

    The API Access Token used for Basic, PAT and OAuth2 authentication.

  - `Optional<ApiVersion> apiVersion`

    Jira REST API version to use (2 or 3). 3 supports Atlassian Document Format (ADF).

    - `_2("2")`

    - `_3("3")`

  - `Optional<String> className`

  - `Optional<String> cloudId`

    The cloud ID, used in case of OAuth2.

  - `Optional<String> email`

    The email address to use for authentication.

  - `Optional<String> expand`

    Fields to expand in the response.

  - `Optional<List<String>> fields`

    List of fields to retrieve from Jira. If None, retrieves all fields.

  - `Optional<Boolean> getPermissions`

    Whether to fetch project role permissions and issue-level security

  - `Optional<Long> requestsPerMinute`

    Rate limit for Jira API requests per minute.

  - `Optional<Boolean> supportsAccessControl`

### Cloud Milvus Vector Store

- `class CloudMilvusVectorStore:`

  Cloud Milvus Vector Store.

  - `String uri`

  - `Optional<String> token`

  - `Optional<String> className`

  - `Optional<String> collectionName`

  - `Optional<Long> embeddingDimension`

  - `Optional<Boolean> supportsNestedMetadataFilters`

### Cloud MongoDB Atlas Vector Search

- `class CloudMongoDBAtlasVectorSearch:`

  Cloud MongoDB Atlas Vector Store.

  This class is used to store the configuration for a MongoDB Atlas vector store,
  so that it can be created and used in LlamaCloud.

  Args:
  mongodb_uri (str): URI for connecting to MongoDB Atlas
  db_name (str): name of the MongoDB database
  collection_name (str): name of the MongoDB collection
  vector_index_name (str): name of the MongoDB Atlas vector index
  fulltext_index_name (str): name of the MongoDB Atlas full-text index

  - `String collectionName`

  - `String dbName`

  - `String mongoDBUri`

  - `Optional<String> className`

  - `Optional<Long> embeddingDimension`

  - `Optional<String> fulltextIndexName`

  - `Optional<Boolean> supportsNestedMetadataFilters`

  - `Optional<String> vectorIndexName`

### Cloud Notion Page Data Source

- `class CloudNotionPageDataSource:`

  - `String integrationToken`

    The integration token to use for authentication.

  - `Optional<String> className`

  - `Optional<String> databaseIds`

    The Notion Database Id to read content from.

  - `Optional<String> pageIds`

    The Page ID's of the Notion to read from.

  - `Optional<Boolean> supportsAccessControl`

### Cloud One Drive Data Source

- `class CloudOneDriveDataSource:`

  - `String clientId`

    The client ID to use for authentication.

  - `String clientSecret`

    The client secret to use for authentication.

  - `String tenantId`

    The tenant ID to use for authentication.

  - `String userPrincipalName`

    The user principal name to use for authentication.

  - `Optional<String> className`

  - `Optional<String> folderId`

    The ID of the OneDrive folder to read from.

  - `Optional<String> folderPath`

    The path of the OneDrive folder to read from.

  - `Optional<List<String>> requiredExts`

    The list of required file extensions.

  - `Optional<SupportsAccessControl> supportsAccessControl`

    - `TRUE(true)`

### Cloud Pinecone Vector Store

- `class CloudPineconeVectorStore:`

  Cloud Pinecone Vector Store.

  This class is used to store the configuration for a Pinecone vector store, so that it can be
  created and used in LlamaCloud.

  Args:
  api_key (str): API key for authenticating with Pinecone
  index_name (str): name of the Pinecone index
  namespace (optional[str]): namespace to use in the Pinecone index
  insert_kwargs (optional[dict]): additional kwargs to pass during insertion

  - `String apiKey`

    The API key for authenticating with Pinecone

  - `String indexName`

  - `Optional<String> className`

  - `Optional<InsertKwargs> insertKwargs`

  - `Optional<String> namespace`

  - `Optional<SupportsNestedMetadataFilters> supportsNestedMetadataFilters`

    - `TRUE(true)`

### Cloud Postgres Vector Store

- `class CloudPostgresVectorStore:`

  - `String database`

  - `long embedDim`

  - `String host`

  - `String password`

  - `long port`

  - `String schemaName`

  - `String tableName`

  - `String user`

  - `Optional<String> className`

  - `Optional<PgVectorHnswSettings> hnswSettings`

    HNSW settings for PGVector.

    - `Optional<DistanceMethod> distanceMethod`

      The distance method to use.

      - `L2("l2")`

      - `IP("ip")`

      - `COSINE("cosine")`

      - `L1("l1")`

      - `HAMMING("hamming")`

      - `JACCARD("jaccard")`

    - `Optional<Long> efConstruction`

      The number of edges to use during the construction phase.

    - `Optional<Long> efSearch`

      The number of edges to use during the search phase.

    - `Optional<Long> m`

      The number of bi-directional links created for each new element.

    - `Optional<VectorType> vectorType`

      The type of vector to use.

      - `VECTOR("vector")`

      - `HALF_VEC("half_vec")`

      - `BIT("bit")`

      - `SPARSE_VEC("sparse_vec")`

  - `Optional<Boolean> hybridSearch`

  - `Optional<Boolean> performSetup`

  - `Optional<Boolean> supportsNestedMetadataFilters`

### Cloud Qdrant Vector Store

- `class CloudQdrantVectorStore:`

  Cloud Qdrant Vector Store.

  This class is used to store the configuration for a Qdrant vector store, so that it can be
  created and used in LlamaCloud.

  Args:
  collection_name (str): name of the Qdrant collection
  url (str): url of the Qdrant instance
  api_key (str): API key for authenticating with Qdrant
  max_retries (int): maximum number of retries in case of a failure. Defaults to 3
  client_kwargs (dict): additional kwargs to pass to the Qdrant client

  - `String apiKey`

  - `String collectionName`

  - `String url`

  - `Optional<String> className`

  - `Optional<ClientKwargs> clientKwargs`

  - `Optional<Long> maxRetries`

  - `Optional<SupportsNestedMetadataFilters> supportsNestedMetadataFilters`

    - `TRUE(true)`

### Cloud S3 Data Source

- `class CloudS3DataSource:`

  - `String bucket`

    The name of the S3 bucket to read from.

  - `Optional<String> awsAccessId`

    The AWS access ID to use for authentication.

  - `Optional<String> awsAccessSecret`

    The AWS access secret to use for authentication.

  - `Optional<String> className`

  - `Optional<String> prefix`

    The prefix of the S3 objects to read from.

  - `Optional<String> regexPattern`

    The regex pattern to filter S3 objects. Must be a valid regex pattern.

  - `Optional<String> s3EndpointUrl`

    The S3 endpoint URL to use for authentication.

  - `Optional<Boolean> supportsAccessControl`

### Cloud Sharepoint Data Source

- `class CloudSharepointDataSource:`

  - `String clientId`

    The client ID to use for authentication.

  - `String clientSecret`

    The client secret to use for authentication.

  - `String tenantId`

    The tenant ID to use for authentication.

  - `Optional<String> className`

  - `Optional<String> driveName`

    The name of the Sharepoint drive to read from.

  - `Optional<List<String>> excludePathPatterns`

    List of regex patterns for file paths to exclude. Files whose paths (including filename) match any pattern will be excluded. Example: ['/temp/', '/backup/', '.git/', '.tmp$', '^~']

  - `Optional<String> folderId`

    The ID of the Sharepoint folder to read from.

  - `Optional<String> folderPath`

    The path of the Sharepoint folder to read from.

  - `Optional<Boolean> getPermissions`

    Whether to get permissions for the sharepoint site.

  - `Optional<List<String>> includePathPatterns`

    List of regex patterns for file paths to include. Full paths (including filename) must match at least one pattern to be included. Example: ['/reports/', '/docs/.*.pdf$', '^Report.*.pdf$']

  - `Optional<List<String>> requiredExts`

    The list of required file extensions.

  - `Optional<String> siteId`

    The ID of the SharePoint site to download from.

  - `Optional<String> siteName`

    The name of the SharePoint site to download from.

  - `Optional<SupportsAccessControl> supportsAccessControl`

    - `TRUE(true)`

### Cloud Slack Data Source

- `class CloudSlackDataSource:`

  - `String slackToken`

    Slack Bot Token.

  - `Optional<String> channelIds`

    Slack Channel.

  - `Optional<String> channelPatterns`

    Slack Channel name pattern.

  - `Optional<String> className`

  - `Optional<String> earliestDate`

    Earliest date.

  - `Optional<Double> earliestDateTimestamp`

    Earliest date timestamp.

  - `Optional<String> latestDate`

    Latest date.

  - `Optional<Double> latestDateTimestamp`

    Latest date timestamp.

  - `Optional<Boolean> supportsAccessControl`

### Failure Handling Config

- `class FailureHandlingConfig:`

  Configuration for handling different types of failures during data source processing.

  - `Optional<Boolean> skipListFailures`

    Whether to skip failed batches/lists and continue processing

### Pg Vector Hnsw Settings

- `class PgVectorHnswSettings:`

  HNSW settings for PGVector.

  - `Optional<DistanceMethod> distanceMethod`

    The distance method to use.

    - `L2("l2")`

    - `IP("ip")`

    - `COSINE("cosine")`

    - `L1("l1")`

    - `HAMMING("hamming")`

    - `JACCARD("jaccard")`

  - `Optional<Long> efConstruction`

    The number of edges to use during the construction phase.

  - `Optional<Long> efSearch`

    The number of edges to use during the search phase.

  - `Optional<Long> m`

    The number of bi-directional links created for each new element.

  - `Optional<VectorType> vectorType`

    The type of vector to use.

    - `VECTOR("vector")`

    - `HALF_VEC("half_vec")`

    - `BIT("bit")`

    - `SPARSE_VEC("sparse_vec")`
