cognitive

package
v5.87.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 13, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	pulumi.CustomResourceState

	// If `kind` is `TextAnalytics` this specifies the ID of the Search service.
	CustomQuestionAnsweringSearchServiceId pulumi.StringPtrOutput `pulumi:"customQuestionAnsweringSearchServiceId"`
	// If `kind` is `TextAnalytics` this specifies the key of the Search service.
	//
	// > **NOTE:** `customQuestionAnsweringSearchServiceId` and `customQuestionAnsweringSearchServiceKey` are used for [Custom Question Answering, the renamed version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/custom-question-answering), while `qnaRuntimeEndpoint` is used for [the old version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/overview/overview)
	CustomQuestionAnsweringSearchServiceKey pulumi.StringPtrOutput `pulumi:"customQuestionAnsweringSearchServiceKey"`
	// The subdomain name used for token-based authentication. This property is required when `networkAcls` is specified. This property is also required when using the OpenAI service with libraries which assume the Azure OpenAI endpoint is a subdomain on `https://openai.azure.com/`, eg. `https://<custom_subdomain_name>.openai.azure.com/`.  Changing this forces a new resource to be created.
	CustomSubdomainName pulumi.StringPtrOutput `pulumi:"customSubdomainName"`
	// A `customerManagedKey` block as documented below.
	CustomerManagedKey AccountCustomerManagedKeyTypePtrOutput `pulumi:"customerManagedKey"`
	// Whether to enable the dynamic throttling for this Cognitive Service Account.
	DynamicThrottlingEnabled pulumi.BoolPtrOutput `pulumi:"dynamicThrottlingEnabled"`
	// The endpoint used to connect to the Cognitive Service Account.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// List of FQDNs allowed for the Cognitive Account.
	Fqdns pulumi.StringArrayOutput `pulumi:"fqdns"`
	// An `identity` block as defined below.
	Identity AccountIdentityPtrOutput `pulumi:"identity"`
	// Specifies the type of Cognitive Service Account that should be created. Possible values are `Academic`, `AnomalyDetector`, `Bing.Autosuggest`, `Bing.Autosuggest.v7`, `Bing.CustomSearch`, `Bing.Search`, `Bing.Search.v7`, `Bing.Speech`, `Bing.SpellCheck`, `Bing.SpellCheck.v7`, `CognitiveServices`, `ComputerVision`, `ContentModerator`, `ContentSafety`, `CustomSpeech`, `CustomVision.Prediction`, `CustomVision.Training`, `Emotion`, `Face`, `FormRecognizer`, `ImmersiveReader`, `LUIS`, `LUIS.Authoring`, `MetricsAdvisor`, `OpenAI`, `Personalizer`, `QnAMaker`, `Recommendations`, `SpeakerRecognition`, `Speech`, `SpeechServices`, `SpeechTranslation`, `TextAnalytics`, `TextTranslation` and `WebLM`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** New Bing Search resources cannot be created as their APIs are moving from Cognitive Services Platform to new surface area under Microsoft.com. Starting from October 30, 2020, existing instances of Bing Search APIs provisioned via Cognitive Services will be continuously supported for next 3 years or till the end of respective Enterprise Agreement, whichever happens first.
	//
	// > **NOTE:** You must create your first Face, Text Analytics, or Computer Vision resources from the Azure portal to review and acknowledge the terms and conditions. In Azure Portal, the checkbox to accept terms and conditions is only displayed when a US region is selected. More information on [Prerequisites](https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows#prerequisites).
	Kind pulumi.StringOutput `pulumi:"kind"`
	// Whether local authentication methods is enabled for the Cognitive Account. Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrOutput `pulumi:"localAuthEnabled"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// The Azure AD Client ID (Application ID). This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadClientId pulumi.StringPtrOutput `pulumi:"metricsAdvisorAadClientId"`
	// The Azure AD Tenant ID. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadTenantId pulumi.StringPtrOutput `pulumi:"metricsAdvisorAadTenantId"`
	// The super user of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorSuperUserName pulumi.StringPtrOutput `pulumi:"metricsAdvisorSuperUserName"`
	// The website name of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This URL is mandatory if the `kind` is set to `QnAMaker`.
	MetricsAdvisorWebsiteName pulumi.StringPtrOutput `pulumi:"metricsAdvisorWebsiteName"`
	// Specifies the name of the Cognitive Service Account. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// A `networkAcls` block as defined below. When this property is specified, `customSubdomainName` is also required to be set.
	NetworkAcls AccountNetworkAclsPtrOutput `pulumi:"networkAcls"`
	// Whether outbound network access is restricted for the Cognitive Account. Defaults to `false`.
	OutboundNetworkAccessRestricted pulumi.BoolPtrOutput `pulumi:"outboundNetworkAccessRestricted"`
	// A primary access key which can be used to connect to the Cognitive Service Account.
	PrimaryAccessKey pulumi.StringOutput `pulumi:"primaryAccessKey"`
	// Whether public network access is allowed for the Cognitive Account. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"publicNetworkAccessEnabled"`
	// A URL to link a QnAMaker cognitive account to a QnA runtime.
	QnaRuntimeEndpoint pulumi.StringPtrOutput `pulumi:"qnaRuntimeEndpoint"`
	// The name of the resource group in which the Cognitive Service Account is created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The secondary access key which can be used to connect to the Cognitive Service Account.
	SecondaryAccessKey pulumi.StringOutput `pulumi:"secondaryAccessKey"`
	// Specifies the SKU Name for this Cognitive Service Account. Possible values are `F0`, `F1`, `S0`, `S`, `S1`, `S2`, `S3`, `S4`, `S5`, `S6`, `P0`, `P1`, `P2`, `E0` and `DC0`.
	//
	// > **NOTE:** SKU `DC0` is the commitment tier for Cognitive Services containers running in disconnected environments. You must obtain approval from Microsoft by submitting the [request form](https://aka.ms/csdisconnectedcontainers) first, before you can use this SKU. More information on [Purchase a commitment plan to use containers in disconnected environments](https://learn.microsoft.com/en-us/azure/cognitive-services/containers/disconnected-containers?tabs=stt#purchase-a-commitment-plan-to-use-containers-in-disconnected-environments).
	SkuName pulumi.StringOutput `pulumi:"skuName"`
	// A `storage` block as defined below.
	Storages AccountStorageArrayOutput `pulumi:"storages"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages a Cognitive Services Account.

> **Note:** Version v2.65.0 of the Azure Provider and later will attempt to Purge the Cognitive Account during deletion. This feature can be disabled using the `features` block within the `provider` block, see the provider documentation on the features block for more information.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cognitive"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = cognitive.NewAccount(ctx, "example", &cognitive.AccountArgs{
			Name:              pulumi.String("example-account"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Kind:              pulumi.String("Face"),
			SkuName:           pulumi.String("S0"),
			Tags: pulumi.StringMap{
				"Acceptance": pulumi.String("Test"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Cognitive Service Accounts can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:cognitive/account:Account account1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.CognitiveServices/accounts/account1 ```

func GetAccount

func GetAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountState, opts ...pulumi.ResourceOption) (*Account, error)

GetAccount gets an existing Account resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccount

func NewAccount(ctx *pulumi.Context,
	name string, args *AccountArgs, opts ...pulumi.ResourceOption) (*Account, error)

NewAccount registers a new resource with the given unique name, arguments, and options.

func (*Account) ElementType

func (*Account) ElementType() reflect.Type

func (*Account) ToAccountOutput

func (i *Account) ToAccountOutput() AccountOutput

func (*Account) ToAccountOutputWithContext

func (i *Account) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountArgs

type AccountArgs struct {
	// If `kind` is `TextAnalytics` this specifies the ID of the Search service.
	CustomQuestionAnsweringSearchServiceId pulumi.StringPtrInput
	// If `kind` is `TextAnalytics` this specifies the key of the Search service.
	//
	// > **NOTE:** `customQuestionAnsweringSearchServiceId` and `customQuestionAnsweringSearchServiceKey` are used for [Custom Question Answering, the renamed version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/custom-question-answering), while `qnaRuntimeEndpoint` is used for [the old version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/overview/overview)
	CustomQuestionAnsweringSearchServiceKey pulumi.StringPtrInput
	// The subdomain name used for token-based authentication. This property is required when `networkAcls` is specified. This property is also required when using the OpenAI service with libraries which assume the Azure OpenAI endpoint is a subdomain on `https://openai.azure.com/`, eg. `https://<custom_subdomain_name>.openai.azure.com/`.  Changing this forces a new resource to be created.
	CustomSubdomainName pulumi.StringPtrInput
	// A `customerManagedKey` block as documented below.
	CustomerManagedKey AccountCustomerManagedKeyTypePtrInput
	// Whether to enable the dynamic throttling for this Cognitive Service Account.
	DynamicThrottlingEnabled pulumi.BoolPtrInput
	// List of FQDNs allowed for the Cognitive Account.
	Fqdns pulumi.StringArrayInput
	// An `identity` block as defined below.
	Identity AccountIdentityPtrInput
	// Specifies the type of Cognitive Service Account that should be created. Possible values are `Academic`, `AnomalyDetector`, `Bing.Autosuggest`, `Bing.Autosuggest.v7`, `Bing.CustomSearch`, `Bing.Search`, `Bing.Search.v7`, `Bing.Speech`, `Bing.SpellCheck`, `Bing.SpellCheck.v7`, `CognitiveServices`, `ComputerVision`, `ContentModerator`, `ContentSafety`, `CustomSpeech`, `CustomVision.Prediction`, `CustomVision.Training`, `Emotion`, `Face`, `FormRecognizer`, `ImmersiveReader`, `LUIS`, `LUIS.Authoring`, `MetricsAdvisor`, `OpenAI`, `Personalizer`, `QnAMaker`, `Recommendations`, `SpeakerRecognition`, `Speech`, `SpeechServices`, `SpeechTranslation`, `TextAnalytics`, `TextTranslation` and `WebLM`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** New Bing Search resources cannot be created as their APIs are moving from Cognitive Services Platform to new surface area under Microsoft.com. Starting from October 30, 2020, existing instances of Bing Search APIs provisioned via Cognitive Services will be continuously supported for next 3 years or till the end of respective Enterprise Agreement, whichever happens first.
	//
	// > **NOTE:** You must create your first Face, Text Analytics, or Computer Vision resources from the Azure portal to review and acknowledge the terms and conditions. In Azure Portal, the checkbox to accept terms and conditions is only displayed when a US region is selected. More information on [Prerequisites](https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows#prerequisites).
	Kind pulumi.StringInput
	// Whether local authentication methods is enabled for the Cognitive Account. Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The Azure AD Client ID (Application ID). This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadClientId pulumi.StringPtrInput
	// The Azure AD Tenant ID. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadTenantId pulumi.StringPtrInput
	// The super user of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorSuperUserName pulumi.StringPtrInput
	// The website name of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This URL is mandatory if the `kind` is set to `QnAMaker`.
	MetricsAdvisorWebsiteName pulumi.StringPtrInput
	// Specifies the name of the Cognitive Service Account. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A `networkAcls` block as defined below. When this property is specified, `customSubdomainName` is also required to be set.
	NetworkAcls AccountNetworkAclsPtrInput
	// Whether outbound network access is restricted for the Cognitive Account. Defaults to `false`.
	OutboundNetworkAccessRestricted pulumi.BoolPtrInput
	// Whether public network access is allowed for the Cognitive Account. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// A URL to link a QnAMaker cognitive account to a QnA runtime.
	QnaRuntimeEndpoint pulumi.StringPtrInput
	// The name of the resource group in which the Cognitive Service Account is created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the SKU Name for this Cognitive Service Account. Possible values are `F0`, `F1`, `S0`, `S`, `S1`, `S2`, `S3`, `S4`, `S5`, `S6`, `P0`, `P1`, `P2`, `E0` and `DC0`.
	//
	// > **NOTE:** SKU `DC0` is the commitment tier for Cognitive Services containers running in disconnected environments. You must obtain approval from Microsoft by submitting the [request form](https://aka.ms/csdisconnectedcontainers) first, before you can use this SKU. More information on [Purchase a commitment plan to use containers in disconnected environments](https://learn.microsoft.com/en-us/azure/cognitive-services/containers/disconnected-containers?tabs=stt#purchase-a-commitment-plan-to-use-containers-in-disconnected-environments).
	SkuName pulumi.StringInput
	// A `storage` block as defined below.
	Storages AccountStorageArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType

func (AccountArgs) ElementType() reflect.Type

type AccountArray

type AccountArray []AccountInput

func (AccountArray) ElementType

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext

func (i AccountArray) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountArrayInput

type AccountArrayInput interface {
	pulumi.Input

	ToAccountArrayOutput() AccountArrayOutput
	ToAccountArrayOutputWithContext(context.Context) AccountArrayOutput
}

AccountArrayInput is an input type that accepts AccountArray and AccountArrayOutput values. You can construct a concrete instance of `AccountArrayInput` via:

AccountArray{ AccountArgs{...} }

type AccountArrayOutput

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index

func (AccountArrayOutput) ToAccountArrayOutput

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext

func (o AccountArrayOutput) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountCustomerManagedKey

type AccountCustomerManagedKey struct {
	pulumi.CustomResourceState

	// The ID of the Cognitive Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringOutput `pulumi:"cognitiveAccountId"`
	// The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.
	IdentityClientId pulumi.StringPtrOutput `pulumi:"identityClientId"`
	// The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.
	KeyVaultKeyId pulumi.StringOutput `pulumi:"keyVaultKeyId"`
}

Manages a Customer Managed Key for a Cognitive Services Account.

> **NOTE:** It's possible to define a Customer Managed Key both within the `cognitive.Account` resource via the `customerManagedKey` block and by using the `cognitive.AccountCustomerManagedKey` resource. However it's not possible to use both methods to manage a Customer Managed Key for a Cognitive Account, since there'll be conflicts.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cognitive"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.GetClientConfig(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West US"),
		})
		if err != nil {
			return err
		}
		exampleUserAssignedIdentity, err := authorization.NewUserAssignedIdentity(ctx, "example", &authorization.UserAssignedIdentityArgs{
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Name:              pulumi.String("example-identity"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := cognitive.NewAccount(ctx, "example", &cognitive.AccountArgs{
			Name:                pulumi.String("example-account"),
			Location:            example.Location,
			ResourceGroupName:   example.Name,
			Kind:                pulumi.String("Face"),
			SkuName:             pulumi.String("E0"),
			CustomSubdomainName: pulumi.String("example-account"),
			Identity: &cognitive.AccountIdentityArgs{
				Type: pulumi.String("SystemAssigned, UserAssigned"),
				IdentityIds: pulumi.StringArray{
					exampleUserAssignedIdentity.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleKeyVault, err := keyvault.NewKeyVault(ctx, "example", &keyvault.KeyVaultArgs{
			Name:                   pulumi.String("example-vault"),
			Location:               example.Location,
			ResourceGroupName:      example.Name,
			TenantId:               pulumi.String(current.TenantId),
			SkuName:                pulumi.String("standard"),
			PurgeProtectionEnabled: pulumi.Bool(true),
			AccessPolicies: keyvault.KeyVaultAccessPolicyArray{
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: exampleAccount.Identity.ApplyT(func(identity cognitive.AccountIdentity) (*string, error) {
						return &identity.TenantId, nil
					}).(pulumi.StringPtrOutput),
					ObjectId: exampleAccount.Identity.ApplyT(func(identity cognitive.AccountIdentity) (*string, error) {
						return &identity.PrincipalId, nil
					}).(pulumi.StringPtrOutput),
					KeyPermissions: pulumi.StringArray{
						pulumi.String("Get"),
						pulumi.String("Create"),
						pulumi.String("List"),
						pulumi.String("Restore"),
						pulumi.String("Recover"),
						pulumi.String("UnwrapKey"),
						pulumi.String("WrapKey"),
						pulumi.String("Purge"),
						pulumi.String("Encrypt"),
						pulumi.String("Decrypt"),
						pulumi.String("Sign"),
						pulumi.String("Verify"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Get"),
					},
				},
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: pulumi.String(current.TenantId),
					ObjectId: pulumi.String(current.ObjectId),
					KeyPermissions: pulumi.StringArray{
						pulumi.String("Get"),
						pulumi.String("Create"),
						pulumi.String("Delete"),
						pulumi.String("List"),
						pulumi.String("Restore"),
						pulumi.String("Recover"),
						pulumi.String("UnwrapKey"),
						pulumi.String("WrapKey"),
						pulumi.String("Purge"),
						pulumi.String("Encrypt"),
						pulumi.String("Decrypt"),
						pulumi.String("Sign"),
						pulumi.String("Verify"),
						pulumi.String("GetRotationPolicy"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Get"),
					},
				},
				&keyvault.KeyVaultAccessPolicyArgs{
					TenantId: exampleUserAssignedIdentity.TenantId,
					ObjectId: exampleUserAssignedIdentity.PrincipalId,
					KeyPermissions: pulumi.StringArray{
						pulumi.String("Get"),
						pulumi.String("Create"),
						pulumi.String("Delete"),
						pulumi.String("List"),
						pulumi.String("Restore"),
						pulumi.String("Recover"),
						pulumi.String("UnwrapKey"),
						pulumi.String("WrapKey"),
						pulumi.String("Purge"),
						pulumi.String("Encrypt"),
						pulumi.String("Decrypt"),
						pulumi.String("Sign"),
						pulumi.String("Verify"),
					},
					SecretPermissions: pulumi.StringArray{
						pulumi.String("Get"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		exampleKey, err := keyvault.NewKey(ctx, "example", &keyvault.KeyArgs{
			Name:       pulumi.String("example-key"),
			KeyVaultId: exampleKeyVault.ID(),
			KeyType:    pulumi.String("RSA"),
			KeySize:    pulumi.Int(2048),
			KeyOpts: pulumi.StringArray{
				pulumi.String("decrypt"),
				pulumi.String("encrypt"),
				pulumi.String("sign"),
				pulumi.String("unwrapKey"),
				pulumi.String("verify"),
				pulumi.String("wrapKey"),
			},
		})
		if err != nil {
			return err
		}
		_, err = cognitive.NewAccountCustomerManagedKey(ctx, "example", &cognitive.AccountCustomerManagedKeyArgs{
			CognitiveAccountId: exampleAccount.ID(),
			KeyVaultKeyId:      exampleKey.ID(),
			IdentityClientId:   exampleUserAssignedIdentity.ClientId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Customer Managed Keys for a Cognitive Account can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:cognitive/accountCustomerManagedKey:AccountCustomerManagedKey example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.CognitiveServices/accounts/account1 ```

func GetAccountCustomerManagedKey

func GetAccountCustomerManagedKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountCustomerManagedKeyState, opts ...pulumi.ResourceOption) (*AccountCustomerManagedKey, error)

GetAccountCustomerManagedKey gets an existing AccountCustomerManagedKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccountCustomerManagedKey

func NewAccountCustomerManagedKey(ctx *pulumi.Context,
	name string, args *AccountCustomerManagedKeyArgs, opts ...pulumi.ResourceOption) (*AccountCustomerManagedKey, error)

NewAccountCustomerManagedKey registers a new resource with the given unique name, arguments, and options.

func (*AccountCustomerManagedKey) ElementType

func (*AccountCustomerManagedKey) ElementType() reflect.Type

func (*AccountCustomerManagedKey) ToAccountCustomerManagedKeyOutput

func (i *AccountCustomerManagedKey) ToAccountCustomerManagedKeyOutput() AccountCustomerManagedKeyOutput

func (*AccountCustomerManagedKey) ToAccountCustomerManagedKeyOutputWithContext

func (i *AccountCustomerManagedKey) ToAccountCustomerManagedKeyOutputWithContext(ctx context.Context) AccountCustomerManagedKeyOutput

type AccountCustomerManagedKeyArgs

type AccountCustomerManagedKeyArgs struct {
	// The ID of the Cognitive Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringInput
	// The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.
	IdentityClientId pulumi.StringPtrInput
	// The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.
	KeyVaultKeyId pulumi.StringInput
}

The set of arguments for constructing a AccountCustomerManagedKey resource.

func (AccountCustomerManagedKeyArgs) ElementType

type AccountCustomerManagedKeyArray

type AccountCustomerManagedKeyArray []AccountCustomerManagedKeyInput

func (AccountCustomerManagedKeyArray) ElementType

func (AccountCustomerManagedKeyArray) ToAccountCustomerManagedKeyArrayOutput

func (i AccountCustomerManagedKeyArray) ToAccountCustomerManagedKeyArrayOutput() AccountCustomerManagedKeyArrayOutput

func (AccountCustomerManagedKeyArray) ToAccountCustomerManagedKeyArrayOutputWithContext

func (i AccountCustomerManagedKeyArray) ToAccountCustomerManagedKeyArrayOutputWithContext(ctx context.Context) AccountCustomerManagedKeyArrayOutput

type AccountCustomerManagedKeyArrayInput

type AccountCustomerManagedKeyArrayInput interface {
	pulumi.Input

	ToAccountCustomerManagedKeyArrayOutput() AccountCustomerManagedKeyArrayOutput
	ToAccountCustomerManagedKeyArrayOutputWithContext(context.Context) AccountCustomerManagedKeyArrayOutput
}

AccountCustomerManagedKeyArrayInput is an input type that accepts AccountCustomerManagedKeyArray and AccountCustomerManagedKeyArrayOutput values. You can construct a concrete instance of `AccountCustomerManagedKeyArrayInput` via:

AccountCustomerManagedKeyArray{ AccountCustomerManagedKeyArgs{...} }

type AccountCustomerManagedKeyArrayOutput

type AccountCustomerManagedKeyArrayOutput struct{ *pulumi.OutputState }

func (AccountCustomerManagedKeyArrayOutput) ElementType

func (AccountCustomerManagedKeyArrayOutput) Index

func (AccountCustomerManagedKeyArrayOutput) ToAccountCustomerManagedKeyArrayOutput

func (o AccountCustomerManagedKeyArrayOutput) ToAccountCustomerManagedKeyArrayOutput() AccountCustomerManagedKeyArrayOutput

func (AccountCustomerManagedKeyArrayOutput) ToAccountCustomerManagedKeyArrayOutputWithContext

func (o AccountCustomerManagedKeyArrayOutput) ToAccountCustomerManagedKeyArrayOutputWithContext(ctx context.Context) AccountCustomerManagedKeyArrayOutput

type AccountCustomerManagedKeyInput

type AccountCustomerManagedKeyInput interface {
	pulumi.Input

	ToAccountCustomerManagedKeyOutput() AccountCustomerManagedKeyOutput
	ToAccountCustomerManagedKeyOutputWithContext(ctx context.Context) AccountCustomerManagedKeyOutput
}

type AccountCustomerManagedKeyMap

type AccountCustomerManagedKeyMap map[string]AccountCustomerManagedKeyInput

func (AccountCustomerManagedKeyMap) ElementType

func (AccountCustomerManagedKeyMap) ToAccountCustomerManagedKeyMapOutput

func (i AccountCustomerManagedKeyMap) ToAccountCustomerManagedKeyMapOutput() AccountCustomerManagedKeyMapOutput

func (AccountCustomerManagedKeyMap) ToAccountCustomerManagedKeyMapOutputWithContext

func (i AccountCustomerManagedKeyMap) ToAccountCustomerManagedKeyMapOutputWithContext(ctx context.Context) AccountCustomerManagedKeyMapOutput

type AccountCustomerManagedKeyMapInput

type AccountCustomerManagedKeyMapInput interface {
	pulumi.Input

	ToAccountCustomerManagedKeyMapOutput() AccountCustomerManagedKeyMapOutput
	ToAccountCustomerManagedKeyMapOutputWithContext(context.Context) AccountCustomerManagedKeyMapOutput
}

AccountCustomerManagedKeyMapInput is an input type that accepts AccountCustomerManagedKeyMap and AccountCustomerManagedKeyMapOutput values. You can construct a concrete instance of `AccountCustomerManagedKeyMapInput` via:

AccountCustomerManagedKeyMap{ "key": AccountCustomerManagedKeyArgs{...} }

type AccountCustomerManagedKeyMapOutput

type AccountCustomerManagedKeyMapOutput struct{ *pulumi.OutputState }

func (AccountCustomerManagedKeyMapOutput) ElementType

func (AccountCustomerManagedKeyMapOutput) MapIndex

func (AccountCustomerManagedKeyMapOutput) ToAccountCustomerManagedKeyMapOutput

func (o AccountCustomerManagedKeyMapOutput) ToAccountCustomerManagedKeyMapOutput() AccountCustomerManagedKeyMapOutput

func (AccountCustomerManagedKeyMapOutput) ToAccountCustomerManagedKeyMapOutputWithContext

func (o AccountCustomerManagedKeyMapOutput) ToAccountCustomerManagedKeyMapOutputWithContext(ctx context.Context) AccountCustomerManagedKeyMapOutput

type AccountCustomerManagedKeyOutput

type AccountCustomerManagedKeyOutput struct{ *pulumi.OutputState }

func (AccountCustomerManagedKeyOutput) CognitiveAccountId added in v5.5.0

func (o AccountCustomerManagedKeyOutput) CognitiveAccountId() pulumi.StringOutput

The ID of the Cognitive Account. Changing this forces a new resource to be created.

func (AccountCustomerManagedKeyOutput) ElementType

func (AccountCustomerManagedKeyOutput) IdentityClientId added in v5.5.0

The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.

func (AccountCustomerManagedKeyOutput) KeyVaultKeyId added in v5.5.0

The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.

func (AccountCustomerManagedKeyOutput) ToAccountCustomerManagedKeyOutput

func (o AccountCustomerManagedKeyOutput) ToAccountCustomerManagedKeyOutput() AccountCustomerManagedKeyOutput

func (AccountCustomerManagedKeyOutput) ToAccountCustomerManagedKeyOutputWithContext

func (o AccountCustomerManagedKeyOutput) ToAccountCustomerManagedKeyOutputWithContext(ctx context.Context) AccountCustomerManagedKeyOutput

type AccountCustomerManagedKeyState

type AccountCustomerManagedKeyState struct {
	// The ID of the Cognitive Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringPtrInput
	// The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.
	IdentityClientId pulumi.StringPtrInput
	// The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.
	KeyVaultKeyId pulumi.StringPtrInput
}

func (AccountCustomerManagedKeyState) ElementType

type AccountCustomerManagedKeyType added in v5.21.0

type AccountCustomerManagedKeyType struct {
	// The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.
	IdentityClientId *string `pulumi:"identityClientId"`
	// The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.
	KeyVaultKeyId string `pulumi:"keyVaultKeyId"`
}

type AccountCustomerManagedKeyTypeArgs added in v5.21.0

type AccountCustomerManagedKeyTypeArgs struct {
	// The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.
	IdentityClientId pulumi.StringPtrInput `pulumi:"identityClientId"`
	// The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.
	KeyVaultKeyId pulumi.StringInput `pulumi:"keyVaultKeyId"`
}

func (AccountCustomerManagedKeyTypeArgs) ElementType added in v5.21.0

func (AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypeOutput added in v5.21.0

func (i AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypeOutput() AccountCustomerManagedKeyTypeOutput

func (AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypeOutputWithContext added in v5.21.0

func (i AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypeOutputWithContext(ctx context.Context) AccountCustomerManagedKeyTypeOutput

func (AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypePtrOutput added in v5.21.0

func (i AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypePtrOutput() AccountCustomerManagedKeyTypePtrOutput

func (AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypePtrOutputWithContext added in v5.21.0

func (i AccountCustomerManagedKeyTypeArgs) ToAccountCustomerManagedKeyTypePtrOutputWithContext(ctx context.Context) AccountCustomerManagedKeyTypePtrOutput

type AccountCustomerManagedKeyTypeInput added in v5.21.0

type AccountCustomerManagedKeyTypeInput interface {
	pulumi.Input

	ToAccountCustomerManagedKeyTypeOutput() AccountCustomerManagedKeyTypeOutput
	ToAccountCustomerManagedKeyTypeOutputWithContext(context.Context) AccountCustomerManagedKeyTypeOutput
}

AccountCustomerManagedKeyTypeInput is an input type that accepts AccountCustomerManagedKeyTypeArgs and AccountCustomerManagedKeyTypeOutput values. You can construct a concrete instance of `AccountCustomerManagedKeyTypeInput` via:

AccountCustomerManagedKeyTypeArgs{...}

type AccountCustomerManagedKeyTypeOutput added in v5.21.0

type AccountCustomerManagedKeyTypeOutput struct{ *pulumi.OutputState }

func (AccountCustomerManagedKeyTypeOutput) ElementType added in v5.21.0

func (AccountCustomerManagedKeyTypeOutput) IdentityClientId added in v5.21.0

The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.

func (AccountCustomerManagedKeyTypeOutput) KeyVaultKeyId added in v5.21.0

The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.

func (AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypeOutput added in v5.21.0

func (o AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypeOutput() AccountCustomerManagedKeyTypeOutput

func (AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypeOutputWithContext added in v5.21.0

func (o AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypeOutputWithContext(ctx context.Context) AccountCustomerManagedKeyTypeOutput

func (AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypePtrOutput added in v5.21.0

func (o AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypePtrOutput() AccountCustomerManagedKeyTypePtrOutput

func (AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypePtrOutputWithContext added in v5.21.0

func (o AccountCustomerManagedKeyTypeOutput) ToAccountCustomerManagedKeyTypePtrOutputWithContext(ctx context.Context) AccountCustomerManagedKeyTypePtrOutput

type AccountCustomerManagedKeyTypePtrInput added in v5.21.0

type AccountCustomerManagedKeyTypePtrInput interface {
	pulumi.Input

	ToAccountCustomerManagedKeyTypePtrOutput() AccountCustomerManagedKeyTypePtrOutput
	ToAccountCustomerManagedKeyTypePtrOutputWithContext(context.Context) AccountCustomerManagedKeyTypePtrOutput
}

AccountCustomerManagedKeyTypePtrInput is an input type that accepts AccountCustomerManagedKeyTypeArgs, AccountCustomerManagedKeyTypePtr and AccountCustomerManagedKeyTypePtrOutput values. You can construct a concrete instance of `AccountCustomerManagedKeyTypePtrInput` via:

        AccountCustomerManagedKeyTypeArgs{...}

or:

        nil

type AccountCustomerManagedKeyTypePtrOutput added in v5.21.0

type AccountCustomerManagedKeyTypePtrOutput struct{ *pulumi.OutputState }

func (AccountCustomerManagedKeyTypePtrOutput) Elem added in v5.21.0

func (AccountCustomerManagedKeyTypePtrOutput) ElementType added in v5.21.0

func (AccountCustomerManagedKeyTypePtrOutput) IdentityClientId added in v5.21.0

The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account.

func (AccountCustomerManagedKeyTypePtrOutput) KeyVaultKeyId added in v5.21.0

The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account.

func (AccountCustomerManagedKeyTypePtrOutput) ToAccountCustomerManagedKeyTypePtrOutput added in v5.21.0

func (o AccountCustomerManagedKeyTypePtrOutput) ToAccountCustomerManagedKeyTypePtrOutput() AccountCustomerManagedKeyTypePtrOutput

func (AccountCustomerManagedKeyTypePtrOutput) ToAccountCustomerManagedKeyTypePtrOutputWithContext added in v5.21.0

func (o AccountCustomerManagedKeyTypePtrOutput) ToAccountCustomerManagedKeyTypePtrOutputWithContext(ctx context.Context) AccountCustomerManagedKeyTypePtrOutput

type AccountIdentity

type AccountIdentity struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId *string `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId *string `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type string `pulumi:"type"`
}

type AccountIdentityArgs

type AccountIdentityArgs struct {
	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account.
	//
	// > **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID associated with this Managed Service Identity.
	PrincipalId pulumi.StringPtrInput `pulumi:"principalId"`
	// The Tenant ID associated with this Managed Service Identity.
	TenantId pulumi.StringPtrInput `pulumi:"tenantId"`
	// Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).
	Type pulumi.StringInput `pulumi:"type"`
}

func (AccountIdentityArgs) ElementType

func (AccountIdentityArgs) ElementType() reflect.Type

func (AccountIdentityArgs) ToAccountIdentityOutput

func (i AccountIdentityArgs) ToAccountIdentityOutput() AccountIdentityOutput

func (AccountIdentityArgs) ToAccountIdentityOutputWithContext

func (i AccountIdentityArgs) ToAccountIdentityOutputWithContext(ctx context.Context) AccountIdentityOutput

func (AccountIdentityArgs) ToAccountIdentityPtrOutput

func (i AccountIdentityArgs) ToAccountIdentityPtrOutput() AccountIdentityPtrOutput

func (AccountIdentityArgs) ToAccountIdentityPtrOutputWithContext

func (i AccountIdentityArgs) ToAccountIdentityPtrOutputWithContext(ctx context.Context) AccountIdentityPtrOutput

type AccountIdentityInput

type AccountIdentityInput interface {
	pulumi.Input

	ToAccountIdentityOutput() AccountIdentityOutput
	ToAccountIdentityOutputWithContext(context.Context) AccountIdentityOutput
}

AccountIdentityInput is an input type that accepts AccountIdentityArgs and AccountIdentityOutput values. You can construct a concrete instance of `AccountIdentityInput` via:

AccountIdentityArgs{...}

type AccountIdentityOutput

type AccountIdentityOutput struct{ *pulumi.OutputState }

func (AccountIdentityOutput) ElementType

func (AccountIdentityOutput) ElementType() reflect.Type

func (AccountIdentityOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (AccountIdentityOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (AccountIdentityOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (AccountIdentityOutput) ToAccountIdentityOutput

func (o AccountIdentityOutput) ToAccountIdentityOutput() AccountIdentityOutput

func (AccountIdentityOutput) ToAccountIdentityOutputWithContext

func (o AccountIdentityOutput) ToAccountIdentityOutputWithContext(ctx context.Context) AccountIdentityOutput

func (AccountIdentityOutput) ToAccountIdentityPtrOutput

func (o AccountIdentityOutput) ToAccountIdentityPtrOutput() AccountIdentityPtrOutput

func (AccountIdentityOutput) ToAccountIdentityPtrOutputWithContext

func (o AccountIdentityOutput) ToAccountIdentityPtrOutputWithContext(ctx context.Context) AccountIdentityPtrOutput

func (AccountIdentityOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type AccountIdentityPtrInput

type AccountIdentityPtrInput interface {
	pulumi.Input

	ToAccountIdentityPtrOutput() AccountIdentityPtrOutput
	ToAccountIdentityPtrOutputWithContext(context.Context) AccountIdentityPtrOutput
}

AccountIdentityPtrInput is an input type that accepts AccountIdentityArgs, AccountIdentityPtr and AccountIdentityPtrOutput values. You can construct a concrete instance of `AccountIdentityPtrInput` via:

        AccountIdentityArgs{...}

or:

        nil

type AccountIdentityPtrOutput

type AccountIdentityPtrOutput struct{ *pulumi.OutputState }

func (AccountIdentityPtrOutput) Elem

func (AccountIdentityPtrOutput) ElementType

func (AccountIdentityPtrOutput) ElementType() reflect.Type

func (AccountIdentityPtrOutput) IdentityIds

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account.

> **NOTE:** This is required when `type` is set to `UserAssigned` or `SystemAssigned, UserAssigned`.

func (AccountIdentityPtrOutput) PrincipalId

The Principal ID associated with this Managed Service Identity.

func (AccountIdentityPtrOutput) TenantId

The Tenant ID associated with this Managed Service Identity.

func (AccountIdentityPtrOutput) ToAccountIdentityPtrOutput

func (o AccountIdentityPtrOutput) ToAccountIdentityPtrOutput() AccountIdentityPtrOutput

func (AccountIdentityPtrOutput) ToAccountIdentityPtrOutputWithContext

func (o AccountIdentityPtrOutput) ToAccountIdentityPtrOutputWithContext(ctx context.Context) AccountIdentityPtrOutput

func (AccountIdentityPtrOutput) Type

Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are `SystemAssigned`, `UserAssigned`, `SystemAssigned, UserAssigned` (to enable both).

type AccountInput

type AccountInput interface {
	pulumi.Input

	ToAccountOutput() AccountOutput
	ToAccountOutputWithContext(ctx context.Context) AccountOutput
}

type AccountMap

type AccountMap map[string]AccountInput

func (AccountMap) ElementType

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext

func (i AccountMap) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountMapInput

type AccountMapInput interface {
	pulumi.Input

	ToAccountMapOutput() AccountMapOutput
	ToAccountMapOutputWithContext(context.Context) AccountMapOutput
}

AccountMapInput is an input type that accepts AccountMap and AccountMapOutput values. You can construct a concrete instance of `AccountMapInput` via:

AccountMap{ "key": AccountArgs{...} }

type AccountMapOutput

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex

func (AccountMapOutput) ToAccountMapOutput

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext

func (o AccountMapOutput) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountNetworkAcls

type AccountNetworkAcls struct {
	// The Default Action to use when no rules match from `ipRules` / `virtualNetworkRules`. Possible values are `Allow` and `Deny`.
	DefaultAction string `pulumi:"defaultAction"`
	// One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account.
	IpRules []string `pulumi:"ipRules"`
	// A `virtualNetworkRules` block as defined below.
	VirtualNetworkRules []AccountNetworkAclsVirtualNetworkRule `pulumi:"virtualNetworkRules"`
}

type AccountNetworkAclsArgs

type AccountNetworkAclsArgs struct {
	// The Default Action to use when no rules match from `ipRules` / `virtualNetworkRules`. Possible values are `Allow` and `Deny`.
	DefaultAction pulumi.StringInput `pulumi:"defaultAction"`
	// One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account.
	IpRules pulumi.StringArrayInput `pulumi:"ipRules"`
	// A `virtualNetworkRules` block as defined below.
	VirtualNetworkRules AccountNetworkAclsVirtualNetworkRuleArrayInput `pulumi:"virtualNetworkRules"`
}

func (AccountNetworkAclsArgs) ElementType

func (AccountNetworkAclsArgs) ElementType() reflect.Type

func (AccountNetworkAclsArgs) ToAccountNetworkAclsOutput

func (i AccountNetworkAclsArgs) ToAccountNetworkAclsOutput() AccountNetworkAclsOutput

func (AccountNetworkAclsArgs) ToAccountNetworkAclsOutputWithContext

func (i AccountNetworkAclsArgs) ToAccountNetworkAclsOutputWithContext(ctx context.Context) AccountNetworkAclsOutput

func (AccountNetworkAclsArgs) ToAccountNetworkAclsPtrOutput

func (i AccountNetworkAclsArgs) ToAccountNetworkAclsPtrOutput() AccountNetworkAclsPtrOutput

func (AccountNetworkAclsArgs) ToAccountNetworkAclsPtrOutputWithContext

func (i AccountNetworkAclsArgs) ToAccountNetworkAclsPtrOutputWithContext(ctx context.Context) AccountNetworkAclsPtrOutput

type AccountNetworkAclsInput

type AccountNetworkAclsInput interface {
	pulumi.Input

	ToAccountNetworkAclsOutput() AccountNetworkAclsOutput
	ToAccountNetworkAclsOutputWithContext(context.Context) AccountNetworkAclsOutput
}

AccountNetworkAclsInput is an input type that accepts AccountNetworkAclsArgs and AccountNetworkAclsOutput values. You can construct a concrete instance of `AccountNetworkAclsInput` via:

AccountNetworkAclsArgs{...}

type AccountNetworkAclsOutput

type AccountNetworkAclsOutput struct{ *pulumi.OutputState }

func (AccountNetworkAclsOutput) DefaultAction

func (o AccountNetworkAclsOutput) DefaultAction() pulumi.StringOutput

The Default Action to use when no rules match from `ipRules` / `virtualNetworkRules`. Possible values are `Allow` and `Deny`.

func (AccountNetworkAclsOutput) ElementType

func (AccountNetworkAclsOutput) ElementType() reflect.Type

func (AccountNetworkAclsOutput) IpRules

One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account.

func (AccountNetworkAclsOutput) ToAccountNetworkAclsOutput

func (o AccountNetworkAclsOutput) ToAccountNetworkAclsOutput() AccountNetworkAclsOutput

func (AccountNetworkAclsOutput) ToAccountNetworkAclsOutputWithContext

func (o AccountNetworkAclsOutput) ToAccountNetworkAclsOutputWithContext(ctx context.Context) AccountNetworkAclsOutput

func (AccountNetworkAclsOutput) ToAccountNetworkAclsPtrOutput

func (o AccountNetworkAclsOutput) ToAccountNetworkAclsPtrOutput() AccountNetworkAclsPtrOutput

func (AccountNetworkAclsOutput) ToAccountNetworkAclsPtrOutputWithContext

func (o AccountNetworkAclsOutput) ToAccountNetworkAclsPtrOutputWithContext(ctx context.Context) AccountNetworkAclsPtrOutput

func (AccountNetworkAclsOutput) VirtualNetworkRules

A `virtualNetworkRules` block as defined below.

type AccountNetworkAclsPtrInput

type AccountNetworkAclsPtrInput interface {
	pulumi.Input

	ToAccountNetworkAclsPtrOutput() AccountNetworkAclsPtrOutput
	ToAccountNetworkAclsPtrOutputWithContext(context.Context) AccountNetworkAclsPtrOutput
}

AccountNetworkAclsPtrInput is an input type that accepts AccountNetworkAclsArgs, AccountNetworkAclsPtr and AccountNetworkAclsPtrOutput values. You can construct a concrete instance of `AccountNetworkAclsPtrInput` via:

        AccountNetworkAclsArgs{...}

or:

        nil

type AccountNetworkAclsPtrOutput

type AccountNetworkAclsPtrOutput struct{ *pulumi.OutputState }

func (AccountNetworkAclsPtrOutput) DefaultAction

The Default Action to use when no rules match from `ipRules` / `virtualNetworkRules`. Possible values are `Allow` and `Deny`.

func (AccountNetworkAclsPtrOutput) Elem

func (AccountNetworkAclsPtrOutput) ElementType

func (AccountNetworkAclsPtrOutput) IpRules

One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account.

func (AccountNetworkAclsPtrOutput) ToAccountNetworkAclsPtrOutput

func (o AccountNetworkAclsPtrOutput) ToAccountNetworkAclsPtrOutput() AccountNetworkAclsPtrOutput

func (AccountNetworkAclsPtrOutput) ToAccountNetworkAclsPtrOutputWithContext

func (o AccountNetworkAclsPtrOutput) ToAccountNetworkAclsPtrOutputWithContext(ctx context.Context) AccountNetworkAclsPtrOutput

func (AccountNetworkAclsPtrOutput) VirtualNetworkRules

A `virtualNetworkRules` block as defined below.

type AccountNetworkAclsVirtualNetworkRule

type AccountNetworkAclsVirtualNetworkRule struct {
	// Whether ignore missing vnet service endpoint or not. Default to `false`.
	IgnoreMissingVnetServiceEndpoint *bool `pulumi:"ignoreMissingVnetServiceEndpoint"`
	// The ID of the subnet which should be able to access this Cognitive Account.
	SubnetId string `pulumi:"subnetId"`
}

type AccountNetworkAclsVirtualNetworkRuleArgs

type AccountNetworkAclsVirtualNetworkRuleArgs struct {
	// Whether ignore missing vnet service endpoint or not. Default to `false`.
	IgnoreMissingVnetServiceEndpoint pulumi.BoolPtrInput `pulumi:"ignoreMissingVnetServiceEndpoint"`
	// The ID of the subnet which should be able to access this Cognitive Account.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (AccountNetworkAclsVirtualNetworkRuleArgs) ElementType

func (AccountNetworkAclsVirtualNetworkRuleArgs) ToAccountNetworkAclsVirtualNetworkRuleOutput

func (i AccountNetworkAclsVirtualNetworkRuleArgs) ToAccountNetworkAclsVirtualNetworkRuleOutput() AccountNetworkAclsVirtualNetworkRuleOutput

func (AccountNetworkAclsVirtualNetworkRuleArgs) ToAccountNetworkAclsVirtualNetworkRuleOutputWithContext

func (i AccountNetworkAclsVirtualNetworkRuleArgs) ToAccountNetworkAclsVirtualNetworkRuleOutputWithContext(ctx context.Context) AccountNetworkAclsVirtualNetworkRuleOutput

type AccountNetworkAclsVirtualNetworkRuleArray

type AccountNetworkAclsVirtualNetworkRuleArray []AccountNetworkAclsVirtualNetworkRuleInput

func (AccountNetworkAclsVirtualNetworkRuleArray) ElementType

func (AccountNetworkAclsVirtualNetworkRuleArray) ToAccountNetworkAclsVirtualNetworkRuleArrayOutput

func (i AccountNetworkAclsVirtualNetworkRuleArray) ToAccountNetworkAclsVirtualNetworkRuleArrayOutput() AccountNetworkAclsVirtualNetworkRuleArrayOutput

func (AccountNetworkAclsVirtualNetworkRuleArray) ToAccountNetworkAclsVirtualNetworkRuleArrayOutputWithContext

func (i AccountNetworkAclsVirtualNetworkRuleArray) ToAccountNetworkAclsVirtualNetworkRuleArrayOutputWithContext(ctx context.Context) AccountNetworkAclsVirtualNetworkRuleArrayOutput

type AccountNetworkAclsVirtualNetworkRuleArrayInput

type AccountNetworkAclsVirtualNetworkRuleArrayInput interface {
	pulumi.Input

	ToAccountNetworkAclsVirtualNetworkRuleArrayOutput() AccountNetworkAclsVirtualNetworkRuleArrayOutput
	ToAccountNetworkAclsVirtualNetworkRuleArrayOutputWithContext(context.Context) AccountNetworkAclsVirtualNetworkRuleArrayOutput
}

AccountNetworkAclsVirtualNetworkRuleArrayInput is an input type that accepts AccountNetworkAclsVirtualNetworkRuleArray and AccountNetworkAclsVirtualNetworkRuleArrayOutput values. You can construct a concrete instance of `AccountNetworkAclsVirtualNetworkRuleArrayInput` via:

AccountNetworkAclsVirtualNetworkRuleArray{ AccountNetworkAclsVirtualNetworkRuleArgs{...} }

type AccountNetworkAclsVirtualNetworkRuleArrayOutput

type AccountNetworkAclsVirtualNetworkRuleArrayOutput struct{ *pulumi.OutputState }

func (AccountNetworkAclsVirtualNetworkRuleArrayOutput) ElementType

func (AccountNetworkAclsVirtualNetworkRuleArrayOutput) Index

func (AccountNetworkAclsVirtualNetworkRuleArrayOutput) ToAccountNetworkAclsVirtualNetworkRuleArrayOutput

func (o AccountNetworkAclsVirtualNetworkRuleArrayOutput) ToAccountNetworkAclsVirtualNetworkRuleArrayOutput() AccountNetworkAclsVirtualNetworkRuleArrayOutput

func (AccountNetworkAclsVirtualNetworkRuleArrayOutput) ToAccountNetworkAclsVirtualNetworkRuleArrayOutputWithContext

func (o AccountNetworkAclsVirtualNetworkRuleArrayOutput) ToAccountNetworkAclsVirtualNetworkRuleArrayOutputWithContext(ctx context.Context) AccountNetworkAclsVirtualNetworkRuleArrayOutput

type AccountNetworkAclsVirtualNetworkRuleInput

type AccountNetworkAclsVirtualNetworkRuleInput interface {
	pulumi.Input

	ToAccountNetworkAclsVirtualNetworkRuleOutput() AccountNetworkAclsVirtualNetworkRuleOutput
	ToAccountNetworkAclsVirtualNetworkRuleOutputWithContext(context.Context) AccountNetworkAclsVirtualNetworkRuleOutput
}

AccountNetworkAclsVirtualNetworkRuleInput is an input type that accepts AccountNetworkAclsVirtualNetworkRuleArgs and AccountNetworkAclsVirtualNetworkRuleOutput values. You can construct a concrete instance of `AccountNetworkAclsVirtualNetworkRuleInput` via:

AccountNetworkAclsVirtualNetworkRuleArgs{...}

type AccountNetworkAclsVirtualNetworkRuleOutput

type AccountNetworkAclsVirtualNetworkRuleOutput struct{ *pulumi.OutputState }

func (AccountNetworkAclsVirtualNetworkRuleOutput) ElementType

func (AccountNetworkAclsVirtualNetworkRuleOutput) IgnoreMissingVnetServiceEndpoint

func (o AccountNetworkAclsVirtualNetworkRuleOutput) IgnoreMissingVnetServiceEndpoint() pulumi.BoolPtrOutput

Whether ignore missing vnet service endpoint or not. Default to `false`.

func (AccountNetworkAclsVirtualNetworkRuleOutput) SubnetId

The ID of the subnet which should be able to access this Cognitive Account.

func (AccountNetworkAclsVirtualNetworkRuleOutput) ToAccountNetworkAclsVirtualNetworkRuleOutput

func (o AccountNetworkAclsVirtualNetworkRuleOutput) ToAccountNetworkAclsVirtualNetworkRuleOutput() AccountNetworkAclsVirtualNetworkRuleOutput

func (AccountNetworkAclsVirtualNetworkRuleOutput) ToAccountNetworkAclsVirtualNetworkRuleOutputWithContext

func (o AccountNetworkAclsVirtualNetworkRuleOutput) ToAccountNetworkAclsVirtualNetworkRuleOutputWithContext(ctx context.Context) AccountNetworkAclsVirtualNetworkRuleOutput

type AccountOutput

type AccountOutput struct{ *pulumi.OutputState }

func (AccountOutput) CustomQuestionAnsweringSearchServiceId added in v5.5.0

func (o AccountOutput) CustomQuestionAnsweringSearchServiceId() pulumi.StringPtrOutput

If `kind` is `TextAnalytics` this specifies the ID of the Search service.

func (AccountOutput) CustomQuestionAnsweringSearchServiceKey added in v5.15.0

func (o AccountOutput) CustomQuestionAnsweringSearchServiceKey() pulumi.StringPtrOutput

If `kind` is `TextAnalytics` this specifies the key of the Search service.

> **NOTE:** `customQuestionAnsweringSearchServiceId` and `customQuestionAnsweringSearchServiceKey` are used for [Custom Question Answering, the renamed version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/custom-question-answering), while `qnaRuntimeEndpoint` is used for [the old version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/overview/overview)

func (AccountOutput) CustomSubdomainName added in v5.5.0

func (o AccountOutput) CustomSubdomainName() pulumi.StringPtrOutput

The subdomain name used for token-based authentication. This property is required when `networkAcls` is specified. This property is also required when using the OpenAI service with libraries which assume the Azure OpenAI endpoint is a subdomain on `https://openai.azure.com/`, eg. `https://<custom_subdomain_name>.openai.azure.com/`. Changing this forces a new resource to be created.

func (AccountOutput) CustomerManagedKey added in v5.21.0

A `customerManagedKey` block as documented below.

func (AccountOutput) DynamicThrottlingEnabled added in v5.26.1

func (o AccountOutput) DynamicThrottlingEnabled() pulumi.BoolPtrOutput

Whether to enable the dynamic throttling for this Cognitive Service Account.

func (AccountOutput) ElementType

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) Endpoint added in v5.5.0

func (o AccountOutput) Endpoint() pulumi.StringOutput

The endpoint used to connect to the Cognitive Service Account.

func (AccountOutput) Fqdns added in v5.5.0

List of FQDNs allowed for the Cognitive Account.

func (AccountOutput) Identity added in v5.5.0

An `identity` block as defined below.

func (AccountOutput) Kind added in v5.5.0

Specifies the type of Cognitive Service Account that should be created. Possible values are `Academic`, `AnomalyDetector`, `Bing.Autosuggest`, `Bing.Autosuggest.v7`, `Bing.CustomSearch`, `Bing.Search`, `Bing.Search.v7`, `Bing.Speech`, `Bing.SpellCheck`, `Bing.SpellCheck.v7`, `CognitiveServices`, `ComputerVision`, `ContentModerator`, `ContentSafety`, `CustomSpeech`, `CustomVision.Prediction`, `CustomVision.Training`, `Emotion`, `Face`, `FormRecognizer`, `ImmersiveReader`, `LUIS`, `LUIS.Authoring`, `MetricsAdvisor`, `OpenAI`, `Personalizer`, `QnAMaker`, `Recommendations`, `SpeakerRecognition`, `Speech`, `SpeechServices`, `SpeechTranslation`, `TextAnalytics`, `TextTranslation` and `WebLM`. Changing this forces a new resource to be created.

> **NOTE:** New Bing Search resources cannot be created as their APIs are moving from Cognitive Services Platform to new surface area under Microsoft.com. Starting from October 30, 2020, existing instances of Bing Search APIs provisioned via Cognitive Services will be continuously supported for next 3 years or till the end of respective Enterprise Agreement, whichever happens first.

> **NOTE:** You must create your first Face, Text Analytics, or Computer Vision resources from the Azure portal to review and acknowledge the terms and conditions. In Azure Portal, the checkbox to accept terms and conditions is only displayed when a US region is selected. More information on [Prerequisites](https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows#prerequisites).

func (AccountOutput) LocalAuthEnabled added in v5.5.0

func (o AccountOutput) LocalAuthEnabled() pulumi.BoolPtrOutput

Whether local authentication methods is enabled for the Cognitive Account. Defaults to `true`.

func (AccountOutput) Location added in v5.5.0

func (o AccountOutput) Location() pulumi.StringOutput

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

func (AccountOutput) MetricsAdvisorAadClientId added in v5.5.0

func (o AccountOutput) MetricsAdvisorAadClientId() pulumi.StringPtrOutput

The Azure AD Client ID (Application ID). This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.

func (AccountOutput) MetricsAdvisorAadTenantId added in v5.5.0

func (o AccountOutput) MetricsAdvisorAadTenantId() pulumi.StringPtrOutput

The Azure AD Tenant ID. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.

func (AccountOutput) MetricsAdvisorSuperUserName added in v5.5.0

func (o AccountOutput) MetricsAdvisorSuperUserName() pulumi.StringPtrOutput

The super user of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.

func (AccountOutput) MetricsAdvisorWebsiteName added in v5.5.0

func (o AccountOutput) MetricsAdvisorWebsiteName() pulumi.StringPtrOutput

The website name of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.

> **NOTE:** This URL is mandatory if the `kind` is set to `QnAMaker`.

func (AccountOutput) Name added in v5.5.0

Specifies the name of the Cognitive Service Account. Changing this forces a new resource to be created.

func (AccountOutput) NetworkAcls added in v5.5.0

A `networkAcls` block as defined below. When this property is specified, `customSubdomainName` is also required to be set.

func (AccountOutput) OutboundNetworkAccessRestricted added in v5.5.0

func (o AccountOutput) OutboundNetworkAccessRestricted() pulumi.BoolPtrOutput

Whether outbound network access is restricted for the Cognitive Account. Defaults to `false`.

func (AccountOutput) PrimaryAccessKey added in v5.5.0

func (o AccountOutput) PrimaryAccessKey() pulumi.StringOutput

A primary access key which can be used to connect to the Cognitive Service Account.

func (AccountOutput) PublicNetworkAccessEnabled added in v5.5.0

func (o AccountOutput) PublicNetworkAccessEnabled() pulumi.BoolPtrOutput

Whether public network access is allowed for the Cognitive Account. Defaults to `true`.

func (AccountOutput) QnaRuntimeEndpoint added in v5.5.0

func (o AccountOutput) QnaRuntimeEndpoint() pulumi.StringPtrOutput

A URL to link a QnAMaker cognitive account to a QnA runtime.

func (AccountOutput) ResourceGroupName added in v5.5.0

func (o AccountOutput) ResourceGroupName() pulumi.StringOutput

The name of the resource group in which the Cognitive Service Account is created. Changing this forces a new resource to be created.

func (AccountOutput) SecondaryAccessKey added in v5.5.0

func (o AccountOutput) SecondaryAccessKey() pulumi.StringOutput

The secondary access key which can be used to connect to the Cognitive Service Account.

func (AccountOutput) SkuName added in v5.5.0

func (o AccountOutput) SkuName() pulumi.StringOutput

Specifies the SKU Name for this Cognitive Service Account. Possible values are `F0`, `F1`, `S0`, `S`, `S1`, `S2`, `S3`, `S4`, `S5`, `S6`, `P0`, `P1`, `P2`, `E0` and `DC0`.

> **NOTE:** SKU `DC0` is the commitment tier for Cognitive Services containers running in disconnected environments. You must obtain approval from Microsoft by submitting the [request form](https://aka.ms/csdisconnectedcontainers) first, before you can use this SKU. More information on [Purchase a commitment plan to use containers in disconnected environments](https://learn.microsoft.com/en-us/azure/cognitive-services/containers/disconnected-containers?tabs=stt#purchase-a-commitment-plan-to-use-containers-in-disconnected-environments).

func (AccountOutput) Storages added in v5.5.0

A `storage` block as defined below.

func (AccountOutput) Tags added in v5.5.0

A mapping of tags to assign to the resource.

func (AccountOutput) ToAccountOutput

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext

func (o AccountOutput) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountState

type AccountState struct {
	// If `kind` is `TextAnalytics` this specifies the ID of the Search service.
	CustomQuestionAnsweringSearchServiceId pulumi.StringPtrInput
	// If `kind` is `TextAnalytics` this specifies the key of the Search service.
	//
	// > **NOTE:** `customQuestionAnsweringSearchServiceId` and `customQuestionAnsweringSearchServiceKey` are used for [Custom Question Answering, the renamed version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/custom-question-answering), while `qnaRuntimeEndpoint` is used for [the old version of QnA Maker](https://docs.microsoft.com/azure/cognitive-services/qnamaker/overview/overview)
	CustomQuestionAnsweringSearchServiceKey pulumi.StringPtrInput
	// The subdomain name used for token-based authentication. This property is required when `networkAcls` is specified. This property is also required when using the OpenAI service with libraries which assume the Azure OpenAI endpoint is a subdomain on `https://openai.azure.com/`, eg. `https://<custom_subdomain_name>.openai.azure.com/`.  Changing this forces a new resource to be created.
	CustomSubdomainName pulumi.StringPtrInput
	// A `customerManagedKey` block as documented below.
	CustomerManagedKey AccountCustomerManagedKeyTypePtrInput
	// Whether to enable the dynamic throttling for this Cognitive Service Account.
	DynamicThrottlingEnabled pulumi.BoolPtrInput
	// The endpoint used to connect to the Cognitive Service Account.
	Endpoint pulumi.StringPtrInput
	// List of FQDNs allowed for the Cognitive Account.
	Fqdns pulumi.StringArrayInput
	// An `identity` block as defined below.
	Identity AccountIdentityPtrInput
	// Specifies the type of Cognitive Service Account that should be created. Possible values are `Academic`, `AnomalyDetector`, `Bing.Autosuggest`, `Bing.Autosuggest.v7`, `Bing.CustomSearch`, `Bing.Search`, `Bing.Search.v7`, `Bing.Speech`, `Bing.SpellCheck`, `Bing.SpellCheck.v7`, `CognitiveServices`, `ComputerVision`, `ContentModerator`, `ContentSafety`, `CustomSpeech`, `CustomVision.Prediction`, `CustomVision.Training`, `Emotion`, `Face`, `FormRecognizer`, `ImmersiveReader`, `LUIS`, `LUIS.Authoring`, `MetricsAdvisor`, `OpenAI`, `Personalizer`, `QnAMaker`, `Recommendations`, `SpeakerRecognition`, `Speech`, `SpeechServices`, `SpeechTranslation`, `TextAnalytics`, `TextTranslation` and `WebLM`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** New Bing Search resources cannot be created as their APIs are moving from Cognitive Services Platform to new surface area under Microsoft.com. Starting from October 30, 2020, existing instances of Bing Search APIs provisioned via Cognitive Services will be continuously supported for next 3 years or till the end of respective Enterprise Agreement, whichever happens first.
	//
	// > **NOTE:** You must create your first Face, Text Analytics, or Computer Vision resources from the Azure portal to review and acknowledge the terms and conditions. In Azure Portal, the checkbox to accept terms and conditions is only displayed when a US region is selected. More information on [Prerequisites](https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows#prerequisites).
	Kind pulumi.StringPtrInput
	// Whether local authentication methods is enabled for the Cognitive Account. Defaults to `true`.
	LocalAuthEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// The Azure AD Client ID (Application ID). This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadClientId pulumi.StringPtrInput
	// The Azure AD Tenant ID. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorAadTenantId pulumi.StringPtrInput
	// The super user of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	MetricsAdvisorSuperUserName pulumi.StringPtrInput
	// The website name of Metrics Advisor. This attribute is only set when kind is `MetricsAdvisor`. Changing this forces a new resource to be created.
	//
	// > **NOTE:** This URL is mandatory if the `kind` is set to `QnAMaker`.
	MetricsAdvisorWebsiteName pulumi.StringPtrInput
	// Specifies the name of the Cognitive Service Account. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// A `networkAcls` block as defined below. When this property is specified, `customSubdomainName` is also required to be set.
	NetworkAcls AccountNetworkAclsPtrInput
	// Whether outbound network access is restricted for the Cognitive Account. Defaults to `false`.
	OutboundNetworkAccessRestricted pulumi.BoolPtrInput
	// A primary access key which can be used to connect to the Cognitive Service Account.
	PrimaryAccessKey pulumi.StringPtrInput
	// Whether public network access is allowed for the Cognitive Account. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// A URL to link a QnAMaker cognitive account to a QnA runtime.
	QnaRuntimeEndpoint pulumi.StringPtrInput
	// The name of the resource group in which the Cognitive Service Account is created. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The secondary access key which can be used to connect to the Cognitive Service Account.
	SecondaryAccessKey pulumi.StringPtrInput
	// Specifies the SKU Name for this Cognitive Service Account. Possible values are `F0`, `F1`, `S0`, `S`, `S1`, `S2`, `S3`, `S4`, `S5`, `S6`, `P0`, `P1`, `P2`, `E0` and `DC0`.
	//
	// > **NOTE:** SKU `DC0` is the commitment tier for Cognitive Services containers running in disconnected environments. You must obtain approval from Microsoft by submitting the [request form](https://aka.ms/csdisconnectedcontainers) first, before you can use this SKU. More information on [Purchase a commitment plan to use containers in disconnected environments](https://learn.microsoft.com/en-us/azure/cognitive-services/containers/disconnected-containers?tabs=stt#purchase-a-commitment-plan-to-use-containers-in-disconnected-environments).
	SkuName pulumi.StringPtrInput
	// A `storage` block as defined below.
	Storages AccountStorageArrayInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
}

func (AccountState) ElementType

func (AccountState) ElementType() reflect.Type

type AccountStorage

type AccountStorage struct {
	// The client ID of the managed identity associated with the storage resource.
	//
	// > **NOTE:** Not all `kind` support a `storage` block. For example the `kind` `OpenAI` does not support it.
	IdentityClientId *string `pulumi:"identityClientId"`
	// Full resource id of a Microsoft.Storage resource.
	StorageAccountId string `pulumi:"storageAccountId"`
}

type AccountStorageArgs

type AccountStorageArgs struct {
	// The client ID of the managed identity associated with the storage resource.
	//
	// > **NOTE:** Not all `kind` support a `storage` block. For example the `kind` `OpenAI` does not support it.
	IdentityClientId pulumi.StringPtrInput `pulumi:"identityClientId"`
	// Full resource id of a Microsoft.Storage resource.
	StorageAccountId pulumi.StringInput `pulumi:"storageAccountId"`
}

func (AccountStorageArgs) ElementType

func (AccountStorageArgs) ElementType() reflect.Type

func (AccountStorageArgs) ToAccountStorageOutput

func (i AccountStorageArgs) ToAccountStorageOutput() AccountStorageOutput

func (AccountStorageArgs) ToAccountStorageOutputWithContext

func (i AccountStorageArgs) ToAccountStorageOutputWithContext(ctx context.Context) AccountStorageOutput

type AccountStorageArray

type AccountStorageArray []AccountStorageInput

func (AccountStorageArray) ElementType

func (AccountStorageArray) ElementType() reflect.Type

func (AccountStorageArray) ToAccountStorageArrayOutput

func (i AccountStorageArray) ToAccountStorageArrayOutput() AccountStorageArrayOutput

func (AccountStorageArray) ToAccountStorageArrayOutputWithContext

func (i AccountStorageArray) ToAccountStorageArrayOutputWithContext(ctx context.Context) AccountStorageArrayOutput

type AccountStorageArrayInput

type AccountStorageArrayInput interface {
	pulumi.Input

	ToAccountStorageArrayOutput() AccountStorageArrayOutput
	ToAccountStorageArrayOutputWithContext(context.Context) AccountStorageArrayOutput
}

AccountStorageArrayInput is an input type that accepts AccountStorageArray and AccountStorageArrayOutput values. You can construct a concrete instance of `AccountStorageArrayInput` via:

AccountStorageArray{ AccountStorageArgs{...} }

type AccountStorageArrayOutput

type AccountStorageArrayOutput struct{ *pulumi.OutputState }

func (AccountStorageArrayOutput) ElementType

func (AccountStorageArrayOutput) ElementType() reflect.Type

func (AccountStorageArrayOutput) Index

func (AccountStorageArrayOutput) ToAccountStorageArrayOutput

func (o AccountStorageArrayOutput) ToAccountStorageArrayOutput() AccountStorageArrayOutput

func (AccountStorageArrayOutput) ToAccountStorageArrayOutputWithContext

func (o AccountStorageArrayOutput) ToAccountStorageArrayOutputWithContext(ctx context.Context) AccountStorageArrayOutput

type AccountStorageInput

type AccountStorageInput interface {
	pulumi.Input

	ToAccountStorageOutput() AccountStorageOutput
	ToAccountStorageOutputWithContext(context.Context) AccountStorageOutput
}

AccountStorageInput is an input type that accepts AccountStorageArgs and AccountStorageOutput values. You can construct a concrete instance of `AccountStorageInput` via:

AccountStorageArgs{...}

type AccountStorageOutput

type AccountStorageOutput struct{ *pulumi.OutputState }

func (AccountStorageOutput) ElementType

func (AccountStorageOutput) ElementType() reflect.Type

func (AccountStorageOutput) IdentityClientId

func (o AccountStorageOutput) IdentityClientId() pulumi.StringPtrOutput

The client ID of the managed identity associated with the storage resource.

> **NOTE:** Not all `kind` support a `storage` block. For example the `kind` `OpenAI` does not support it.

func (AccountStorageOutput) StorageAccountId

func (o AccountStorageOutput) StorageAccountId() pulumi.StringOutput

Full resource id of a Microsoft.Storage resource.

func (AccountStorageOutput) ToAccountStorageOutput

func (o AccountStorageOutput) ToAccountStorageOutput() AccountStorageOutput

func (AccountStorageOutput) ToAccountStorageOutputWithContext

func (o AccountStorageOutput) ToAccountStorageOutputWithContext(ctx context.Context) AccountStorageOutput

type Deployment added in v5.29.0

type Deployment struct {
	pulumi.CustomResourceState

	// The ID of the Cognitive Services Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringOutput `pulumi:"cognitiveAccountId"`
	// A `model` block as defined below. Changing this forces a new resource to be created.
	Model DeploymentModelOutput `pulumi:"model"`
	// The name of the Cognitive Services Account Deployment. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of RAI policy.
	RaiPolicyName pulumi.StringPtrOutput `pulumi:"raiPolicyName"`
	// A `scale` block as defined below.
	Scale DeploymentScaleOutput `pulumi:"scale"`
	// Deployment model version upgrade option. Possible values are `OnceNewDefaultVersionAvailable`, `OnceCurrentVersionExpired`, and `NoAutoUpgrade`. Defaults to `OnceNewDefaultVersionAvailable`.
	VersionUpgradeOption pulumi.StringPtrOutput `pulumi:"versionUpgradeOption"`
}

Manages a Cognitive Services Account Deployment.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cognitive"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := cognitive.NewAccount(ctx, "example", &cognitive.AccountArgs{
			Name:              pulumi.String("example-ca"),
			Location:          example.Location,
			ResourceGroupName: example.Name,
			Kind:              pulumi.String("OpenAI"),
			SkuName:           pulumi.String("S0"),
		})
		if err != nil {
			return err
		}
		_, err = cognitive.NewDeployment(ctx, "example", &cognitive.DeploymentArgs{
			Name:               pulumi.String("example-cd"),
			CognitiveAccountId: exampleAccount.ID(),
			Model: &cognitive.DeploymentModelArgs{
				Format:  pulumi.String("OpenAI"),
				Name:    pulumi.String("text-curie-001"),
				Version: pulumi.String("1"),
			},
			Scale: &cognitive.DeploymentScaleArgs{
				Type: pulumi.String("Standard"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Cognitive Services Account Deployment can be imported using the `resource id`, e.g.

```sh $ pulumi import azure:cognitive/deployment:Deployment example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.CognitiveServices/accounts/account1/deployments/deployment1 ```

func GetDeployment added in v5.29.0

func GetDeployment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DeploymentState, opts ...pulumi.ResourceOption) (*Deployment, error)

GetDeployment gets an existing Deployment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDeployment added in v5.29.0

func NewDeployment(ctx *pulumi.Context,
	name string, args *DeploymentArgs, opts ...pulumi.ResourceOption) (*Deployment, error)

NewDeployment registers a new resource with the given unique name, arguments, and options.

func (*Deployment) ElementType added in v5.29.0

func (*Deployment) ElementType() reflect.Type

func (*Deployment) ToDeploymentOutput added in v5.29.0

func (i *Deployment) ToDeploymentOutput() DeploymentOutput

func (*Deployment) ToDeploymentOutputWithContext added in v5.29.0

func (i *Deployment) ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput

type DeploymentArgs added in v5.29.0

type DeploymentArgs struct {
	// The ID of the Cognitive Services Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringInput
	// A `model` block as defined below. Changing this forces a new resource to be created.
	Model DeploymentModelInput
	// The name of the Cognitive Services Account Deployment. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of RAI policy.
	RaiPolicyName pulumi.StringPtrInput
	// A `scale` block as defined below.
	Scale DeploymentScaleInput
	// Deployment model version upgrade option. Possible values are `OnceNewDefaultVersionAvailable`, `OnceCurrentVersionExpired`, and `NoAutoUpgrade`. Defaults to `OnceNewDefaultVersionAvailable`.
	VersionUpgradeOption pulumi.StringPtrInput
}

The set of arguments for constructing a Deployment resource.

func (DeploymentArgs) ElementType added in v5.29.0

func (DeploymentArgs) ElementType() reflect.Type

type DeploymentArray added in v5.29.0

type DeploymentArray []DeploymentInput

func (DeploymentArray) ElementType added in v5.29.0

func (DeploymentArray) ElementType() reflect.Type

func (DeploymentArray) ToDeploymentArrayOutput added in v5.29.0

func (i DeploymentArray) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArray) ToDeploymentArrayOutputWithContext added in v5.29.0

func (i DeploymentArray) ToDeploymentArrayOutputWithContext(ctx context.Context) DeploymentArrayOutput

type DeploymentArrayInput added in v5.29.0

type DeploymentArrayInput interface {
	pulumi.Input

	ToDeploymentArrayOutput() DeploymentArrayOutput
	ToDeploymentArrayOutputWithContext(context.Context) DeploymentArrayOutput
}

DeploymentArrayInput is an input type that accepts DeploymentArray and DeploymentArrayOutput values. You can construct a concrete instance of `DeploymentArrayInput` via:

DeploymentArray{ DeploymentArgs{...} }

type DeploymentArrayOutput added in v5.29.0

type DeploymentArrayOutput struct{ *pulumi.OutputState }

func (DeploymentArrayOutput) ElementType added in v5.29.0

func (DeploymentArrayOutput) ElementType() reflect.Type

func (DeploymentArrayOutput) Index added in v5.29.0

func (DeploymentArrayOutput) ToDeploymentArrayOutput added in v5.29.0

func (o DeploymentArrayOutput) ToDeploymentArrayOutput() DeploymentArrayOutput

func (DeploymentArrayOutput) ToDeploymentArrayOutputWithContext added in v5.29.0

func (o DeploymentArrayOutput) ToDeploymentArrayOutputWithContext(ctx context.Context) DeploymentArrayOutput

type DeploymentInput added in v5.29.0

type DeploymentInput interface {
	pulumi.Input

	ToDeploymentOutput() DeploymentOutput
	ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput
}

type DeploymentMap added in v5.29.0

type DeploymentMap map[string]DeploymentInput

func (DeploymentMap) ElementType added in v5.29.0

func (DeploymentMap) ElementType() reflect.Type

func (DeploymentMap) ToDeploymentMapOutput added in v5.29.0

func (i DeploymentMap) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMap) ToDeploymentMapOutputWithContext added in v5.29.0

func (i DeploymentMap) ToDeploymentMapOutputWithContext(ctx context.Context) DeploymentMapOutput

type DeploymentMapInput added in v5.29.0

type DeploymentMapInput interface {
	pulumi.Input

	ToDeploymentMapOutput() DeploymentMapOutput
	ToDeploymentMapOutputWithContext(context.Context) DeploymentMapOutput
}

DeploymentMapInput is an input type that accepts DeploymentMap and DeploymentMapOutput values. You can construct a concrete instance of `DeploymentMapInput` via:

DeploymentMap{ "key": DeploymentArgs{...} }

type DeploymentMapOutput added in v5.29.0

type DeploymentMapOutput struct{ *pulumi.OutputState }

func (DeploymentMapOutput) ElementType added in v5.29.0

func (DeploymentMapOutput) ElementType() reflect.Type

func (DeploymentMapOutput) MapIndex added in v5.29.0

func (DeploymentMapOutput) ToDeploymentMapOutput added in v5.29.0

func (o DeploymentMapOutput) ToDeploymentMapOutput() DeploymentMapOutput

func (DeploymentMapOutput) ToDeploymentMapOutputWithContext added in v5.29.0

func (o DeploymentMapOutput) ToDeploymentMapOutputWithContext(ctx context.Context) DeploymentMapOutput

type DeploymentModel added in v5.29.0

type DeploymentModel struct {
	// The format of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created. Possible value is `OpenAI`.
	Format string `pulumi:"format"`
	// The name of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created.
	Name string `pulumi:"name"`
	// The version of Cognitive Services Account Deployment model. If `version` is not specified, the default version of the model at the time will be assigned.
	Version *string `pulumi:"version"`
}

type DeploymentModelArgs added in v5.29.0

type DeploymentModelArgs struct {
	// The format of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created. Possible value is `OpenAI`.
	Format pulumi.StringInput `pulumi:"format"`
	// The name of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created.
	Name pulumi.StringInput `pulumi:"name"`
	// The version of Cognitive Services Account Deployment model. If `version` is not specified, the default version of the model at the time will be assigned.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (DeploymentModelArgs) ElementType added in v5.29.0

func (DeploymentModelArgs) ElementType() reflect.Type

func (DeploymentModelArgs) ToDeploymentModelOutput added in v5.29.0

func (i DeploymentModelArgs) ToDeploymentModelOutput() DeploymentModelOutput

func (DeploymentModelArgs) ToDeploymentModelOutputWithContext added in v5.29.0

func (i DeploymentModelArgs) ToDeploymentModelOutputWithContext(ctx context.Context) DeploymentModelOutput

func (DeploymentModelArgs) ToDeploymentModelPtrOutput added in v5.29.0

func (i DeploymentModelArgs) ToDeploymentModelPtrOutput() DeploymentModelPtrOutput

func (DeploymentModelArgs) ToDeploymentModelPtrOutputWithContext added in v5.29.0

func (i DeploymentModelArgs) ToDeploymentModelPtrOutputWithContext(ctx context.Context) DeploymentModelPtrOutput

type DeploymentModelInput added in v5.29.0

type DeploymentModelInput interface {
	pulumi.Input

	ToDeploymentModelOutput() DeploymentModelOutput
	ToDeploymentModelOutputWithContext(context.Context) DeploymentModelOutput
}

DeploymentModelInput is an input type that accepts DeploymentModelArgs and DeploymentModelOutput values. You can construct a concrete instance of `DeploymentModelInput` via:

DeploymentModelArgs{...}

type DeploymentModelOutput added in v5.29.0

type DeploymentModelOutput struct{ *pulumi.OutputState }

func (DeploymentModelOutput) ElementType added in v5.29.0

func (DeploymentModelOutput) ElementType() reflect.Type

func (DeploymentModelOutput) Format added in v5.29.0

The format of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created. Possible value is `OpenAI`.

func (DeploymentModelOutput) Name added in v5.29.0

The name of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created.

func (DeploymentModelOutput) ToDeploymentModelOutput added in v5.29.0

func (o DeploymentModelOutput) ToDeploymentModelOutput() DeploymentModelOutput

func (DeploymentModelOutput) ToDeploymentModelOutputWithContext added in v5.29.0

func (o DeploymentModelOutput) ToDeploymentModelOutputWithContext(ctx context.Context) DeploymentModelOutput

func (DeploymentModelOutput) ToDeploymentModelPtrOutput added in v5.29.0

func (o DeploymentModelOutput) ToDeploymentModelPtrOutput() DeploymentModelPtrOutput

func (DeploymentModelOutput) ToDeploymentModelPtrOutputWithContext added in v5.29.0

func (o DeploymentModelOutput) ToDeploymentModelPtrOutputWithContext(ctx context.Context) DeploymentModelPtrOutput

func (DeploymentModelOutput) Version added in v5.29.0

The version of Cognitive Services Account Deployment model. If `version` is not specified, the default version of the model at the time will be assigned.

type DeploymentModelPtrInput added in v5.29.0

type DeploymentModelPtrInput interface {
	pulumi.Input

	ToDeploymentModelPtrOutput() DeploymentModelPtrOutput
	ToDeploymentModelPtrOutputWithContext(context.Context) DeploymentModelPtrOutput
}

DeploymentModelPtrInput is an input type that accepts DeploymentModelArgs, DeploymentModelPtr and DeploymentModelPtrOutput values. You can construct a concrete instance of `DeploymentModelPtrInput` via:

        DeploymentModelArgs{...}

or:

        nil

func DeploymentModelPtr added in v5.29.0

func DeploymentModelPtr(v *DeploymentModelArgs) DeploymentModelPtrInput

type DeploymentModelPtrOutput added in v5.29.0

type DeploymentModelPtrOutput struct{ *pulumi.OutputState }

func (DeploymentModelPtrOutput) Elem added in v5.29.0

func (DeploymentModelPtrOutput) ElementType added in v5.29.0

func (DeploymentModelPtrOutput) ElementType() reflect.Type

func (DeploymentModelPtrOutput) Format added in v5.29.0

The format of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created. Possible value is `OpenAI`.

func (DeploymentModelPtrOutput) Name added in v5.29.0

The name of the Cognitive Services Account Deployment model. Changing this forces a new resource to be created.

func (DeploymentModelPtrOutput) ToDeploymentModelPtrOutput added in v5.29.0

func (o DeploymentModelPtrOutput) ToDeploymentModelPtrOutput() DeploymentModelPtrOutput

func (DeploymentModelPtrOutput) ToDeploymentModelPtrOutputWithContext added in v5.29.0

func (o DeploymentModelPtrOutput) ToDeploymentModelPtrOutputWithContext(ctx context.Context) DeploymentModelPtrOutput

func (DeploymentModelPtrOutput) Version added in v5.29.0

The version of Cognitive Services Account Deployment model. If `version` is not specified, the default version of the model at the time will be assigned.

type DeploymentOutput added in v5.29.0

type DeploymentOutput struct{ *pulumi.OutputState }

func (DeploymentOutput) CognitiveAccountId added in v5.29.0

func (o DeploymentOutput) CognitiveAccountId() pulumi.StringOutput

The ID of the Cognitive Services Account. Changing this forces a new resource to be created.

func (DeploymentOutput) ElementType added in v5.29.0

func (DeploymentOutput) ElementType() reflect.Type

func (DeploymentOutput) Model added in v5.29.0

A `model` block as defined below. Changing this forces a new resource to be created.

func (DeploymentOutput) Name added in v5.29.0

The name of the Cognitive Services Account Deployment. Changing this forces a new resource to be created.

func (DeploymentOutput) RaiPolicyName added in v5.29.0

func (o DeploymentOutput) RaiPolicyName() pulumi.StringPtrOutput

The name of RAI policy.

func (DeploymentOutput) Scale added in v5.29.0

A `scale` block as defined below.

func (DeploymentOutput) ToDeploymentOutput added in v5.29.0

func (o DeploymentOutput) ToDeploymentOutput() DeploymentOutput

func (DeploymentOutput) ToDeploymentOutputWithContext added in v5.29.0

func (o DeploymentOutput) ToDeploymentOutputWithContext(ctx context.Context) DeploymentOutput

func (DeploymentOutput) VersionUpgradeOption added in v5.56.0

func (o DeploymentOutput) VersionUpgradeOption() pulumi.StringPtrOutput

Deployment model version upgrade option. Possible values are `OnceNewDefaultVersionAvailable`, `OnceCurrentVersionExpired`, and `NoAutoUpgrade`. Defaults to `OnceNewDefaultVersionAvailable`.

type DeploymentScale added in v5.29.0

type DeploymentScale struct {
	// Tokens-per-Minute (TPM). The unit of measure for this field is in the thousands of Tokens-per-Minute. Defaults to `1` which means that the limitation is `1000` tokens per minute. If the resources SKU supports scale in/out then the capacity field should be included in the resources' configuration. If the scale in/out is not supported by the resources SKU then this field can be safely omitted. For more information about TPM please see the [product documentation](https://learn.microsoft.com/azure/ai-services/openai/how-to/quota?tabs=rest).
	Capacity *int `pulumi:"capacity"`
	// If the service has different generations of hardware, for the same SKU, then that can be captured here. Changing this forces a new resource to be created.
	Family *string `pulumi:"family"`
	// The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. Changing this forces a new resource to be created.
	Size *string `pulumi:"size"`
	// Possible values are `Free`, `Basic`, `Standard`, `Premium`, `Enterprise`. Changing this forces a new resource to be created.
	Tier *string `pulumi:"tier"`
	// The name of the SKU. Ex - `Standard` or `P3`. It is typically a letter+number code. Changing this forces a new resource to be created.
	Type string `pulumi:"type"`
}

type DeploymentScaleArgs added in v5.29.0

type DeploymentScaleArgs struct {
	// Tokens-per-Minute (TPM). The unit of measure for this field is in the thousands of Tokens-per-Minute. Defaults to `1` which means that the limitation is `1000` tokens per minute. If the resources SKU supports scale in/out then the capacity field should be included in the resources' configuration. If the scale in/out is not supported by the resources SKU then this field can be safely omitted. For more information about TPM please see the [product documentation](https://learn.microsoft.com/azure/ai-services/openai/how-to/quota?tabs=rest).
	Capacity pulumi.IntPtrInput `pulumi:"capacity"`
	// If the service has different generations of hardware, for the same SKU, then that can be captured here. Changing this forces a new resource to be created.
	Family pulumi.StringPtrInput `pulumi:"family"`
	// The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. Changing this forces a new resource to be created.
	Size pulumi.StringPtrInput `pulumi:"size"`
	// Possible values are `Free`, `Basic`, `Standard`, `Premium`, `Enterprise`. Changing this forces a new resource to be created.
	Tier pulumi.StringPtrInput `pulumi:"tier"`
	// The name of the SKU. Ex - `Standard` or `P3`. It is typically a letter+number code. Changing this forces a new resource to be created.
	Type pulumi.StringInput `pulumi:"type"`
}

func (DeploymentScaleArgs) ElementType added in v5.29.0

func (DeploymentScaleArgs) ElementType() reflect.Type

func (DeploymentScaleArgs) ToDeploymentScaleOutput added in v5.29.0

func (i DeploymentScaleArgs) ToDeploymentScaleOutput() DeploymentScaleOutput

func (DeploymentScaleArgs) ToDeploymentScaleOutputWithContext added in v5.29.0

func (i DeploymentScaleArgs) ToDeploymentScaleOutputWithContext(ctx context.Context) DeploymentScaleOutput

func (DeploymentScaleArgs) ToDeploymentScalePtrOutput added in v5.29.0

func (i DeploymentScaleArgs) ToDeploymentScalePtrOutput() DeploymentScalePtrOutput

func (DeploymentScaleArgs) ToDeploymentScalePtrOutputWithContext added in v5.29.0

func (i DeploymentScaleArgs) ToDeploymentScalePtrOutputWithContext(ctx context.Context) DeploymentScalePtrOutput

type DeploymentScaleInput added in v5.29.0

type DeploymentScaleInput interface {
	pulumi.Input

	ToDeploymentScaleOutput() DeploymentScaleOutput
	ToDeploymentScaleOutputWithContext(context.Context) DeploymentScaleOutput
}

DeploymentScaleInput is an input type that accepts DeploymentScaleArgs and DeploymentScaleOutput values. You can construct a concrete instance of `DeploymentScaleInput` via:

DeploymentScaleArgs{...}

type DeploymentScaleOutput added in v5.29.0

type DeploymentScaleOutput struct{ *pulumi.OutputState }

func (DeploymentScaleOutput) Capacity added in v5.45.0

Tokens-per-Minute (TPM). The unit of measure for this field is in the thousands of Tokens-per-Minute. Defaults to `1` which means that the limitation is `1000` tokens per minute. If the resources SKU supports scale in/out then the capacity field should be included in the resources' configuration. If the scale in/out is not supported by the resources SKU then this field can be safely omitted. For more information about TPM please see the [product documentation](https://learn.microsoft.com/azure/ai-services/openai/how-to/quota?tabs=rest).

func (DeploymentScaleOutput) ElementType added in v5.29.0

func (DeploymentScaleOutput) ElementType() reflect.Type

func (DeploymentScaleOutput) Family added in v5.45.0

If the service has different generations of hardware, for the same SKU, then that can be captured here. Changing this forces a new resource to be created.

func (DeploymentScaleOutput) Size added in v5.45.0

The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. Changing this forces a new resource to be created.

func (DeploymentScaleOutput) Tier added in v5.45.0

Possible values are `Free`, `Basic`, `Standard`, `Premium`, `Enterprise`. Changing this forces a new resource to be created.

func (DeploymentScaleOutput) ToDeploymentScaleOutput added in v5.29.0

func (o DeploymentScaleOutput) ToDeploymentScaleOutput() DeploymentScaleOutput

func (DeploymentScaleOutput) ToDeploymentScaleOutputWithContext added in v5.29.0

func (o DeploymentScaleOutput) ToDeploymentScaleOutputWithContext(ctx context.Context) DeploymentScaleOutput

func (DeploymentScaleOutput) ToDeploymentScalePtrOutput added in v5.29.0

func (o DeploymentScaleOutput) ToDeploymentScalePtrOutput() DeploymentScalePtrOutput

func (DeploymentScaleOutput) ToDeploymentScalePtrOutputWithContext added in v5.29.0

func (o DeploymentScaleOutput) ToDeploymentScalePtrOutputWithContext(ctx context.Context) DeploymentScalePtrOutput

func (DeploymentScaleOutput) Type added in v5.29.0

The name of the SKU. Ex - `Standard` or `P3`. It is typically a letter+number code. Changing this forces a new resource to be created.

type DeploymentScalePtrInput added in v5.29.0

type DeploymentScalePtrInput interface {
	pulumi.Input

	ToDeploymentScalePtrOutput() DeploymentScalePtrOutput
	ToDeploymentScalePtrOutputWithContext(context.Context) DeploymentScalePtrOutput
}

DeploymentScalePtrInput is an input type that accepts DeploymentScaleArgs, DeploymentScalePtr and DeploymentScalePtrOutput values. You can construct a concrete instance of `DeploymentScalePtrInput` via:

        DeploymentScaleArgs{...}

or:

        nil

func DeploymentScalePtr added in v5.29.0

func DeploymentScalePtr(v *DeploymentScaleArgs) DeploymentScalePtrInput

type DeploymentScalePtrOutput added in v5.29.0

type DeploymentScalePtrOutput struct{ *pulumi.OutputState }

func (DeploymentScalePtrOutput) Capacity added in v5.45.0

Tokens-per-Minute (TPM). The unit of measure for this field is in the thousands of Tokens-per-Minute. Defaults to `1` which means that the limitation is `1000` tokens per minute. If the resources SKU supports scale in/out then the capacity field should be included in the resources' configuration. If the scale in/out is not supported by the resources SKU then this field can be safely omitted. For more information about TPM please see the [product documentation](https://learn.microsoft.com/azure/ai-services/openai/how-to/quota?tabs=rest).

func (DeploymentScalePtrOutput) Elem added in v5.29.0

func (DeploymentScalePtrOutput) ElementType added in v5.29.0

func (DeploymentScalePtrOutput) ElementType() reflect.Type

func (DeploymentScalePtrOutput) Family added in v5.45.0

If the service has different generations of hardware, for the same SKU, then that can be captured here. Changing this forces a new resource to be created.

func (DeploymentScalePtrOutput) Size added in v5.45.0

The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. Changing this forces a new resource to be created.

func (DeploymentScalePtrOutput) Tier added in v5.45.0

Possible values are `Free`, `Basic`, `Standard`, `Premium`, `Enterprise`. Changing this forces a new resource to be created.

func (DeploymentScalePtrOutput) ToDeploymentScalePtrOutput added in v5.29.0

func (o DeploymentScalePtrOutput) ToDeploymentScalePtrOutput() DeploymentScalePtrOutput

func (DeploymentScalePtrOutput) ToDeploymentScalePtrOutputWithContext added in v5.29.0

func (o DeploymentScalePtrOutput) ToDeploymentScalePtrOutputWithContext(ctx context.Context) DeploymentScalePtrOutput

func (DeploymentScalePtrOutput) Type added in v5.29.0

The name of the SKU. Ex - `Standard` or `P3`. It is typically a letter+number code. Changing this forces a new resource to be created.

type DeploymentState added in v5.29.0

type DeploymentState struct {
	// The ID of the Cognitive Services Account. Changing this forces a new resource to be created.
	CognitiveAccountId pulumi.StringPtrInput
	// A `model` block as defined below. Changing this forces a new resource to be created.
	Model DeploymentModelPtrInput
	// The name of the Cognitive Services Account Deployment. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of RAI policy.
	RaiPolicyName pulumi.StringPtrInput
	// A `scale` block as defined below.
	Scale DeploymentScalePtrInput
	// Deployment model version upgrade option. Possible values are `OnceNewDefaultVersionAvailable`, `OnceCurrentVersionExpired`, and `NoAutoUpgrade`. Defaults to `OnceNewDefaultVersionAvailable`.
	VersionUpgradeOption pulumi.StringPtrInput
}

func (DeploymentState) ElementType added in v5.29.0

func (DeploymentState) ElementType() reflect.Type

type GetAccountIdentity added in v5.60.0

type GetAccountIdentity struct {
	// The list of User Assigned Managed Identity IDs assigned to this Cognitive Account.
	IdentityIds []string `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.
	PrincipalId string `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.
	TenantId string `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Cognitive Account.
	Type string `pulumi:"type"`
}

type GetAccountIdentityArgs added in v5.60.0

type GetAccountIdentityArgs struct {
	// The list of User Assigned Managed Identity IDs assigned to this Cognitive Account.
	IdentityIds pulumi.StringArrayInput `pulumi:"identityIds"`
	// The Principal ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.
	PrincipalId pulumi.StringInput `pulumi:"principalId"`
	// The Tenant ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.
	TenantId pulumi.StringInput `pulumi:"tenantId"`
	// The type of Managed Service Identity that is configured on this Cognitive Account.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetAccountIdentityArgs) ElementType added in v5.60.0

func (GetAccountIdentityArgs) ElementType() reflect.Type

func (GetAccountIdentityArgs) ToGetAccountIdentityOutput added in v5.60.0

func (i GetAccountIdentityArgs) ToGetAccountIdentityOutput() GetAccountIdentityOutput

func (GetAccountIdentityArgs) ToGetAccountIdentityOutputWithContext added in v5.60.0

func (i GetAccountIdentityArgs) ToGetAccountIdentityOutputWithContext(ctx context.Context) GetAccountIdentityOutput

type GetAccountIdentityArray added in v5.60.0

type GetAccountIdentityArray []GetAccountIdentityInput

func (GetAccountIdentityArray) ElementType added in v5.60.0

func (GetAccountIdentityArray) ElementType() reflect.Type

func (GetAccountIdentityArray) ToGetAccountIdentityArrayOutput added in v5.60.0

func (i GetAccountIdentityArray) ToGetAccountIdentityArrayOutput() GetAccountIdentityArrayOutput

func (GetAccountIdentityArray) ToGetAccountIdentityArrayOutputWithContext added in v5.60.0

func (i GetAccountIdentityArray) ToGetAccountIdentityArrayOutputWithContext(ctx context.Context) GetAccountIdentityArrayOutput

type GetAccountIdentityArrayInput added in v5.60.0

type GetAccountIdentityArrayInput interface {
	pulumi.Input

	ToGetAccountIdentityArrayOutput() GetAccountIdentityArrayOutput
	ToGetAccountIdentityArrayOutputWithContext(context.Context) GetAccountIdentityArrayOutput
}

GetAccountIdentityArrayInput is an input type that accepts GetAccountIdentityArray and GetAccountIdentityArrayOutput values. You can construct a concrete instance of `GetAccountIdentityArrayInput` via:

GetAccountIdentityArray{ GetAccountIdentityArgs{...} }

type GetAccountIdentityArrayOutput added in v5.60.0

type GetAccountIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetAccountIdentityArrayOutput) ElementType added in v5.60.0

func (GetAccountIdentityArrayOutput) Index added in v5.60.0

func (GetAccountIdentityArrayOutput) ToGetAccountIdentityArrayOutput added in v5.60.0

func (o GetAccountIdentityArrayOutput) ToGetAccountIdentityArrayOutput() GetAccountIdentityArrayOutput

func (GetAccountIdentityArrayOutput) ToGetAccountIdentityArrayOutputWithContext added in v5.60.0

func (o GetAccountIdentityArrayOutput) ToGetAccountIdentityArrayOutputWithContext(ctx context.Context) GetAccountIdentityArrayOutput

type GetAccountIdentityInput added in v5.60.0

type GetAccountIdentityInput interface {
	pulumi.Input

	ToGetAccountIdentityOutput() GetAccountIdentityOutput
	ToGetAccountIdentityOutputWithContext(context.Context) GetAccountIdentityOutput
}

GetAccountIdentityInput is an input type that accepts GetAccountIdentityArgs and GetAccountIdentityOutput values. You can construct a concrete instance of `GetAccountIdentityInput` via:

GetAccountIdentityArgs{...}

type GetAccountIdentityOutput added in v5.60.0

type GetAccountIdentityOutput struct{ *pulumi.OutputState }

func (GetAccountIdentityOutput) ElementType added in v5.60.0

func (GetAccountIdentityOutput) ElementType() reflect.Type

func (GetAccountIdentityOutput) IdentityIds added in v5.60.0

The list of User Assigned Managed Identity IDs assigned to this Cognitive Account.

func (GetAccountIdentityOutput) PrincipalId added in v5.60.0

The Principal ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.

func (GetAccountIdentityOutput) TenantId added in v5.60.0

The Tenant ID of the System Assigned Managed Service Identity that is configured on this Cognitive Account.

func (GetAccountIdentityOutput) ToGetAccountIdentityOutput added in v5.60.0

func (o GetAccountIdentityOutput) ToGetAccountIdentityOutput() GetAccountIdentityOutput

func (GetAccountIdentityOutput) ToGetAccountIdentityOutputWithContext added in v5.60.0

func (o GetAccountIdentityOutput) ToGetAccountIdentityOutputWithContext(ctx context.Context) GetAccountIdentityOutput

func (GetAccountIdentityOutput) Type added in v5.60.0

The type of Managed Service Identity that is configured on this Cognitive Account.

type LookupAccountArgs

type LookupAccountArgs struct {
	// Specifies the name of the Cognitive Services Account.
	Name string `pulumi:"name"`
	// Specifies the name of the resource group where the Cognitive Services Account resides.
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// A mapping of tags to assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getAccount.

type LookupAccountOutputArgs

type LookupAccountOutputArgs struct {
	// Specifies the name of the Cognitive Services Account.
	Name pulumi.StringInput `pulumi:"name"`
	// Specifies the name of the resource group where the Cognitive Services Account resides.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
	// A mapping of tags to assigned to the resource.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getAccount.

func (LookupAccountOutputArgs) ElementType

func (LookupAccountOutputArgs) ElementType() reflect.Type

type LookupAccountResult

type LookupAccountResult struct {
	// The endpoint of the Cognitive Services Account
	Endpoint string `pulumi:"endpoint"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A `identity` block as defined below.
	Identities []GetAccountIdentity `pulumi:"identities"`
	// The kind of the Cognitive Services Account
	Kind string `pulumi:"kind"`
	// The Azure location where the Cognitive Services Account exists
	Location string `pulumi:"location"`
	Name     string `pulumi:"name"`
	// The primary access key of the Cognitive Services Account
	PrimaryAccessKey string `pulumi:"primaryAccessKey"`
	// If `kind` is `QnAMaker` the link to the QNA runtime.
	QnaRuntimeEndpoint string `pulumi:"qnaRuntimeEndpoint"`
	ResourceGroupName  string `pulumi:"resourceGroupName"`
	// The secondary access key of the Cognitive Services Account
	SecondaryAccessKey string `pulumi:"secondaryAccessKey"`
	// The SKU name of the Cognitive Services Account
	SkuName string `pulumi:"skuName"`
	// A mapping of tags to assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getAccount.

func LookupAccount

func LookupAccount(ctx *pulumi.Context, args *LookupAccountArgs, opts ...pulumi.InvokeOption) (*LookupAccountResult, error)

Use this data source to access information about an existing Cognitive Services Account.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cognitive"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		test, err := cognitive.LookupAccount(ctx, &cognitive.LookupAccountArgs{
			Name:              "example-account",
			ResourceGroupName: "cognitive_account_rg",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("primaryAccessKey", test.PrimaryAccessKey)
		return nil
	})
}

```

type LookupAccountResultOutput

type LookupAccountResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccount.

func (LookupAccountResultOutput) ElementType

func (LookupAccountResultOutput) ElementType() reflect.Type

func (LookupAccountResultOutput) Endpoint

The endpoint of the Cognitive Services Account

func (LookupAccountResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAccountResultOutput) Identities added in v5.60.0

A `identity` block as defined below.

func (LookupAccountResultOutput) Kind

The kind of the Cognitive Services Account

func (LookupAccountResultOutput) Location

The Azure location where the Cognitive Services Account exists

func (LookupAccountResultOutput) Name

func (LookupAccountResultOutput) PrimaryAccessKey

func (o LookupAccountResultOutput) PrimaryAccessKey() pulumi.StringOutput

The primary access key of the Cognitive Services Account

func (LookupAccountResultOutput) QnaRuntimeEndpoint

func (o LookupAccountResultOutput) QnaRuntimeEndpoint() pulumi.StringOutput

If `kind` is `QnAMaker` the link to the QNA runtime.

func (LookupAccountResultOutput) ResourceGroupName

func (o LookupAccountResultOutput) ResourceGroupName() pulumi.StringOutput

func (LookupAccountResultOutput) SecondaryAccessKey

func (o LookupAccountResultOutput) SecondaryAccessKey() pulumi.StringOutput

The secondary access key of the Cognitive Services Account

func (LookupAccountResultOutput) SkuName

The SKU name of the Cognitive Services Account

func (LookupAccountResultOutput) Tags

A mapping of tags to assigned to the resource.

func (LookupAccountResultOutput) ToLookupAccountResultOutput

func (o LookupAccountResultOutput) ToLookupAccountResultOutput() LookupAccountResultOutput

func (LookupAccountResultOutput) ToLookupAccountResultOutputWithContext

func (o LookupAccountResultOutput) ToLookupAccountResultOutputWithContext(ctx context.Context) LookupAccountResultOutput

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL