Source code for azure.mgmt.eventgrid.models._models_py3

# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


[docs]class AdvancedFilter(Model): """This is the base type that represents an advanced filter. To configure an advanced filter, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class such as BoolEqualsAdvancedFilter, NumberInAdvancedFilter, StringEqualsAdvancedFilter etc. depending on the type of the key based on which you want to filter. You probably want to use the sub-classes and not this class directly. Known sub-classes are: NumberInAdvancedFilter, NumberNotInAdvancedFilter, NumberLessThanAdvancedFilter, NumberGreaterThanAdvancedFilter, NumberLessThanOrEqualsAdvancedFilter, NumberGreaterThanOrEqualsAdvancedFilter, BoolEqualsAdvancedFilter, StringInAdvancedFilter, StringNotInAdvancedFilter, StringBeginsWithAdvancedFilter, StringEndsWithAdvancedFilter, StringContainsAdvancedFilter All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, } _subtype_map = { 'operator_type': {'NumberIn': 'NumberInAdvancedFilter', 'NumberNotIn': 'NumberNotInAdvancedFilter', 'NumberLessThan': 'NumberLessThanAdvancedFilter', 'NumberGreaterThan': 'NumberGreaterThanAdvancedFilter', 'NumberLessThanOrEquals': 'NumberLessThanOrEqualsAdvancedFilter', 'NumberGreaterThanOrEquals': 'NumberGreaterThanOrEqualsAdvancedFilter', 'BoolEquals': 'BoolEqualsAdvancedFilter', 'StringIn': 'StringInAdvancedFilter', 'StringNotIn': 'StringNotInAdvancedFilter', 'StringBeginsWith': 'StringBeginsWithAdvancedFilter', 'StringEndsWith': 'StringEndsWithAdvancedFilter', 'StringContains': 'StringContainsAdvancedFilter'} } def __init__(self, *, key: str=None, **kwargs) -> None: super(AdvancedFilter, self).__init__(**kwargs) self.key = key self.operator_type = None
[docs]class EventSubscriptionDestination(Model): """Information about the destination for an event subscription. You probably want to use the sub-classes and not this class directly. Known sub-classes are: WebHookEventSubscriptionDestination, EventHubEventSubscriptionDestination, StorageQueueEventSubscriptionDestination, HybridConnectionEventSubscriptionDestination, ServiceBusQueueEventSubscriptionDestination, ServiceBusTopicEventSubscriptionDestination, AzureFunctionEventSubscriptionDestination All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, } _subtype_map = { 'endpoint_type': {'WebHook': 'WebHookEventSubscriptionDestination', 'EventHub': 'EventHubEventSubscriptionDestination', 'StorageQueue': 'StorageQueueEventSubscriptionDestination', 'HybridConnection': 'HybridConnectionEventSubscriptionDestination', 'ServiceBusQueue': 'ServiceBusQueueEventSubscriptionDestination', 'ServiceBusTopic': 'ServiceBusTopicEventSubscriptionDestination', 'AzureFunction': 'AzureFunctionEventSubscriptionDestination'} } def __init__(self, **kwargs) -> None: super(EventSubscriptionDestination, self).__init__(**kwargs) self.endpoint_type = None
[docs]class AzureFunctionEventSubscriptionDestination(EventSubscriptionDestination): """Information about the azure function destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription. :type resource_id: str :param max_events_per_batch: Maximum number of events per batch. :type max_events_per_batch: int :param preferred_batch_size_in_kilobytes: Preferred batch size in Kilobytes. :type preferred_batch_size_in_kilobytes: int """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, 'max_events_per_batch': {'key': 'properties.maxEventsPerBatch', 'type': 'int'}, 'preferred_batch_size_in_kilobytes': {'key': 'properties.preferredBatchSizeInKilobytes', 'type': 'int'}, } def __init__(self, *, resource_id: str=None, max_events_per_batch: int=None, preferred_batch_size_in_kilobytes: int=None, **kwargs) -> None: super(AzureFunctionEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.max_events_per_batch = max_events_per_batch self.preferred_batch_size_in_kilobytes = preferred_batch_size_in_kilobytes self.endpoint_type = 'AzureFunction'
[docs]class BoolEqualsAdvancedFilter(AdvancedFilter): """BoolEquals Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param value: The boolean filter value. :type value: bool """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'value': {'key': 'value', 'type': 'bool'}, } def __init__(self, *, key: str=None, value: bool=None, **kwargs) -> None: super(BoolEqualsAdvancedFilter, self).__init__(key=key, **kwargs) self.value = value self.operator_type = 'BoolEquals'
class CloudError(Model): """CloudError. """ _attribute_map = { }
[docs]class ConnectionState(Model): """ConnectionState information. :param status: Status of the connection. Possible values include: 'Pending', 'Approved', 'Rejected', 'Disconnected' :type status: str or ~azure.mgmt.eventgrid.models.PersistedConnectionStatus :param description: Description of the connection state. :type description: str :param actions_required: Actions required (if any). :type actions_required: str """ _attribute_map = { 'status': {'key': 'status', 'type': 'str'}, 'description': {'key': 'description', 'type': 'str'}, 'actions_required': {'key': 'actionsRequired', 'type': 'str'}, } def __init__(self, *, status=None, description: str=None, actions_required: str=None, **kwargs) -> None: super(ConnectionState, self).__init__(**kwargs) self.status = status self.description = description self.actions_required = actions_required
[docs]class DeadLetterDestination(Model): """Information about the dead letter destination for an event subscription. To configure a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class. You probably want to use the sub-classes and not this class directly. Known sub-classes are: StorageBlobDeadLetterDestination All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, } _subtype_map = { 'endpoint_type': {'StorageBlob': 'StorageBlobDeadLetterDestination'} } def __init__(self, **kwargs) -> None: super(DeadLetterDestination, self).__init__(**kwargs) self.endpoint_type = None
[docs]class DeadLetterWithResourceIdentity(Model): """Information about the deadletter destination with resource identity. :param identity: The identity to use when dead-lettering events. :type identity: ~azure.mgmt.eventgrid.models.EventSubscriptionIdentity :param dead_letter_destination: Information about the destination where events have to be delivered for the event subscription. Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering. :type dead_letter_destination: ~azure.mgmt.eventgrid.models.DeadLetterDestination """ _attribute_map = { 'identity': {'key': 'identity', 'type': 'EventSubscriptionIdentity'}, 'dead_letter_destination': {'key': 'deadLetterDestination', 'type': 'DeadLetterDestination'}, } def __init__(self, *, identity=None, dead_letter_destination=None, **kwargs) -> None: super(DeadLetterWithResourceIdentity, self).__init__(**kwargs) self.identity = identity self.dead_letter_destination = dead_letter_destination
[docs]class DeliveryWithResourceIdentity(Model): """Information about the delivery for an event subscription with resource identity. :param identity: The identity to use when delivering events. :type identity: ~azure.mgmt.eventgrid.models.EventSubscriptionIdentity :param destination: Information about the destination where events have to be delivered for the event subscription. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering. :type destination: ~azure.mgmt.eventgrid.models.EventSubscriptionDestination """ _attribute_map = { 'identity': {'key': 'identity', 'type': 'EventSubscriptionIdentity'}, 'destination': {'key': 'destination', 'type': 'EventSubscriptionDestination'}, } def __init__(self, *, identity=None, destination=None, **kwargs) -> None: super(DeliveryWithResourceIdentity, self).__init__(**kwargs) self.identity = identity self.destination = destination
[docs]class Resource(Model): """Definition of a Resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } def __init__(self, **kwargs) -> None: super(Resource, self).__init__(**kwargs) self.id = None self.name = None self.type = None
[docs]class TrackedResource(Resource): """Definition of a Tracked Resource. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, } def __init__(self, *, location: str, tags=None, **kwargs) -> None: super(TrackedResource, self).__init__(**kwargs) self.location = location self.tags = tags
[docs]class Domain(TrackedResource): """EventGrid Domain. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :param private_endpoint_connections: List of private endpoint connections. :type private_endpoint_connections: list[~azure.mgmt.eventgrid.models.PrivateEndpointConnection] :ivar provisioning_state: Provisioning state of the domain. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.DomainProvisioningState :ivar endpoint: Endpoint for the domain. :vartype endpoint: str :param input_schema: This determines the format that Event Grid should expect for incoming events published to the domain. Possible values include: 'EventGridSchema', 'CustomEventSchema', 'CloudEventSchemaV1_0'. Default value: "EventGridSchema" . :type input_schema: str or ~azure.mgmt.eventgrid.models.InputSchema :param input_schema_mapping: Information about the InputSchemaMapping which specified the info about mapping event payload. :type input_schema_mapping: ~azure.mgmt.eventgrid.models.InputSchemaMapping :ivar metric_resource_id: Metric resource id for the domain. :vartype metric_resource_id: str :param public_network_access: This determines if traffic is allowed over public network. By default it is enabled. You can further restrict to specific IPs by configuring <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.DomainProperties.InboundIpRules" />. Possible values include: 'Enabled', 'Disabled' :type public_network_access: str or ~azure.mgmt.eventgrid.models.PublicNetworkAccess :param inbound_ip_rules: This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. :type inbound_ip_rules: list[~azure.mgmt.eventgrid.models.InboundIpRule] :param sku: The Sku pricing tier for the domain. :type sku: ~azure.mgmt.eventgrid.models.ResourceSku :param identity: Identity information for the resource. :type identity: ~azure.mgmt.eventgrid.models.IdentityInfo """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, 'endpoint': {'readonly': True}, 'metric_resource_id': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'private_endpoint_connections': {'key': 'properties.privateEndpointConnections', 'type': '[PrivateEndpointConnection]'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'endpoint': {'key': 'properties.endpoint', 'type': 'str'}, 'input_schema': {'key': 'properties.inputSchema', 'type': 'str'}, 'input_schema_mapping': {'key': 'properties.inputSchemaMapping', 'type': 'InputSchemaMapping'}, 'metric_resource_id': {'key': 'properties.metricResourceId', 'type': 'str'}, 'public_network_access': {'key': 'properties.publicNetworkAccess', 'type': 'str'}, 'inbound_ip_rules': {'key': 'properties.inboundIpRules', 'type': '[InboundIpRule]'}, 'sku': {'key': 'sku', 'type': 'ResourceSku'}, 'identity': {'key': 'identity', 'type': 'IdentityInfo'}, } def __init__(self, *, location: str, tags=None, private_endpoint_connections=None, input_schema="EventGridSchema", input_schema_mapping=None, public_network_access=None, inbound_ip_rules=None, sku=None, identity=None, **kwargs) -> None: super(Domain, self).__init__(location=location, tags=tags, **kwargs) self.private_endpoint_connections = private_endpoint_connections self.provisioning_state = None self.endpoint = None self.input_schema = input_schema self.input_schema_mapping = input_schema_mapping self.metric_resource_id = None self.public_network_access = public_network_access self.inbound_ip_rules = inbound_ip_rules self.sku = sku self.identity = identity
[docs]class DomainRegenerateKeyRequest(Model): """Domain regenerate share access key request. All required parameters must be populated in order to send to Azure. :param key_name: Required. Key name to regenerate key1 or key2. :type key_name: str """ _validation = { 'key_name': {'required': True}, } _attribute_map = { 'key_name': {'key': 'keyName', 'type': 'str'}, } def __init__(self, *, key_name: str, **kwargs) -> None: super(DomainRegenerateKeyRequest, self).__init__(**kwargs) self.key_name = key_name
[docs]class DomainSharedAccessKeys(Model): """Shared access keys of the Domain. :param key1: Shared access key1 for the domain. :type key1: str :param key2: Shared access key2 for the domain. :type key2: str """ _attribute_map = { 'key1': {'key': 'key1', 'type': 'str'}, 'key2': {'key': 'key2', 'type': 'str'}, } def __init__(self, *, key1: str=None, key2: str=None, **kwargs) -> None: super(DomainSharedAccessKeys, self).__init__(**kwargs) self.key1 = key1 self.key2 = key2
[docs]class DomainTopic(Resource): """Domain Topic. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param provisioning_state: Provisioning state of the domain topic. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :type provisioning_state: str or ~azure.mgmt.eventgrid.models.DomainTopicProvisioningState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, } def __init__(self, *, provisioning_state=None, **kwargs) -> None: super(DomainTopic, self).__init__(**kwargs) self.provisioning_state = provisioning_state
[docs]class DomainUpdateParameters(Model): """Properties of the Domain update. :param tags: Tags of the domains resource. :type tags: dict[str, str] :param public_network_access: This determines if traffic is allowed over public network. By default it is enabled. You can further restrict to specific IPs by configuring <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.DomainUpdateParameterProperties.InboundIpRules" />. Possible values include: 'Enabled', 'Disabled' :type public_network_access: str or ~azure.mgmt.eventgrid.models.PublicNetworkAccess :param inbound_ip_rules: This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. :type inbound_ip_rules: list[~azure.mgmt.eventgrid.models.InboundIpRule] :param identity: Identity information for the resource. :type identity: ~azure.mgmt.eventgrid.models.IdentityInfo :param sku: The Sku pricing tier for the domain. :type sku: ~azure.mgmt.eventgrid.models.ResourceSku """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, 'public_network_access': {'key': 'properties.publicNetworkAccess', 'type': 'str'}, 'inbound_ip_rules': {'key': 'properties.inboundIpRules', 'type': '[InboundIpRule]'}, 'identity': {'key': 'identity', 'type': 'IdentityInfo'}, 'sku': {'key': 'sku', 'type': 'ResourceSku'}, } def __init__(self, *, tags=None, public_network_access=None, inbound_ip_rules=None, identity=None, sku=None, **kwargs) -> None: super(DomainUpdateParameters, self).__init__(**kwargs) self.tags = tags self.public_network_access = public_network_access self.inbound_ip_rules = inbound_ip_rules self.identity = identity self.sku = sku
[docs]class EventChannel(Resource): """Event Channel. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param source: Source of the event channel. This represents a unique resource in the partner's resource model. :type source: ~azure.mgmt.eventgrid.models.EventChannelSource :param destination: Represents the destination of an event channel. :type destination: ~azure.mgmt.eventgrid.models.EventChannelDestination :ivar provisioning_state: Provisioning state of the event channel. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.EventChannelProvisioningState :param filter: Information about the filter for the event channel. :type filter: ~azure.mgmt.eventgrid.models.EventChannelFilter """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'source': {'key': 'properties.source', 'type': 'EventChannelSource'}, 'destination': {'key': 'properties.destination', 'type': 'EventChannelDestination'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'filter': {'key': 'properties.filter', 'type': 'EventChannelFilter'}, } def __init__(self, *, source=None, destination=None, filter=None, **kwargs) -> None: super(EventChannel, self).__init__(**kwargs) self.source = source self.destination = destination self.provisioning_state = None self.filter = filter
[docs]class EventChannelDestination(Model): """Properties of the destination of an event channel. :param azure_subscription_id: Azure subscription ID of the customer creating the event channel. The partner topic associated with the event channel will be created under this Azure subscription. :type azure_subscription_id: str :param resource_group: Azure Resource Group of the customer creating the event channel. The partner topic associated with the event channel will be created under this resource group. :type resource_group: str :param partner_topic_name: Name of the partner topic associated with the event channel. :type partner_topic_name: str """ _attribute_map = { 'azure_subscription_id': {'key': 'azureSubscriptionId', 'type': 'str'}, 'resource_group': {'key': 'resourceGroup', 'type': 'str'}, 'partner_topic_name': {'key': 'partnerTopicName', 'type': 'str'}, } def __init__(self, *, azure_subscription_id: str=None, resource_group: str=None, partner_topic_name: str=None, **kwargs) -> None: super(EventChannelDestination, self).__init__(**kwargs) self.azure_subscription_id = azure_subscription_id self.resource_group = resource_group self.partner_topic_name = partner_topic_name
[docs]class EventChannelFilter(Model): """Filter for the Event Channel. :param subject_begins_with: An optional string to filter events for an event channel based on a resource path prefix. The format of this depends on the publisher of the events. Wildcard characters are not supported in this path. :type subject_begins_with: str :param subject_ends_with: An optional string to filter events for an event channel based on a resource path suffix. Wildcard characters are not supported in this path. :type subject_ends_with: str :param included_event_types: A list of applicable event types that need to be part of the event channel. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null. :type included_event_types: list[str] :param is_subject_case_sensitive: Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter should be compared in a case sensitive manner. :type is_subject_case_sensitive: bool :param advanced_filters: An array of advanced filters that are used for filtering event channels. :type advanced_filters: list[~azure.mgmt.eventgrid.models.AdvancedFilter] """ _attribute_map = { 'subject_begins_with': {'key': 'subjectBeginsWith', 'type': 'str'}, 'subject_ends_with': {'key': 'subjectEndsWith', 'type': 'str'}, 'included_event_types': {'key': 'includedEventTypes', 'type': '[str]'}, 'is_subject_case_sensitive': {'key': 'isSubjectCaseSensitive', 'type': 'bool'}, 'advanced_filters': {'key': 'advancedFilters', 'type': '[AdvancedFilter]'}, } def __init__(self, *, subject_begins_with: str=None, subject_ends_with: str=None, included_event_types=None, is_subject_case_sensitive: bool=None, advanced_filters=None, **kwargs) -> None: super(EventChannelFilter, self).__init__(**kwargs) self.subject_begins_with = subject_begins_with self.subject_ends_with = subject_ends_with self.included_event_types = included_event_types self.is_subject_case_sensitive = is_subject_case_sensitive self.advanced_filters = advanced_filters
[docs]class EventChannelSource(Model): """Properties of the source of an event channel. :param source: The identifier of the resource that's the source of the events. This represents a unique resource in the partner's resource model. :type source: str """ _attribute_map = { 'source': {'key': 'source', 'type': 'str'}, } def __init__(self, *, source: str=None, **kwargs) -> None: super(EventChannelSource, self).__init__(**kwargs) self.source = source
[docs]class EventHubEventSubscriptionDestination(EventSubscriptionDestination): """Information about the event hub destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription. :type resource_id: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, **kwargs) -> None: super(EventHubEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.endpoint_type = 'EventHub'
[docs]class EventSubscription(Resource): """Event Subscription. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :ivar topic: Name of the topic of the event subscription. :vartype topic: str :ivar provisioning_state: Provisioning state of the event subscription. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed', 'AwaitingManualAction' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.EventSubscriptionProvisioningState :param destination: Information about the destination where events have to be delivered for the event subscription. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering. :type destination: ~azure.mgmt.eventgrid.models.EventSubscriptionDestination :param delivery_with_resource_identity: Information about the destination where events have to be delivered for the event subscription. Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering. :type delivery_with_resource_identity: ~azure.mgmt.eventgrid.models.DeliveryWithResourceIdentity :param filter: Information about the filter for the event subscription. :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] :param expiration_time_utc: Expiration time of the event subscription. :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CustomInputSchema', 'CloudEventSchemaV1_0' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events. :type retry_policy: ~azure.mgmt.eventgrid.models.RetryPolicy :param dead_letter_destination: The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering. :type dead_letter_destination: ~azure.mgmt.eventgrid.models.DeadLetterDestination :param dead_letter_with_resource_identity: The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination. Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering. :type dead_letter_with_resource_identity: ~azure.mgmt.eventgrid.models.DeadLetterWithResourceIdentity """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'topic': {'readonly': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'topic': {'key': 'properties.topic', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'destination': {'key': 'properties.destination', 'type': 'EventSubscriptionDestination'}, 'delivery_with_resource_identity': {'key': 'properties.deliveryWithResourceIdentity', 'type': 'DeliveryWithResourceIdentity'}, 'filter': {'key': 'properties.filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'properties.labels', 'type': '[str]'}, 'expiration_time_utc': {'key': 'properties.expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'properties.eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'properties.retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'properties.deadLetterDestination', 'type': 'DeadLetterDestination'}, 'dead_letter_with_resource_identity': {'key': 'properties.deadLetterWithResourceIdentity', 'type': 'DeadLetterWithResourceIdentity'}, } def __init__(self, *, destination=None, delivery_with_resource_identity=None, filter=None, labels=None, expiration_time_utc=None, event_delivery_schema=None, retry_policy=None, dead_letter_destination=None, dead_letter_with_resource_identity=None, **kwargs) -> None: super(EventSubscription, self).__init__(**kwargs) self.topic = None self.provisioning_state = None self.destination = destination self.delivery_with_resource_identity = delivery_with_resource_identity self.filter = filter self.labels = labels self.expiration_time_utc = expiration_time_utc self.event_delivery_schema = event_delivery_schema self.retry_policy = retry_policy self.dead_letter_destination = dead_letter_destination self.dead_letter_with_resource_identity = dead_letter_with_resource_identity
[docs]class EventSubscriptionFilter(Model): """Filter for the Event Subscription. :param subject_begins_with: An optional string to filter events for an event subscription based on a resource path prefix. The format of this depends on the publisher of the events. Wildcard characters are not supported in this path. :type subject_begins_with: str :param subject_ends_with: An optional string to filter events for an event subscription based on a resource path suffix. Wildcard characters are not supported in this path. :type subject_ends_with: str :param included_event_types: A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null. :type included_event_types: list[str] :param is_subject_case_sensitive: Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter should be compared in a case sensitive manner. Default value: False . :type is_subject_case_sensitive: bool :param advanced_filters: An array of advanced filters that are used for filtering event subscriptions. :type advanced_filters: list[~azure.mgmt.eventgrid.models.AdvancedFilter] """ _attribute_map = { 'subject_begins_with': {'key': 'subjectBeginsWith', 'type': 'str'}, 'subject_ends_with': {'key': 'subjectEndsWith', 'type': 'str'}, 'included_event_types': {'key': 'includedEventTypes', 'type': '[str]'}, 'is_subject_case_sensitive': {'key': 'isSubjectCaseSensitive', 'type': 'bool'}, 'advanced_filters': {'key': 'advancedFilters', 'type': '[AdvancedFilter]'}, } def __init__(self, *, subject_begins_with: str=None, subject_ends_with: str=None, included_event_types=None, is_subject_case_sensitive: bool=False, advanced_filters=None, **kwargs) -> None: super(EventSubscriptionFilter, self).__init__(**kwargs) self.subject_begins_with = subject_begins_with self.subject_ends_with = subject_ends_with self.included_event_types = included_event_types self.is_subject_case_sensitive = is_subject_case_sensitive self.advanced_filters = advanced_filters
[docs]class EventSubscriptionFullUrl(Model): """Full endpoint url of an event subscription. :param endpoint_url: The URL that represents the endpoint of the destination of an event subscription. :type endpoint_url: str """ _attribute_map = { 'endpoint_url': {'key': 'endpointUrl', 'type': 'str'}, } def __init__(self, *, endpoint_url: str=None, **kwargs) -> None: super(EventSubscriptionFullUrl, self).__init__(**kwargs) self.endpoint_url = endpoint_url
[docs]class EventSubscriptionIdentity(Model): """The identity information with the event subscription. :param type: The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. Possible values include: 'SystemAssigned', 'UserAssigned' :type type: str or ~azure.mgmt.eventgrid.models.EventSubscriptionIdentityType :param user_assigned_identity: The user identity associated with the resource. :type user_assigned_identity: str """ _attribute_map = { 'type': {'key': 'type', 'type': 'str'}, 'user_assigned_identity': {'key': 'userAssignedIdentity', 'type': 'str'}, } def __init__(self, *, type=None, user_assigned_identity: str=None, **kwargs) -> None: super(EventSubscriptionIdentity, self).__init__(**kwargs) self.type = type self.user_assigned_identity = user_assigned_identity
[docs]class EventSubscriptionUpdateParameters(Model): """Properties of the Event Subscription update. :param destination: Information about the destination where events have to be delivered for the event subscription. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering. :type destination: ~azure.mgmt.eventgrid.models.EventSubscriptionDestination :param delivery_with_resource_identity: Information about the destination where events have to be delivered for the event subscription. Uses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering. :type delivery_with_resource_identity: ~azure.mgmt.eventgrid.models.DeliveryWithResourceIdentity :param filter: Information about the filter for the event subscription. :type filter: ~azure.mgmt.eventgrid.models.EventSubscriptionFilter :param labels: List of user defined labels. :type labels: list[str] :param expiration_time_utc: Information about the expiration time for the event subscription. :type expiration_time_utc: datetime :param event_delivery_schema: The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CustomInputSchema', 'CloudEventSchemaV1_0' :type event_delivery_schema: str or ~azure.mgmt.eventgrid.models.EventDeliverySchema :param retry_policy: The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events. :type retry_policy: ~azure.mgmt.eventgrid.models.RetryPolicy :param dead_letter_destination: The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination. Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering. :type dead_letter_destination: ~azure.mgmt.eventgrid.models.DeadLetterDestination :param dead_letter_with_resource_identity: The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination. Uses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering. :type dead_letter_with_resource_identity: ~azure.mgmt.eventgrid.models.DeadLetterWithResourceIdentity """ _attribute_map = { 'destination': {'key': 'destination', 'type': 'EventSubscriptionDestination'}, 'delivery_with_resource_identity': {'key': 'deliveryWithResourceIdentity', 'type': 'DeliveryWithResourceIdentity'}, 'filter': {'key': 'filter', 'type': 'EventSubscriptionFilter'}, 'labels': {'key': 'labels', 'type': '[str]'}, 'expiration_time_utc': {'key': 'expirationTimeUtc', 'type': 'iso-8601'}, 'event_delivery_schema': {'key': 'eventDeliverySchema', 'type': 'str'}, 'retry_policy': {'key': 'retryPolicy', 'type': 'RetryPolicy'}, 'dead_letter_destination': {'key': 'deadLetterDestination', 'type': 'DeadLetterDestination'}, 'dead_letter_with_resource_identity': {'key': 'deadLetterWithResourceIdentity', 'type': 'DeadLetterWithResourceIdentity'}, } def __init__(self, *, destination=None, delivery_with_resource_identity=None, filter=None, labels=None, expiration_time_utc=None, event_delivery_schema=None, retry_policy=None, dead_letter_destination=None, dead_letter_with_resource_identity=None, **kwargs) -> None: super(EventSubscriptionUpdateParameters, self).__init__(**kwargs) self.destination = destination self.delivery_with_resource_identity = delivery_with_resource_identity self.filter = filter self.labels = labels self.expiration_time_utc = expiration_time_utc self.event_delivery_schema = event_delivery_schema self.retry_policy = retry_policy self.dead_letter_destination = dead_letter_destination self.dead_letter_with_resource_identity = dead_letter_with_resource_identity
[docs]class EventType(Resource): """Event Type for a subject under a topic. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param display_name: Display name of the event type. :type display_name: str :param description: Description of the event type. :type description: str :param schema_url: Url of the schema for this event type. :type schema_url: str :param is_in_default_set: IsInDefaultSet flag of the event type. :type is_in_default_set: bool """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'schema_url': {'key': 'properties.schemaUrl', 'type': 'str'}, 'is_in_default_set': {'key': 'properties.isInDefaultSet', 'type': 'bool'}, } def __init__(self, *, display_name: str=None, description: str=None, schema_url: str=None, is_in_default_set: bool=None, **kwargs) -> None: super(EventType, self).__init__(**kwargs) self.display_name = display_name self.description = description self.schema_url = schema_url self.is_in_default_set = is_in_default_set
[docs]class ExtensionTopic(Resource): """Event grid Extension Topic. This is used for getting Event Grid related metrics for Azure resources. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param description: Description of the extension topic. :type description: str :param system_topic: System topic resource id which is mapped to the source. :type system_topic: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'system_topic': {'key': 'properties.systemTopic', 'type': 'str'}, } def __init__(self, *, description: str=None, system_topic: str=None, **kwargs) -> None: super(ExtensionTopic, self).__init__(**kwargs) self.description = description self.system_topic = system_topic
[docs]class HybridConnectionEventSubscriptionDestination(EventSubscriptionDestination): """Information about the HybridConnection destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource ID of an hybrid connection that is the destination of an event subscription. :type resource_id: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, **kwargs) -> None: super(HybridConnectionEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.endpoint_type = 'HybridConnection'
[docs]class IdentityInfo(Model): """The identity information for the resource. :param type: The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. Possible values include: 'None', 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned' :type type: str or ~azure.mgmt.eventgrid.models.IdentityType :param principal_id: The principal ID of resource identity. :type principal_id: str :param tenant_id: The tenant ID of resource. :type tenant_id: str :param user_assigned_identities: The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. This property is currently not used and reserved for future usage. :type user_assigned_identities: dict[str, ~azure.mgmt.eventgrid.models.UserIdentityProperties] """ _attribute_map = { 'type': {'key': 'type', 'type': 'str'}, 'principal_id': {'key': 'principalId', 'type': 'str'}, 'tenant_id': {'key': 'tenantId', 'type': 'str'}, 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{UserIdentityProperties}'}, } def __init__(self, *, type=None, principal_id: str=None, tenant_id: str=None, user_assigned_identities=None, **kwargs) -> None: super(IdentityInfo, self).__init__(**kwargs) self.type = type self.principal_id = principal_id self.tenant_id = tenant_id self.user_assigned_identities = user_assigned_identities
[docs]class InboundIpRule(Model): """InboundIpRule. :param ip_mask: IP Address in CIDR notation e.g., 10.0.0.0/8. :type ip_mask: str :param action: Action to perform based on the match or no match of the IpMask. Possible values include: 'Allow' :type action: str or ~azure.mgmt.eventgrid.models.IpActionType """ _attribute_map = { 'ip_mask': {'key': 'ipMask', 'type': 'str'}, 'action': {'key': 'action', 'type': 'str'}, } def __init__(self, *, ip_mask: str=None, action=None, **kwargs) -> None: super(InboundIpRule, self).__init__(**kwargs) self.ip_mask = ip_mask self.action = action
[docs]class InputSchemaMapping(Model): """By default, Event Grid expects events to be in the Event Grid event schema. Specifying an input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only supported type of InputSchemaMapping is 'JsonInputSchemaMapping'. You probably want to use the sub-classes and not this class directly. Known sub-classes are: JsonInputSchemaMapping All required parameters must be populated in order to send to Azure. :param input_schema_mapping_type: Required. Constant filled by server. :type input_schema_mapping_type: str """ _validation = { 'input_schema_mapping_type': {'required': True}, } _attribute_map = { 'input_schema_mapping_type': {'key': 'inputSchemaMappingType', 'type': 'str'}, } _subtype_map = { 'input_schema_mapping_type': {'Json': 'JsonInputSchemaMapping'} } def __init__(self, **kwargs) -> None: super(InputSchemaMapping, self).__init__(**kwargs) self.input_schema_mapping_type = None
[docs]class JsonField(Model): """This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema. :param source_field: Name of a field in the input event schema that's to be used as the source of a mapping. :type source_field: str """ _attribute_map = { 'source_field': {'key': 'sourceField', 'type': 'str'}, } def __init__(self, *, source_field: str=None, **kwargs) -> None: super(JsonField, self).__init__(**kwargs) self.source_field = source_field
[docs]class JsonFieldWithDefault(Model): """This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'subject', 'eventtype' and 'dataversion' properties. This represents a field in the input event schema along with a default value to be used, and at least one of these two properties should be provided. :param source_field: Name of a field in the input event schema that's to be used as the source of a mapping. :type source_field: str :param default_value: The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload. :type default_value: str """ _attribute_map = { 'source_field': {'key': 'sourceField', 'type': 'str'}, 'default_value': {'key': 'defaultValue', 'type': 'str'}, } def __init__(self, *, source_field: str=None, default_value: str=None, **kwargs) -> None: super(JsonFieldWithDefault, self).__init__(**kwargs) self.source_field = source_field self.default_value = default_value
[docs]class JsonInputSchemaMapping(InputSchemaMapping): """This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema. All required parameters must be populated in order to send to Azure. :param input_schema_mapping_type: Required. Constant filled by server. :type input_schema_mapping_type: str :param id: The mapping information for the Id property of the Event Grid Event. :type id: ~azure.mgmt.eventgrid.models.JsonField :param topic: The mapping information for the Topic property of the Event Grid Event. :type topic: ~azure.mgmt.eventgrid.models.JsonField :param event_time: The mapping information for the EventTime property of the Event Grid Event. :type event_time: ~azure.mgmt.eventgrid.models.JsonField :param event_type: The mapping information for the EventType property of the Event Grid Event. :type event_type: ~azure.mgmt.eventgrid.models.JsonFieldWithDefault :param subject: The mapping information for the Subject property of the Event Grid Event. :type subject: ~azure.mgmt.eventgrid.models.JsonFieldWithDefault :param data_version: The mapping information for the DataVersion property of the Event Grid Event. :type data_version: ~azure.mgmt.eventgrid.models.JsonFieldWithDefault """ _validation = { 'input_schema_mapping_type': {'required': True}, } _attribute_map = { 'input_schema_mapping_type': {'key': 'inputSchemaMappingType', 'type': 'str'}, 'id': {'key': 'properties.id', 'type': 'JsonField'}, 'topic': {'key': 'properties.topic', 'type': 'JsonField'}, 'event_time': {'key': 'properties.eventTime', 'type': 'JsonField'}, 'event_type': {'key': 'properties.eventType', 'type': 'JsonFieldWithDefault'}, 'subject': {'key': 'properties.subject', 'type': 'JsonFieldWithDefault'}, 'data_version': {'key': 'properties.dataVersion', 'type': 'JsonFieldWithDefault'}, } def __init__(self, *, id=None, topic=None, event_time=None, event_type=None, subject=None, data_version=None, **kwargs) -> None: super(JsonInputSchemaMapping, self).__init__(**kwargs) self.id = id self.topic = topic self.event_time = event_time self.event_type = event_type self.subject = subject self.data_version = data_version self.input_schema_mapping_type = 'Json'
[docs]class NumberGreaterThanAdvancedFilter(AdvancedFilter): """NumberGreaterThan Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param value: The filter value. :type value: float """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'value': {'key': 'value', 'type': 'float'}, } def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: super(NumberGreaterThanAdvancedFilter, self).__init__(key=key, **kwargs) self.value = value self.operator_type = 'NumberGreaterThan'
[docs]class NumberGreaterThanOrEqualsAdvancedFilter(AdvancedFilter): """NumberGreaterThanOrEquals Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param value: The filter value. :type value: float """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'value': {'key': 'value', 'type': 'float'}, } def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: super(NumberGreaterThanOrEqualsAdvancedFilter, self).__init__(key=key, **kwargs) self.value = value self.operator_type = 'NumberGreaterThanOrEquals'
[docs]class NumberInAdvancedFilter(AdvancedFilter): """NumberIn Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[float] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[float]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(NumberInAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'NumberIn'
[docs]class NumberLessThanAdvancedFilter(AdvancedFilter): """NumberLessThan Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param value: The filter value. :type value: float """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'value': {'key': 'value', 'type': 'float'}, } def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: super(NumberLessThanAdvancedFilter, self).__init__(key=key, **kwargs) self.value = value self.operator_type = 'NumberLessThan'
[docs]class NumberLessThanOrEqualsAdvancedFilter(AdvancedFilter): """NumberLessThanOrEquals Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param value: The filter value. :type value: float """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'value': {'key': 'value', 'type': 'float'}, } def __init__(self, *, key: str=None, value: float=None, **kwargs) -> None: super(NumberLessThanOrEqualsAdvancedFilter, self).__init__(key=key, **kwargs) self.value = value self.operator_type = 'NumberLessThanOrEquals'
[docs]class NumberNotInAdvancedFilter(AdvancedFilter): """NumberNotIn Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[float] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[float]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(NumberNotInAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'NumberNotIn'
[docs]class Operation(Model): """Represents an operation returned by the GetOperations request. :param name: Name of the operation :type name: str :param display: Display name of the operation :type display: ~azure.mgmt.eventgrid.models.OperationInfo :param origin: Origin of the operation :type origin: str :param properties: Properties of the operation :type properties: object """ _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'display': {'key': 'display', 'type': 'OperationInfo'}, 'origin': {'key': 'origin', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'object'}, } def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None: super(Operation, self).__init__(**kwargs) self.name = name self.display = display self.origin = origin self.properties = properties
[docs]class OperationInfo(Model): """Information about an operation. :param provider: Name of the provider :type provider: str :param resource: Name of the resource type :type resource: str :param operation: Name of the operation :type operation: str :param description: Description of the operation :type description: str """ _attribute_map = { 'provider': {'key': 'provider', 'type': 'str'}, 'resource': {'key': 'resource', 'type': 'str'}, 'operation': {'key': 'operation', 'type': 'str'}, 'description': {'key': 'description', 'type': 'str'}, } def __init__(self, *, provider: str=None, resource: str=None, operation: str=None, description: str=None, **kwargs) -> None: super(OperationInfo, self).__init__(**kwargs) self.provider = provider self.resource = resource self.operation = operation self.description = description
[docs]class PartnerNamespace(TrackedResource): """EventGrid Partner Namespace. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :ivar provisioning_state: Provisioning state of the partner namespace. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.PartnerNamespaceProvisioningState :param partner_registration_fully_qualified_id: The fully qualified ARM Id of the partner registration that should be associated with this partner namespace. This takes the following format: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}. :type partner_registration_fully_qualified_id: str :ivar endpoint: Endpoint for the partner namespace. :vartype endpoint: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, 'endpoint': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'partner_registration_fully_qualified_id': {'key': 'properties.partnerRegistrationFullyQualifiedId', 'type': 'str'}, 'endpoint': {'key': 'properties.endpoint', 'type': 'str'}, } def __init__(self, *, location: str, tags=None, partner_registration_fully_qualified_id: str=None, **kwargs) -> None: super(PartnerNamespace, self).__init__(location=location, tags=tags, **kwargs) self.provisioning_state = None self.partner_registration_fully_qualified_id = partner_registration_fully_qualified_id self.endpoint = None
[docs]class PartnerNamespaceRegenerateKeyRequest(Model): """PartnerNamespace regenerate shared access key request. All required parameters must be populated in order to send to Azure. :param key_name: Required. Key name to regenerate (key1 or key2). :type key_name: str """ _validation = { 'key_name': {'required': True}, } _attribute_map = { 'key_name': {'key': 'keyName', 'type': 'str'}, } def __init__(self, *, key_name: str, **kwargs) -> None: super(PartnerNamespaceRegenerateKeyRequest, self).__init__(**kwargs) self.key_name = key_name
[docs]class PartnerNamespaceSharedAccessKeys(Model): """Shared access keys of the partner namespace. :param key1: Shared access key1 for the partner namespace. :type key1: str :param key2: Shared access key2 for the partner namespace. :type key2: str """ _attribute_map = { 'key1': {'key': 'key1', 'type': 'str'}, 'key2': {'key': 'key2', 'type': 'str'}, } def __init__(self, *, key1: str=None, key2: str=None, **kwargs) -> None: super(PartnerNamespaceSharedAccessKeys, self).__init__(**kwargs) self.key1 = key1 self.key2 = key2
[docs]class PartnerNamespaceUpdateParameters(Model): """Properties of the PartnerNamespace update. :param tags: Tags of the partner namespace. :type tags: dict[str, str] """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, } def __init__(self, *, tags=None, **kwargs) -> None: super(PartnerNamespaceUpdateParameters, self).__init__(**kwargs) self.tags = tags
[docs]class PartnerRegistration(TrackedResource): """Information about a partner registration. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :ivar provisioning_state: Provisioning state of the partner registration. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.PartnerRegistrationProvisioningState :param partner_name: Official name of the partner name. For example: "Contoso". :type partner_name: str :param partner_resource_type_name: Name of the partner resource type. :type partner_resource_type_name: str :param partner_resource_type_display_name: Display name of the partner resource type. :type partner_resource_type_display_name: str :param partner_resource_type_description: Description of the partner resource type. :type partner_resource_type_description: str :param setup_uri: URI of the partner website that can be used by Azure customers to setup Event Grid integration on an event source. :type setup_uri: str :param logo_uri: URI of the logo. :type logo_uri: str :param visibility_state: Visibility state of the partner registration. Possible values include: 'Hidden', 'PublicPreview', 'GenerallyAvailable' :type visibility_state: str or ~azure.mgmt.eventgrid.models.PartnerRegistrationVisibilityState :param authorized_azure_subscription_ids: List of Azure subscription Ids that are authorized to create a partner namespace associated with this partner registration. This is an optional property. Creating partner namespaces is always permitted under the same Azure subscription as the one used for creating the partner registration. :type authorized_azure_subscription_ids: list[str] """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'partner_name': {'key': 'properties.partnerName', 'type': 'str'}, 'partner_resource_type_name': {'key': 'properties.partnerResourceTypeName', 'type': 'str'}, 'partner_resource_type_display_name': {'key': 'properties.partnerResourceTypeDisplayName', 'type': 'str'}, 'partner_resource_type_description': {'key': 'properties.partnerResourceTypeDescription', 'type': 'str'}, 'setup_uri': {'key': 'properties.setupUri', 'type': 'str'}, 'logo_uri': {'key': 'properties.logoUri', 'type': 'str'}, 'visibility_state': {'key': 'properties.visibilityState', 'type': 'str'}, 'authorized_azure_subscription_ids': {'key': 'properties.authorizedAzureSubscriptionIds', 'type': '[str]'}, } def __init__(self, *, location: str, tags=None, partner_name: str=None, partner_resource_type_name: str=None, partner_resource_type_display_name: str=None, partner_resource_type_description: str=None, setup_uri: str=None, logo_uri: str=None, visibility_state=None, authorized_azure_subscription_ids=None, **kwargs) -> None: super(PartnerRegistration, self).__init__(location=location, tags=tags, **kwargs) self.provisioning_state = None self.partner_name = partner_name self.partner_resource_type_name = partner_resource_type_name self.partner_resource_type_display_name = partner_resource_type_display_name self.partner_resource_type_description = partner_resource_type_description self.setup_uri = setup_uri self.logo_uri = logo_uri self.visibility_state = visibility_state self.authorized_azure_subscription_ids = authorized_azure_subscription_ids
[docs]class PartnerRegistrationEventTypesListResult(Model): """Result of the List Partner Registration Event Types operation. :param value: A collection of partner registration event types. :type value: list[~azure.mgmt.eventgrid.models.EventType] :param next_link: A link for the next page of partner registration event types. :type next_link: str """ _attribute_map = { 'value': {'key': 'value', 'type': '[EventType]'}, 'next_link': {'key': 'nextLink', 'type': 'str'}, } def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: super(PartnerRegistrationEventTypesListResult, self).__init__(**kwargs) self.value = value self.next_link = next_link
[docs]class PartnerRegistrationUpdateParameters(Model): """Properties of the Partner Registration update. :param tags: Tags of the partner registration resource. :type tags: dict[str, str] :param partner_topic_type_name: Name of the partner topic type. :type partner_topic_type_name: str :param partner_topic_type_display_name: Display name of the partner topic type. :type partner_topic_type_display_name: str :param partner_topic_type_description: Description of the partner topic type. :type partner_topic_type_description: str :param setup_uri: URI of the partner website that can be used by Azure customers to setup Event Grid integration on an event source. :type setup_uri: str :param logo_uri: URI of the partner logo. :type logo_uri: str :param authorized_azure_subscription_ids: List of IDs of Azure AD applications that are authorized to create a partner namespace associated with this partner registration. This is an optional property. Creating partner namespaces is always permitted under the same Azure subscription as the one used for creating the partner registration. :type authorized_azure_subscription_ids: list[str] """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, 'partner_topic_type_name': {'key': 'partnerTopicTypeName', 'type': 'str'}, 'partner_topic_type_display_name': {'key': 'partnerTopicTypeDisplayName', 'type': 'str'}, 'partner_topic_type_description': {'key': 'partnerTopicTypeDescription', 'type': 'str'}, 'setup_uri': {'key': 'setupUri', 'type': 'str'}, 'logo_uri': {'key': 'logoUri', 'type': 'str'}, 'authorized_azure_subscription_ids': {'key': 'authorizedAzureSubscriptionIds', 'type': '[str]'}, } def __init__(self, *, tags=None, partner_topic_type_name: str=None, partner_topic_type_display_name: str=None, partner_topic_type_description: str=None, setup_uri: str=None, logo_uri: str=None, authorized_azure_subscription_ids=None, **kwargs) -> None: super(PartnerRegistrationUpdateParameters, self).__init__(**kwargs) self.tags = tags self.partner_topic_type_name = partner_topic_type_name self.partner_topic_type_display_name = partner_topic_type_display_name self.partner_topic_type_description = partner_topic_type_description self.setup_uri = setup_uri self.logo_uri = logo_uri self.authorized_azure_subscription_ids = authorized_azure_subscription_ids
[docs]class PartnerTopic(TrackedResource): """EventGrid Partner Topic. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :param source: Source associated with this partner topic. This represents a unique partner resource. :type source: str :ivar provisioning_state: Provisioning state of the partner topic. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.PartnerTopicProvisioningState :param activation_state: Activation state of the partner topic. Possible values include: 'NeverActivated', 'Activated', 'Deactivated' :type activation_state: str or ~azure.mgmt.eventgrid.models.PartnerTopicActivationState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'source': {'key': 'properties.source', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'activation_state': {'key': 'properties.activationState', 'type': 'str'}, } def __init__(self, *, location: str, tags=None, source: str=None, activation_state=None, **kwargs) -> None: super(PartnerTopic, self).__init__(location=location, tags=tags, **kwargs) self.source = source self.provisioning_state = None self.activation_state = activation_state
[docs]class PartnerTopicType(Resource): """Properties of a partner topic type. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param partner_name: Official name of the partner. :type partner_name: str :param topic_type_name: Name of the partner topic type. This name should be unique among all partner topic types names. :type topic_type_name: str :param display_name: Display Name for the partner topic type. :type display_name: str :param description: Description of the partner topic type. :type description: str :param setup_uri: URI of the partner website that can be used by Azure customers to setup Event Grid integration on an event source. :type setup_uri: str :param authorization_state: Status of whether the customer has authorized a partner to create partner topics in the customer's subscription. Possible values include: 'NotApplicable', 'NotAuthorized', 'Authorized' :type authorization_state: str or ~azure.mgmt.eventgrid.models.PartnerTopicTypeAuthorizationState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'partner_name': {'key': 'properties.partnerName', 'type': 'str'}, 'topic_type_name': {'key': 'properties.topicTypeName', 'type': 'str'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'setup_uri': {'key': 'properties.setupUri', 'type': 'str'}, 'authorization_state': {'key': 'properties.authorizationState', 'type': 'str'}, } def __init__(self, *, partner_name: str=None, topic_type_name: str=None, display_name: str=None, description: str=None, setup_uri: str=None, authorization_state=None, **kwargs) -> None: super(PartnerTopicType, self).__init__(**kwargs) self.partner_name = partner_name self.topic_type_name = topic_type_name self.display_name = display_name self.description = description self.setup_uri = setup_uri self.authorization_state = authorization_state
[docs]class PartnerTopicTypesListResult(Model): """Result of the List Partner Topic Types operation. :param value: A collection of partner topic types. :type value: list[~azure.mgmt.eventgrid.models.PartnerTopicType] """ _attribute_map = { 'value': {'key': 'value', 'type': '[PartnerTopicType]'}, } def __init__(self, *, value=None, **kwargs) -> None: super(PartnerTopicTypesListResult, self).__init__(**kwargs) self.value = value
[docs]class PartnerTopicUpdateParameters(Model): """Properties of the Partner Topic update. :param tags: Tags of the partner topic. :type tags: dict[str, str] """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, } def __init__(self, *, tags=None, **kwargs) -> None: super(PartnerTopicUpdateParameters, self).__init__(**kwargs) self.tags = tags
[docs]class PrivateEndpoint(Model): """PrivateEndpoint information. :param id: The ARM identifier for Private Endpoint. :type id: str """ _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, } def __init__(self, *, id: str=None, **kwargs) -> None: super(PrivateEndpoint, self).__init__(**kwargs) self.id = id
[docs]class PrivateEndpointConnection(Resource): """PrivateEndpointConnection. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param private_endpoint: The Private Endpoint resource for this Connection. :type private_endpoint: ~azure.mgmt.eventgrid.models.PrivateEndpoint :param group_ids: GroupIds from the private link service resource. :type group_ids: list[str] :param private_link_service_connection_state: Details about the state of the connection. :type private_link_service_connection_state: ~azure.mgmt.eventgrid.models.ConnectionState :param provisioning_state: Provisioning state of the Private Endpoint Connection. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :type provisioning_state: str or ~azure.mgmt.eventgrid.models.ResourceProvisioningState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'private_endpoint': {'key': 'properties.privateEndpoint', 'type': 'PrivateEndpoint'}, 'group_ids': {'key': 'properties.groupIds', 'type': '[str]'}, 'private_link_service_connection_state': {'key': 'properties.privateLinkServiceConnectionState', 'type': 'ConnectionState'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, } def __init__(self, *, private_endpoint=None, group_ids=None, private_link_service_connection_state=None, provisioning_state=None, **kwargs) -> None: super(PrivateEndpointConnection, self).__init__(**kwargs) self.private_endpoint = private_endpoint self.group_ids = group_ids self.private_link_service_connection_state = private_link_service_connection_state self.provisioning_state = provisioning_state
[docs]class PrivateLinkResource(Model): """Information of the private link resource. :param group_id: :type group_id: str :param display_name: :type display_name: str :param required_members: :type required_members: list[str] :param required_zone_names: :type required_zone_names: list[str] :param id: Fully qualified identifier of the resource. :type id: str :param name: Name of the resource :type name: str :param type: Type of the resource :type type: str """ _attribute_map = { 'group_id': {'key': 'properties.groupId', 'type': 'str'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, 'required_members': {'key': 'properties.requiredMembers', 'type': '[str]'}, 'required_zone_names': {'key': 'properties.requiredZoneNames', 'type': '[str]'}, 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } def __init__(self, *, group_id: str=None, display_name: str=None, required_members=None, required_zone_names=None, id: str=None, name: str=None, type: str=None, **kwargs) -> None: super(PrivateLinkResource, self).__init__(**kwargs) self.group_id = group_id self.display_name = display_name self.required_members = required_members self.required_zone_names = required_zone_names self.id = id self.name = name self.type = type
[docs]class ResourceSku(Model): """Describes an EventGrid Resource Sku. :param name: the Sku name of the resource. the possible values: Basic; Premium. Possible values include: 'Basic', 'Premium' :type name: str or ~azure.mgmt.eventgrid.models.Sku """ _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, } def __init__(self, *, name=None, **kwargs) -> None: super(ResourceSku, self).__init__(**kwargs) self.name = name
[docs]class RetryPolicy(Model): """Information about the retry policy for an event subscription. :param max_delivery_attempts: Maximum number of delivery retry attempts for events. :type max_delivery_attempts: int :param event_time_to_live_in_minutes: Time To Live (in minutes) for events. :type event_time_to_live_in_minutes: int """ _attribute_map = { 'max_delivery_attempts': {'key': 'maxDeliveryAttempts', 'type': 'int'}, 'event_time_to_live_in_minutes': {'key': 'eventTimeToLiveInMinutes', 'type': 'int'}, } def __init__(self, *, max_delivery_attempts: int=None, event_time_to_live_in_minutes: int=None, **kwargs) -> None: super(RetryPolicy, self).__init__(**kwargs) self.max_delivery_attempts = max_delivery_attempts self.event_time_to_live_in_minutes = event_time_to_live_in_minutes
[docs]class ServiceBusQueueEventSubscriptionDestination(EventSubscriptionDestination): """Information about the service bus destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription. :type resource_id: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, **kwargs) -> None: super(ServiceBusQueueEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.endpoint_type = 'ServiceBusQueue'
[docs]class ServiceBusTopicEventSubscriptionDestination(EventSubscriptionDestination): """Information about the service bus topic destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription. :type resource_id: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, **kwargs) -> None: super(ServiceBusTopicEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.endpoint_type = 'ServiceBusTopic'
[docs]class StorageBlobDeadLetterDestination(DeadLetterDestination): """Information about the storage blob based dead letter destination. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource ID of the storage account that is the destination of the deadletter events :type resource_id: str :param blob_container_name: The name of the Storage blob container that is the destination of the deadletter events :type blob_container_name: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, 'blob_container_name': {'key': 'properties.blobContainerName', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, blob_container_name: str=None, **kwargs) -> None: super(StorageBlobDeadLetterDestination, self).__init__(**kwargs) self.resource_id = resource_id self.blob_container_name = blob_container_name self.endpoint_type = 'StorageBlob'
[docs]class StorageQueueEventSubscriptionDestination(EventSubscriptionDestination): """Information about the storage queue destination for an event subscription. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param resource_id: The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription. :type resource_id: str :param queue_name: The name of the Storage queue under a storage account that is the destination of an event subscription. :type queue_name: str """ _validation = { 'endpoint_type': {'required': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'resource_id': {'key': 'properties.resourceId', 'type': 'str'}, 'queue_name': {'key': 'properties.queueName', 'type': 'str'}, } def __init__(self, *, resource_id: str=None, queue_name: str=None, **kwargs) -> None: super(StorageQueueEventSubscriptionDestination, self).__init__(**kwargs) self.resource_id = resource_id self.queue_name = queue_name self.endpoint_type = 'StorageQueue'
[docs]class StringBeginsWithAdvancedFilter(AdvancedFilter): """StringBeginsWith Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[str] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[str]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(StringBeginsWithAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'StringBeginsWith'
[docs]class StringContainsAdvancedFilter(AdvancedFilter): """StringContains Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[str] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[str]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(StringContainsAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'StringContains'
[docs]class StringEndsWithAdvancedFilter(AdvancedFilter): """StringEndsWith Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[str] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[str]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(StringEndsWithAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'StringEndsWith'
[docs]class StringInAdvancedFilter(AdvancedFilter): """StringIn Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[str] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[str]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(StringInAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'StringIn'
[docs]class StringNotInAdvancedFilter(AdvancedFilter): """StringNotIn Advanced Filter. All required parameters must be populated in order to send to Azure. :param key: The field/property in the event based on which you want to filter. :type key: str :param operator_type: Required. Constant filled by server. :type operator_type: str :param values: The set of filter values. :type values: list[str] """ _validation = { 'operator_type': {'required': True}, } _attribute_map = { 'key': {'key': 'key', 'type': 'str'}, 'operator_type': {'key': 'operatorType', 'type': 'str'}, 'values': {'key': 'values', 'type': '[str]'}, } def __init__(self, *, key: str=None, values=None, **kwargs) -> None: super(StringNotInAdvancedFilter, self).__init__(key=key, **kwargs) self.values = values self.operator_type = 'StringNotIn'
[docs]class SystemTopic(TrackedResource): """EventGrid System Topic. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :ivar provisioning_state: Provisioning state of the system topic. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.ResourceProvisioningState :param source: Source for the system topic. :type source: str :param topic_type: TopicType for the system topic. :type topic_type: str :ivar metric_resource_id: Metric resource id for the system topic. :vartype metric_resource_id: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, 'metric_resource_id': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'source': {'key': 'properties.source', 'type': 'str'}, 'topic_type': {'key': 'properties.topicType', 'type': 'str'}, 'metric_resource_id': {'key': 'properties.metricResourceId', 'type': 'str'}, } def __init__(self, *, location: str, tags=None, source: str=None, topic_type: str=None, **kwargs) -> None: super(SystemTopic, self).__init__(location=location, tags=tags, **kwargs) self.provisioning_state = None self.source = source self.topic_type = topic_type self.metric_resource_id = None
[docs]class SystemTopicUpdateParameters(Model): """Properties of the System Topic update. :param tags: Tags of the system topic. :type tags: dict[str, str] """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, } def __init__(self, *, tags=None, **kwargs) -> None: super(SystemTopicUpdateParameters, self).__init__(**kwargs) self.tags = tags
[docs]class Topic(TrackedResource): """EventGrid Topic. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param location: Required. Location of the resource. :type location: str :param tags: Tags of the resource. :type tags: dict[str, str] :param private_endpoint_connections: :type private_endpoint_connections: list[~azure.mgmt.eventgrid.models.PrivateEndpointConnection] :ivar provisioning_state: Provisioning state of the topic. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :vartype provisioning_state: str or ~azure.mgmt.eventgrid.models.TopicProvisioningState :ivar endpoint: Endpoint for the topic. :vartype endpoint: str :param input_schema: This determines the format that Event Grid should expect for incoming events published to the topic. Possible values include: 'EventGridSchema', 'CustomEventSchema', 'CloudEventSchemaV1_0'. Default value: "EventGridSchema" . :type input_schema: str or ~azure.mgmt.eventgrid.models.InputSchema :param input_schema_mapping: This enables publishing using custom event schemas. An InputSchemaMapping can be specified to map various properties of a source schema to various required properties of the EventGridEvent schema. :type input_schema_mapping: ~azure.mgmt.eventgrid.models.InputSchemaMapping :ivar metric_resource_id: Metric resource id for the topic. :vartype metric_resource_id: str :param public_network_access: This determines if traffic is allowed over public network. By default it is enabled. You can further restrict to specific IPs by configuring <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.TopicProperties.InboundIpRules" />. Possible values include: 'Enabled', 'Disabled' :type public_network_access: str or ~azure.mgmt.eventgrid.models.PublicNetworkAccess :param inbound_ip_rules: This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. :type inbound_ip_rules: list[~azure.mgmt.eventgrid.models.InboundIpRule] :param sku: The Sku pricing tier for the topic. :type sku: ~azure.mgmt.eventgrid.models.ResourceSku :param identity: Identity information for the resource. :type identity: ~azure.mgmt.eventgrid.models.IdentityInfo """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'provisioning_state': {'readonly': True}, 'endpoint': {'readonly': True}, 'metric_resource_id': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'private_endpoint_connections': {'key': 'properties.privateEndpointConnections', 'type': '[PrivateEndpointConnection]'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'endpoint': {'key': 'properties.endpoint', 'type': 'str'}, 'input_schema': {'key': 'properties.inputSchema', 'type': 'str'}, 'input_schema_mapping': {'key': 'properties.inputSchemaMapping', 'type': 'InputSchemaMapping'}, 'metric_resource_id': {'key': 'properties.metricResourceId', 'type': 'str'}, 'public_network_access': {'key': 'properties.publicNetworkAccess', 'type': 'str'}, 'inbound_ip_rules': {'key': 'properties.inboundIpRules', 'type': '[InboundIpRule]'}, 'sku': {'key': 'sku', 'type': 'ResourceSku'}, 'identity': {'key': 'identity', 'type': 'IdentityInfo'}, } def __init__(self, *, location: str, tags=None, private_endpoint_connections=None, input_schema="EventGridSchema", input_schema_mapping=None, public_network_access=None, inbound_ip_rules=None, sku=None, identity=None, **kwargs) -> None: super(Topic, self).__init__(location=location, tags=tags, **kwargs) self.private_endpoint_connections = private_endpoint_connections self.provisioning_state = None self.endpoint = None self.input_schema = input_schema self.input_schema_mapping = input_schema_mapping self.metric_resource_id = None self.public_network_access = public_network_access self.inbound_ip_rules = inbound_ip_rules self.sku = sku self.identity = identity
[docs]class TopicRegenerateKeyRequest(Model): """Topic regenerate share access key request. All required parameters must be populated in order to send to Azure. :param key_name: Required. Key name to regenerate key1 or key2 :type key_name: str """ _validation = { 'key_name': {'required': True}, } _attribute_map = { 'key_name': {'key': 'keyName', 'type': 'str'}, } def __init__(self, *, key_name: str, **kwargs) -> None: super(TopicRegenerateKeyRequest, self).__init__(**kwargs) self.key_name = key_name
[docs]class TopicSharedAccessKeys(Model): """Shared access keys of the Topic. :param key1: Shared access key1 for the topic. :type key1: str :param key2: Shared access key2 for the topic. :type key2: str """ _attribute_map = { 'key1': {'key': 'key1', 'type': 'str'}, 'key2': {'key': 'key2', 'type': 'str'}, } def __init__(self, *, key1: str=None, key2: str=None, **kwargs) -> None: super(TopicSharedAccessKeys, self).__init__(**kwargs) self.key1 = key1 self.key2 = key2
[docs]class TopicTypeInfo(Resource): """Properties of a topic type info. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified identifier of the resource. :vartype id: str :ivar name: Name of the resource :vartype name: str :ivar type: Type of the resource :vartype type: str :param provider: Namespace of the provider of the topic type. :type provider: str :param display_name: Display Name for the topic type. :type display_name: str :param description: Description of the topic type. :type description: str :param resource_region_type: Region type of the resource. Possible values include: 'RegionalResource', 'GlobalResource' :type resource_region_type: str or ~azure.mgmt.eventgrid.models.ResourceRegionType :param provisioning_state: Provisioning state of the topic type. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed' :type provisioning_state: str or ~azure.mgmt.eventgrid.models.TopicTypeProvisioningState :param supported_locations: List of locations supported by this topic type. :type supported_locations: list[str] :param source_resource_format: Source resource format. :type source_resource_format: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'provider': {'key': 'properties.provider', 'type': 'str'}, 'display_name': {'key': 'properties.displayName', 'type': 'str'}, 'description': {'key': 'properties.description', 'type': 'str'}, 'resource_region_type': {'key': 'properties.resourceRegionType', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'supported_locations': {'key': 'properties.supportedLocations', 'type': '[str]'}, 'source_resource_format': {'key': 'properties.sourceResourceFormat', 'type': 'str'}, } def __init__(self, *, provider: str=None, display_name: str=None, description: str=None, resource_region_type=None, provisioning_state=None, supported_locations=None, source_resource_format: str=None, **kwargs) -> None: super(TopicTypeInfo, self).__init__(**kwargs) self.provider = provider self.display_name = display_name self.description = description self.resource_region_type = resource_region_type self.provisioning_state = provisioning_state self.supported_locations = supported_locations self.source_resource_format = source_resource_format
[docs]class TopicUpdateParameters(Model): """Properties of the Topic update. :param tags: Tags of the resource. :type tags: dict[str, str] :param identity: Resource identity information. :type identity: ~azure.mgmt.eventgrid.models.IdentityInfo :param public_network_access: This determines if traffic is allowed over public network. By default it is enabled. You can further restrict to specific IPs by configuring <seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.TopicUpdateParameterProperties.InboundIpRules" />. Possible values include: 'Enabled', 'Disabled' :type public_network_access: str or ~azure.mgmt.eventgrid.models.PublicNetworkAccess :param inbound_ip_rules: This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. :type inbound_ip_rules: list[~azure.mgmt.eventgrid.models.InboundIpRule] :param sku: The Sku pricing tier for the topic. :type sku: ~azure.mgmt.eventgrid.models.ResourceSku """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, 'identity': {'key': 'identity', 'type': 'IdentityInfo'}, 'public_network_access': {'key': 'properties.publicNetworkAccess', 'type': 'str'}, 'inbound_ip_rules': {'key': 'properties.inboundIpRules', 'type': '[InboundIpRule]'}, 'sku': {'key': 'sku', 'type': 'ResourceSku'}, } def __init__(self, *, tags=None, identity=None, public_network_access=None, inbound_ip_rules=None, sku=None, **kwargs) -> None: super(TopicUpdateParameters, self).__init__(**kwargs) self.tags = tags self.identity = identity self.public_network_access = public_network_access self.inbound_ip_rules = inbound_ip_rules self.sku = sku
[docs]class UserIdentityProperties(Model): """The information about the user identity. :param principal_id: The principal id of user assigned identity. :type principal_id: str :param client_id: The client id of user assigned identity. :type client_id: str """ _attribute_map = { 'principal_id': {'key': 'principalId', 'type': 'str'}, 'client_id': {'key': 'clientId', 'type': 'str'}, } def __init__(self, *, principal_id: str=None, client_id: str=None, **kwargs) -> None: super(UserIdentityProperties, self).__init__(**kwargs) self.principal_id = principal_id self.client_id = client_id
[docs]class WebHookEventSubscriptionDestination(EventSubscriptionDestination): """Information about the webhook destination for an event subscription. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param endpoint_type: Required. Constant filled by server. :type endpoint_type: str :param endpoint_url: The URL that represents the endpoint of the destination of an event subscription. :type endpoint_url: str :ivar endpoint_base_url: The base URL that represents the endpoint of the destination of an event subscription. :vartype endpoint_base_url: str :param max_events_per_batch: Maximum number of events per batch. :type max_events_per_batch: int :param preferred_batch_size_in_kilobytes: Preferred batch size in Kilobytes. :type preferred_batch_size_in_kilobytes: int :param azure_active_directory_tenant_id: The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests. :type azure_active_directory_tenant_id: str :param azure_active_directory_application_id_or_uri: The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests. :type azure_active_directory_application_id_or_uri: str """ _validation = { 'endpoint_type': {'required': True}, 'endpoint_base_url': {'readonly': True}, } _attribute_map = { 'endpoint_type': {'key': 'endpointType', 'type': 'str'}, 'endpoint_url': {'key': 'properties.endpointUrl', 'type': 'str'}, 'endpoint_base_url': {'key': 'properties.endpointBaseUrl', 'type': 'str'}, 'max_events_per_batch': {'key': 'properties.maxEventsPerBatch', 'type': 'int'}, 'preferred_batch_size_in_kilobytes': {'key': 'properties.preferredBatchSizeInKilobytes', 'type': 'int'}, 'azure_active_directory_tenant_id': {'key': 'properties.azureActiveDirectoryTenantId', 'type': 'str'}, 'azure_active_directory_application_id_or_uri': {'key': 'properties.azureActiveDirectoryApplicationIdOrUri', 'type': 'str'}, } def __init__(self, *, endpoint_url: str=None, max_events_per_batch: int=None, preferred_batch_size_in_kilobytes: int=None, azure_active_directory_tenant_id: str=None, azure_active_directory_application_id_or_uri: str=None, **kwargs) -> None: super(WebHookEventSubscriptionDestination, self).__init__(**kwargs) self.endpoint_url = endpoint_url self.endpoint_base_url = None self.max_events_per_batch = max_events_per_batch self.preferred_batch_size_in_kilobytes = preferred_batch_size_in_kilobytes self.azure_active_directory_tenant_id = azure_active_directory_tenant_id self.azure_active_directory_application_id_or_uri = azure_active_directory_application_id_or_uri self.endpoint_type = 'WebHook'