# 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'

  - `required string Token`

    The Astra DB Application Token to use

  - `required string ApiEndpoint`

    The Astra DB JSON API endpoint for your database

  - `required string CollectionName`

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

  - `required Long EmbeddingDimension`

    Length of the embedding vectors in use

  - `string ClassName`

  - `string? Keyspace`

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

  - `SupportsNestedMetadataFilters SupportsNestedMetadataFilters`

    - `trueTrue`

### Cloud Az Storage Blob Data Source

- `class CloudAzStorageBlobDataSource:`

  - `required string AccountUrl`

    The Azure Storage Blob account URL to use for authentication.

  - `required string ContainerName`

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

  - `string? AccountKey`

    The Azure Storage Blob account key to use for authentication.

  - `string? AccountName`

    The Azure Storage Blob account name to use for authentication.

  - `string? Blob`

    The blob name to read from.

  - `string ClassName`

  - `string? ClientID`

    The Azure AD client ID to use for authentication.

  - `string? ClientSecret`

    The Azure AD client secret to use for authentication.

  - `string? Prefix`

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

  - `Boolean SupportsAccessControl`

  - `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.

  - `required string SearchServiceApiKey`

  - `required string SearchServiceEndpoint`

  - `string ClassName`

  - `string? ClientID`

  - `string? ClientSecret`

  - `Long? EmbeddingDimension`

  - `IReadOnlyDictionary<string, JsonElement>? FilterableMetadataFieldKeys`

  - `string? IndexName`

  - `string? SearchServiceApiVersion`

  - `SupportsNestedMetadataFilters SupportsNestedMetadataFilters`

    - `trueTrue`

  - `string? TenantID`

### Cloud Box Data Source

- `class CloudBoxDataSource:`

  - `required AuthenticationMechanism AuthenticationMechanism`

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

    - `"ccg"Ccg`

    - `"developer_token"DeveloperToken`

  - `string ClassName`

  - `string? ClientID`

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

  - `string? ClientSecret`

    Box API secret used for making auth requests.

  - `string? DeveloperToken`

    Developer token for authentication if authentication_mechanism is 'developer_token'.

  - `string? EnterpriseID`

    Box Enterprise ID, if provided authenticates as service.

  - `string? FolderID`

    The ID of the Box folder to read from.

  - `Boolean SupportsAccessControl`

  - `string? UserID`

    Box User ID, if provided authenticates as user.

### Cloud Confluence Data Source

- `class CloudConfluenceDataSource:`

  - `required string AuthenticationMechanism`

    Type of Authentication for connecting to Confluence APIs.

  - `required string ServerUrl`

    The server URL of the Confluence instance.

  - `string? ApiToken`

    The API token to use for authentication.

  - `string ClassName`

  - `string? Cql`

    The CQL query to use for fetching pages.

  - `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

    - `Boolean SkipListFailures`

      Whether to skip failed batches/lists and continue processing

  - `Boolean IndexRestrictedPages`

    Whether to index restricted pages.

  - `Boolean KeepMarkdownFormat`

    Whether to keep the markdown format.

  - `string? Label`

    The label to use for fetching pages.

  - `string? PageIds`

    The page IDs of the Confluence to read from.

  - `string? SpaceKey`

    The space key to read from.

  - `Boolean SupportsAccessControl`

  - `Boolean SyncPermissions`

    Whether to fetch space-level permissions (allowed users/groups) and attach them to document metadata for access control. Disable for Confluence Server/Data Center versions whose permission APIs are unavailable (e.g. the JSON-RPC API removed in Data Center 9.2.6+), which otherwise surface as 401 errors during sync.

  - `string? UserName`

    The username to use for authentication.

### Cloud Google Drive Data Source

- `class CloudGoogleDriveDataSource:`

  - `required string FolderID`

    The ID of the Google Drive folder to read from.

  - `string ClassName`

  - `string? FolderName`

    Human-readable name of the selected folder, for display.

  - `IReadOnlyDictionary<string, string>? ServiceAccountKey`

    A dictionary containing secret values

  - `Boolean SupportsAccessControl`

### Cloud Jira Data Source

- `class CloudJiraDataSource:`

  Cloud Jira Data Source integrating JiraReader.

  - `required string AuthenticationMechanism`

    Type of Authentication for connecting to Jira APIs.

  - `required string Query`

    JQL (Jira Query Language) query to search.

  - `string? ApiToken`

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

  - `string ClassName`

  - `string? CloudID`

    The cloud ID, used in case of OAuth2.

  - `string? Email`

    The email address to use for authentication.

  - `string? ServerUrl`

    The server url for Jira Cloud.

  - `Boolean SupportsAccessControl`

### Cloud Jira Data Source V2

- `class CloudJiraDataSourceV2:`

  Cloud Jira Data Source integrating JiraReaderV2.

  - `required string AuthenticationMechanism`

    Type of Authentication for connecting to Jira APIs.

  - `required string Query`

    JQL (Jira Query Language) query to search.

  - `required string ServerUrl`

    The server url for Jira Cloud.

  - `string? ApiToken`

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

  - `ApiVersion ApiVersion`

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

    - `"2"2`

    - `"3"3`

  - `string ClassName`

  - `string? CloudID`

    The cloud ID, used in case of OAuth2.

  - `string? Email`

    The email address to use for authentication.

  - `string? Expand`

    Fields to expand in the response.

  - `IReadOnlyList<string>? Fields`

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

  - `Boolean GetPermissions`

    Whether to fetch project role permissions and issue-level security

  - `Long? RequestsPerMinute`

    Rate limit for Jira API requests per minute.

  - `Boolean SupportsAccessControl`

### Cloud Milvus Vector Store

- `class CloudMilvusVectorStore:`

  Cloud Milvus Vector Store.

  - `required string Uri`

  - `string? Token`

  - `string ClassName`

  - `string? CollectionName`

  - `Long? EmbeddingDimension`

  - `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

  - `required string CollectionName`

  - `required string DBName`

  - `required string MongoDBUri`

  - `string ClassName`

  - `Long? EmbeddingDimension`

  - `string? FulltextIndexName`

  - `Boolean SupportsNestedMetadataFilters`

  - `string? VectorIndexName`

### Cloud Notion Page Data Source

- `class CloudNotionPageDataSource:`

  - `required string IntegrationToken`

    The integration token to use for authentication.

  - `string ClassName`

  - `string? DatabaseIds`

    The Notion Database Id to read content from.

  - `string? PageIds`

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

  - `Boolean SupportsAccessControl`

### Cloud One Drive Data Source

- `class CloudOneDriveDataSource:`

  - `required string ClientID`

    The client ID to use for authentication.

  - `required string ClientSecret`

    The client secret to use for authentication.

  - `required string TenantID`

    The tenant ID to use for authentication.

  - `required string UserPrincipalName`

    The user principal name to use for authentication.

  - `string ClassName`

  - `string? FolderID`

    The ID of the OneDrive folder to read from.

  - `string? FolderPath`

    The path of the OneDrive folder to read from.

  - `IReadOnlyList<string>? RequiredExts`

    The list of required file extensions.

  - `SupportsAccessControl SupportsAccessControl`

    - `trueTrue`

### 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

  - `required string ApiKey`

    The API key for authenticating with Pinecone

  - `required string IndexName`

  - `string ClassName`

  - `IReadOnlyDictionary<string, JsonElement>? InsertKwargs`

  - `string? Namespace`

  - `SupportsNestedMetadataFilters SupportsNestedMetadataFilters`

    - `trueTrue`

### Cloud Postgres Vector Store

- `class CloudPostgresVectorStore:`

  - `required string Database`

  - `required Long EmbedDim`

  - `required string Host`

  - `required string Password`

  - `required Long Port`

  - `required string SchemaName`

  - `required string TableName`

  - `required string User`

  - `string ClassName`

  - `PgVectorHnswSettings? HnswSettings`

    HNSW settings for PGVector.

    - `DistanceMethod DistanceMethod`

      The distance method to use.

      - `"cosine"Cosine`

      - `"hamming"Hamming`

      - `"ip"IP`

      - `"jaccard"Jaccard`

      - `"l1"L1`

      - `"l2"L2`

    - `Long EfConstruction`

      The number of edges to use during the construction phase.

    - `Long EfSearch`

      The number of edges to use during the search phase.

    - `Long M`

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

    - `VectorType VectorType`

      The type of vector to use.

      - `"bit"Bit`

      - `"half_vec"HalfVec`

      - `"sparse_vec"SparseVec`

      - `"vector"Vector`

  - `Boolean? HybridSearch`

  - `Boolean PerformSetup`

  - `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

  - `required string ApiKey`

  - `required string CollectionName`

  - `required string Url`

  - `string ClassName`

  - `IReadOnlyDictionary<string, JsonElement> ClientKwargs`

  - `Long MaxRetries`

  - `SupportsNestedMetadataFilters SupportsNestedMetadataFilters`

    - `trueTrue`

### Cloud S3 Data Source

- `class CloudS3DataSource:`

  - `required string Bucket`

    The name of the S3 bucket to read from.

  - `string? AwsAccessID`

    The AWS access ID to use for authentication.

  - `string? AwsAccessSecret`

    The AWS access secret to use for authentication.

  - `string ClassName`

  - `string? Prefix`

    The prefix of the S3 objects to read from.

  - `string? RegexPattern`

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

  - `string? S3EndpointUrl`

    The S3 endpoint URL to use for authentication.

  - `Boolean SupportsAccessControl`

### Cloud Sharepoint Data Source

- `class CloudSharepointDataSource:`

  - `required string ClientID`

    The client ID to use for authentication.

  - `required string ClientSecret`

    The client secret to use for authentication.

  - `required string TenantID`

    The tenant ID to use for authentication.

  - `string ClassName`

  - `string? DriveName`

    The name of the Sharepoint drive to read from.

  - `IReadOnlyList<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$', '^~']

  - `string? FolderID`

    The ID of the Sharepoint folder to read from.

  - `string? FolderPath`

    The path of the Sharepoint folder to read from.

  - `Boolean GetPermissions`

    Whether to get permissions for the sharepoint site.

  - `IReadOnlyList<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$']

  - `IReadOnlyList<string>? RequiredExts`

    The list of required file extensions.

  - `string? SiteID`

    The ID of the SharePoint site to download from.

  - `string? SiteName`

    The name of the SharePoint site to download from.

  - `SupportsAccessControl SupportsAccessControl`

    - `trueTrue`

### Cloud Slack Data Source

- `class CloudSlackDataSource:`

  - `required string SlackToken`

    Slack Bot Token.

  - `string? ChannelIds`

    Slack Channel.

  - `string? ChannelPatterns`

    Slack Channel name pattern.

  - `string ClassName`

  - `string? EarliestDate`

    Earliest date.

  - `Double? EarliestDateTimestamp`

    Earliest date timestamp.

  - `string? LatestDate`

    Latest date.

  - `Double? LatestDateTimestamp`

    Latest date timestamp.

  - `Boolean SupportsAccessControl`

### Failure Handling Config

- `class FailureHandlingConfig:`

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

  - `Boolean SkipListFailures`

    Whether to skip failed batches/lists and continue processing

### Pg Vector Hnsw Settings

- `class PgVectorHnswSettings:`

  HNSW settings for PGVector.

  - `DistanceMethod DistanceMethod`

    The distance method to use.

    - `"cosine"Cosine`

    - `"hamming"Hamming`

    - `"ip"IP`

    - `"jaccard"Jaccard`

    - `"l1"L1`

    - `"l2"L2`

  - `Long EfConstruction`

    The number of edges to use during the construction phase.

  - `Long EfSearch`

    The number of edges to use during the search phase.

  - `Long M`

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

  - `VectorType VectorType`

    The type of vector to use.

    - `"bit"Bit`

    - `"half_vec"HalfVec`

    - `"sparse_vec"SparseVec`

    - `"vector"Vector`
