param name string param location string = resourceGroup().location param tags object = {} param connectionStringKey string = 'AZURE-COSMOS-CONNECTION-STRING' param keyVaultName string @allowed([ 'GlobalDocumentDB', 'MongoDB', 'Parse' ]) param kind string resource cosmos 'Microsoft.DocumentDB/databaseAccounts@2022-08-15' = { name: name kind: kind location: location tags: tags properties: { consistencyPolicy: { defaultConsistencyLevel: 'Session' } locations: [ { locationName: location failoverPriority: 0 isZoneRedundant: false } ] databaseAccountOfferType: 'Standard' enableAutomaticFailover: false enableMultipleWriteLocations: false apiProperties: (kind == 'MongoDB') ? { serverVersion: '4.0' } : {} capabilities: [ { name: 'EnableServerless' } ] } } resource cosmosConnectionString 'Microsoft.KeyVault/vaults/secrets@2022-07-01' = { parent: keyVault name: connectionStringKey properties: { value: cosmos.listConnectionStrings().connectionStrings[0].connectionString } } resource keyVault 'Microsoft.KeyVault/vaults@2022-07-01' existing = { name: keyVaultName } output connectionStringKey string = connectionStringKey output endpoint string = cosmos.properties.documentEndpoint output id string = cosmos.id output name string = cosmos.name