13. Cosmos DB
13.1. Connection Options
13.1.1. Authentication
Property
Description
AuthScheme
The type of authentication to use when connecting to Cosmos DB.
AccountEndpoint
The value should be the Cosmos DB account URL from the Keys blade of the Cosmos DB account.
AccountKey
A master key token or a resource token for connecting to the Cosmos DB REST API.
TokenType
Denotes the type of token: master or resource.
13.1.2. Azure Authentication
Property
Description
AzureTenant
The Microsoft Online tenant being used to access data. If not specified, your default tentant will be used.
AzureEnvironment
The Azure Environment to use when establishing a connection.
13.1.3. OAuth
Property
Description
InitiateOAuth
Set this property to initiate the process to obtain or refresh the OAuth access token when you connect.
OAuthClientId
The client ID assigned when you register your application with an OAuth authorization server.
OAuthClientSecret
The client secret assigned when you register your application with an OAuth authorization server.
OAuthAccessToken
The access token for connecting using OAuth.
OAuthSettingsLocation
The location of the settings file where OAuth values are saved when InitiateOAuth is set to GETANDREFRESH or REFRESH. Alternatively, this can be held in memory by specifying a value starting with memory://.
CallbackURL
The OAuth callback URL to return to when authenticating. This value must match the callback URL you specify in your app settings.
OAuthGrantType
The grant type for the OAuth flow.
OAuthVerifier
The verifier code returned from the OAuth authorization URL.
OAuthRefreshToken
The OAuth refresh token for the corresponding OAuth access token.
OAuthExpiresIn
The lifetime in seconds of the OAuth AccessToken.
OAuthTokenTimestamp
The Unix epoch timestamp in milliseconds when the current Access Token was created.
13.1.4. SSL
Property
Description
SSLClientCert
The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
SSLClientCertType
The type of key store containing the TLS/SSL client certificate.
SSLClientCertPassword
The password for the TLS/SSL client certificate.
SSLClientCertSubject
The subject of the TLS/SSL client certificate.
SSLServerCert
The certificate to be accepted from the server when connecting using TLS/SSL.
13.1.5. Firewall
Property
Description
FirewallType
The protocol used by a proxy-based firewall.
FirewallServer
The name or IP address of a proxy-based firewall.
FirewallPort
The TCP port for a proxy-based firewall.
FirewallUser
The user name to use to authenticate with a proxy-based firewall.
FirewallPassword
A password used to authenticate to a proxy-based firewall.
13.1.6. Proxy
Property
Description
ProxyAutoDetect
This indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
ProxyServer
The hostname or IP address of a proxy to route HTTP traffic through.
ProxyPort
The TCP port the ProxyServer proxy is running on.
ProxyAuthScheme
The authentication type to use to authenticate to the ProxyServer proxy.
ProxyUser
A user name to be used to authenticate to the ProxyServer proxy.
ProxyPassword
A password to be used to authenticate to the ProxyServer proxy.
ProxySSLType
The SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptions
A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .
13.1.7. Logging
Property
Description
Logfile
A filepath which designates the name and location of the log file.
Verbosity
The verbosity level that determines the amount of detail included in the log file.
LogModules
Core modules to be included in the log file.
MaxLogFileSize
A string specifying the maximum size in bytes for a log file (for example, 10 MB).
MaxLogFileCount
A string specifying the maximum file count of log files.
13.1.8. Schema
Property
Description
Location
A path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemas
This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Tables
This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
Views
Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
Schema
Specify the Cosmos DB database you want to work with.
13.1.9. Caching
Property
Description
AutoCache
Automatically caches the results of SELECT queries into a cache database specified by either CacheLocation or both of CacheConnection and CacheProvider .
CacheDriver
The database driver to be used to cache data.
CacheConnection
The connection string for the cache database. This property is always used in conjunction with CacheProvider . Setting both properties will override the value set for CacheLocation for caching data.
CacheLocation
Specifies the path to the cache when caching to a file.
CacheTolerance
The tolerance for stale data in the cache specified in seconds when using AutoCache .
Offline
Use offline mode to get the data from the cache instead of the live source.
CacheMetadata
This property determines whether or not to cache the table metadata to a file store.
13.1.10. Miscellaneous
Property
Description
BatchSize
The maximum size of each batch operation to submit.
CalculateAggregates
Specifies whether will return the calculated value of the aggregates or grouped by partiton range.
ConnectionLifeTime
The maximum lifetime of a connection in seconds. Once the time has elapsed, the connection object is disposed.
ConnectOnOpen
This property species whether to connect to the Cosmos DB when the connection is opened.
ConsistencyLevel
Denotes the type of token: master or resource.
FlattenArrays
By default, nested arrays are returned as strings of JSON. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays.
FlattenObjects
Set FlattenObjects to true to flatten object properties into columns of their own. Otherwise, objects nested in arrays are returned as strings of JSON.
GenerateSchemaFiles
Indicates the user preference as to when schemas should be generated and saved.
MaxRows
Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
MaxThreads
Specifies the maximum number of concurrent requests for Batch CUD (Create, Update, Delete) operations.
MultiThreadCount
Aggregate queries in partitioned collections will require parallel requests for different partition ranges. Set this to the number of parallel request to be issued in the same time.
Other
These hidden properties are used only in specific use cases.
Pagesize
The maximum number of results to return per page from Cosmos DB.
PoolIdleTimeout
The allowed idle time for a connection before it is closed.
PoolMaxSize
The maximum connections in the pool.
PoolMinSize
The minimum number of connections in the pool.
PoolWaitTime
The max seconds to wait for an available connection.
PseudoColumns
This property indicates whether or not to include pseudo columns as columns to the table.
Readonly
You can use this property to enforce read-only access to Cosmos DB from the provider.
RowScanDepth
The maximum number of rows to scan to look for the columns available in a table.
RTK
The runtime key used for licensing.
SeparatorCharacter
The character or characters used to denote hierarchy.
SetPartitionKeyAsPK
Whether or not to use the collection's Partition Key field as part of composite Primary Key for the corresponding exposed table.
SupportEnhancedSQL
This property enhances SQL functionality beyond what can be supported through the API directly, by enabling in-memory client-side processing.
Timeout
The value in seconds until the timeout error is thrown, canceling the operation.
TypeDetectionScheme
Comma-separated options for how the provider will scan the data to determine the fields and datatypes in each document collection.
UseConnectionPooling
This property enables connection pooling.
UseRidAsPk
Set this property to false to switch using the id column as primary key instead the default _rid.
WriteThroughputBudget
Defines the Requests Units (RU) budget per Second that the Batch CUD (Create, Update, Delete) operations should not exceed.