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

# coding=utf-8
# pylint: disable=too-many-lines
# --------------------------------------------------------------------------
# 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.
# --------------------------------------------------------------------------

import datetime
import sys
from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union

from .. import _serialization

if sys.version_info >= (3, 9):
    from collections.abc import MutableMapping
else:
    from typing import MutableMapping  # type: ignore  # pylint: disable=ungrouped-imports
if sys.version_info >= (3, 8):
    from typing import Literal  # pylint: disable=no-name-in-module, ungrouped-imports
else:
    from typing_extensions import Literal  # type: ignore  # pylint: disable=ungrouped-imports

if TYPE_CHECKING:
    # pylint: disable=unused-import,ungrouped-imports
    from .. import models as _models
JSON = MutableMapping[str, Any]  # pylint: disable=unsubscriptable-object


[docs]class AccessInformationCollection(_serialization.Model): """Paged AccessInformation list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.AccessInformationContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[AccessInformationContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class Resource(_serialization.Model): """Common fields that are returned in the response for all Azure Resource Manager resources. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :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): """ """ super().__init__(**kwargs) self.id = None self.name = None self.type = None
[docs]class AccessInformationContract(Resource): """Tenant Settings. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar id_properties_id: Access Information type ('access' or 'gitAccess'). :vartype id_properties_id: str :ivar principal_id: Principal (User) Identifier. :vartype principal_id: str :ivar enabled: Determines whether direct access is enabled. :vartype enabled: 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"}, "id_properties_id": {"key": "properties.id", "type": "str"}, "principal_id": {"key": "properties.principalId", "type": "str"}, "enabled": {"key": "properties.enabled", "type": "bool"}, } def __init__( self, *, id_properties_id: Optional[str] = None, principal_id: Optional[str] = None, enabled: Optional[bool] = None, **kwargs ): """ :keyword id_properties_id: Access Information type ('access' or 'gitAccess'). :paramtype id_properties_id: str :keyword principal_id: Principal (User) Identifier. :paramtype principal_id: str :keyword enabled: Determines whether direct access is enabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.id_properties_id = id_properties_id self.principal_id = principal_id self.enabled = enabled
[docs]class AccessInformationCreateParameters(_serialization.Model): """Tenant access information update parameters. :ivar principal_id: Principal (User) Identifier. :vartype principal_id: str :ivar primary_key: Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype primary_key: str :ivar secondary_key: Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype secondary_key: str :ivar enabled: Determines whether direct access is enabled. :vartype enabled: bool """ _attribute_map = { "principal_id": {"key": "properties.principalId", "type": "str"}, "primary_key": {"key": "properties.primaryKey", "type": "str"}, "secondary_key": {"key": "properties.secondaryKey", "type": "str"}, "enabled": {"key": "properties.enabled", "type": "bool"}, } def __init__( self, *, principal_id: Optional[str] = None, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, enabled: Optional[bool] = None, **kwargs ): """ :keyword principal_id: Principal (User) Identifier. :paramtype principal_id: str :keyword primary_key: Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype primary_key: str :keyword secondary_key: Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype secondary_key: str :keyword enabled: Determines whether direct access is enabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.principal_id = principal_id self.primary_key = primary_key self.secondary_key = secondary_key self.enabled = enabled
[docs]class AccessInformationSecretsContract(_serialization.Model): """Tenant access information contract of the API Management service. :ivar id: Access Information type ('access' or 'gitAccess'). :vartype id: str :ivar principal_id: Principal (User) Identifier. :vartype principal_id: str :ivar primary_key: Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype primary_key: str :ivar secondary_key: Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype secondary_key: str :ivar enabled: Determines whether direct access is enabled. :vartype enabled: bool """ _attribute_map = { "id": {"key": "id", "type": "str"}, "principal_id": {"key": "principalId", "type": "str"}, "primary_key": {"key": "primaryKey", "type": "str"}, "secondary_key": {"key": "secondaryKey", "type": "str"}, "enabled": {"key": "enabled", "type": "bool"}, } def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin principal_id: Optional[str] = None, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, enabled: Optional[bool] = None, **kwargs ): """ :keyword id: Access Information type ('access' or 'gitAccess'). :paramtype id: str :keyword principal_id: Principal (User) Identifier. :paramtype principal_id: str :keyword primary_key: Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype primary_key: str :keyword secondary_key: Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype secondary_key: str :keyword enabled: Determines whether direct access is enabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.id = id self.principal_id = principal_id self.primary_key = primary_key self.secondary_key = secondary_key self.enabled = enabled
[docs]class AccessInformationUpdateParameters(_serialization.Model): """Tenant access information update parameters. :ivar enabled: Determines whether direct access is enabled. :vartype enabled: bool """ _attribute_map = { "enabled": {"key": "properties.enabled", "type": "bool"}, } def __init__(self, *, enabled: Optional[bool] = None, **kwargs): """ :keyword enabled: Determines whether direct access is enabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.enabled = enabled
[docs]class AdditionalLocation(_serialization.Model): """Description of an additional API Management resource location. 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 location: The location name of the additional region among Azure Data center regions. Required. :vartype location: str :ivar sku: SKU properties of the API Management service. Required. :vartype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :ivar zones: A list of availability zones denoting where the resource needs to come from. :vartype zones: list[str] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in the additional location. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service which is deployed in an Internal Virtual Network in a particular additional location. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the location. Supported only for Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar virtual_network_configuration: Virtual network configuration for the location. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar gateway_regional_url: Gateway URL of the API Management service in the Region. :vartype gateway_regional_url: str :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location. :vartype disable_gateway: bool :ivar platform_version: Compute Platform Version running the service. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion """ _validation = { "location": {"required": True}, "sku": {"required": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "platform_version": {"readonly": True}, } _attribute_map = { "location": {"key": "location", "type": "str"}, "sku": {"key": "sku", "type": "ApiManagementServiceSkuProperties"}, "zones": {"key": "zones", "type": "[str]"}, "public_ip_addresses": {"key": "publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "publicIpAddressId", "type": "str"}, "virtual_network_configuration": {"key": "virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration"}, "gateway_regional_url": {"key": "gatewayRegionalUrl", "type": "str"}, "disable_gateway": {"key": "disableGateway", "type": "bool"}, "platform_version": {"key": "platformVersion", "type": "str"}, } def __init__( self, *, location: str, sku: "_models.ApiManagementServiceSkuProperties", zones: Optional[List[str]] = None, public_ip_address_id: Optional[str] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, disable_gateway: bool = False, **kwargs ): """ :keyword location: The location name of the additional region among Azure Data center regions. Required. :paramtype location: str :keyword sku: SKU properties of the API Management service. Required. :paramtype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :keyword zones: A list of availability zones denoting where the resource needs to come from. :paramtype zones: list[str] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the location. Supported only for Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword virtual_network_configuration: Virtual network configuration for the location. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location. :paramtype disable_gateway: bool """ super().__init__(**kwargs) self.location = location self.sku = sku self.zones = zones self.public_ip_addresses = None self.private_ip_addresses = None self.public_ip_address_id = public_ip_address_id self.virtual_network_configuration = virtual_network_configuration self.gateway_regional_url = None self.disable_gateway = disable_gateway self.platform_version = None
[docs]class ApiCollection(_serialization.Model): """Paged API list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ApiContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ApiContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class ApiContactInformation(_serialization.Model): """API contact information. :ivar name: The identifying name of the contact person/organization. :vartype name: str :ivar url: The URL pointing to the contact information. MUST be in the format of a URL. :vartype url: str :ivar email: The email address of the contact person/organization. MUST be in the format of an email address. :vartype email: str """ _attribute_map = { "name": {"key": "name", "type": "str"}, "url": {"key": "url", "type": "str"}, "email": {"key": "email", "type": "str"}, } def __init__(self, *, name: Optional[str] = None, url: Optional[str] = None, email: Optional[str] = None, **kwargs): """ :keyword name: The identifying name of the contact person/organization. :paramtype name: str :keyword url: The URL pointing to the contact information. MUST be in the format of a URL. :paramtype url: str :keyword email: The email address of the contact person/organization. MUST be in the format of an email address. :paramtype email: str """ super().__init__(**kwargs) self.name = name self.url = url self.email = email
[docs]class ApiContract(Resource): # pylint: disable=too-many-instance-attributes """API details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar source_api_id: API identifier of the source API. :vartype source_api_id: str :ivar display_name: API name. Must be 1 to 300 characters long. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :ivar api_version_set: Version set details. :vartype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000}, "path": {"max_length": 400}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "authentication_settings": { "key": "properties.authenticationSettings", "type": "AuthenticationSettingsContract", }, "subscription_key_parameter_names": { "key": "properties.subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "properties.type", "type": "str"}, "api_revision": {"key": "properties.apiRevision", "type": "str"}, "api_version": {"key": "properties.apiVersion", "type": "str"}, "is_current": {"key": "properties.isCurrent", "type": "bool"}, "is_online": {"key": "properties.isOnline", "type": "bool"}, "api_revision_description": {"key": "properties.apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "properties.apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "properties.apiVersionSetId", "type": "str"}, "subscription_required": {"key": "properties.subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "properties.termsOfServiceUrl", "type": "str"}, "contact": {"key": "properties.contact", "type": "ApiContactInformation"}, "license": {"key": "properties.license", "type": "ApiLicenseInformation"}, "source_api_id": {"key": "properties.sourceApiId", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "service_url": {"key": "properties.serviceUrl", "type": "str"}, "path": {"key": "properties.path", "type": "str"}, "protocols": {"key": "properties.protocols", "type": "[str]"}, "api_version_set": {"key": "properties.apiVersionSet", "type": "ApiVersionSetContractDetails"}, } def __init__( # pylint: disable=too-many-locals self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, source_api_id: Optional[str] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, path: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, api_version_set: Optional["_models.ApiVersionSetContractDetails"] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword source_api_id: API identifier of the source API. :paramtype source_api_id: str :keyword display_name: API name. Must be 1 to 300 characters long. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :keyword api_version_set: Version set details. :paramtype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ super().__init__(**kwargs) self.description = description self.authentication_settings = authentication_settings self.subscription_key_parameter_names = subscription_key_parameter_names self.api_type = api_type self.api_revision = api_revision self.api_version = api_version self.is_current = is_current self.is_online = None self.api_revision_description = api_revision_description self.api_version_description = api_version_description self.api_version_set_id = api_version_set_id self.subscription_required = subscription_required self.terms_of_service_url = terms_of_service_url self.contact = contact self.license = license self.source_api_id = source_api_id self.display_name = display_name self.service_url = service_url self.path = path self.protocols = protocols self.api_version_set = api_version_set
[docs]class ApiEntityBaseContract(_serialization.Model): # pylint: disable=too-many-instance-attributes """API base contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authentication_settings": {"key": "authenticationSettings", "type": "AuthenticationSettingsContract"}, "subscription_key_parameter_names": { "key": "subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "type", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "is_current": {"key": "isCurrent", "type": "bool"}, "is_online": {"key": "isOnline", "type": "bool"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "apiVersionSetId", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "termsOfServiceUrl", "type": "str"}, "contact": {"key": "contact", "type": "ApiContactInformation"}, "license": {"key": "license", "type": "ApiLicenseInformation"}, } def __init__( self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation """ super().__init__(**kwargs) self.description = description self.authentication_settings = authentication_settings self.subscription_key_parameter_names = subscription_key_parameter_names self.api_type = api_type self.api_revision = api_revision self.api_version = api_version self.is_current = is_current self.is_online = None self.api_revision_description = api_revision_description self.api_version_description = api_version_description self.api_version_set_id = api_version_set_id self.subscription_required = subscription_required self.terms_of_service_url = terms_of_service_url self.contact = contact self.license = license
[docs]class ApiContractProperties(ApiEntityBaseContract): # pylint: disable=too-many-instance-attributes """API Entity Properties. 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 description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar source_api_id: API identifier of the source API. :vartype source_api_id: str :ivar display_name: API name. Must be 1 to 300 characters long. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. Required. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :ivar api_version_set: Version set details. :vartype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000}, "path": {"required": True, "max_length": 400}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authentication_settings": {"key": "authenticationSettings", "type": "AuthenticationSettingsContract"}, "subscription_key_parameter_names": { "key": "subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "type", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "is_current": {"key": "isCurrent", "type": "bool"}, "is_online": {"key": "isOnline", "type": "bool"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "apiVersionSetId", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "termsOfServiceUrl", "type": "str"}, "contact": {"key": "contact", "type": "ApiContactInformation"}, "license": {"key": "license", "type": "ApiLicenseInformation"}, "source_api_id": {"key": "sourceApiId", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "service_url": {"key": "serviceUrl", "type": "str"}, "path": {"key": "path", "type": "str"}, "protocols": {"key": "protocols", "type": "[str]"}, "api_version_set": {"key": "apiVersionSet", "type": "ApiVersionSetContractDetails"}, } def __init__( self, *, path: str, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, source_api_id: Optional[str] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, api_version_set: Optional["_models.ApiVersionSetContractDetails"] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword source_api_id: API identifier of the source API. :paramtype source_api_id: str :keyword display_name: API name. Must be 1 to 300 characters long. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. Required. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :keyword api_version_set: Version set details. :paramtype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ super().__init__( description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, terms_of_service_url=terms_of_service_url, contact=contact, license=license, **kwargs ) self.source_api_id = source_api_id self.display_name = display_name self.service_url = service_url self.path = path self.protocols = protocols self.api_version_set = api_version_set
[docs]class ApiContractUpdateProperties(ApiEntityBaseContract): # pylint: disable=too-many-instance-attributes """API update contract properties. Variables are only populated by the server, and will be ignored when sending a request. :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar display_name: API name. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000, "min_length": 1}, "path": {"max_length": 400}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authentication_settings": {"key": "authenticationSettings", "type": "AuthenticationSettingsContract"}, "subscription_key_parameter_names": { "key": "subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "type", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "is_current": {"key": "isCurrent", "type": "bool"}, "is_online": {"key": "isOnline", "type": "bool"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "apiVersionSetId", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "termsOfServiceUrl", "type": "str"}, "contact": {"key": "contact", "type": "ApiContactInformation"}, "license": {"key": "license", "type": "ApiLicenseInformation"}, "display_name": {"key": "displayName", "type": "str"}, "service_url": {"key": "serviceUrl", "type": "str"}, "path": {"key": "path", "type": "str"}, "protocols": {"key": "protocols", "type": "[str]"}, } def __init__( self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, path: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword display_name: API name. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ super().__init__( description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, terms_of_service_url=terms_of_service_url, contact=contact, license=license, **kwargs ) self.display_name = display_name self.service_url = service_url self.path = path self.protocols = protocols
[docs]class ApiCreateOrUpdateParameter(_serialization.Model): # pylint: disable=too-many-instance-attributes """API Create or Update Parameters. Variables are only populated by the server, and will be ignored when sending a request. :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar source_api_id: API identifier of the source API. :vartype source_api_id: str :ivar display_name: API name. Must be 1 to 300 characters long. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :ivar api_version_set: Version set details. :vartype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails :ivar value: Content value when Importing an API. :vartype value: str :ivar format: Format of the Content in which the API is getting imported. Known values are: "wadl-xml", "wadl-link-json", "swagger-json", "swagger-link-json", "wsdl", "wsdl-link", "openapi", "openapi+json", "openapi-link", "openapi+json-link", and "graphql-link". :vartype format: str or ~azure.mgmt.apimanagement.models.ContentFormat :ivar wsdl_selector: Criteria to limit import of WSDL to a subset of the document. :vartype wsdl_selector: ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector :ivar soap_api_type: Type of API to create. * ``http`` creates a REST API * ``soap`` creates a SOAP pass-through API * ``websocket`` creates websocket API * ``graphql`` creates GraphQL API. Known values are: "http", "soap", "websocket", and "graphql". :vartype soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000}, "path": {"max_length": 400}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "authentication_settings": { "key": "properties.authenticationSettings", "type": "AuthenticationSettingsContract", }, "subscription_key_parameter_names": { "key": "properties.subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "properties.type", "type": "str"}, "api_revision": {"key": "properties.apiRevision", "type": "str"}, "api_version": {"key": "properties.apiVersion", "type": "str"}, "is_current": {"key": "properties.isCurrent", "type": "bool"}, "is_online": {"key": "properties.isOnline", "type": "bool"}, "api_revision_description": {"key": "properties.apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "properties.apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "properties.apiVersionSetId", "type": "str"}, "subscription_required": {"key": "properties.subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "properties.termsOfServiceUrl", "type": "str"}, "contact": {"key": "properties.contact", "type": "ApiContactInformation"}, "license": {"key": "properties.license", "type": "ApiLicenseInformation"}, "source_api_id": {"key": "properties.sourceApiId", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "service_url": {"key": "properties.serviceUrl", "type": "str"}, "path": {"key": "properties.path", "type": "str"}, "protocols": {"key": "properties.protocols", "type": "[str]"}, "api_version_set": {"key": "properties.apiVersionSet", "type": "ApiVersionSetContractDetails"}, "value": {"key": "properties.value", "type": "str"}, "format": {"key": "properties.format", "type": "str"}, "wsdl_selector": {"key": "properties.wsdlSelector", "type": "ApiCreateOrUpdatePropertiesWsdlSelector"}, "soap_api_type": {"key": "properties.apiType", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, source_api_id: Optional[str] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, path: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, api_version_set: Optional["_models.ApiVersionSetContractDetails"] = None, value: Optional[str] = None, format: Optional[Union[str, "_models.ContentFormat"]] = None, wsdl_selector: Optional["_models.ApiCreateOrUpdatePropertiesWsdlSelector"] = None, soap_api_type: Optional[Union[str, "_models.SoapApiType"]] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword source_api_id: API identifier of the source API. :paramtype source_api_id: str :keyword display_name: API name. Must be 1 to 300 characters long. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :keyword api_version_set: Version set details. :paramtype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails :keyword value: Content value when Importing an API. :paramtype value: str :keyword format: Format of the Content in which the API is getting imported. Known values are: "wadl-xml", "wadl-link-json", "swagger-json", "swagger-link-json", "wsdl", "wsdl-link", "openapi", "openapi+json", "openapi-link", "openapi+json-link", and "graphql-link". :paramtype format: str or ~azure.mgmt.apimanagement.models.ContentFormat :keyword wsdl_selector: Criteria to limit import of WSDL to a subset of the document. :paramtype wsdl_selector: ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector :keyword soap_api_type: Type of API to create. * ``http`` creates a REST API * ``soap`` creates a SOAP pass-through API * ``websocket`` creates websocket API * ``graphql`` creates GraphQL API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType """ super().__init__(**kwargs) self.description = description self.authentication_settings = authentication_settings self.subscription_key_parameter_names = subscription_key_parameter_names self.api_type = api_type self.api_revision = api_revision self.api_version = api_version self.is_current = is_current self.is_online = None self.api_revision_description = api_revision_description self.api_version_description = api_version_description self.api_version_set_id = api_version_set_id self.subscription_required = subscription_required self.terms_of_service_url = terms_of_service_url self.contact = contact self.license = license self.source_api_id = source_api_id self.display_name = display_name self.service_url = service_url self.path = path self.protocols = protocols self.api_version_set = api_version_set self.value = value self.format = format self.wsdl_selector = wsdl_selector self.soap_api_type = soap_api_type
[docs]class ApiCreateOrUpdateProperties(ApiContractProperties): # pylint: disable=too-many-instance-attributes """API Create or Update Properties. 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 description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar source_api_id: API identifier of the source API. :vartype source_api_id: str :ivar display_name: API name. Must be 1 to 300 characters long. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. Required. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :ivar api_version_set: Version set details. :vartype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails :ivar value: Content value when Importing an API. :vartype value: str :ivar format: Format of the Content in which the API is getting imported. Known values are: "wadl-xml", "wadl-link-json", "swagger-json", "swagger-link-json", "wsdl", "wsdl-link", "openapi", "openapi+json", "openapi-link", "openapi+json-link", and "graphql-link". :vartype format: str or ~azure.mgmt.apimanagement.models.ContentFormat :ivar wsdl_selector: Criteria to limit import of WSDL to a subset of the document. :vartype wsdl_selector: ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector :ivar soap_api_type: Type of API to create. * ``http`` creates a REST API * ``soap`` creates a SOAP pass-through API * ``websocket`` creates websocket API * ``graphql`` creates GraphQL API. Known values are: "http", "soap", "websocket", and "graphql". :vartype soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000}, "path": {"required": True, "max_length": 400}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authentication_settings": {"key": "authenticationSettings", "type": "AuthenticationSettingsContract"}, "subscription_key_parameter_names": { "key": "subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "type", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "is_current": {"key": "isCurrent", "type": "bool"}, "is_online": {"key": "isOnline", "type": "bool"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "apiVersionSetId", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "termsOfServiceUrl", "type": "str"}, "contact": {"key": "contact", "type": "ApiContactInformation"}, "license": {"key": "license", "type": "ApiLicenseInformation"}, "source_api_id": {"key": "sourceApiId", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "service_url": {"key": "serviceUrl", "type": "str"}, "path": {"key": "path", "type": "str"}, "protocols": {"key": "protocols", "type": "[str]"}, "api_version_set": {"key": "apiVersionSet", "type": "ApiVersionSetContractDetails"}, "value": {"key": "value", "type": "str"}, "format": {"key": "format", "type": "str"}, "wsdl_selector": {"key": "wsdlSelector", "type": "ApiCreateOrUpdatePropertiesWsdlSelector"}, "soap_api_type": {"key": "apiType", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, path: str, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, source_api_id: Optional[str] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, api_version_set: Optional["_models.ApiVersionSetContractDetails"] = None, value: Optional[str] = None, format: Optional[Union[str, "_models.ContentFormat"]] = None, wsdl_selector: Optional["_models.ApiCreateOrUpdatePropertiesWsdlSelector"] = None, soap_api_type: Optional[Union[str, "_models.SoapApiType"]] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword source_api_id: API identifier of the source API. :paramtype source_api_id: str :keyword display_name: API name. Must be 1 to 300 characters long. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. Required. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] :keyword api_version_set: Version set details. :paramtype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails :keyword value: Content value when Importing an API. :paramtype value: str :keyword format: Format of the Content in which the API is getting imported. Known values are: "wadl-xml", "wadl-link-json", "swagger-json", "swagger-link-json", "wsdl", "wsdl-link", "openapi", "openapi+json", "openapi-link", "openapi+json-link", and "graphql-link". :paramtype format: str or ~azure.mgmt.apimanagement.models.ContentFormat :keyword wsdl_selector: Criteria to limit import of WSDL to a subset of the document. :paramtype wsdl_selector: ~azure.mgmt.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector :keyword soap_api_type: Type of API to create. * ``http`` creates a REST API * ``soap`` creates a SOAP pass-through API * ``websocket`` creates websocket API * ``graphql`` creates GraphQL API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype soap_api_type: str or ~azure.mgmt.apimanagement.models.SoapApiType """ super().__init__( description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, terms_of_service_url=terms_of_service_url, contact=contact, license=license, source_api_id=source_api_id, display_name=display_name, service_url=service_url, path=path, protocols=protocols, api_version_set=api_version_set, **kwargs ) self.value = value self.format = format self.wsdl_selector = wsdl_selector self.soap_api_type = soap_api_type
[docs]class ApiCreateOrUpdatePropertiesWsdlSelector(_serialization.Model): """Criteria to limit import of WSDL to a subset of the document. :ivar wsdl_service_name: Name of service to import from WSDL. :vartype wsdl_service_name: str :ivar wsdl_endpoint_name: Name of endpoint(port) to import from WSDL. :vartype wsdl_endpoint_name: str """ _attribute_map = { "wsdl_service_name": {"key": "wsdlServiceName", "type": "str"}, "wsdl_endpoint_name": {"key": "wsdlEndpointName", "type": "str"}, } def __init__(self, *, wsdl_service_name: Optional[str] = None, wsdl_endpoint_name: Optional[str] = None, **kwargs): """ :keyword wsdl_service_name: Name of service to import from WSDL. :paramtype wsdl_service_name: str :keyword wsdl_endpoint_name: Name of endpoint(port) to import from WSDL. :paramtype wsdl_endpoint_name: str """ super().__init__(**kwargs) self.wsdl_service_name = wsdl_service_name self.wsdl_endpoint_name = wsdl_endpoint_name
[docs]class ApiExportResult(_serialization.Model): """API Export result. :ivar id: ResourceId of the API which was exported. :vartype id: str :ivar export_result_format: Format in which the API Details are exported to the Storage Blob with Sas Key valid for 5 minutes. Known values are: "swagger-link-json", "wsdl-link+xml", "wadl-link-json", and "openapi-link". :vartype export_result_format: str or ~azure.mgmt.apimanagement.models.ExportResultFormat :ivar value: The object defining the schema of the exported API Detail. :vartype value: ~azure.mgmt.apimanagement.models.ApiExportResultValue """ _attribute_map = { "id": {"key": "id", "type": "str"}, "export_result_format": {"key": "format", "type": "str"}, "value": {"key": "value", "type": "ApiExportResultValue"}, } def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin export_result_format: Optional[Union[str, "_models.ExportResultFormat"]] = None, value: Optional["_models.ApiExportResultValue"] = None, **kwargs ): """ :keyword id: ResourceId of the API which was exported. :paramtype id: str :keyword export_result_format: Format in which the API Details are exported to the Storage Blob with Sas Key valid for 5 minutes. Known values are: "swagger-link-json", "wsdl-link+xml", "wadl-link-json", and "openapi-link". :paramtype export_result_format: str or ~azure.mgmt.apimanagement.models.ExportResultFormat :keyword value: The object defining the schema of the exported API Detail. :paramtype value: ~azure.mgmt.apimanagement.models.ApiExportResultValue """ super().__init__(**kwargs) self.id = id self.export_result_format = export_result_format self.value = value
[docs]class ApiExportResultValue(_serialization.Model): """The object defining the schema of the exported API Detail. :ivar link: Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes. :vartype link: str """ _attribute_map = { "link": {"key": "link", "type": "str"}, } def __init__(self, *, link: Optional[str] = None, **kwargs): """ :keyword link: Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes. :paramtype link: str """ super().__init__(**kwargs) self.link = link
[docs]class ApiLicenseInformation(_serialization.Model): """API license information. :ivar name: The license name used for the API. :vartype name: str :ivar url: A URL to the license used for the API. MUST be in the format of a URL. :vartype url: str """ _attribute_map = { "name": {"key": "name", "type": "str"}, "url": {"key": "url", "type": "str"}, } def __init__(self, *, name: Optional[str] = None, url: Optional[str] = None, **kwargs): """ :keyword name: The license name used for the API. :paramtype name: str :keyword url: A URL to the license used for the API. MUST be in the format of a URL. :paramtype url: str """ super().__init__(**kwargs) self.name = name self.url = url
[docs]class ApiManagementServiceApplyNetworkConfigurationParameters(_serialization.Model): """Parameter supplied to the Apply Network configuration operation. :ivar location: Location of the Api Management service to update for a multi-region service. For a service deployed in a single region, this parameter is not required. :vartype location: str """ _attribute_map = { "location": {"key": "location", "type": "str"}, } def __init__(self, *, location: Optional[str] = None, **kwargs): """ :keyword location: Location of the Api Management service to update for a multi-region service. For a service deployed in a single region, this parameter is not required. :paramtype location: str """ super().__init__(**kwargs) self.location = location
[docs]class ApiManagementServiceBackupRestoreParameters(_serialization.Model): """Parameters supplied to the Backup/Restore of an API Management service operation. All required parameters must be populated in order to send to Azure. :ivar storage_account: The name of the Azure storage account (used to place/retrieve the backup). Required. :vartype storage_account: str :ivar container_name: The name of the blob container (used to place/retrieve the backup). Required. :vartype container_name: str :ivar backup_name: The name of the backup file to create/retrieve. Required. :vartype backup_name: str :ivar access_type: The type of access to be used for the storage account. Known values are: "AccessKey", "SystemAssignedManagedIdentity", and "UserAssignedManagedIdentity". :vartype access_type: str or ~azure.mgmt.apimanagement.models.AccessType :ivar access_key: Storage account access key. Required only if ``accessType`` is set to ``AccessKey``. :vartype access_key: str :ivar client_id: The Client ID of user assigned managed identity. Required only if ``accessType`` is set to ``UserAssignedManagedIdentity``. :vartype client_id: str """ _validation = { "storage_account": {"required": True}, "container_name": {"required": True}, "backup_name": {"required": True}, } _attribute_map = { "storage_account": {"key": "storageAccount", "type": "str"}, "container_name": {"key": "containerName", "type": "str"}, "backup_name": {"key": "backupName", "type": "str"}, "access_type": {"key": "accessType", "type": "str"}, "access_key": {"key": "accessKey", "type": "str"}, "client_id": {"key": "clientId", "type": "str"}, } def __init__( self, *, storage_account: str, container_name: str, backup_name: str, access_type: Union[str, "_models.AccessType"] = "AccessKey", access_key: Optional[str] = None, client_id: Optional[str] = None, **kwargs ): """ :keyword storage_account: The name of the Azure storage account (used to place/retrieve the backup). Required. :paramtype storage_account: str :keyword container_name: The name of the blob container (used to place/retrieve the backup). Required. :paramtype container_name: str :keyword backup_name: The name of the backup file to create/retrieve. Required. :paramtype backup_name: str :keyword access_type: The type of access to be used for the storage account. Known values are: "AccessKey", "SystemAssignedManagedIdentity", and "UserAssignedManagedIdentity". :paramtype access_type: str or ~azure.mgmt.apimanagement.models.AccessType :keyword access_key: Storage account access key. Required only if ``accessType`` is set to ``AccessKey``. :paramtype access_key: str :keyword client_id: The Client ID of user assigned managed identity. Required only if ``accessType`` is set to ``UserAssignedManagedIdentity``. :paramtype client_id: str """ super().__init__(**kwargs) self.storage_account = storage_account self.container_name = container_name self.backup_name = backup_name self.access_type = access_type self.access_key = access_key self.client_id = client_id
[docs]class ApiManagementServiceBaseProperties(_serialization.Model): # pylint: disable=too-many-instance-attributes """Base Properties of an API Management service resource description. Variables are only populated by the server, and will be ignored when sending a request. :ivar notification_sender_email: Email address from which the notification will be sent. :vartype notification_sender_email: str :ivar provisioning_state: The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. :vartype provisioning_state: str :ivar target_provisioning_state: The provisioning state of the API Management service, which is targeted by the long running operation started on the service. :vartype target_provisioning_state: str :ivar created_at_utc: Creation UTC date of the API Management service.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_at_utc: ~datetime.datetime :ivar gateway_url: Gateway URL of the API Management service. :vartype gateway_url: str :ivar gateway_regional_url: Gateway URL of the API Management service in the Default Region. :vartype gateway_regional_url: str :ivar portal_url: Publisher portal endpoint Url of the API Management service. :vartype portal_url: str :ivar management_api_url: Management API endpoint URL of the API Management service. :vartype management_api_url: str :ivar scm_url: SCM endpoint URL of the API Management service. :vartype scm_url: str :ivar developer_portal_url: DEveloper Portal endpoint URL of the API Management service. :vartype developer_portal_url: str :ivar hostname_configurations: Custom hostname configuration of the API Management service. :vartype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :ivar virtual_network_configuration: Virtual network configuration of the API Management service. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar additional_locations: Additional datacenter locations of the API Management service. :vartype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :ivar custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :vartype custom_properties: dict[str, str] :ivar certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :vartype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :ivar enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :vartype enable_client_certificate: bool :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :vartype disable_gateway: bool :ivar virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :vartype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :ivar api_version_constraint: Control Plane Apis version constraint for the API Management service. :vartype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :ivar restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :vartype restore: bool :ivar private_endpoint_connections: List of Private Endpoint Connections of this service. :vartype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :ivar platform_version: Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion """ _validation = { "notification_sender_email": {"max_length": 100}, "provisioning_state": {"readonly": True}, "target_provisioning_state": {"readonly": True}, "created_at_utc": {"readonly": True}, "gateway_url": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "portal_url": {"readonly": True}, "management_api_url": {"readonly": True}, "scm_url": {"readonly": True}, "developer_portal_url": {"readonly": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "platform_version": {"readonly": True}, } _attribute_map = { "notification_sender_email": {"key": "notificationSenderEmail", "type": "str"}, "provisioning_state": {"key": "provisioningState", "type": "str"}, "target_provisioning_state": {"key": "targetProvisioningState", "type": "str"}, "created_at_utc": {"key": "createdAtUtc", "type": "iso-8601"}, "gateway_url": {"key": "gatewayUrl", "type": "str"}, "gateway_regional_url": {"key": "gatewayRegionalUrl", "type": "str"}, "portal_url": {"key": "portalUrl", "type": "str"}, "management_api_url": {"key": "managementApiUrl", "type": "str"}, "scm_url": {"key": "scmUrl", "type": "str"}, "developer_portal_url": {"key": "developerPortalUrl", "type": "str"}, "hostname_configurations": {"key": "hostnameConfigurations", "type": "[HostnameConfiguration]"}, "public_ip_addresses": {"key": "publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "publicIpAddressId", "type": "str"}, "public_network_access": {"key": "publicNetworkAccess", "type": "str"}, "virtual_network_configuration": {"key": "virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration"}, "additional_locations": {"key": "additionalLocations", "type": "[AdditionalLocation]"}, "custom_properties": {"key": "customProperties", "type": "{str}"}, "certificates": {"key": "certificates", "type": "[CertificateConfiguration]"}, "enable_client_certificate": {"key": "enableClientCertificate", "type": "bool"}, "disable_gateway": {"key": "disableGateway", "type": "bool"}, "virtual_network_type": {"key": "virtualNetworkType", "type": "str"}, "api_version_constraint": {"key": "apiVersionConstraint", "type": "ApiVersionConstraint"}, "restore": {"key": "restore", "type": "bool"}, "private_endpoint_connections": { "key": "privateEndpointConnections", "type": "[RemotePrivateEndpointConnectionWrapper]", }, "platform_version": {"key": "platformVersion", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, notification_sender_email: Optional[str] = None, hostname_configurations: Optional[List["_models.HostnameConfiguration"]] = None, public_ip_address_id: Optional[str] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, additional_locations: Optional[List["_models.AdditionalLocation"]] = None, custom_properties: Optional[Dict[str, str]] = None, certificates: Optional[List["_models.CertificateConfiguration"]] = None, enable_client_certificate: bool = False, disable_gateway: bool = False, virtual_network_type: Union[str, "_models.VirtualNetworkType"] = "None", api_version_constraint: Optional["_models.ApiVersionConstraint"] = None, restore: bool = False, private_endpoint_connections: Optional[List["_models.RemotePrivateEndpointConnectionWrapper"]] = None, **kwargs ): """ :keyword notification_sender_email: Email address from which the notification will be sent. :paramtype notification_sender_email: str :keyword hostname_configurations: Custom hostname configuration of the API Management service. :paramtype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :keyword virtual_network_configuration: Virtual network configuration of the API Management service. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword additional_locations: Additional datacenter locations of the API Management service. :paramtype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :keyword custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :paramtype custom_properties: dict[str, str] :keyword certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :paramtype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :keyword enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :paramtype enable_client_certificate: bool :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :paramtype disable_gateway: bool :keyword virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :paramtype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :keyword api_version_constraint: Control Plane Apis version constraint for the API Management service. :paramtype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :keyword restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :paramtype restore: bool :keyword private_endpoint_connections: List of Private Endpoint Connections of this service. :paramtype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] """ super().__init__(**kwargs) self.notification_sender_email = notification_sender_email self.provisioning_state = None self.target_provisioning_state = None self.created_at_utc = None self.gateway_url = None self.gateway_regional_url = None self.portal_url = None self.management_api_url = None self.scm_url = None self.developer_portal_url = None self.hostname_configurations = hostname_configurations self.public_ip_addresses = None self.private_ip_addresses = None self.public_ip_address_id = public_ip_address_id self.public_network_access = public_network_access self.virtual_network_configuration = virtual_network_configuration self.additional_locations = additional_locations self.custom_properties = custom_properties self.certificates = certificates self.enable_client_certificate = enable_client_certificate self.disable_gateway = disable_gateway self.virtual_network_type = virtual_network_type self.api_version_constraint = api_version_constraint self.restore = restore self.private_endpoint_connections = private_endpoint_connections self.platform_version = None
[docs]class ApiManagementServiceCheckNameAvailabilityParameters(_serialization.Model): """Parameters supplied to the CheckNameAvailability operation. All required parameters must be populated in order to send to Azure. :ivar name: The name to check for availability. Required. :vartype name: str """ _validation = { "name": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, } def __init__(self, *, name: str, **kwargs): """ :keyword name: The name to check for availability. Required. :paramtype name: str """ super().__init__(**kwargs) self.name = name
[docs]class ApiManagementServiceGetDomainOwnershipIdentifierResult(_serialization.Model): """Response of the GetDomainOwnershipIdentifier operation. Variables are only populated by the server, and will be ignored when sending a request. :ivar domain_ownership_identifier: The domain ownership identifier value. :vartype domain_ownership_identifier: str """ _validation = { "domain_ownership_identifier": {"readonly": True}, } _attribute_map = { "domain_ownership_identifier": {"key": "domainOwnershipIdentifier", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.domain_ownership_identifier = None
[docs]class ApiManagementServiceGetSsoTokenResult(_serialization.Model): """The response of the GetSsoToken operation. :ivar redirect_uri: Redirect URL to the Publisher Portal containing the SSO token. :vartype redirect_uri: str """ _attribute_map = { "redirect_uri": {"key": "redirectUri", "type": "str"}, } def __init__(self, *, redirect_uri: Optional[str] = None, **kwargs): """ :keyword redirect_uri: Redirect URL to the Publisher Portal containing the SSO token. :paramtype redirect_uri: str """ super().__init__(**kwargs) self.redirect_uri = redirect_uri
[docs]class ApiManagementServiceIdentity(_serialization.Model): """Identity properties of the Api Management service 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 type: The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. Required. Known values are: "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", and "None". :vartype type: str or ~azure.mgmt.apimanagement.models.ApimIdentityType :ivar principal_id: The principal id of the identity. :vartype principal_id: str :ivar tenant_id: The client tenant id of the identity. :vartype tenant_id: str :ivar 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}'. :vartype user_assigned_identities: dict[str, ~azure.mgmt.apimanagement.models.UserIdentityProperties] """ _validation = { "type": {"required": True}, "principal_id": {"readonly": True}, "tenant_id": {"readonly": True}, } _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: Union[str, "_models.ApimIdentityType"], user_assigned_identities: Optional[Dict[str, "_models.UserIdentityProperties"]] = None, **kwargs ): """ :keyword type: The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. Required. Known values are: "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", and "None". :paramtype type: str or ~azure.mgmt.apimanagement.models.ApimIdentityType :keyword 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}'. :paramtype user_assigned_identities: dict[str, ~azure.mgmt.apimanagement.models.UserIdentityProperties] """ super().__init__(**kwargs) self.type = type self.principal_id = None self.tenant_id = None self.user_assigned_identities = user_assigned_identities
[docs]class ApiManagementServiceListResult(_serialization.Model): """The response of the List API Management services operation. All required parameters must be populated in order to send to Azure. :ivar value: Result of the List API Management services operation. Required. :vartype value: list[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list of API Management services. :vartype next_link: str """ _validation = { "value": {"required": True}, } _attribute_map = { "value": {"key": "value", "type": "[ApiManagementServiceResource]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: List["_models.ApiManagementServiceResource"], next_link: Optional[str] = None, **kwargs ): """ :keyword value: Result of the List API Management services operation. Required. :paramtype value: list[~azure.mgmt.apimanagement.models.ApiManagementServiceResource] :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete list of API Management services. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.next_link = next_link
[docs]class ApiManagementServiceNameAvailabilityResult(_serialization.Model): """Response of the CheckNameAvailability operation. Variables are only populated by the server, and will be ignored when sending a request. :ivar name_available: True if the name is available and can be used to create a new API Management service; otherwise false. :vartype name_available: bool :ivar message: If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that :code:`<resourceName>` is already in use, and direct them to select a different name. :vartype message: str :ivar reason: Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable. Known values are: "Valid", "Invalid", and "AlreadyExists". :vartype reason: str or ~azure.mgmt.apimanagement.models.NameAvailabilityReason """ _validation = { "name_available": {"readonly": True}, "message": {"readonly": True}, } _attribute_map = { "name_available": {"key": "nameAvailable", "type": "bool"}, "message": {"key": "message", "type": "str"}, "reason": {"key": "reason", "type": "str"}, } def __init__(self, *, reason: Optional[Union[str, "_models.NameAvailabilityReason"]] = None, **kwargs): """ :keyword reason: Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable. Known values are: "Valid", "Invalid", and "AlreadyExists". :paramtype reason: str or ~azure.mgmt.apimanagement.models.NameAvailabilityReason """ super().__init__(**kwargs) self.name_available = None self.message = None self.reason = reason
[docs]class ApiManagementServiceProperties( ApiManagementServiceBaseProperties ): # pylint: disable=too-many-instance-attributes """Properties of an API Management service resource description. 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 notification_sender_email: Email address from which the notification will be sent. :vartype notification_sender_email: str :ivar provisioning_state: The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. :vartype provisioning_state: str :ivar target_provisioning_state: The provisioning state of the API Management service, which is targeted by the long running operation started on the service. :vartype target_provisioning_state: str :ivar created_at_utc: Creation UTC date of the API Management service.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_at_utc: ~datetime.datetime :ivar gateway_url: Gateway URL of the API Management service. :vartype gateway_url: str :ivar gateway_regional_url: Gateway URL of the API Management service in the Default Region. :vartype gateway_regional_url: str :ivar portal_url: Publisher portal endpoint Url of the API Management service. :vartype portal_url: str :ivar management_api_url: Management API endpoint URL of the API Management service. :vartype management_api_url: str :ivar scm_url: SCM endpoint URL of the API Management service. :vartype scm_url: str :ivar developer_portal_url: DEveloper Portal endpoint URL of the API Management service. :vartype developer_portal_url: str :ivar hostname_configurations: Custom hostname configuration of the API Management service. :vartype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :ivar virtual_network_configuration: Virtual network configuration of the API Management service. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar additional_locations: Additional datacenter locations of the API Management service. :vartype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :ivar custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :vartype custom_properties: dict[str, str] :ivar certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :vartype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :ivar enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :vartype enable_client_certificate: bool :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :vartype disable_gateway: bool :ivar virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :vartype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :ivar api_version_constraint: Control Plane Apis version constraint for the API Management service. :vartype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :ivar restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :vartype restore: bool :ivar private_endpoint_connections: List of Private Endpoint Connections of this service. :vartype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :ivar platform_version: Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion :ivar publisher_email: Publisher email. Required. :vartype publisher_email: str :ivar publisher_name: Publisher name. Required. :vartype publisher_name: str """ _validation = { "notification_sender_email": {"max_length": 100}, "provisioning_state": {"readonly": True}, "target_provisioning_state": {"readonly": True}, "created_at_utc": {"readonly": True}, "gateway_url": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "portal_url": {"readonly": True}, "management_api_url": {"readonly": True}, "scm_url": {"readonly": True}, "developer_portal_url": {"readonly": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "platform_version": {"readonly": True}, "publisher_email": {"required": True, "max_length": 100}, "publisher_name": {"required": True, "max_length": 100}, } _attribute_map = { "notification_sender_email": {"key": "notificationSenderEmail", "type": "str"}, "provisioning_state": {"key": "provisioningState", "type": "str"}, "target_provisioning_state": {"key": "targetProvisioningState", "type": "str"}, "created_at_utc": {"key": "createdAtUtc", "type": "iso-8601"}, "gateway_url": {"key": "gatewayUrl", "type": "str"}, "gateway_regional_url": {"key": "gatewayRegionalUrl", "type": "str"}, "portal_url": {"key": "portalUrl", "type": "str"}, "management_api_url": {"key": "managementApiUrl", "type": "str"}, "scm_url": {"key": "scmUrl", "type": "str"}, "developer_portal_url": {"key": "developerPortalUrl", "type": "str"}, "hostname_configurations": {"key": "hostnameConfigurations", "type": "[HostnameConfiguration]"}, "public_ip_addresses": {"key": "publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "publicIpAddressId", "type": "str"}, "public_network_access": {"key": "publicNetworkAccess", "type": "str"}, "virtual_network_configuration": {"key": "virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration"}, "additional_locations": {"key": "additionalLocations", "type": "[AdditionalLocation]"}, "custom_properties": {"key": "customProperties", "type": "{str}"}, "certificates": {"key": "certificates", "type": "[CertificateConfiguration]"}, "enable_client_certificate": {"key": "enableClientCertificate", "type": "bool"}, "disable_gateway": {"key": "disableGateway", "type": "bool"}, "virtual_network_type": {"key": "virtualNetworkType", "type": "str"}, "api_version_constraint": {"key": "apiVersionConstraint", "type": "ApiVersionConstraint"}, "restore": {"key": "restore", "type": "bool"}, "private_endpoint_connections": { "key": "privateEndpointConnections", "type": "[RemotePrivateEndpointConnectionWrapper]", }, "platform_version": {"key": "platformVersion", "type": "str"}, "publisher_email": {"key": "publisherEmail", "type": "str"}, "publisher_name": {"key": "publisherName", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, publisher_email: str, publisher_name: str, notification_sender_email: Optional[str] = None, hostname_configurations: Optional[List["_models.HostnameConfiguration"]] = None, public_ip_address_id: Optional[str] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, additional_locations: Optional[List["_models.AdditionalLocation"]] = None, custom_properties: Optional[Dict[str, str]] = None, certificates: Optional[List["_models.CertificateConfiguration"]] = None, enable_client_certificate: bool = False, disable_gateway: bool = False, virtual_network_type: Union[str, "_models.VirtualNetworkType"] = "None", api_version_constraint: Optional["_models.ApiVersionConstraint"] = None, restore: bool = False, private_endpoint_connections: Optional[List["_models.RemotePrivateEndpointConnectionWrapper"]] = None, **kwargs ): """ :keyword notification_sender_email: Email address from which the notification will be sent. :paramtype notification_sender_email: str :keyword hostname_configurations: Custom hostname configuration of the API Management service. :paramtype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :keyword virtual_network_configuration: Virtual network configuration of the API Management service. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword additional_locations: Additional datacenter locations of the API Management service. :paramtype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :keyword custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :paramtype custom_properties: dict[str, str] :keyword certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :paramtype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :keyword enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :paramtype enable_client_certificate: bool :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :paramtype disable_gateway: bool :keyword virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :paramtype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :keyword api_version_constraint: Control Plane Apis version constraint for the API Management service. :paramtype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :keyword restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :paramtype restore: bool :keyword private_endpoint_connections: List of Private Endpoint Connections of this service. :paramtype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :keyword publisher_email: Publisher email. Required. :paramtype publisher_email: str :keyword publisher_name: Publisher name. Required. :paramtype publisher_name: str """ super().__init__( notification_sender_email=notification_sender_email, hostname_configurations=hostname_configurations, public_ip_address_id=public_ip_address_id, public_network_access=public_network_access, virtual_network_configuration=virtual_network_configuration, additional_locations=additional_locations, custom_properties=custom_properties, certificates=certificates, enable_client_certificate=enable_client_certificate, disable_gateway=disable_gateway, virtual_network_type=virtual_network_type, api_version_constraint=api_version_constraint, restore=restore, private_endpoint_connections=private_endpoint_connections, **kwargs ) self.publisher_email = publisher_email self.publisher_name = publisher_name
[docs]class ApimResource(_serialization.Model): """The Resource definition. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Resource ID. :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type for API Management resource is set to Microsoft.ApiManagement. :vartype type: str :ivar tags: Resource tags. :vartype tags: dict[str, 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"}, "tags": {"key": "tags", "type": "{str}"}, } def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs): """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] """ super().__init__(**kwargs) self.id = None self.name = None self.type = None self.tags = tags
[docs]class ApiManagementServiceResource(ApimResource): # pylint: disable=too-many-instance-attributes """A single API Management service resource in List or Get response. 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: Resource ID. :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type for API Management resource is set to Microsoft.ApiManagement. :vartype type: str :ivar tags: Resource tags. :vartype tags: dict[str, str] :ivar sku: SKU properties of the API Management service. Required. :vartype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :ivar identity: Managed service identity of the Api Management service. :vartype identity: ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity :ivar system_data: Metadata pertaining to creation and last modification of the resource. :vartype system_data: ~azure.mgmt.apimanagement.models.SystemData :ivar location: Resource location. Required. :vartype location: str :ivar etag: ETag of the resource. :vartype etag: str :ivar zones: A list of availability zones denoting where the resource needs to come from. :vartype zones: list[str] :ivar notification_sender_email: Email address from which the notification will be sent. :vartype notification_sender_email: str :ivar provisioning_state: The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. :vartype provisioning_state: str :ivar target_provisioning_state: The provisioning state of the API Management service, which is targeted by the long running operation started on the service. :vartype target_provisioning_state: str :ivar created_at_utc: Creation UTC date of the API Management service.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_at_utc: ~datetime.datetime :ivar gateway_url: Gateway URL of the API Management service. :vartype gateway_url: str :ivar gateway_regional_url: Gateway URL of the API Management service in the Default Region. :vartype gateway_regional_url: str :ivar portal_url: Publisher portal endpoint Url of the API Management service. :vartype portal_url: str :ivar management_api_url: Management API endpoint URL of the API Management service. :vartype management_api_url: str :ivar scm_url: SCM endpoint URL of the API Management service. :vartype scm_url: str :ivar developer_portal_url: DEveloper Portal endpoint URL of the API Management service. :vartype developer_portal_url: str :ivar hostname_configurations: Custom hostname configuration of the API Management service. :vartype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :ivar virtual_network_configuration: Virtual network configuration of the API Management service. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar additional_locations: Additional datacenter locations of the API Management service. :vartype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :ivar custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :vartype custom_properties: dict[str, str] :ivar certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :vartype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :ivar enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :vartype enable_client_certificate: bool :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :vartype disable_gateway: bool :ivar virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :vartype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :ivar api_version_constraint: Control Plane Apis version constraint for the API Management service. :vartype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :ivar restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :vartype restore: bool :ivar private_endpoint_connections: List of Private Endpoint Connections of this service. :vartype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :ivar platform_version: Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion :ivar publisher_email: Publisher email. Required. :vartype publisher_email: str :ivar publisher_name: Publisher name. Required. :vartype publisher_name: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "sku": {"required": True}, "system_data": {"readonly": True}, "location": {"required": True}, "etag": {"readonly": True}, "notification_sender_email": {"max_length": 100}, "provisioning_state": {"readonly": True}, "target_provisioning_state": {"readonly": True}, "created_at_utc": {"readonly": True}, "gateway_url": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "portal_url": {"readonly": True}, "management_api_url": {"readonly": True}, "scm_url": {"readonly": True}, "developer_portal_url": {"readonly": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "platform_version": {"readonly": True}, "publisher_email": {"required": True, "max_length": 100}, "publisher_name": {"required": True, "max_length": 100}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "tags": {"key": "tags", "type": "{str}"}, "sku": {"key": "sku", "type": "ApiManagementServiceSkuProperties"}, "identity": {"key": "identity", "type": "ApiManagementServiceIdentity"}, "system_data": {"key": "systemData", "type": "SystemData"}, "location": {"key": "location", "type": "str"}, "etag": {"key": "etag", "type": "str"}, "zones": {"key": "zones", "type": "[str]"}, "notification_sender_email": {"key": "properties.notificationSenderEmail", "type": "str"}, "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, "target_provisioning_state": {"key": "properties.targetProvisioningState", "type": "str"}, "created_at_utc": {"key": "properties.createdAtUtc", "type": "iso-8601"}, "gateway_url": {"key": "properties.gatewayUrl", "type": "str"}, "gateway_regional_url": {"key": "properties.gatewayRegionalUrl", "type": "str"}, "portal_url": {"key": "properties.portalUrl", "type": "str"}, "management_api_url": {"key": "properties.managementApiUrl", "type": "str"}, "scm_url": {"key": "properties.scmUrl", "type": "str"}, "developer_portal_url": {"key": "properties.developerPortalUrl", "type": "str"}, "hostname_configurations": {"key": "properties.hostnameConfigurations", "type": "[HostnameConfiguration]"}, "public_ip_addresses": {"key": "properties.publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "properties.privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "properties.publicIpAddressId", "type": "str"}, "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, "virtual_network_configuration": { "key": "properties.virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration", }, "additional_locations": {"key": "properties.additionalLocations", "type": "[AdditionalLocation]"}, "custom_properties": {"key": "properties.customProperties", "type": "{str}"}, "certificates": {"key": "properties.certificates", "type": "[CertificateConfiguration]"}, "enable_client_certificate": {"key": "properties.enableClientCertificate", "type": "bool"}, "disable_gateway": {"key": "properties.disableGateway", "type": "bool"}, "virtual_network_type": {"key": "properties.virtualNetworkType", "type": "str"}, "api_version_constraint": {"key": "properties.apiVersionConstraint", "type": "ApiVersionConstraint"}, "restore": {"key": "properties.restore", "type": "bool"}, "private_endpoint_connections": { "key": "properties.privateEndpointConnections", "type": "[RemotePrivateEndpointConnectionWrapper]", }, "platform_version": {"key": "properties.platformVersion", "type": "str"}, "publisher_email": {"key": "properties.publisherEmail", "type": "str"}, "publisher_name": {"key": "properties.publisherName", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, sku: "_models.ApiManagementServiceSkuProperties", location: str, publisher_email: str, publisher_name: str, tags: Optional[Dict[str, str]] = None, identity: Optional["_models.ApiManagementServiceIdentity"] = None, zones: Optional[List[str]] = None, notification_sender_email: Optional[str] = None, hostname_configurations: Optional[List["_models.HostnameConfiguration"]] = None, public_ip_address_id: Optional[str] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, additional_locations: Optional[List["_models.AdditionalLocation"]] = None, custom_properties: Optional[Dict[str, str]] = None, certificates: Optional[List["_models.CertificateConfiguration"]] = None, enable_client_certificate: bool = False, disable_gateway: bool = False, virtual_network_type: Union[str, "_models.VirtualNetworkType"] = "None", api_version_constraint: Optional["_models.ApiVersionConstraint"] = None, restore: bool = False, private_endpoint_connections: Optional[List["_models.RemotePrivateEndpointConnectionWrapper"]] = None, **kwargs ): """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] :keyword sku: SKU properties of the API Management service. Required. :paramtype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :keyword identity: Managed service identity of the Api Management service. :paramtype identity: ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity :keyword location: Resource location. Required. :paramtype location: str :keyword zones: A list of availability zones denoting where the resource needs to come from. :paramtype zones: list[str] :keyword notification_sender_email: Email address from which the notification will be sent. :paramtype notification_sender_email: str :keyword hostname_configurations: Custom hostname configuration of the API Management service. :paramtype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :keyword virtual_network_configuration: Virtual network configuration of the API Management service. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword additional_locations: Additional datacenter locations of the API Management service. :paramtype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :keyword custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :paramtype custom_properties: dict[str, str] :keyword certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :paramtype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :keyword enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :paramtype enable_client_certificate: bool :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :paramtype disable_gateway: bool :keyword virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :paramtype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :keyword api_version_constraint: Control Plane Apis version constraint for the API Management service. :paramtype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :keyword restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :paramtype restore: bool :keyword private_endpoint_connections: List of Private Endpoint Connections of this service. :paramtype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :keyword publisher_email: Publisher email. Required. :paramtype publisher_email: str :keyword publisher_name: Publisher name. Required. :paramtype publisher_name: str """ super().__init__(tags=tags, **kwargs) self.sku = sku self.identity = identity self.system_data = None self.location = location self.etag = None self.zones = zones self.notification_sender_email = notification_sender_email self.provisioning_state = None self.target_provisioning_state = None self.created_at_utc = None self.gateway_url = None self.gateway_regional_url = None self.portal_url = None self.management_api_url = None self.scm_url = None self.developer_portal_url = None self.hostname_configurations = hostname_configurations self.public_ip_addresses = None self.private_ip_addresses = None self.public_ip_address_id = public_ip_address_id self.public_network_access = public_network_access self.virtual_network_configuration = virtual_network_configuration self.additional_locations = additional_locations self.custom_properties = custom_properties self.certificates = certificates self.enable_client_certificate = enable_client_certificate self.disable_gateway = disable_gateway self.virtual_network_type = virtual_network_type self.api_version_constraint = api_version_constraint self.restore = restore self.private_endpoint_connections = private_endpoint_connections self.platform_version = None self.publisher_email = publisher_email self.publisher_name = publisher_name
[docs]class ApiManagementServiceSkuProperties(_serialization.Model): """API Management service resource SKU properties. All required parameters must be populated in order to send to Azure. :ivar name: Name of the Sku. Required. Known values are: "Developer", "Standard", "Premium", "Basic", "Consumption", and "Isolated". :vartype name: str or ~azure.mgmt.apimanagement.models.SkuType :ivar capacity: Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0. Required. :vartype capacity: int """ _validation = { "name": {"required": True}, "capacity": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "capacity": {"key": "capacity", "type": "int"}, } def __init__(self, *, name: Union[str, "_models.SkuType"], capacity: int, **kwargs): """ :keyword name: Name of the Sku. Required. Known values are: "Developer", "Standard", "Premium", "Basic", "Consumption", and "Isolated". :paramtype name: str or ~azure.mgmt.apimanagement.models.SkuType :keyword capacity: Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0. Required. :paramtype capacity: int """ super().__init__(**kwargs) self.name = name self.capacity = capacity
[docs]class ApiManagementServiceUpdateParameters(ApimResource): # pylint: disable=too-many-instance-attributes """Parameter supplied to Update Api Management Service. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Resource ID. :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type for API Management resource is set to Microsoft.ApiManagement. :vartype type: str :ivar tags: Resource tags. :vartype tags: dict[str, str] :ivar sku: SKU properties of the API Management service. :vartype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :ivar identity: Managed service identity of the Api Management service. :vartype identity: ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity :ivar etag: ETag of the resource. :vartype etag: str :ivar zones: A list of availability zones denoting where the resource needs to come from. :vartype zones: list[str] :ivar notification_sender_email: Email address from which the notification will be sent. :vartype notification_sender_email: str :ivar provisioning_state: The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. :vartype provisioning_state: str :ivar target_provisioning_state: The provisioning state of the API Management service, which is targeted by the long running operation started on the service. :vartype target_provisioning_state: str :ivar created_at_utc: Creation UTC date of the API Management service.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_at_utc: ~datetime.datetime :ivar gateway_url: Gateway URL of the API Management service. :vartype gateway_url: str :ivar gateway_regional_url: Gateway URL of the API Management service in the Default Region. :vartype gateway_regional_url: str :ivar portal_url: Publisher portal endpoint Url of the API Management service. :vartype portal_url: str :ivar management_api_url: Management API endpoint URL of the API Management service. :vartype management_api_url: str :ivar scm_url: SCM endpoint URL of the API Management service. :vartype scm_url: str :ivar developer_portal_url: DEveloper Portal endpoint URL of the API Management service. :vartype developer_portal_url: str :ivar hostname_configurations: Custom hostname configuration of the API Management service. :vartype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :ivar virtual_network_configuration: Virtual network configuration of the API Management service. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar additional_locations: Additional datacenter locations of the API Management service. :vartype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :ivar custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :vartype custom_properties: dict[str, str] :ivar certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :vartype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :ivar enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :vartype enable_client_certificate: bool :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :vartype disable_gateway: bool :ivar virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :vartype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :ivar api_version_constraint: Control Plane Apis version constraint for the API Management service. :vartype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :ivar restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :vartype restore: bool :ivar private_endpoint_connections: List of Private Endpoint Connections of this service. :vartype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :ivar platform_version: Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion :ivar publisher_email: Publisher email. :vartype publisher_email: str :ivar publisher_name: Publisher name. :vartype publisher_name: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "etag": {"readonly": True}, "notification_sender_email": {"max_length": 100}, "provisioning_state": {"readonly": True}, "target_provisioning_state": {"readonly": True}, "created_at_utc": {"readonly": True}, "gateway_url": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "portal_url": {"readonly": True}, "management_api_url": {"readonly": True}, "scm_url": {"readonly": True}, "developer_portal_url": {"readonly": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "platform_version": {"readonly": True}, "publisher_email": {"max_length": 100}, "publisher_name": {"max_length": 100}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "tags": {"key": "tags", "type": "{str}"}, "sku": {"key": "sku", "type": "ApiManagementServiceSkuProperties"}, "identity": {"key": "identity", "type": "ApiManagementServiceIdentity"}, "etag": {"key": "etag", "type": "str"}, "zones": {"key": "zones", "type": "[str]"}, "notification_sender_email": {"key": "properties.notificationSenderEmail", "type": "str"}, "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, "target_provisioning_state": {"key": "properties.targetProvisioningState", "type": "str"}, "created_at_utc": {"key": "properties.createdAtUtc", "type": "iso-8601"}, "gateway_url": {"key": "properties.gatewayUrl", "type": "str"}, "gateway_regional_url": {"key": "properties.gatewayRegionalUrl", "type": "str"}, "portal_url": {"key": "properties.portalUrl", "type": "str"}, "management_api_url": {"key": "properties.managementApiUrl", "type": "str"}, "scm_url": {"key": "properties.scmUrl", "type": "str"}, "developer_portal_url": {"key": "properties.developerPortalUrl", "type": "str"}, "hostname_configurations": {"key": "properties.hostnameConfigurations", "type": "[HostnameConfiguration]"}, "public_ip_addresses": {"key": "properties.publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "properties.privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "properties.publicIpAddressId", "type": "str"}, "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, "virtual_network_configuration": { "key": "properties.virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration", }, "additional_locations": {"key": "properties.additionalLocations", "type": "[AdditionalLocation]"}, "custom_properties": {"key": "properties.customProperties", "type": "{str}"}, "certificates": {"key": "properties.certificates", "type": "[CertificateConfiguration]"}, "enable_client_certificate": {"key": "properties.enableClientCertificate", "type": "bool"}, "disable_gateway": {"key": "properties.disableGateway", "type": "bool"}, "virtual_network_type": {"key": "properties.virtualNetworkType", "type": "str"}, "api_version_constraint": {"key": "properties.apiVersionConstraint", "type": "ApiVersionConstraint"}, "restore": {"key": "properties.restore", "type": "bool"}, "private_endpoint_connections": { "key": "properties.privateEndpointConnections", "type": "[RemotePrivateEndpointConnectionWrapper]", }, "platform_version": {"key": "properties.platformVersion", "type": "str"}, "publisher_email": {"key": "properties.publisherEmail", "type": "str"}, "publisher_name": {"key": "properties.publisherName", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, tags: Optional[Dict[str, str]] = None, sku: Optional["_models.ApiManagementServiceSkuProperties"] = None, identity: Optional["_models.ApiManagementServiceIdentity"] = None, zones: Optional[List[str]] = None, notification_sender_email: Optional[str] = None, hostname_configurations: Optional[List["_models.HostnameConfiguration"]] = None, public_ip_address_id: Optional[str] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, additional_locations: Optional[List["_models.AdditionalLocation"]] = None, custom_properties: Optional[Dict[str, str]] = None, certificates: Optional[List["_models.CertificateConfiguration"]] = None, enable_client_certificate: bool = False, disable_gateway: bool = False, virtual_network_type: Union[str, "_models.VirtualNetworkType"] = "None", api_version_constraint: Optional["_models.ApiVersionConstraint"] = None, restore: bool = False, private_endpoint_connections: Optional[List["_models.RemotePrivateEndpointConnectionWrapper"]] = None, publisher_email: Optional[str] = None, publisher_name: Optional[str] = None, **kwargs ): """ :keyword tags: Resource tags. :paramtype tags: dict[str, str] :keyword sku: SKU properties of the API Management service. :paramtype sku: ~azure.mgmt.apimanagement.models.ApiManagementServiceSkuProperties :keyword identity: Managed service identity of the Api Management service. :paramtype identity: ~azure.mgmt.apimanagement.models.ApiManagementServiceIdentity :keyword zones: A list of availability zones denoting where the resource needs to come from. :paramtype zones: list[str] :keyword notification_sender_email: Email address from which the notification will be sent. :paramtype notification_sender_email: str :keyword hostname_configurations: Custom hostname configuration of the API Management service. :paramtype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :keyword virtual_network_configuration: Virtual network configuration of the API Management service. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword additional_locations: Additional datacenter locations of the API Management service. :paramtype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :keyword custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :paramtype custom_properties: dict[str, str] :keyword certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :paramtype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :keyword enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :paramtype enable_client_certificate: bool :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :paramtype disable_gateway: bool :keyword virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :paramtype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :keyword api_version_constraint: Control Plane Apis version constraint for the API Management service. :paramtype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :keyword restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :paramtype restore: bool :keyword private_endpoint_connections: List of Private Endpoint Connections of this service. :paramtype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :keyword publisher_email: Publisher email. :paramtype publisher_email: str :keyword publisher_name: Publisher name. :paramtype publisher_name: str """ super().__init__(tags=tags, **kwargs) self.sku = sku self.identity = identity self.etag = None self.zones = zones self.notification_sender_email = notification_sender_email self.provisioning_state = None self.target_provisioning_state = None self.created_at_utc = None self.gateway_url = None self.gateway_regional_url = None self.portal_url = None self.management_api_url = None self.scm_url = None self.developer_portal_url = None self.hostname_configurations = hostname_configurations self.public_ip_addresses = None self.private_ip_addresses = None self.public_ip_address_id = public_ip_address_id self.public_network_access = public_network_access self.virtual_network_configuration = virtual_network_configuration self.additional_locations = additional_locations self.custom_properties = custom_properties self.certificates = certificates self.enable_client_certificate = enable_client_certificate self.disable_gateway = disable_gateway self.virtual_network_type = virtual_network_type self.api_version_constraint = api_version_constraint self.restore = restore self.private_endpoint_connections = private_endpoint_connections self.platform_version = None self.publisher_email = publisher_email self.publisher_name = publisher_name
[docs]class ApiManagementServiceUpdateProperties( ApiManagementServiceBaseProperties ): # pylint: disable=too-many-instance-attributes """Properties of an API Management service resource description. Variables are only populated by the server, and will be ignored when sending a request. :ivar notification_sender_email: Email address from which the notification will be sent. :vartype notification_sender_email: str :ivar provisioning_state: The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. :vartype provisioning_state: str :ivar target_provisioning_state: The provisioning state of the API Management service, which is targeted by the long running operation started on the service. :vartype target_provisioning_state: str :ivar created_at_utc: Creation UTC date of the API Management service.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_at_utc: ~datetime.datetime :ivar gateway_url: Gateway URL of the API Management service. :vartype gateway_url: str :ivar gateway_regional_url: Gateway URL of the API Management service in the Default Region. :vartype gateway_regional_url: str :ivar portal_url: Publisher portal endpoint Url of the API Management service. :vartype portal_url: str :ivar management_api_url: Management API endpoint URL of the API Management service. :vartype management_api_url: str :ivar scm_url: SCM endpoint URL of the API Management service. :vartype scm_url: str :ivar developer_portal_url: DEveloper Portal endpoint URL of the API Management service. :vartype developer_portal_url: str :ivar hostname_configurations: Custom hostname configuration of the API Management service. :vartype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :ivar public_ip_addresses: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. :vartype public_ip_addresses: list[str] :ivar private_ip_addresses: Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. :vartype private_ip_addresses: list[str] :ivar public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :vartype public_ip_address_id: str :ivar public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :vartype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :ivar virtual_network_configuration: Virtual network configuration of the API Management service. :vartype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :ivar additional_locations: Additional datacenter locations of the API Management service. :vartype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :ivar custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :vartype custom_properties: dict[str, str] :ivar certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :vartype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :ivar enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :vartype enable_client_certificate: bool :ivar disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :vartype disable_gateway: bool :ivar virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :vartype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :ivar api_version_constraint: Control Plane Apis version constraint for the API Management service. :vartype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :ivar restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :vartype restore: bool :ivar private_endpoint_connections: List of Private Endpoint Connections of this service. :vartype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :ivar platform_version: Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", and "mtv1". :vartype platform_version: str or ~azure.mgmt.apimanagement.models.PlatformVersion :ivar publisher_email: Publisher email. :vartype publisher_email: str :ivar publisher_name: Publisher name. :vartype publisher_name: str """ _validation = { "notification_sender_email": {"max_length": 100}, "provisioning_state": {"readonly": True}, "target_provisioning_state": {"readonly": True}, "created_at_utc": {"readonly": True}, "gateway_url": {"readonly": True}, "gateway_regional_url": {"readonly": True}, "portal_url": {"readonly": True}, "management_api_url": {"readonly": True}, "scm_url": {"readonly": True}, "developer_portal_url": {"readonly": True}, "public_ip_addresses": {"readonly": True}, "private_ip_addresses": {"readonly": True}, "platform_version": {"readonly": True}, "publisher_email": {"max_length": 100}, "publisher_name": {"max_length": 100}, } _attribute_map = { "notification_sender_email": {"key": "notificationSenderEmail", "type": "str"}, "provisioning_state": {"key": "provisioningState", "type": "str"}, "target_provisioning_state": {"key": "targetProvisioningState", "type": "str"}, "created_at_utc": {"key": "createdAtUtc", "type": "iso-8601"}, "gateway_url": {"key": "gatewayUrl", "type": "str"}, "gateway_regional_url": {"key": "gatewayRegionalUrl", "type": "str"}, "portal_url": {"key": "portalUrl", "type": "str"}, "management_api_url": {"key": "managementApiUrl", "type": "str"}, "scm_url": {"key": "scmUrl", "type": "str"}, "developer_portal_url": {"key": "developerPortalUrl", "type": "str"}, "hostname_configurations": {"key": "hostnameConfigurations", "type": "[HostnameConfiguration]"}, "public_ip_addresses": {"key": "publicIPAddresses", "type": "[str]"}, "private_ip_addresses": {"key": "privateIPAddresses", "type": "[str]"}, "public_ip_address_id": {"key": "publicIpAddressId", "type": "str"}, "public_network_access": {"key": "publicNetworkAccess", "type": "str"}, "virtual_network_configuration": {"key": "virtualNetworkConfiguration", "type": "VirtualNetworkConfiguration"}, "additional_locations": {"key": "additionalLocations", "type": "[AdditionalLocation]"}, "custom_properties": {"key": "customProperties", "type": "{str}"}, "certificates": {"key": "certificates", "type": "[CertificateConfiguration]"}, "enable_client_certificate": {"key": "enableClientCertificate", "type": "bool"}, "disable_gateway": {"key": "disableGateway", "type": "bool"}, "virtual_network_type": {"key": "virtualNetworkType", "type": "str"}, "api_version_constraint": {"key": "apiVersionConstraint", "type": "ApiVersionConstraint"}, "restore": {"key": "restore", "type": "bool"}, "private_endpoint_connections": { "key": "privateEndpointConnections", "type": "[RemotePrivateEndpointConnectionWrapper]", }, "platform_version": {"key": "platformVersion", "type": "str"}, "publisher_email": {"key": "publisherEmail", "type": "str"}, "publisher_name": {"key": "publisherName", "type": "str"}, } def __init__( # pylint: disable=too-many-locals self, *, notification_sender_email: Optional[str] = None, hostname_configurations: Optional[List["_models.HostnameConfiguration"]] = None, public_ip_address_id: Optional[str] = None, public_network_access: Optional[Union[str, "_models.PublicNetworkAccess"]] = None, virtual_network_configuration: Optional["_models.VirtualNetworkConfiguration"] = None, additional_locations: Optional[List["_models.AdditionalLocation"]] = None, custom_properties: Optional[Dict[str, str]] = None, certificates: Optional[List["_models.CertificateConfiguration"]] = None, enable_client_certificate: bool = False, disable_gateway: bool = False, virtual_network_type: Union[str, "_models.VirtualNetworkType"] = "None", api_version_constraint: Optional["_models.ApiVersionConstraint"] = None, restore: bool = False, private_endpoint_connections: Optional[List["_models.RemotePrivateEndpointConnectionWrapper"]] = None, publisher_email: Optional[str] = None, publisher_name: Optional[str] = None, **kwargs ): """ :keyword notification_sender_email: Email address from which the notification will be sent. :paramtype notification_sender_email: str :keyword hostname_configurations: Custom hostname configuration of the API Management service. :paramtype hostname_configurations: list[~azure.mgmt.apimanagement.models.HostnameConfiguration] :keyword public_ip_address_id: Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. :paramtype public_ip_address_id: str :keyword public_network_access: Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". :paramtype public_network_access: str or ~azure.mgmt.apimanagement.models.PublicNetworkAccess :keyword virtual_network_configuration: Virtual network configuration of the API Management service. :paramtype virtual_network_configuration: ~azure.mgmt.apimanagement.models.VirtualNetworkConfiguration :keyword additional_locations: Additional datacenter locations of the API Management service. :paramtype additional_locations: list[~azure.mgmt.apimanagement.models.AdditionalLocation] :keyword custom_properties: Custom properties of the API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168`` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11`` can be used to disable just TLS 1.1.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10`` can be used to disable TLS 1.0 on an API Management service.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11`` can be used to disable just TLS 1.1 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10`` can be used to disable TLS 1.0 for communications with backends.</br>Setting ``Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2`` can be used to enable HTTP2 protocol on an API Management service.</br>Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is ``True`` if the service was created on or before April 1st 2018 and ``False`` otherwise. Http2 setting's default value is ``False``.</br></br>You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:\ ``false``. The default value is ``true`` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384. :paramtype custom_properties: dict[str, str] :keyword certificates: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. :paramtype certificates: list[~azure.mgmt.apimanagement.models.CertificateConfiguration] :keyword enable_client_certificate: Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. :paramtype enable_client_certificate: bool :keyword disable_gateway: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. :paramtype disable_gateway: bool :keyword virtual_network_type: The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". :paramtype virtual_network_type: str or ~azure.mgmt.apimanagement.models.VirtualNetworkType :keyword api_version_constraint: Control Plane Apis version constraint for the API Management service. :paramtype api_version_constraint: ~azure.mgmt.apimanagement.models.ApiVersionConstraint :keyword restore: Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. :paramtype restore: bool :keyword private_endpoint_connections: List of Private Endpoint Connections of this service. :paramtype private_endpoint_connections: list[~azure.mgmt.apimanagement.models.RemotePrivateEndpointConnectionWrapper] :keyword publisher_email: Publisher email. :paramtype publisher_email: str :keyword publisher_name: Publisher name. :paramtype publisher_name: str """ super().__init__( notification_sender_email=notification_sender_email, hostname_configurations=hostname_configurations, public_ip_address_id=public_ip_address_id, public_network_access=public_network_access, virtual_network_configuration=virtual_network_configuration, additional_locations=additional_locations, custom_properties=custom_properties, certificates=certificates, enable_client_certificate=enable_client_certificate, disable_gateway=disable_gateway, virtual_network_type=virtual_network_type, api_version_constraint=api_version_constraint, restore=restore, private_endpoint_connections=private_endpoint_connections, **kwargs ) self.publisher_email = publisher_email self.publisher_name = publisher_name
[docs]class ApiManagementSku(_serialization.Model): # pylint: disable=too-many-instance-attributes """Describes an available ApiManagement SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar resource_type: The type of resource the SKU applies to. :vartype resource_type: str :ivar name: The name of SKU. :vartype name: str :ivar tier: Specifies the tier of virtual machines in a scale set.:code:`<br />`:code:`<br />` Possible Values::code:`<br />`:code:`<br />` **Standard**\ :code:`<br />`:code:`<br />` **Basic**. :vartype tier: str :ivar size: The Size of the SKU. :vartype size: str :ivar family: The Family of this particular SKU. :vartype family: str :ivar kind: The Kind of resources that are supported in this SKU. :vartype kind: str :ivar capacity: Specifies the number of virtual machines in the scale set. :vartype capacity: ~azure.mgmt.apimanagement.models.ApiManagementSkuCapacity :ivar locations: The set of locations that the SKU is available. :vartype locations: list[str] :ivar location_info: A list of locations and availability zones in those locations where the SKU is available. :vartype location_info: list[~azure.mgmt.apimanagement.models.ApiManagementSkuLocationInfo] :ivar api_versions: The api versions that support this SKU. :vartype api_versions: list[str] :ivar costs: Metadata for retrieving price info. :vartype costs: list[~azure.mgmt.apimanagement.models.ApiManagementSkuCosts] :ivar capabilities: A name value pair to describe the capability. :vartype capabilities: list[~azure.mgmt.apimanagement.models.ApiManagementSkuCapabilities] :ivar restrictions: The restrictions because of which SKU cannot be used. This is empty if there are no restrictions. :vartype restrictions: list[~azure.mgmt.apimanagement.models.ApiManagementSkuRestrictions] """ _validation = { "resource_type": {"readonly": True}, "name": {"readonly": True}, "tier": {"readonly": True}, "size": {"readonly": True}, "family": {"readonly": True}, "kind": {"readonly": True}, "capacity": {"readonly": True}, "locations": {"readonly": True}, "location_info": {"readonly": True}, "api_versions": {"readonly": True}, "costs": {"readonly": True}, "capabilities": {"readonly": True}, "restrictions": {"readonly": True}, } _attribute_map = { "resource_type": {"key": "resourceType", "type": "str"}, "name": {"key": "name", "type": "str"}, "tier": {"key": "tier", "type": "str"}, "size": {"key": "size", "type": "str"}, "family": {"key": "family", "type": "str"}, "kind": {"key": "kind", "type": "str"}, "capacity": {"key": "capacity", "type": "ApiManagementSkuCapacity"}, "locations": {"key": "locations", "type": "[str]"}, "location_info": {"key": "locationInfo", "type": "[ApiManagementSkuLocationInfo]"}, "api_versions": {"key": "apiVersions", "type": "[str]"}, "costs": {"key": "costs", "type": "[ApiManagementSkuCosts]"}, "capabilities": {"key": "capabilities", "type": "[ApiManagementSkuCapabilities]"}, "restrictions": {"key": "restrictions", "type": "[ApiManagementSkuRestrictions]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.resource_type = None self.name = None self.tier = None self.size = None self.family = None self.kind = None self.capacity = None self.locations = None self.location_info = None self.api_versions = None self.costs = None self.capabilities = None self.restrictions = None
[docs]class ApiManagementSkuCapabilities(_serialization.Model): """Describes The SKU capabilities object. Variables are only populated by the server, and will be ignored when sending a request. :ivar name: An invariant to describe the feature. :vartype name: str :ivar value: An invariant if the feature is measured by quantity. :vartype value: str """ _validation = { "name": {"readonly": True}, "value": {"readonly": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "value": {"key": "value", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.name = None self.value = None
[docs]class ApiManagementSkuCapacity(_serialization.Model): """Describes scaling information of a SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar minimum: The minimum capacity. :vartype minimum: int :ivar maximum: The maximum capacity that can be set. :vartype maximum: int :ivar default: The default capacity. :vartype default: int :ivar scale_type: The scale type applicable to the sku. Known values are: "Automatic", "Manual", and "None". :vartype scale_type: str or ~azure.mgmt.apimanagement.models.ApiManagementSkuCapacityScaleType """ _validation = { "minimum": {"readonly": True}, "maximum": {"readonly": True}, "default": {"readonly": True}, "scale_type": {"readonly": True}, } _attribute_map = { "minimum": {"key": "minimum", "type": "int"}, "maximum": {"key": "maximum", "type": "int"}, "default": {"key": "default", "type": "int"}, "scale_type": {"key": "scaleType", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.minimum = None self.maximum = None self.default = None self.scale_type = None
[docs]class ApiManagementSkuCosts(_serialization.Model): """Describes metadata for retrieving price info. Variables are only populated by the server, and will be ignored when sending a request. :ivar meter_id: Used for querying price from commerce. :vartype meter_id: str :ivar quantity: The multiplier is needed to extend the base metered cost. :vartype quantity: int :ivar extended_unit: An invariant to show the extended unit. :vartype extended_unit: str """ _validation = { "meter_id": {"readonly": True}, "quantity": {"readonly": True}, "extended_unit": {"readonly": True}, } _attribute_map = { "meter_id": {"key": "meterID", "type": "str"}, "quantity": {"key": "quantity", "type": "int"}, "extended_unit": {"key": "extendedUnit", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.meter_id = None self.quantity = None self.extended_unit = None
[docs]class ApiManagementSkuLocationInfo(_serialization.Model): """ApiManagementSkuLocationInfo. Variables are only populated by the server, and will be ignored when sending a request. :ivar location: Location of the SKU. :vartype location: str :ivar zones: List of availability zones where the SKU is supported. :vartype zones: list[str] :ivar zone_details: Details of capabilities available to a SKU in specific zones. :vartype zone_details: list[~azure.mgmt.apimanagement.models.ApiManagementSkuZoneDetails] """ _validation = { "location": {"readonly": True}, "zones": {"readonly": True}, "zone_details": {"readonly": True}, } _attribute_map = { "location": {"key": "location", "type": "str"}, "zones": {"key": "zones", "type": "[str]"}, "zone_details": {"key": "zoneDetails", "type": "[ApiManagementSkuZoneDetails]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.location = None self.zones = None self.zone_details = None
[docs]class ApiManagementSkuRestrictionInfo(_serialization.Model): """ApiManagementSkuRestrictionInfo. Variables are only populated by the server, and will be ignored when sending a request. :ivar locations: Locations where the SKU is restricted. :vartype locations: list[str] :ivar zones: List of availability zones where the SKU is restricted. :vartype zones: list[str] """ _validation = { "locations": {"readonly": True}, "zones": {"readonly": True}, } _attribute_map = { "locations": {"key": "locations", "type": "[str]"}, "zones": {"key": "zones", "type": "[str]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.locations = None self.zones = None
[docs]class ApiManagementSkuRestrictions(_serialization.Model): """Describes scaling information of a SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar type: The type of restrictions. Known values are: "Location" and "Zone". :vartype type: str or ~azure.mgmt.apimanagement.models.ApiManagementSkuRestrictionsType :ivar values: The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted. :vartype values: list[str] :ivar restriction_info: The information about the restriction where the SKU cannot be used. :vartype restriction_info: ~azure.mgmt.apimanagement.models.ApiManagementSkuRestrictionInfo :ivar reason_code: The reason for restriction. Known values are: "QuotaId" and "NotAvailableForSubscription". :vartype reason_code: str or ~azure.mgmt.apimanagement.models.ApiManagementSkuRestrictionsReasonCode """ _validation = { "type": {"readonly": True}, "values": {"readonly": True}, "restriction_info": {"readonly": True}, "reason_code": {"readonly": True}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "values": {"key": "values", "type": "[str]"}, "restriction_info": {"key": "restrictionInfo", "type": "ApiManagementSkuRestrictionInfo"}, "reason_code": {"key": "reasonCode", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.type = None self.values = None self.restriction_info = None self.reason_code = None
[docs]class ApiManagementSkusResult(_serialization.Model): """The List Resource Skus operation response. 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 value: The list of skus available for the subscription. Required. :vartype value: list[~azure.mgmt.apimanagement.models.ApiManagementSku] :ivar next_link: The URI to fetch the next page of Resource Skus. Call ListNext() with this URI to fetch the next page of Resource Skus. :vartype next_link: str """ _validation = { "value": {"required": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ApiManagementSku]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, value: List["_models.ApiManagementSku"], **kwargs): """ :keyword value: The list of skus available for the subscription. Required. :paramtype value: list[~azure.mgmt.apimanagement.models.ApiManagementSku] """ super().__init__(**kwargs) self.value = value self.next_link = None
[docs]class ApiManagementSkuZoneDetails(_serialization.Model): """Describes The zonal capabilities of a SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar name: The set of zones that the SKU is available in with the specified capabilities. :vartype name: list[str] :ivar capabilities: A list of capabilities that are available for the SKU in the specified list of zones. :vartype capabilities: list[~azure.mgmt.apimanagement.models.ApiManagementSkuCapabilities] """ _validation = { "name": {"readonly": True}, "capabilities": {"readonly": True}, } _attribute_map = { "name": {"key": "name", "type": "[str]"}, "capabilities": {"key": "capabilities", "type": "[ApiManagementSkuCapabilities]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.name = None self.capabilities = None
[docs]class ApiReleaseCollection(_serialization.Model): """Paged ApiRelease list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ApiReleaseContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ApiReleaseContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class ApiReleaseContract(Resource): """ApiRelease details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar api_id: Identifier of the API the release belongs to. :vartype api_id: str :ivar created_date_time: The time the API was released. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype created_date_time: ~datetime.datetime :ivar updated_date_time: The time the API release was updated. :vartype updated_date_time: ~datetime.datetime :ivar notes: Release Notes. :vartype notes: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "created_date_time": {"readonly": True}, "updated_date_time": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "api_id": {"key": "properties.apiId", "type": "str"}, "created_date_time": {"key": "properties.createdDateTime", "type": "iso-8601"}, "updated_date_time": {"key": "properties.updatedDateTime", "type": "iso-8601"}, "notes": {"key": "properties.notes", "type": "str"}, } def __init__(self, *, api_id: Optional[str] = None, notes: Optional[str] = None, **kwargs): """ :keyword api_id: Identifier of the API the release belongs to. :paramtype api_id: str :keyword notes: Release Notes. :paramtype notes: str """ super().__init__(**kwargs) self.api_id = api_id self.created_date_time = None self.updated_date_time = None self.notes = notes
[docs]class ApiRevisionCollection(_serialization.Model): """Paged API Revision list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ApiRevisionContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ApiRevisionContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class ApiRevisionContract(_serialization.Model): """Summary of revision metadata. Variables are only populated by the server, and will be ignored when sending a request. :ivar api_id: Identifier of the API Revision. :vartype api_id: str :ivar api_revision: Revision number of API. :vartype api_revision: str :ivar created_date_time: The time the API Revision was created. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype created_date_time: ~datetime.datetime :ivar updated_date_time: The time the API Revision were updated. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype updated_date_time: ~datetime.datetime :ivar description: Description of the API Revision. :vartype description: str :ivar private_url: Gateway URL for accessing the non-current API Revision. :vartype private_url: str :ivar is_online: Indicates if API revision is the current api revision. :vartype is_online: bool :ivar is_current: Indicates if API revision is accessible via the gateway. :vartype is_current: bool """ _validation = { "api_id": {"readonly": True}, "api_revision": {"readonly": True, "max_length": 100, "min_length": 1}, "created_date_time": {"readonly": True}, "updated_date_time": {"readonly": True}, "description": {"readonly": True, "max_length": 256}, "private_url": {"readonly": True}, "is_online": {"readonly": True}, "is_current": {"readonly": True}, } _attribute_map = { "api_id": {"key": "apiId", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "created_date_time": {"key": "createdDateTime", "type": "iso-8601"}, "updated_date_time": {"key": "updatedDateTime", "type": "iso-8601"}, "description": {"key": "description", "type": "str"}, "private_url": {"key": "privateUrl", "type": "str"}, "is_online": {"key": "isOnline", "type": "bool"}, "is_current": {"key": "isCurrent", "type": "bool"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.api_id = None self.api_revision = None self.created_date_time = None self.updated_date_time = None self.description = None self.private_url = None self.is_online = None self.is_current = None
[docs]class ApiRevisionInfoContract(_serialization.Model): """Object used to create an API Revision or Version based on an existing API Revision. :ivar source_api_id: Resource identifier of API to be used to create the revision from. :vartype source_api_id: str :ivar api_version_name: Version identifier for the new API Version. :vartype api_version_name: str :ivar api_revision_description: Description of new API Revision. :vartype api_revision_description: str :ivar api_version_set: Version set details. :vartype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ _validation = { "api_version_name": {"max_length": 100}, "api_revision_description": {"max_length": 256}, } _attribute_map = { "source_api_id": {"key": "sourceApiId", "type": "str"}, "api_version_name": {"key": "apiVersionName", "type": "str"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_set": {"key": "apiVersionSet", "type": "ApiVersionSetContractDetails"}, } def __init__( self, *, source_api_id: Optional[str] = None, api_version_name: Optional[str] = None, api_revision_description: Optional[str] = None, api_version_set: Optional["_models.ApiVersionSetContractDetails"] = None, **kwargs ): """ :keyword source_api_id: Resource identifier of API to be used to create the revision from. :paramtype source_api_id: str :keyword api_version_name: Version identifier for the new API Version. :paramtype api_version_name: str :keyword api_revision_description: Description of new API Revision. :paramtype api_revision_description: str :keyword api_version_set: Version set details. :paramtype api_version_set: ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetails """ super().__init__(**kwargs) self.source_api_id = source_api_id self.api_version_name = api_version_name self.api_revision_description = api_revision_description self.api_version_set = api_version_set
[docs]class ApiTagResourceContractProperties(ApiEntityBaseContract): # pylint: disable=too-many-instance-attributes """API contract properties for the Tag Resources. Variables are only populated by the server, and will be ignored when sending a request. :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar id: API identifier in the form /apis/{apiId}. :vartype id: str :ivar name: API name. :vartype name: str :ivar service_url: Absolute URL of the backend service implementing this API. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000, "min_length": 1}, "path": {"max_length": 400}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authentication_settings": {"key": "authenticationSettings", "type": "AuthenticationSettingsContract"}, "subscription_key_parameter_names": { "key": "subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "type", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "is_current": {"key": "isCurrent", "type": "bool"}, "is_online": {"key": "isOnline", "type": "bool"}, "api_revision_description": {"key": "apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "apiVersionSetId", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "termsOfServiceUrl", "type": "str"}, "contact": {"key": "contact", "type": "ApiContactInformation"}, "license": {"key": "license", "type": "ApiLicenseInformation"}, "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "service_url": {"key": "serviceUrl", "type": "str"}, "path": {"key": "path", "type": "str"}, "protocols": {"key": "protocols", "type": "[str]"}, } def __init__( self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, id: Optional[str] = None, # pylint: disable=redefined-builtin name: Optional[str] = None, service_url: Optional[str] = None, path: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword id: API identifier in the form /apis/{apiId}. :paramtype id: str :keyword name: API name. :paramtype name: str :keyword service_url: Absolute URL of the backend service implementing this API. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ super().__init__( description=description, authentication_settings=authentication_settings, subscription_key_parameter_names=subscription_key_parameter_names, api_type=api_type, api_revision=api_revision, api_version=api_version, is_current=is_current, api_revision_description=api_revision_description, api_version_description=api_version_description, api_version_set_id=api_version_set_id, subscription_required=subscription_required, terms_of_service_url=terms_of_service_url, contact=contact, license=license, **kwargs ) self.id = id self.name = name self.service_url = service_url self.path = path self.protocols = protocols
[docs]class ApiUpdateContract(_serialization.Model): # pylint: disable=too-many-instance-attributes """API update contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar description: Description of the API. May include HTML formatting tags. :vartype description: str :ivar authentication_settings: Collection of authentication settings included into this API. :vartype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :ivar subscription_key_parameter_names: Protocols over which API is made available. :vartype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :ivar api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :vartype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :ivar api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :vartype api_revision: str :ivar api_version: Indicates the version identifier of the API if the API is versioned. :vartype api_version: str :ivar is_current: Indicates if API revision is current api revision. :vartype is_current: bool :ivar is_online: Indicates if API revision is accessible via the gateway. :vartype is_online: bool :ivar api_revision_description: Description of the API Revision. :vartype api_revision_description: str :ivar api_version_description: Description of the API Version. :vartype api_version_description: str :ivar api_version_set_id: A resource identifier for the related ApiVersionSet. :vartype api_version_set_id: str :ivar subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :vartype subscription_required: bool :ivar terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :vartype terms_of_service_url: str :ivar contact: Contact information for the API. :vartype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :ivar license: License information for the API. :vartype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :ivar display_name: API name. :vartype display_name: str :ivar service_url: Absolute URL of the backend service implementing this API. :vartype service_url: str :ivar path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :vartype path: str :ivar protocols: Describes on which protocols the operations in this API can be invoked. :vartype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ _validation = { "api_revision": {"max_length": 100, "min_length": 1}, "api_version": {"max_length": 100}, "is_online": {"readonly": True}, "api_revision_description": {"max_length": 256}, "api_version_description": {"max_length": 256}, "display_name": {"max_length": 300, "min_length": 1}, "service_url": {"max_length": 2000, "min_length": 1}, "path": {"max_length": 400}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "authentication_settings": { "key": "properties.authenticationSettings", "type": "AuthenticationSettingsContract", }, "subscription_key_parameter_names": { "key": "properties.subscriptionKeyParameterNames", "type": "SubscriptionKeyParameterNamesContract", }, "api_type": {"key": "properties.type", "type": "str"}, "api_revision": {"key": "properties.apiRevision", "type": "str"}, "api_version": {"key": "properties.apiVersion", "type": "str"}, "is_current": {"key": "properties.isCurrent", "type": "bool"}, "is_online": {"key": "properties.isOnline", "type": "bool"}, "api_revision_description": {"key": "properties.apiRevisionDescription", "type": "str"}, "api_version_description": {"key": "properties.apiVersionDescription", "type": "str"}, "api_version_set_id": {"key": "properties.apiVersionSetId", "type": "str"}, "subscription_required": {"key": "properties.subscriptionRequired", "type": "bool"}, "terms_of_service_url": {"key": "properties.termsOfServiceUrl", "type": "str"}, "contact": {"key": "properties.contact", "type": "ApiContactInformation"}, "license": {"key": "properties.license", "type": "ApiLicenseInformation"}, "display_name": {"key": "properties.displayName", "type": "str"}, "service_url": {"key": "properties.serviceUrl", "type": "str"}, "path": {"key": "properties.path", "type": "str"}, "protocols": {"key": "properties.protocols", "type": "[str]"}, } def __init__( self, *, description: Optional[str] = None, authentication_settings: Optional["_models.AuthenticationSettingsContract"] = None, subscription_key_parameter_names: Optional["_models.SubscriptionKeyParameterNamesContract"] = None, api_type: Optional[Union[str, "_models.ApiType"]] = None, api_revision: Optional[str] = None, api_version: Optional[str] = None, is_current: Optional[bool] = None, api_revision_description: Optional[str] = None, api_version_description: Optional[str] = None, api_version_set_id: Optional[str] = None, subscription_required: Optional[bool] = None, terms_of_service_url: Optional[str] = None, contact: Optional["_models.ApiContactInformation"] = None, license: Optional["_models.ApiLicenseInformation"] = None, display_name: Optional[str] = None, service_url: Optional[str] = None, path: Optional[str] = None, protocols: Optional[List[Union[str, "_models.Protocol"]]] = None, **kwargs ): """ :keyword description: Description of the API. May include HTML formatting tags. :paramtype description: str :keyword authentication_settings: Collection of authentication settings included into this API. :paramtype authentication_settings: ~azure.mgmt.apimanagement.models.AuthenticationSettingsContract :keyword subscription_key_parameter_names: Protocols over which API is made available. :paramtype subscription_key_parameter_names: ~azure.mgmt.apimanagement.models.SubscriptionKeyParameterNamesContract :keyword api_type: Type of API. Known values are: "http", "soap", "websocket", and "graphql". :paramtype api_type: str or ~azure.mgmt.apimanagement.models.ApiType :keyword api_revision: Describes the revision of the API. If no value is provided, default revision 1 is created. :paramtype api_revision: str :keyword api_version: Indicates the version identifier of the API if the API is versioned. :paramtype api_version: str :keyword is_current: Indicates if API revision is current api revision. :paramtype is_current: bool :keyword api_revision_description: Description of the API Revision. :paramtype api_revision_description: str :keyword api_version_description: Description of the API Version. :paramtype api_version_description: str :keyword api_version_set_id: A resource identifier for the related ApiVersionSet. :paramtype api_version_set_id: str :keyword subscription_required: Specifies whether an API or Product subscription is required for accessing the API. :paramtype subscription_required: bool :keyword terms_of_service_url: A URL to the Terms of Service for the API. MUST be in the format of a URL. :paramtype terms_of_service_url: str :keyword contact: Contact information for the API. :paramtype contact: ~azure.mgmt.apimanagement.models.ApiContactInformation :keyword license: License information for the API. :paramtype license: ~azure.mgmt.apimanagement.models.ApiLicenseInformation :keyword display_name: API name. :paramtype display_name: str :keyword service_url: Absolute URL of the backend service implementing this API. :paramtype service_url: str :keyword path: Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API. :paramtype path: str :keyword protocols: Describes on which protocols the operations in this API can be invoked. :paramtype protocols: list[str or ~azure.mgmt.apimanagement.models.Protocol] """ super().__init__(**kwargs) self.description = description self.authentication_settings = authentication_settings self.subscription_key_parameter_names = subscription_key_parameter_names self.api_type = api_type self.api_revision = api_revision self.api_version = api_version self.is_current = is_current self.is_online = None self.api_revision_description = api_revision_description self.api_version_description = api_version_description self.api_version_set_id = api_version_set_id self.subscription_required = subscription_required self.terms_of_service_url = terms_of_service_url self.contact = contact self.license = license self.display_name = display_name self.service_url = service_url self.path = path self.protocols = protocols
[docs]class ApiVersionConstraint(_serialization.Model): """Control Plane Apis version constraint for the API Management service. :ivar min_api_version: Limit control plane API calls to API Management service with version equal to or newer than this value. :vartype min_api_version: str """ _attribute_map = { "min_api_version": {"key": "minApiVersion", "type": "str"}, } def __init__(self, *, min_api_version: Optional[str] = None, **kwargs): """ :keyword min_api_version: Limit control plane API calls to API Management service with version equal to or newer than this value. :paramtype min_api_version: str """ super().__init__(**kwargs) self.min_api_version = min_api_version
[docs]class ApiVersionSetCollection(_serialization.Model): """Paged API Version Set list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ApiVersionSetContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[ApiVersionSetContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.ApiVersionSetContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.ApiVersionSetContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class ApiVersionSetContract(Resource): """API Version Set Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Description of API Version Set. :vartype description: str :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str :ivar display_name: Name of API Version Set. :vartype display_name: str :ivar versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :vartype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "version_query_name": {"max_length": 100, "min_length": 1}, "version_header_name": {"max_length": 100, "min_length": 1}, "display_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "version_query_name": {"key": "properties.versionQueryName", "type": "str"}, "version_header_name": {"key": "properties.versionHeaderName", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "versioning_scheme": {"key": "properties.versioningScheme", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, display_name: Optional[str] = None, versioning_scheme: Optional[Union[str, "_models.VersioningScheme"]] = None, **kwargs ): """ :keyword description: Description of API Version Set. :paramtype description: str :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str :keyword display_name: Name of API Version Set. :paramtype display_name: str :keyword versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :paramtype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ super().__init__(**kwargs) self.description = description self.version_query_name = version_query_name self.version_header_name = version_header_name self.display_name = display_name self.versioning_scheme = versioning_scheme
[docs]class ApiVersionSetContractDetails(_serialization.Model): """An API Version Set contains the common configuration for a set of API Versions relating. :ivar id: Identifier for existing API Version Set. Omit this value to create a new Version Set. :vartype id: str :ivar name: The display Name of the API Version Set. :vartype name: str :ivar description: Description of API Version Set. :vartype description: str :ivar versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :vartype versioning_scheme: str or ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetailsVersioningScheme :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str """ _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "description": {"key": "description", "type": "str"}, "versioning_scheme": {"key": "versioningScheme", "type": "str"}, "version_query_name": {"key": "versionQueryName", "type": "str"}, "version_header_name": {"key": "versionHeaderName", "type": "str"}, } def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin name: Optional[str] = None, description: Optional[str] = None, versioning_scheme: Optional[Union[str, "_models.ApiVersionSetContractDetailsVersioningScheme"]] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, **kwargs ): """ :keyword id: Identifier for existing API Version Set. Omit this value to create a new Version Set. :paramtype id: str :keyword name: The display Name of the API Version Set. :paramtype name: str :keyword description: Description of API Version Set. :paramtype description: str :keyword versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :paramtype versioning_scheme: str or ~azure.mgmt.apimanagement.models.ApiVersionSetContractDetailsVersioningScheme :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str """ super().__init__(**kwargs) self.id = id self.name = name self.description = description self.versioning_scheme = versioning_scheme self.version_query_name = version_query_name self.version_header_name = version_header_name
[docs]class ApiVersionSetEntityBase(_serialization.Model): """API Version set base parameters. :ivar description: Description of API Version Set. :vartype description: str :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str """ _validation = { "version_query_name": {"max_length": 100, "min_length": 1}, "version_header_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "version_query_name": {"key": "versionQueryName", "type": "str"}, "version_header_name": {"key": "versionHeaderName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, **kwargs ): """ :keyword description: Description of API Version Set. :paramtype description: str :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str """ super().__init__(**kwargs) self.description = description self.version_query_name = version_query_name self.version_header_name = version_header_name
[docs]class ApiVersionSetContractProperties(ApiVersionSetEntityBase): """Properties of an API Version Set. All required parameters must be populated in order to send to Azure. :ivar description: Description of API Version Set. :vartype description: str :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str :ivar display_name: Name of API Version Set. Required. :vartype display_name: str :ivar versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Required. Known values are: "Segment", "Query", and "Header". :vartype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ _validation = { "version_query_name": {"max_length": 100, "min_length": 1}, "version_header_name": {"max_length": 100, "min_length": 1}, "display_name": {"required": True, "max_length": 100, "min_length": 1}, "versioning_scheme": {"required": True}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "version_query_name": {"key": "versionQueryName", "type": "str"}, "version_header_name": {"key": "versionHeaderName", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "versioning_scheme": {"key": "versioningScheme", "type": "str"}, } def __init__( self, *, display_name: str, versioning_scheme: Union[str, "_models.VersioningScheme"], description: Optional[str] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, **kwargs ): """ :keyword description: Description of API Version Set. :paramtype description: str :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str :keyword display_name: Name of API Version Set. Required. :paramtype display_name: str :keyword versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Required. Known values are: "Segment", "Query", and "Header". :paramtype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ super().__init__( description=description, version_query_name=version_query_name, version_header_name=version_header_name, **kwargs ) self.display_name = display_name self.versioning_scheme = versioning_scheme
[docs]class ApiVersionSetUpdateParameters(_serialization.Model): """Parameters to update or create an API Version Set Contract. :ivar description: Description of API Version Set. :vartype description: str :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str :ivar display_name: Name of API Version Set. :vartype display_name: str :ivar versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :vartype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ _validation = { "version_query_name": {"max_length": 100, "min_length": 1}, "version_header_name": {"max_length": 100, "min_length": 1}, "display_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "version_query_name": {"key": "properties.versionQueryName", "type": "str"}, "version_header_name": {"key": "properties.versionHeaderName", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "versioning_scheme": {"key": "properties.versioningScheme", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, display_name: Optional[str] = None, versioning_scheme: Optional[Union[str, "_models.VersioningScheme"]] = None, **kwargs ): """ :keyword description: Description of API Version Set. :paramtype description: str :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str :keyword display_name: Name of API Version Set. :paramtype display_name: str :keyword versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :paramtype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ super().__init__(**kwargs) self.description = description self.version_query_name = version_query_name self.version_header_name = version_header_name self.display_name = display_name self.versioning_scheme = versioning_scheme
[docs]class ApiVersionSetUpdateParametersProperties(ApiVersionSetEntityBase): """Properties used to create or update an API Version Set. :ivar description: Description of API Version Set. :vartype description: str :ivar version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :vartype version_query_name: str :ivar version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :vartype version_header_name: str :ivar display_name: Name of API Version Set. :vartype display_name: str :ivar versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :vartype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ _validation = { "version_query_name": {"max_length": 100, "min_length": 1}, "version_header_name": {"max_length": 100, "min_length": 1}, "display_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "version_query_name": {"key": "versionQueryName", "type": "str"}, "version_header_name": {"key": "versionHeaderName", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "versioning_scheme": {"key": "versioningScheme", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, version_query_name: Optional[str] = None, version_header_name: Optional[str] = None, display_name: Optional[str] = None, versioning_scheme: Optional[Union[str, "_models.VersioningScheme"]] = None, **kwargs ): """ :keyword description: Description of API Version Set. :paramtype description: str :keyword version_query_name: Name of query parameter that indicates the API Version if versioningScheme is set to ``query``. :paramtype version_query_name: str :keyword version_header_name: Name of HTTP header parameter that indicates the API Version if versioningScheme is set to ``header``. :paramtype version_header_name: str :keyword display_name: Name of API Version Set. :paramtype display_name: str :keyword versioning_scheme: An value that determines where the API Version identifier will be located in a HTTP request. Known values are: "Segment", "Query", and "Header". :paramtype versioning_scheme: str or ~azure.mgmt.apimanagement.models.VersioningScheme """ super().__init__( description=description, version_query_name=version_query_name, version_header_name=version_header_name, **kwargs ) self.display_name = display_name self.versioning_scheme = versioning_scheme
[docs]class ArmIdWrapper(_serialization.Model): """A wrapper for an ARM resource id. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: :vartype id: str """ _validation = { "id": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.id = None
[docs]class AssociationContract(Resource): """Association entity details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar provisioning_state: Provisioning state. Default value is "created". :vartype provisioning_state: 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"}, "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, } def __init__(self, *, provisioning_state: Optional[Literal["created"]] = None, **kwargs): """ :keyword provisioning_state: Provisioning state. Default value is "created". :paramtype provisioning_state: str """ super().__init__(**kwargs) self.provisioning_state = provisioning_state
[docs]class AuthenticationSettingsContract(_serialization.Model): """API Authentication Settings. :ivar o_auth2: OAuth2 Authentication settings. :vartype o_auth2: ~azure.mgmt.apimanagement.models.OAuth2AuthenticationSettingsContract :ivar openid: OpenID Connect Authentication Settings. :vartype openid: ~azure.mgmt.apimanagement.models.OpenIdAuthenticationSettingsContract """ _attribute_map = { "o_auth2": {"key": "oAuth2", "type": "OAuth2AuthenticationSettingsContract"}, "openid": {"key": "openid", "type": "OpenIdAuthenticationSettingsContract"}, } def __init__( self, *, o_auth2: Optional["_models.OAuth2AuthenticationSettingsContract"] = None, openid: Optional["_models.OpenIdAuthenticationSettingsContract"] = None, **kwargs ): """ :keyword o_auth2: OAuth2 Authentication settings. :paramtype o_auth2: ~azure.mgmt.apimanagement.models.OAuth2AuthenticationSettingsContract :keyword openid: OpenID Connect Authentication Settings. :paramtype openid: ~azure.mgmt.apimanagement.models.OpenIdAuthenticationSettingsContract """ super().__init__(**kwargs) self.o_auth2 = o_auth2 self.openid = openid
[docs]class AuthorizationServerCollection(_serialization.Model): """Paged OAuth2 Authorization Servers list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.AuthorizationServerContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[AuthorizationServerContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.AuthorizationServerContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.AuthorizationServerContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class AuthorizationServerContract(Resource): # pylint: disable=too-many-instance-attributes """External OAuth authorization server settings. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Description of the authorization server. Can contain HTML formatting tags. :vartype description: str :ivar authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :vartype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :ivar client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :vartype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :ivar token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :vartype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :ivar token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :vartype token_endpoint: str :ivar support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :vartype support_state: bool :ivar default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :vartype default_scope: str :ivar bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str :ivar display_name: User-friendly authorization server name. :vartype display_name: str :ivar client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :vartype client_registration_endpoint: str :ivar authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :vartype authorization_endpoint: str :ivar grant_types: Form of an authorization grant, which the client uses to request the access token. :vartype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :ivar client_id: Client or app id registered with this authorization server. :vartype client_id: str :ivar client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 50, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "authorization_methods": {"key": "properties.authorizationMethods", "type": "[str]"}, "client_authentication_method": {"key": "properties.clientAuthenticationMethod", "type": "[str]"}, "token_body_parameters": {"key": "properties.tokenBodyParameters", "type": "[TokenBodyParameterContract]"}, "token_endpoint": {"key": "properties.tokenEndpoint", "type": "str"}, "support_state": {"key": "properties.supportState", "type": "bool"}, "default_scope": {"key": "properties.defaultScope", "type": "str"}, "bearer_token_sending_methods": {"key": "properties.bearerTokenSendingMethods", "type": "[str]"}, "resource_owner_username": {"key": "properties.resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "properties.resourceOwnerPassword", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "client_registration_endpoint": {"key": "properties.clientRegistrationEndpoint", "type": "str"}, "authorization_endpoint": {"key": "properties.authorizationEndpoint", "type": "str"}, "grant_types": {"key": "properties.grantTypes", "type": "[str]"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, authorization_methods: Optional[List[Union[str, "_models.AuthorizationMethod"]]] = None, client_authentication_method: Optional[List[Union[str, "_models.ClientAuthenticationMethod"]]] = None, token_body_parameters: Optional[List["_models.TokenBodyParameterContract"]] = None, token_endpoint: Optional[str] = None, support_state: Optional[bool] = None, default_scope: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethod"]]] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, display_name: Optional[str] = None, client_registration_endpoint: Optional[str] = None, authorization_endpoint: Optional[str] = None, grant_types: Optional[List[Union[str, "_models.GrantType"]]] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword description: Description of the authorization server. Can contain HTML formatting tags. :paramtype description: str :keyword authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :paramtype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :keyword client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :paramtype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :keyword token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :paramtype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :keyword token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :paramtype token_endpoint: str :keyword support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :paramtype support_state: bool :keyword default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :paramtype default_scope: str :keyword bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str :keyword display_name: User-friendly authorization server name. :paramtype display_name: str :keyword client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :paramtype client_registration_endpoint: str :keyword authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :paramtype authorization_endpoint: str :keyword grant_types: Form of an authorization grant, which the client uses to request the access token. :paramtype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :keyword client_id: Client or app id registered with this authorization server. :paramtype client_id: str :keyword client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__(**kwargs) self.description = description self.authorization_methods = authorization_methods self.client_authentication_method = client_authentication_method self.token_body_parameters = token_body_parameters self.token_endpoint = token_endpoint self.support_state = support_state self.default_scope = default_scope self.bearer_token_sending_methods = bearer_token_sending_methods self.resource_owner_username = resource_owner_username self.resource_owner_password = resource_owner_password self.display_name = display_name self.client_registration_endpoint = client_registration_endpoint self.authorization_endpoint = authorization_endpoint self.grant_types = grant_types self.client_id = client_id self.client_secret = client_secret
[docs]class AuthorizationServerContractBaseProperties(_serialization.Model): """External OAuth authorization server Update settings contract. :ivar description: Description of the authorization server. Can contain HTML formatting tags. :vartype description: str :ivar authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :vartype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :ivar client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :vartype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :ivar token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :vartype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :ivar token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :vartype token_endpoint: str :ivar support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :vartype support_state: bool :ivar default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :vartype default_scope: str :ivar bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str """ _attribute_map = { "description": {"key": "description", "type": "str"}, "authorization_methods": {"key": "authorizationMethods", "type": "[str]"}, "client_authentication_method": {"key": "clientAuthenticationMethod", "type": "[str]"}, "token_body_parameters": {"key": "tokenBodyParameters", "type": "[TokenBodyParameterContract]"}, "token_endpoint": {"key": "tokenEndpoint", "type": "str"}, "support_state": {"key": "supportState", "type": "bool"}, "default_scope": {"key": "defaultScope", "type": "str"}, "bearer_token_sending_methods": {"key": "bearerTokenSendingMethods", "type": "[str]"}, "resource_owner_username": {"key": "resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "resourceOwnerPassword", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, authorization_methods: Optional[List[Union[str, "_models.AuthorizationMethod"]]] = None, client_authentication_method: Optional[List[Union[str, "_models.ClientAuthenticationMethod"]]] = None, token_body_parameters: Optional[List["_models.TokenBodyParameterContract"]] = None, token_endpoint: Optional[str] = None, support_state: Optional[bool] = None, default_scope: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethod"]]] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, **kwargs ): """ :keyword description: Description of the authorization server. Can contain HTML formatting tags. :paramtype description: str :keyword authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :paramtype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :keyword client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :paramtype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :keyword token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :paramtype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :keyword token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :paramtype token_endpoint: str :keyword support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :paramtype support_state: bool :keyword default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :paramtype default_scope: str :keyword bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str """ super().__init__(**kwargs) self.description = description self.authorization_methods = authorization_methods self.client_authentication_method = client_authentication_method self.token_body_parameters = token_body_parameters self.token_endpoint = token_endpoint self.support_state = support_state self.default_scope = default_scope self.bearer_token_sending_methods = bearer_token_sending_methods self.resource_owner_username = resource_owner_username self.resource_owner_password = resource_owner_password
[docs]class AuthorizationServerContractProperties( AuthorizationServerContractBaseProperties ): # pylint: disable=too-many-instance-attributes """External OAuth authorization server settings Properties. All required parameters must be populated in order to send to Azure. :ivar description: Description of the authorization server. Can contain HTML formatting tags. :vartype description: str :ivar authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :vartype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :ivar client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :vartype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :ivar token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :vartype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :ivar token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :vartype token_endpoint: str :ivar support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :vartype support_state: bool :ivar default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :vartype default_scope: str :ivar bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str :ivar display_name: User-friendly authorization server name. Required. :vartype display_name: str :ivar client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. Required. :vartype client_registration_endpoint: str :ivar authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. Required. :vartype authorization_endpoint: str :ivar grant_types: Form of an authorization grant, which the client uses to request the access token. Required. :vartype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :ivar client_id: Client or app id registered with this authorization server. Required. :vartype client_id: str :ivar client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "display_name": {"required": True, "max_length": 50, "min_length": 1}, "client_registration_endpoint": {"required": True}, "authorization_endpoint": {"required": True}, "grant_types": {"required": True}, "client_id": {"required": True}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authorization_methods": {"key": "authorizationMethods", "type": "[str]"}, "client_authentication_method": {"key": "clientAuthenticationMethod", "type": "[str]"}, "token_body_parameters": {"key": "tokenBodyParameters", "type": "[TokenBodyParameterContract]"}, "token_endpoint": {"key": "tokenEndpoint", "type": "str"}, "support_state": {"key": "supportState", "type": "bool"}, "default_scope": {"key": "defaultScope", "type": "str"}, "bearer_token_sending_methods": {"key": "bearerTokenSendingMethods", "type": "[str]"}, "resource_owner_username": {"key": "resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "resourceOwnerPassword", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "client_registration_endpoint": {"key": "clientRegistrationEndpoint", "type": "str"}, "authorization_endpoint": {"key": "authorizationEndpoint", "type": "str"}, "grant_types": {"key": "grantTypes", "type": "[str]"}, "client_id": {"key": "clientId", "type": "str"}, "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__( self, *, display_name: str, client_registration_endpoint: str, authorization_endpoint: str, grant_types: List[Union[str, "_models.GrantType"]], client_id: str, description: Optional[str] = None, authorization_methods: Optional[List[Union[str, "_models.AuthorizationMethod"]]] = None, client_authentication_method: Optional[List[Union[str, "_models.ClientAuthenticationMethod"]]] = None, token_body_parameters: Optional[List["_models.TokenBodyParameterContract"]] = None, token_endpoint: Optional[str] = None, support_state: Optional[bool] = None, default_scope: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethod"]]] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword description: Description of the authorization server. Can contain HTML formatting tags. :paramtype description: str :keyword authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :paramtype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :keyword client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :paramtype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :keyword token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :paramtype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :keyword token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :paramtype token_endpoint: str :keyword support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :paramtype support_state: bool :keyword default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :paramtype default_scope: str :keyword bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str :keyword display_name: User-friendly authorization server name. Required. :paramtype display_name: str :keyword client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. Required. :paramtype client_registration_endpoint: str :keyword authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. Required. :paramtype authorization_endpoint: str :keyword grant_types: Form of an authorization grant, which the client uses to request the access token. Required. :paramtype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :keyword client_id: Client or app id registered with this authorization server. Required. :paramtype client_id: str :keyword client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__( description=description, authorization_methods=authorization_methods, client_authentication_method=client_authentication_method, token_body_parameters=token_body_parameters, token_endpoint=token_endpoint, support_state=support_state, default_scope=default_scope, bearer_token_sending_methods=bearer_token_sending_methods, resource_owner_username=resource_owner_username, resource_owner_password=resource_owner_password, **kwargs ) self.display_name = display_name self.client_registration_endpoint = client_registration_endpoint self.authorization_endpoint = authorization_endpoint self.grant_types = grant_types self.client_id = client_id self.client_secret = client_secret
[docs]class AuthorizationServerSecretsContract(_serialization.Model): """OAuth Server Secrets Contract. :ivar client_secret: oAuth Authorization Server Secrets. :vartype client_secret: str :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str """ _attribute_map = { "client_secret": {"key": "clientSecret", "type": "str"}, "resource_owner_username": {"key": "resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "resourceOwnerPassword", "type": "str"}, } def __init__( self, *, client_secret: Optional[str] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, **kwargs ): """ :keyword client_secret: oAuth Authorization Server Secrets. :paramtype client_secret: str :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str """ super().__init__(**kwargs) self.client_secret = client_secret self.resource_owner_username = resource_owner_username self.resource_owner_password = resource_owner_password
[docs]class AuthorizationServerUpdateContract(Resource): # pylint: disable=too-many-instance-attributes """External OAuth authorization server settings. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Description of the authorization server. Can contain HTML formatting tags. :vartype description: str :ivar authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :vartype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :ivar client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :vartype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :ivar token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :vartype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :ivar token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :vartype token_endpoint: str :ivar support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :vartype support_state: bool :ivar default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :vartype default_scope: str :ivar bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str :ivar display_name: User-friendly authorization server name. :vartype display_name: str :ivar client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :vartype client_registration_endpoint: str :ivar authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :vartype authorization_endpoint: str :ivar grant_types: Form of an authorization grant, which the client uses to request the access token. :vartype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :ivar client_id: Client or app id registered with this authorization server. :vartype client_id: str :ivar client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 50, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "authorization_methods": {"key": "properties.authorizationMethods", "type": "[str]"}, "client_authentication_method": {"key": "properties.clientAuthenticationMethod", "type": "[str]"}, "token_body_parameters": {"key": "properties.tokenBodyParameters", "type": "[TokenBodyParameterContract]"}, "token_endpoint": {"key": "properties.tokenEndpoint", "type": "str"}, "support_state": {"key": "properties.supportState", "type": "bool"}, "default_scope": {"key": "properties.defaultScope", "type": "str"}, "bearer_token_sending_methods": {"key": "properties.bearerTokenSendingMethods", "type": "[str]"}, "resource_owner_username": {"key": "properties.resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "properties.resourceOwnerPassword", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "client_registration_endpoint": {"key": "properties.clientRegistrationEndpoint", "type": "str"}, "authorization_endpoint": {"key": "properties.authorizationEndpoint", "type": "str"}, "grant_types": {"key": "properties.grantTypes", "type": "[str]"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, authorization_methods: Optional[List[Union[str, "_models.AuthorizationMethod"]]] = None, client_authentication_method: Optional[List[Union[str, "_models.ClientAuthenticationMethod"]]] = None, token_body_parameters: Optional[List["_models.TokenBodyParameterContract"]] = None, token_endpoint: Optional[str] = None, support_state: Optional[bool] = None, default_scope: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethod"]]] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, display_name: Optional[str] = None, client_registration_endpoint: Optional[str] = None, authorization_endpoint: Optional[str] = None, grant_types: Optional[List[Union[str, "_models.GrantType"]]] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword description: Description of the authorization server. Can contain HTML formatting tags. :paramtype description: str :keyword authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :paramtype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :keyword client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :paramtype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :keyword token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :paramtype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :keyword token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :paramtype token_endpoint: str :keyword support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :paramtype support_state: bool :keyword default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :paramtype default_scope: str :keyword bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str :keyword display_name: User-friendly authorization server name. :paramtype display_name: str :keyword client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :paramtype client_registration_endpoint: str :keyword authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :paramtype authorization_endpoint: str :keyword grant_types: Form of an authorization grant, which the client uses to request the access token. :paramtype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :keyword client_id: Client or app id registered with this authorization server. :paramtype client_id: str :keyword client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__(**kwargs) self.description = description self.authorization_methods = authorization_methods self.client_authentication_method = client_authentication_method self.token_body_parameters = token_body_parameters self.token_endpoint = token_endpoint self.support_state = support_state self.default_scope = default_scope self.bearer_token_sending_methods = bearer_token_sending_methods self.resource_owner_username = resource_owner_username self.resource_owner_password = resource_owner_password self.display_name = display_name self.client_registration_endpoint = client_registration_endpoint self.authorization_endpoint = authorization_endpoint self.grant_types = grant_types self.client_id = client_id self.client_secret = client_secret
[docs]class AuthorizationServerUpdateContractProperties( AuthorizationServerContractBaseProperties ): # pylint: disable=too-many-instance-attributes """External OAuth authorization server Update settings contract. :ivar description: Description of the authorization server. Can contain HTML formatting tags. :vartype description: str :ivar authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :vartype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :ivar client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :vartype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :ivar token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :vartype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :ivar token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :vartype token_endpoint: str :ivar support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :vartype support_state: bool :ivar default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :vartype default_scope: str :ivar bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :ivar resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :vartype resource_owner_username: str :ivar resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :vartype resource_owner_password: str :ivar display_name: User-friendly authorization server name. :vartype display_name: str :ivar client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :vartype client_registration_endpoint: str :ivar authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :vartype authorization_endpoint: str :ivar grant_types: Form of an authorization grant, which the client uses to request the access token. :vartype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :ivar client_id: Client or app id registered with this authorization server. :vartype client_id: str :ivar client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "display_name": {"max_length": 50, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "authorization_methods": {"key": "authorizationMethods", "type": "[str]"}, "client_authentication_method": {"key": "clientAuthenticationMethod", "type": "[str]"}, "token_body_parameters": {"key": "tokenBodyParameters", "type": "[TokenBodyParameterContract]"}, "token_endpoint": {"key": "tokenEndpoint", "type": "str"}, "support_state": {"key": "supportState", "type": "bool"}, "default_scope": {"key": "defaultScope", "type": "str"}, "bearer_token_sending_methods": {"key": "bearerTokenSendingMethods", "type": "[str]"}, "resource_owner_username": {"key": "resourceOwnerUsername", "type": "str"}, "resource_owner_password": {"key": "resourceOwnerPassword", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "client_registration_endpoint": {"key": "clientRegistrationEndpoint", "type": "str"}, "authorization_endpoint": {"key": "authorizationEndpoint", "type": "str"}, "grant_types": {"key": "grantTypes", "type": "[str]"}, "client_id": {"key": "clientId", "type": "str"}, "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, authorization_methods: Optional[List[Union[str, "_models.AuthorizationMethod"]]] = None, client_authentication_method: Optional[List[Union[str, "_models.ClientAuthenticationMethod"]]] = None, token_body_parameters: Optional[List["_models.TokenBodyParameterContract"]] = None, token_endpoint: Optional[str] = None, support_state: Optional[bool] = None, default_scope: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethod"]]] = None, resource_owner_username: Optional[str] = None, resource_owner_password: Optional[str] = None, display_name: Optional[str] = None, client_registration_endpoint: Optional[str] = None, authorization_endpoint: Optional[str] = None, grant_types: Optional[List[Union[str, "_models.GrantType"]]] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword description: Description of the authorization server. Can contain HTML formatting tags. :paramtype description: str :keyword authorization_methods: HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional. :paramtype authorization_methods: list[str or ~azure.mgmt.apimanagement.models.AuthorizationMethod] :keyword client_authentication_method: Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format. :paramtype client_authentication_method: list[str or ~azure.mgmt.apimanagement.models.ClientAuthenticationMethod] :keyword token_body_parameters: Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {"name" : "name value", "value": "a value"}. :paramtype token_body_parameters: list[~azure.mgmt.apimanagement.models.TokenBodyParameterContract] :keyword token_endpoint: OAuth token endpoint. Contains absolute URI to entity being referenced. :paramtype token_endpoint: str :keyword support_state: If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security. :paramtype support_state: bool :keyword default_scope: Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values. :paramtype default_scope: str :keyword bearer_token_sending_methods: Specifies the mechanism by which access token is passed to the API. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethod] :keyword resource_owner_username: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username. :paramtype resource_owner_username: str :keyword resource_owner_password: Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password. :paramtype resource_owner_password: str :keyword display_name: User-friendly authorization server name. :paramtype display_name: str :keyword client_registration_endpoint: Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced. :paramtype client_registration_endpoint: str :keyword authorization_endpoint: OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2. :paramtype authorization_endpoint: str :keyword grant_types: Form of an authorization grant, which the client uses to request the access token. :paramtype grant_types: list[str or ~azure.mgmt.apimanagement.models.GrantType] :keyword client_id: Client or app id registered with this authorization server. :paramtype client_id: str :keyword client_secret: Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__( description=description, authorization_methods=authorization_methods, client_authentication_method=client_authentication_method, token_body_parameters=token_body_parameters, token_endpoint=token_endpoint, support_state=support_state, default_scope=default_scope, bearer_token_sending_methods=bearer_token_sending_methods, resource_owner_username=resource_owner_username, resource_owner_password=resource_owner_password, **kwargs ) self.display_name = display_name self.client_registration_endpoint = client_registration_endpoint self.authorization_endpoint = authorization_endpoint self.grant_types = grant_types self.client_id = client_id self.client_secret = client_secret
[docs]class BackendAuthorizationHeaderCredentials(_serialization.Model): """Authorization header information. All required parameters must be populated in order to send to Azure. :ivar scheme: Authentication Scheme name. Required. :vartype scheme: str :ivar parameter: Authentication Parameter value. Required. :vartype parameter: str """ _validation = { "scheme": {"required": True, "max_length": 100, "min_length": 1}, "parameter": {"required": True, "max_length": 300, "min_length": 1}, } _attribute_map = { "scheme": {"key": "scheme", "type": "str"}, "parameter": {"key": "parameter", "type": "str"}, } def __init__(self, *, scheme: str, parameter: str, **kwargs): """ :keyword scheme: Authentication Scheme name. Required. :paramtype scheme: str :keyword parameter: Authentication Parameter value. Required. :paramtype parameter: str """ super().__init__(**kwargs) self.scheme = scheme self.parameter = parameter
[docs]class BackendBaseParameters(_serialization.Model): """Backend entity base Parameter set. :ivar title: Backend Title. :vartype title: str :ivar description: Backend Description. :vartype description: str :ivar resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :vartype resource_id: str :ivar properties: Backend Properties contract. :vartype properties: ~azure.mgmt.apimanagement.models.BackendProperties :ivar credentials: Backend Credentials Contract Properties. :vartype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :ivar proxy: Backend Proxy Contract Properties. :vartype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :ivar tls: Backend TLS Properties. :vartype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties """ _validation = { "title": {"max_length": 300, "min_length": 1}, "description": {"max_length": 2000, "min_length": 1}, "resource_id": {"max_length": 2000, "min_length": 1}, } _attribute_map = { "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, "resource_id": {"key": "resourceId", "type": "str"}, "properties": {"key": "properties", "type": "BackendProperties"}, "credentials": {"key": "credentials", "type": "BackendCredentialsContract"}, "proxy": {"key": "proxy", "type": "BackendProxyContract"}, "tls": {"key": "tls", "type": "BackendTlsProperties"}, } def __init__( self, *, title: Optional[str] = None, description: Optional[str] = None, resource_id: Optional[str] = None, properties: Optional["_models.BackendProperties"] = None, credentials: Optional["_models.BackendCredentialsContract"] = None, proxy: Optional["_models.BackendProxyContract"] = None, tls: Optional["_models.BackendTlsProperties"] = None, **kwargs ): """ :keyword title: Backend Title. :paramtype title: str :keyword description: Backend Description. :paramtype description: str :keyword resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :paramtype resource_id: str :keyword properties: Backend Properties contract. :paramtype properties: ~azure.mgmt.apimanagement.models.BackendProperties :keyword credentials: Backend Credentials Contract Properties. :paramtype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :keyword proxy: Backend Proxy Contract Properties. :paramtype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :keyword tls: Backend TLS Properties. :paramtype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties """ super().__init__(**kwargs) self.title = title self.description = description self.resource_id = resource_id self.properties = properties self.credentials = credentials self.proxy = proxy self.tls = tls
[docs]class BackendCollection(_serialization.Model): """Paged Backend list representation. :ivar value: Backend values. :vartype value: list[~azure.mgmt.apimanagement.models.BackendContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[BackendContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.BackendContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Backend values. :paramtype value: list[~azure.mgmt.apimanagement.models.BackendContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class BackendContract(Resource): # pylint: disable=too-many-instance-attributes """Backend details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar title: Backend Title. :vartype title: str :ivar description: Backend Description. :vartype description: str :ivar resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :vartype resource_id: str :ivar properties: Backend Properties contract. :vartype properties: ~azure.mgmt.apimanagement.models.BackendProperties :ivar credentials: Backend Credentials Contract Properties. :vartype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :ivar proxy: Backend Proxy Contract Properties. :vartype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :ivar tls: Backend TLS Properties. :vartype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :ivar url: Runtime Url of the Backend. :vartype url: str :ivar protocol: Backend communication protocol. Known values are: "http" and "soap". :vartype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "title": {"max_length": 300, "min_length": 1}, "description": {"max_length": 2000, "min_length": 1}, "resource_id": {"max_length": 2000, "min_length": 1}, "url": {"max_length": 2000, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "resource_id": {"key": "properties.resourceId", "type": "str"}, "properties": {"key": "properties.properties", "type": "BackendProperties"}, "credentials": {"key": "properties.credentials", "type": "BackendCredentialsContract"}, "proxy": {"key": "properties.proxy", "type": "BackendProxyContract"}, "tls": {"key": "properties.tls", "type": "BackendTlsProperties"}, "url": {"key": "properties.url", "type": "str"}, "protocol": {"key": "properties.protocol", "type": "str"}, } def __init__( self, *, title: Optional[str] = None, description: Optional[str] = None, resource_id: Optional[str] = None, properties: Optional["_models.BackendProperties"] = None, credentials: Optional["_models.BackendCredentialsContract"] = None, proxy: Optional["_models.BackendProxyContract"] = None, tls: Optional["_models.BackendTlsProperties"] = None, url: Optional[str] = None, protocol: Optional[Union[str, "_models.BackendProtocol"]] = None, **kwargs ): """ :keyword title: Backend Title. :paramtype title: str :keyword description: Backend Description. :paramtype description: str :keyword resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :paramtype resource_id: str :keyword properties: Backend Properties contract. :paramtype properties: ~azure.mgmt.apimanagement.models.BackendProperties :keyword credentials: Backend Credentials Contract Properties. :paramtype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :keyword proxy: Backend Proxy Contract Properties. :paramtype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :keyword tls: Backend TLS Properties. :paramtype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :keyword url: Runtime Url of the Backend. :paramtype url: str :keyword protocol: Backend communication protocol. Known values are: "http" and "soap". :paramtype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ super().__init__(**kwargs) self.title = title self.description = description self.resource_id = resource_id self.properties = properties self.credentials = credentials self.proxy = proxy self.tls = tls self.url = url self.protocol = protocol
[docs]class BackendContractProperties(BackendBaseParameters): """Parameters supplied to the Create Backend operation. All required parameters must be populated in order to send to Azure. :ivar title: Backend Title. :vartype title: str :ivar description: Backend Description. :vartype description: str :ivar resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :vartype resource_id: str :ivar properties: Backend Properties contract. :vartype properties: ~azure.mgmt.apimanagement.models.BackendProperties :ivar credentials: Backend Credentials Contract Properties. :vartype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :ivar proxy: Backend Proxy Contract Properties. :vartype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :ivar tls: Backend TLS Properties. :vartype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :ivar url: Runtime Url of the Backend. Required. :vartype url: str :ivar protocol: Backend communication protocol. Required. Known values are: "http" and "soap". :vartype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ _validation = { "title": {"max_length": 300, "min_length": 1}, "description": {"max_length": 2000, "min_length": 1}, "resource_id": {"max_length": 2000, "min_length": 1}, "url": {"required": True, "max_length": 2000, "min_length": 1}, "protocol": {"required": True}, } _attribute_map = { "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, "resource_id": {"key": "resourceId", "type": "str"}, "properties": {"key": "properties", "type": "BackendProperties"}, "credentials": {"key": "credentials", "type": "BackendCredentialsContract"}, "proxy": {"key": "proxy", "type": "BackendProxyContract"}, "tls": {"key": "tls", "type": "BackendTlsProperties"}, "url": {"key": "url", "type": "str"}, "protocol": {"key": "protocol", "type": "str"}, } def __init__( self, *, url: str, protocol: Union[str, "_models.BackendProtocol"], title: Optional[str] = None, description: Optional[str] = None, resource_id: Optional[str] = None, properties: Optional["_models.BackendProperties"] = None, credentials: Optional["_models.BackendCredentialsContract"] = None, proxy: Optional["_models.BackendProxyContract"] = None, tls: Optional["_models.BackendTlsProperties"] = None, **kwargs ): """ :keyword title: Backend Title. :paramtype title: str :keyword description: Backend Description. :paramtype description: str :keyword resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :paramtype resource_id: str :keyword properties: Backend Properties contract. :paramtype properties: ~azure.mgmt.apimanagement.models.BackendProperties :keyword credentials: Backend Credentials Contract Properties. :paramtype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :keyword proxy: Backend Proxy Contract Properties. :paramtype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :keyword tls: Backend TLS Properties. :paramtype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :keyword url: Runtime Url of the Backend. Required. :paramtype url: str :keyword protocol: Backend communication protocol. Required. Known values are: "http" and "soap". :paramtype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ super().__init__( title=title, description=description, resource_id=resource_id, properties=properties, credentials=credentials, proxy=proxy, tls=tls, **kwargs ) self.url = url self.protocol = protocol
[docs]class BackendCredentialsContract(_serialization.Model): """Details of the Credentials used to connect to Backend. :ivar certificate_ids: List of Client Certificate Ids. :vartype certificate_ids: list[str] :ivar certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. :vartype certificate: list[str] :ivar query: Query Parameter description. :vartype query: dict[str, list[str]] :ivar header: Header Parameter description. :vartype header: dict[str, list[str]] :ivar authorization: Authorization header authentication. :vartype authorization: ~azure.mgmt.apimanagement.models.BackendAuthorizationHeaderCredentials """ _validation = { "certificate_ids": {"max_items": 32, "min_items": 0}, "certificate": {"max_items": 32, "min_items": 0}, } _attribute_map = { "certificate_ids": {"key": "certificateIds", "type": "[str]"}, "certificate": {"key": "certificate", "type": "[str]"}, "query": {"key": "query", "type": "{[str]}"}, "header": {"key": "header", "type": "{[str]}"}, "authorization": {"key": "authorization", "type": "BackendAuthorizationHeaderCredentials"}, } def __init__( self, *, certificate_ids: Optional[List[str]] = None, certificate: Optional[List[str]] = None, query: Optional[Dict[str, List[str]]] = None, header: Optional[Dict[str, List[str]]] = None, authorization: Optional["_models.BackendAuthorizationHeaderCredentials"] = None, **kwargs ): """ :keyword certificate_ids: List of Client Certificate Ids. :paramtype certificate_ids: list[str] :keyword certificate: List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided. :paramtype certificate: list[str] :keyword query: Query Parameter description. :paramtype query: dict[str, list[str]] :keyword header: Header Parameter description. :paramtype header: dict[str, list[str]] :keyword authorization: Authorization header authentication. :paramtype authorization: ~azure.mgmt.apimanagement.models.BackendAuthorizationHeaderCredentials """ super().__init__(**kwargs) self.certificate_ids = certificate_ids self.certificate = certificate self.query = query self.header = header self.authorization = authorization
[docs]class BackendProperties(_serialization.Model): """Properties specific to the Backend Type. :ivar service_fabric_cluster: Backend Service Fabric Cluster Properties. :vartype service_fabric_cluster: ~azure.mgmt.apimanagement.models.BackendServiceFabricClusterProperties """ _attribute_map = { "service_fabric_cluster": {"key": "serviceFabricCluster", "type": "BackendServiceFabricClusterProperties"}, } def __init__( self, *, service_fabric_cluster: Optional["_models.BackendServiceFabricClusterProperties"] = None, **kwargs ): """ :keyword service_fabric_cluster: Backend Service Fabric Cluster Properties. :paramtype service_fabric_cluster: ~azure.mgmt.apimanagement.models.BackendServiceFabricClusterProperties """ super().__init__(**kwargs) self.service_fabric_cluster = service_fabric_cluster
[docs]class BackendProxyContract(_serialization.Model): """Details of the Backend WebProxy Server to use in the Request to Backend. All required parameters must be populated in order to send to Azure. :ivar url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings. Required. :vartype url: str :ivar username: Username to connect to the WebProxy server. :vartype username: str :ivar password: Password to connect to the WebProxy Server. :vartype password: str """ _validation = { "url": {"required": True, "max_length": 2000, "min_length": 1}, } _attribute_map = { "url": {"key": "url", "type": "str"}, "username": {"key": "username", "type": "str"}, "password": {"key": "password", "type": "str"}, } def __init__(self, *, url: str, username: Optional[str] = None, password: Optional[str] = None, **kwargs): """ :keyword url: WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings. Required. :paramtype url: str :keyword username: Username to connect to the WebProxy server. :paramtype username: str :keyword password: Password to connect to the WebProxy Server. :paramtype password: str """ super().__init__(**kwargs) self.url = url self.username = username self.password = password
[docs]class BackendReconnectContract(Resource): """Reconnect request parameters. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar after: Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M. :vartype after: ~datetime.timedelta """ _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"}, "after": {"key": "properties.after", "type": "duration"}, } def __init__(self, *, after: Optional[datetime.timedelta] = None, **kwargs): """ :keyword after: Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M. :paramtype after: ~datetime.timedelta """ super().__init__(**kwargs) self.after = after
[docs]class BackendServiceFabricClusterProperties(_serialization.Model): """Properties of the Service Fabric Type Backend. All required parameters must be populated in order to send to Azure. :ivar client_certificate_id: The client certificate id for the management endpoint. :vartype client_certificate_id: str :ivar client_certificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if certificatesIds are provided. :vartype client_certificatethumbprint: str :ivar max_partition_resolution_retries: Maximum number of retries while attempting resolve the partition. :vartype max_partition_resolution_retries: int :ivar management_endpoints: The cluster management endpoint. Required. :vartype management_endpoints: list[str] :ivar server_certificate_thumbprints: Thumbprints of certificates cluster management service uses for tls communication. :vartype server_certificate_thumbprints: list[str] :ivar server_x509_names: Server X509 Certificate Names Collection. :vartype server_x509_names: list[~azure.mgmt.apimanagement.models.X509CertificateName] """ _validation = { "management_endpoints": {"required": True}, } _attribute_map = { "client_certificate_id": {"key": "clientCertificateId", "type": "str"}, "client_certificatethumbprint": {"key": "clientCertificatethumbprint", "type": "str"}, "max_partition_resolution_retries": {"key": "maxPartitionResolutionRetries", "type": "int"}, "management_endpoints": {"key": "managementEndpoints", "type": "[str]"}, "server_certificate_thumbprints": {"key": "serverCertificateThumbprints", "type": "[str]"}, "server_x509_names": {"key": "serverX509Names", "type": "[X509CertificateName]"}, } def __init__( self, *, management_endpoints: List[str], client_certificate_id: Optional[str] = None, client_certificatethumbprint: Optional[str] = None, max_partition_resolution_retries: Optional[int] = None, server_certificate_thumbprints: Optional[List[str]] = None, server_x509_names: Optional[List["_models.X509CertificateName"]] = None, **kwargs ): """ :keyword client_certificate_id: The client certificate id for the management endpoint. :paramtype client_certificate_id: str :keyword client_certificatethumbprint: The client certificate thumbprint for the management endpoint. Will be ignored if certificatesIds are provided. :paramtype client_certificatethumbprint: str :keyword max_partition_resolution_retries: Maximum number of retries while attempting resolve the partition. :paramtype max_partition_resolution_retries: int :keyword management_endpoints: The cluster management endpoint. Required. :paramtype management_endpoints: list[str] :keyword server_certificate_thumbprints: Thumbprints of certificates cluster management service uses for tls communication. :paramtype server_certificate_thumbprints: list[str] :keyword server_x509_names: Server X509 Certificate Names Collection. :paramtype server_x509_names: list[~azure.mgmt.apimanagement.models.X509CertificateName] """ super().__init__(**kwargs) self.client_certificate_id = client_certificate_id self.client_certificatethumbprint = client_certificatethumbprint self.max_partition_resolution_retries = max_partition_resolution_retries self.management_endpoints = management_endpoints self.server_certificate_thumbprints = server_certificate_thumbprints self.server_x509_names = server_x509_names
[docs]class BackendTlsProperties(_serialization.Model): """Properties controlling TLS Certificate Validation. :ivar validate_certificate_chain: Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host. :vartype validate_certificate_chain: bool :ivar validate_certificate_name: Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host. :vartype validate_certificate_name: bool """ _attribute_map = { "validate_certificate_chain": {"key": "validateCertificateChain", "type": "bool"}, "validate_certificate_name": {"key": "validateCertificateName", "type": "bool"}, } def __init__(self, *, validate_certificate_chain: bool = True, validate_certificate_name: bool = True, **kwargs): """ :keyword validate_certificate_chain: Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host. :paramtype validate_certificate_chain: bool :keyword validate_certificate_name: Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host. :paramtype validate_certificate_name: bool """ super().__init__(**kwargs) self.validate_certificate_chain = validate_certificate_chain self.validate_certificate_name = validate_certificate_name
[docs]class BackendUpdateParameterProperties(BackendBaseParameters): """Parameters supplied to the Update Backend operation. :ivar title: Backend Title. :vartype title: str :ivar description: Backend Description. :vartype description: str :ivar resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :vartype resource_id: str :ivar properties: Backend Properties contract. :vartype properties: ~azure.mgmt.apimanagement.models.BackendProperties :ivar credentials: Backend Credentials Contract Properties. :vartype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :ivar proxy: Backend Proxy Contract Properties. :vartype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :ivar tls: Backend TLS Properties. :vartype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :ivar url: Runtime Url of the Backend. :vartype url: str :ivar protocol: Backend communication protocol. Known values are: "http" and "soap". :vartype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ _validation = { "title": {"max_length": 300, "min_length": 1}, "description": {"max_length": 2000, "min_length": 1}, "resource_id": {"max_length": 2000, "min_length": 1}, "url": {"max_length": 2000, "min_length": 1}, } _attribute_map = { "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, "resource_id": {"key": "resourceId", "type": "str"}, "properties": {"key": "properties", "type": "BackendProperties"}, "credentials": {"key": "credentials", "type": "BackendCredentialsContract"}, "proxy": {"key": "proxy", "type": "BackendProxyContract"}, "tls": {"key": "tls", "type": "BackendTlsProperties"}, "url": {"key": "url", "type": "str"}, "protocol": {"key": "protocol", "type": "str"}, } def __init__( self, *, title: Optional[str] = None, description: Optional[str] = None, resource_id: Optional[str] = None, properties: Optional["_models.BackendProperties"] = None, credentials: Optional["_models.BackendCredentialsContract"] = None, proxy: Optional["_models.BackendProxyContract"] = None, tls: Optional["_models.BackendTlsProperties"] = None, url: Optional[str] = None, protocol: Optional[Union[str, "_models.BackendProtocol"]] = None, **kwargs ): """ :keyword title: Backend Title. :paramtype title: str :keyword description: Backend Description. :paramtype description: str :keyword resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :paramtype resource_id: str :keyword properties: Backend Properties contract. :paramtype properties: ~azure.mgmt.apimanagement.models.BackendProperties :keyword credentials: Backend Credentials Contract Properties. :paramtype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :keyword proxy: Backend Proxy Contract Properties. :paramtype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :keyword tls: Backend TLS Properties. :paramtype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :keyword url: Runtime Url of the Backend. :paramtype url: str :keyword protocol: Backend communication protocol. Known values are: "http" and "soap". :paramtype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ super().__init__( title=title, description=description, resource_id=resource_id, properties=properties, credentials=credentials, proxy=proxy, tls=tls, **kwargs ) self.url = url self.protocol = protocol
[docs]class BackendUpdateParameters(_serialization.Model): """Backend update parameters. :ivar title: Backend Title. :vartype title: str :ivar description: Backend Description. :vartype description: str :ivar resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :vartype resource_id: str :ivar properties: Backend Properties contract. :vartype properties: ~azure.mgmt.apimanagement.models.BackendProperties :ivar credentials: Backend Credentials Contract Properties. :vartype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :ivar proxy: Backend Proxy Contract Properties. :vartype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :ivar tls: Backend TLS Properties. :vartype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :ivar url: Runtime Url of the Backend. :vartype url: str :ivar protocol: Backend communication protocol. Known values are: "http" and "soap". :vartype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ _validation = { "title": {"max_length": 300, "min_length": 1}, "description": {"max_length": 2000, "min_length": 1}, "resource_id": {"max_length": 2000, "min_length": 1}, "url": {"max_length": 2000, "min_length": 1}, } _attribute_map = { "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "resource_id": {"key": "properties.resourceId", "type": "str"}, "properties": {"key": "properties.properties", "type": "BackendProperties"}, "credentials": {"key": "properties.credentials", "type": "BackendCredentialsContract"}, "proxy": {"key": "properties.proxy", "type": "BackendProxyContract"}, "tls": {"key": "properties.tls", "type": "BackendTlsProperties"}, "url": {"key": "properties.url", "type": "str"}, "protocol": {"key": "properties.protocol", "type": "str"}, } def __init__( self, *, title: Optional[str] = None, description: Optional[str] = None, resource_id: Optional[str] = None, properties: Optional["_models.BackendProperties"] = None, credentials: Optional["_models.BackendCredentialsContract"] = None, proxy: Optional["_models.BackendProxyContract"] = None, tls: Optional["_models.BackendTlsProperties"] = None, url: Optional[str] = None, protocol: Optional[Union[str, "_models.BackendProtocol"]] = None, **kwargs ): """ :keyword title: Backend Title. :paramtype title: str :keyword description: Backend Description. :paramtype description: str :keyword resource_id: Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or API Apps. :paramtype resource_id: str :keyword properties: Backend Properties contract. :paramtype properties: ~azure.mgmt.apimanagement.models.BackendProperties :keyword credentials: Backend Credentials Contract Properties. :paramtype credentials: ~azure.mgmt.apimanagement.models.BackendCredentialsContract :keyword proxy: Backend Proxy Contract Properties. :paramtype proxy: ~azure.mgmt.apimanagement.models.BackendProxyContract :keyword tls: Backend TLS Properties. :paramtype tls: ~azure.mgmt.apimanagement.models.BackendTlsProperties :keyword url: Runtime Url of the Backend. :paramtype url: str :keyword protocol: Backend communication protocol. Known values are: "http" and "soap". :paramtype protocol: str or ~azure.mgmt.apimanagement.models.BackendProtocol """ super().__init__(**kwargs) self.title = title self.description = description self.resource_id = resource_id self.properties = properties self.credentials = credentials self.proxy = proxy self.tls = tls self.url = url self.protocol = protocol
[docs]class BodyDiagnosticSettings(_serialization.Model): """Body logging settings. :ivar bytes: Number of request body bytes to log. :vartype bytes: int """ _validation = { "bytes": {"maximum": 8192}, } _attribute_map = { "bytes": {"key": "bytes", "type": "int"}, } def __init__(self, *, bytes: Optional[int] = None, **kwargs): """ :keyword bytes: Number of request body bytes to log. :paramtype bytes: int """ super().__init__(**kwargs) self.bytes = bytes
[docs]class CacheCollection(_serialization.Model): """Paged Caches list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.CacheContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[CacheContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.CacheContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.CacheContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class CacheContract(Resource): """Cache details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Cache description. :vartype description: str :ivar connection_string: Runtime connection string to cache. :vartype connection_string: str :ivar use_from_location: Location identifier to use cache from (should be either 'default' or valid Azure region identifier). :vartype use_from_location: str :ivar resource_id: Original uri of entity in external system cache points to. :vartype resource_id: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 2000}, "connection_string": {"max_length": 300}, "use_from_location": {"max_length": 256}, "resource_id": {"max_length": 2000}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "connection_string": {"key": "properties.connectionString", "type": "str"}, "use_from_location": {"key": "properties.useFromLocation", "type": "str"}, "resource_id": {"key": "properties.resourceId", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, connection_string: Optional[str] = None, use_from_location: Optional[str] = None, resource_id: Optional[str] = None, **kwargs ): """ :keyword description: Cache description. :paramtype description: str :keyword connection_string: Runtime connection string to cache. :paramtype connection_string: str :keyword use_from_location: Location identifier to use cache from (should be either 'default' or valid Azure region identifier). :paramtype use_from_location: str :keyword resource_id: Original uri of entity in external system cache points to. :paramtype resource_id: str """ super().__init__(**kwargs) self.description = description self.connection_string = connection_string self.use_from_location = use_from_location self.resource_id = resource_id
[docs]class CacheUpdateParameters(_serialization.Model): """Cache update details. :ivar description: Cache description. :vartype description: str :ivar connection_string: Runtime connection string to cache. :vartype connection_string: str :ivar use_from_location: Location identifier to use cache from (should be either 'default' or valid Azure region identifier). :vartype use_from_location: str :ivar resource_id: Original uri of entity in external system cache points to. :vartype resource_id: str """ _validation = { "description": {"max_length": 2000}, "connection_string": {"max_length": 300}, "use_from_location": {"max_length": 256}, "resource_id": {"max_length": 2000}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "connection_string": {"key": "properties.connectionString", "type": "str"}, "use_from_location": {"key": "properties.useFromLocation", "type": "str"}, "resource_id": {"key": "properties.resourceId", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, connection_string: Optional[str] = None, use_from_location: Optional[str] = None, resource_id: Optional[str] = None, **kwargs ): """ :keyword description: Cache description. :paramtype description: str :keyword connection_string: Runtime connection string to cache. :paramtype connection_string: str :keyword use_from_location: Location identifier to use cache from (should be either 'default' or valid Azure region identifier). :paramtype use_from_location: str :keyword resource_id: Original uri of entity in external system cache points to. :paramtype resource_id: str """ super().__init__(**kwargs) self.description = description self.connection_string = connection_string self.use_from_location = use_from_location self.resource_id = resource_id
[docs]class CertificateCollection(_serialization.Model): """Paged Certificates list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.CertificateContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[CertificateContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.CertificateContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.CertificateContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class CertificateConfiguration(_serialization.Model): """Certificate configuration which consist of non-trusted intermediates and root certificates. All required parameters must be populated in order to send to Azure. :ivar encoded_certificate: Base64 Encoded certificate. :vartype encoded_certificate: str :ivar certificate_password: Certificate Password. :vartype certificate_password: str :ivar store_name: The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations. Required. Known values are: "CertificateAuthority" and "Root". :vartype store_name: str or ~azure.mgmt.apimanagement.models.CertificateConfigurationStoreName :ivar certificate: Certificate information. :vartype certificate: ~azure.mgmt.apimanagement.models.CertificateInformation """ _validation = { "store_name": {"required": True}, } _attribute_map = { "encoded_certificate": {"key": "encodedCertificate", "type": "str"}, "certificate_password": {"key": "certificatePassword", "type": "str"}, "store_name": {"key": "storeName", "type": "str"}, "certificate": {"key": "certificate", "type": "CertificateInformation"}, } def __init__( self, *, store_name: Union[str, "_models.CertificateConfigurationStoreName"], encoded_certificate: Optional[str] = None, certificate_password: Optional[str] = None, certificate: Optional["_models.CertificateInformation"] = None, **kwargs ): """ :keyword encoded_certificate: Base64 Encoded certificate. :paramtype encoded_certificate: str :keyword certificate_password: Certificate Password. :paramtype certificate_password: str :keyword store_name: The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations. Required. Known values are: "CertificateAuthority" and "Root". :paramtype store_name: str or ~azure.mgmt.apimanagement.models.CertificateConfigurationStoreName :keyword certificate: Certificate information. :paramtype certificate: ~azure.mgmt.apimanagement.models.CertificateInformation """ super().__init__(**kwargs) self.encoded_certificate = encoded_certificate self.certificate_password = certificate_password self.store_name = store_name self.certificate = certificate
[docs]class CertificateContract(Resource): """Certificate details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar subject: Subject attribute of the certificate. :vartype subject: str :ivar thumbprint: Thumbprint of the certificate. :vartype thumbprint: str :ivar expiration_date: Expiration date of the certificate. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype expiration_date: ~datetime.datetime :ivar key_vault: KeyVault location details of the certificate. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ _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"}, "subject": {"key": "properties.subject", "type": "str"}, "thumbprint": {"key": "properties.thumbprint", "type": "str"}, "expiration_date": {"key": "properties.expirationDate", "type": "iso-8601"}, "key_vault": {"key": "properties.keyVault", "type": "KeyVaultContractProperties"}, } def __init__( self, *, subject: Optional[str] = None, thumbprint: Optional[str] = None, expiration_date: Optional[datetime.datetime] = None, key_vault: Optional["_models.KeyVaultContractProperties"] = None, **kwargs ): """ :keyword subject: Subject attribute of the certificate. :paramtype subject: str :keyword thumbprint: Thumbprint of the certificate. :paramtype thumbprint: str :keyword expiration_date: Expiration date of the certificate. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype expiration_date: ~datetime.datetime :keyword key_vault: KeyVault location details of the certificate. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ super().__init__(**kwargs) self.subject = subject self.thumbprint = thumbprint self.expiration_date = expiration_date self.key_vault = key_vault
[docs]class CertificateCreateOrUpdateParameters(_serialization.Model): """Certificate create or update details. :ivar data: Base 64 encoded certificate using the application/x-pkcs12 representation. :vartype data: str :ivar password: Password for the Certificate. :vartype password: str :ivar key_vault: KeyVault location details of the certificate. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ _attribute_map = { "data": {"key": "properties.data", "type": "str"}, "password": {"key": "properties.password", "type": "str"}, "key_vault": {"key": "properties.keyVault", "type": "KeyVaultContractCreateProperties"}, } def __init__( self, *, data: Optional[str] = None, password: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractCreateProperties"] = None, **kwargs ): """ :keyword data: Base 64 encoded certificate using the application/x-pkcs12 representation. :paramtype data: str :keyword password: Password for the Certificate. :paramtype password: str :keyword key_vault: KeyVault location details of the certificate. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ super().__init__(**kwargs) self.data = data self.password = password self.key_vault = key_vault
[docs]class CertificateInformation(_serialization.Model): """SSL certificate information. All required parameters must be populated in order to send to Azure. :ivar expiry: Expiration date of the certificate. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype expiry: ~datetime.datetime :ivar thumbprint: Thumbprint of the certificate. Required. :vartype thumbprint: str :ivar subject: Subject of the certificate. Required. :vartype subject: str """ _validation = { "expiry": {"required": True}, "thumbprint": {"required": True}, "subject": {"required": True}, } _attribute_map = { "expiry": {"key": "expiry", "type": "iso-8601"}, "thumbprint": {"key": "thumbprint", "type": "str"}, "subject": {"key": "subject", "type": "str"}, } def __init__(self, *, expiry: datetime.datetime, thumbprint: str, subject: str, **kwargs): """ :keyword expiry: Expiration date of the certificate. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype expiry: ~datetime.datetime :keyword thumbprint: Thumbprint of the certificate. Required. :paramtype thumbprint: str :keyword subject: Subject of the certificate. Required. :paramtype subject: str """ super().__init__(**kwargs) self.expiry = expiry self.thumbprint = thumbprint self.subject = subject
[docs]class ClientSecretContract(_serialization.Model): """Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. :ivar client_secret: Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. :vartype client_secret: str """ _attribute_map = { "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__(self, *, client_secret: Optional[str] = None, **kwargs): """ :keyword client_secret: Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. :paramtype client_secret: str """ super().__init__(**kwargs) self.client_secret = client_secret
[docs]class ConnectivityCheckRequest(_serialization.Model): """A request to perform the connectivity check operation on a API Management service. All required parameters must be populated in order to send to Azure. :ivar source: Definitions about the connectivity check origin. Required. :vartype source: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestSource :ivar destination: The connectivity check operation destination. Required. :vartype destination: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestDestination :ivar preferred_ip_version: The IP version to be used. Only IPv4 is supported for now. "IPv4" :vartype preferred_ip_version: str or ~azure.mgmt.apimanagement.models.PreferredIPVersion :ivar protocol: The request's protocol. Specific protocol configuration can be available based on this selection. The specified destination address must be coherent with this value. Known values are: "TCP", "HTTP", and "HTTPS". :vartype protocol: str or ~azure.mgmt.apimanagement.models.ConnectivityCheckProtocol :ivar protocol_configuration: Protocol-specific configuration. :vartype protocol_configuration: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestProtocolConfiguration """ _validation = { "source": {"required": True}, "destination": {"required": True}, } _attribute_map = { "source": {"key": "source", "type": "ConnectivityCheckRequestSource"}, "destination": {"key": "destination", "type": "ConnectivityCheckRequestDestination"}, "preferred_ip_version": {"key": "preferredIPVersion", "type": "str"}, "protocol": {"key": "protocol", "type": "str"}, "protocol_configuration": { "key": "protocolConfiguration", "type": "ConnectivityCheckRequestProtocolConfiguration", }, } def __init__( self, *, source: "_models.ConnectivityCheckRequestSource", destination: "_models.ConnectivityCheckRequestDestination", preferred_ip_version: Optional[Union[str, "_models.PreferredIPVersion"]] = None, protocol: Optional[Union[str, "_models.ConnectivityCheckProtocol"]] = None, protocol_configuration: Optional["_models.ConnectivityCheckRequestProtocolConfiguration"] = None, **kwargs ): """ :keyword source: Definitions about the connectivity check origin. Required. :paramtype source: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestSource :keyword destination: The connectivity check operation destination. Required. :paramtype destination: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestDestination :keyword preferred_ip_version: The IP version to be used. Only IPv4 is supported for now. "IPv4" :paramtype preferred_ip_version: str or ~azure.mgmt.apimanagement.models.PreferredIPVersion :keyword protocol: The request's protocol. Specific protocol configuration can be available based on this selection. The specified destination address must be coherent with this value. Known values are: "TCP", "HTTP", and "HTTPS". :paramtype protocol: str or ~azure.mgmt.apimanagement.models.ConnectivityCheckProtocol :keyword protocol_configuration: Protocol-specific configuration. :paramtype protocol_configuration: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestProtocolConfiguration """ super().__init__(**kwargs) self.source = source self.destination = destination self.preferred_ip_version = preferred_ip_version self.protocol = protocol self.protocol_configuration = protocol_configuration
[docs]class ConnectivityCheckRequestDestination(_serialization.Model): """The connectivity check operation destination. All required parameters must be populated in order to send to Azure. :ivar address: Destination address. Can either be an IP address or a FQDN. Required. :vartype address: str :ivar port: Destination port. Required. :vartype port: int """ _validation = { "address": {"required": True}, "port": {"required": True}, } _attribute_map = { "address": {"key": "address", "type": "str"}, "port": {"key": "port", "type": "int"}, } def __init__(self, *, address: str, port: int, **kwargs): """ :keyword address: Destination address. Can either be an IP address or a FQDN. Required. :paramtype address: str :keyword port: Destination port. Required. :paramtype port: int """ super().__init__(**kwargs) self.address = address self.port = port
[docs]class ConnectivityCheckRequestProtocolConfiguration(_serialization.Model): """Protocol-specific configuration. :ivar http_configuration: Configuration for HTTP or HTTPS requests. :vartype http_configuration: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestProtocolConfigurationHTTPConfiguration """ _attribute_map = { "http_configuration": { "key": "HTTPConfiguration", "type": "ConnectivityCheckRequestProtocolConfigurationHTTPConfiguration", }, } def __init__( self, *, http_configuration: Optional["_models.ConnectivityCheckRequestProtocolConfigurationHTTPConfiguration"] = None, **kwargs ): """ :keyword http_configuration: Configuration for HTTP or HTTPS requests. :paramtype http_configuration: ~azure.mgmt.apimanagement.models.ConnectivityCheckRequestProtocolConfigurationHTTPConfiguration """ super().__init__(**kwargs) self.http_configuration = http_configuration
[docs]class ConnectivityCheckRequestProtocolConfigurationHTTPConfiguration(_serialization.Model): """Configuration for HTTP or HTTPS requests. :ivar method: The HTTP method to be used. Known values are: "GET" and "POST". :vartype method: str or ~azure.mgmt.apimanagement.models.Method :ivar valid_status_codes: List of HTTP status codes considered valid for the request response. :vartype valid_status_codes: list[int] :ivar headers: List of headers to be included in the request. :vartype headers: list[~azure.mgmt.apimanagement.models.HTTPHeader] """ _attribute_map = { "method": {"key": "method", "type": "str"}, "valid_status_codes": {"key": "validStatusCodes", "type": "[int]"}, "headers": {"key": "headers", "type": "[HTTPHeader]"}, } def __init__( self, *, method: Optional[Union[str, "_models.Method"]] = None, valid_status_codes: Optional[List[int]] = None, headers: Optional[List["_models.HTTPHeader"]] = None, **kwargs ): """ :keyword method: The HTTP method to be used. Known values are: "GET" and "POST". :paramtype method: str or ~azure.mgmt.apimanagement.models.Method :keyword valid_status_codes: List of HTTP status codes considered valid for the request response. :paramtype valid_status_codes: list[int] :keyword headers: List of headers to be included in the request. :paramtype headers: list[~azure.mgmt.apimanagement.models.HTTPHeader] """ super().__init__(**kwargs) self.method = method self.valid_status_codes = valid_status_codes self.headers = headers
[docs]class ConnectivityCheckRequestSource(_serialization.Model): """Definitions about the connectivity check origin. All required parameters must be populated in order to send to Azure. :ivar region: The API Management service region from where to start the connectivity check operation. Required. :vartype region: str :ivar instance: The particular VMSS instance from which to fire the request. :vartype instance: int """ _validation = { "region": {"required": True}, } _attribute_map = { "region": {"key": "region", "type": "str"}, "instance": {"key": "instance", "type": "int"}, } def __init__(self, *, region: str, instance: Optional[int] = None, **kwargs): """ :keyword region: The API Management service region from where to start the connectivity check operation. Required. :paramtype region: str :keyword instance: The particular VMSS instance from which to fire the request. :paramtype instance: int """ super().__init__(**kwargs) self.region = region self.instance = instance
[docs]class ConnectivityCheckResponse(_serialization.Model): """Information on the connectivity status. Variables are only populated by the server, and will be ignored when sending a request. :ivar hops: List of hops between the source and the destination. :vartype hops: list[~azure.mgmt.apimanagement.models.ConnectivityHop] :ivar connection_status: The connection status. Known values are: "Unknown", "Connected", "Disconnected", and "Degraded". :vartype connection_status: str or ~azure.mgmt.apimanagement.models.ConnectionStatus :ivar avg_latency_in_ms: Average latency in milliseconds. :vartype avg_latency_in_ms: int :ivar min_latency_in_ms: Minimum latency in milliseconds. :vartype min_latency_in_ms: int :ivar max_latency_in_ms: Maximum latency in milliseconds. :vartype max_latency_in_ms: int :ivar probes_sent: Total number of probes sent. :vartype probes_sent: int :ivar probes_failed: Number of failed probes. :vartype probes_failed: int """ _validation = { "hops": {"readonly": True}, "connection_status": {"readonly": True}, "avg_latency_in_ms": {"readonly": True}, "min_latency_in_ms": {"readonly": True}, "max_latency_in_ms": {"readonly": True}, "probes_sent": {"readonly": True}, "probes_failed": {"readonly": True}, } _attribute_map = { "hops": {"key": "hops", "type": "[ConnectivityHop]"}, "connection_status": {"key": "connectionStatus", "type": "str"}, "avg_latency_in_ms": {"key": "avgLatencyInMs", "type": "int"}, "min_latency_in_ms": {"key": "minLatencyInMs", "type": "int"}, "max_latency_in_ms": {"key": "maxLatencyInMs", "type": "int"}, "probes_sent": {"key": "probesSent", "type": "int"}, "probes_failed": {"key": "probesFailed", "type": "int"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.hops = None self.connection_status = None self.avg_latency_in_ms = None self.min_latency_in_ms = None self.max_latency_in_ms = None self.probes_sent = None self.probes_failed = None
[docs]class ConnectivityHop(_serialization.Model): """Information about a hop between the source and the destination. Variables are only populated by the server, and will be ignored when sending a request. :ivar type: The type of the hop. :vartype type: str :ivar id: The ID of the hop. :vartype id: str :ivar address: The IP address of the hop. :vartype address: str :ivar resource_id: The ID of the resource corresponding to this hop. :vartype resource_id: str :ivar next_hop_ids: List of next hop identifiers. :vartype next_hop_ids: list[str] :ivar issues: List of issues. :vartype issues: list[~azure.mgmt.apimanagement.models.ConnectivityIssue] """ _validation = { "type": {"readonly": True}, "id": {"readonly": True}, "address": {"readonly": True}, "resource_id": {"readonly": True}, "next_hop_ids": {"readonly": True}, "issues": {"readonly": True}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "id": {"key": "id", "type": "str"}, "address": {"key": "address", "type": "str"}, "resource_id": {"key": "resourceId", "type": "str"}, "next_hop_ids": {"key": "nextHopIds", "type": "[str]"}, "issues": {"key": "issues", "type": "[ConnectivityIssue]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.type = None self.id = None self.address = None self.resource_id = None self.next_hop_ids = None self.issues = None
[docs]class ConnectivityIssue(_serialization.Model): """Information about an issue encountered in the process of checking for connectivity. Variables are only populated by the server, and will be ignored when sending a request. :ivar origin: The origin of the issue. Known values are: "Local", "Inbound", and "Outbound". :vartype origin: str or ~azure.mgmt.apimanagement.models.Origin :ivar severity: The severity of the issue. Known values are: "Error" and "Warning". :vartype severity: str or ~azure.mgmt.apimanagement.models.Severity :ivar type: The type of issue. Known values are: "Unknown", "AgentStopped", "GuestFirewall", "DnsResolution", "SocketBind", "NetworkSecurityRule", "UserDefinedRoute", "PortThrottled", and "Platform". :vartype type: str or ~azure.mgmt.apimanagement.models.IssueType :ivar context: Provides additional context on the issue. :vartype context: list[dict[str, str]] """ _validation = { "origin": {"readonly": True}, "severity": {"readonly": True}, "type": {"readonly": True}, "context": {"readonly": True}, } _attribute_map = { "origin": {"key": "origin", "type": "str"}, "severity": {"key": "severity", "type": "str"}, "type": {"key": "type", "type": "str"}, "context": {"key": "context", "type": "[{str}]"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.origin = None self.severity = None self.type = None self.context = None
[docs]class ConnectivityStatusContract(_serialization.Model): """Details about connectivity to a resource. All required parameters must be populated in order to send to Azure. :ivar name: The hostname of the resource which the service depends on. This can be the database, storage or any other azure resource on which the service depends upon. Required. :vartype name: str :ivar status: Resource Connectivity Status Type identifier. Required. Known values are: "initializing", "success", and "failure". :vartype status: str or ~azure.mgmt.apimanagement.models.ConnectivityStatusType :ivar error: Error details of the connectivity to the resource. :vartype error: str :ivar last_updated: The date when the resource connectivity status was last updated. This status should be updated every 15 minutes. If this status has not been updated, then it means that the service has lost network connectivity to the resource, from inside the Virtual Network.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype last_updated: ~datetime.datetime :ivar last_status_change: The date when the resource connectivity status last Changed from success to failure or vice-versa. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype last_status_change: ~datetime.datetime :ivar resource_type: Resource Type. Required. :vartype resource_type: str :ivar is_optional: Whether this is optional. Required. :vartype is_optional: bool """ _validation = { "name": {"required": True, "min_length": 1}, "status": {"required": True}, "last_updated": {"required": True}, "last_status_change": {"required": True}, "resource_type": {"required": True}, "is_optional": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "status": {"key": "status", "type": "str"}, "error": {"key": "error", "type": "str"}, "last_updated": {"key": "lastUpdated", "type": "iso-8601"}, "last_status_change": {"key": "lastStatusChange", "type": "iso-8601"}, "resource_type": {"key": "resourceType", "type": "str"}, "is_optional": {"key": "isOptional", "type": "bool"}, } def __init__( self, *, name: str, status: Union[str, "_models.ConnectivityStatusType"], last_updated: datetime.datetime, last_status_change: datetime.datetime, resource_type: str, is_optional: bool, error: Optional[str] = None, **kwargs ): """ :keyword name: The hostname of the resource which the service depends on. This can be the database, storage or any other azure resource on which the service depends upon. Required. :paramtype name: str :keyword status: Resource Connectivity Status Type identifier. Required. Known values are: "initializing", "success", and "failure". :paramtype status: str or ~azure.mgmt.apimanagement.models.ConnectivityStatusType :keyword error: Error details of the connectivity to the resource. :paramtype error: str :keyword last_updated: The date when the resource connectivity status was last updated. This status should be updated every 15 minutes. If this status has not been updated, then it means that the service has lost network connectivity to the resource, from inside the Virtual Network.The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype last_updated: ~datetime.datetime :keyword last_status_change: The date when the resource connectivity status last Changed from success to failure or vice-versa. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype last_status_change: ~datetime.datetime :keyword resource_type: Resource Type. Required. :paramtype resource_type: str :keyword is_optional: Whether this is optional. Required. :paramtype is_optional: bool """ super().__init__(**kwargs) self.name = name self.status = status self.error = error self.last_updated = last_updated self.last_status_change = last_status_change self.resource_type = resource_type self.is_optional = is_optional
[docs]class ContentItemCollection(_serialization.Model): """Paged list of content items. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Collection of content items. :vartype value: list[~azure.mgmt.apimanagement.models.ContentItemContract] :ivar next_link: Next page link, if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ContentItemContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class ContentItemContract(Resource): """Content type contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar properties: Properties of the content item. :vartype properties: dict[str, any] """ _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"}, "properties": {"key": "properties", "type": "{object}"}, } def __init__(self, *, properties: Optional[Dict[str, Any]] = None, **kwargs): """ :keyword properties: Properties of the content item. :paramtype properties: dict[str, any] """ super().__init__(**kwargs) self.properties = properties
[docs]class ContentTypeCollection(_serialization.Model): """Paged list of content types. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Collection of content types. :vartype value: list[~azure.mgmt.apimanagement.models.ContentTypeContract] :ivar next_link: Next page link, if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[ContentTypeContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class ContentTypeContract(Resource): """Content type contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar id_properties_id: Content type identifier. :vartype id_properties_id: str :ivar name_properties_name: Content type name. Must be 1 to 250 characters long. :vartype name_properties_name: str :ivar description: Content type description. :vartype description: str :ivar schema: Content type schema. :vartype schema: JSON :ivar version: Content type version. :vartype version: 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"}, "id_properties_id": {"key": "properties.id", "type": "str"}, "name_properties_name": {"key": "properties.name", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "schema": {"key": "properties.schema", "type": "object"}, "version": {"key": "properties.version", "type": "str"}, } def __init__( self, *, id_properties_id: Optional[str] = None, name_properties_name: Optional[str] = None, description: Optional[str] = None, schema: Optional[JSON] = None, version: Optional[str] = None, **kwargs ): """ :keyword id_properties_id: Content type identifier. :paramtype id_properties_id: str :keyword name_properties_name: Content type name. Must be 1 to 250 characters long. :paramtype name_properties_name: str :keyword description: Content type description. :paramtype description: str :keyword schema: Content type schema. :paramtype schema: JSON :keyword version: Content type version. :paramtype version: str """ super().__init__(**kwargs) self.id_properties_id = id_properties_id self.name_properties_name = name_properties_name self.description = description self.schema = schema self.version = version
[docs]class DataMasking(_serialization.Model): """DataMasking. :ivar query_params: Masking settings for Url query parameters. :vartype query_params: list[~azure.mgmt.apimanagement.models.DataMaskingEntity] :ivar headers: Masking settings for headers. :vartype headers: list[~azure.mgmt.apimanagement.models.DataMaskingEntity] """ _attribute_map = { "query_params": {"key": "queryParams", "type": "[DataMaskingEntity]"}, "headers": {"key": "headers", "type": "[DataMaskingEntity]"}, } def __init__( self, *, query_params: Optional[List["_models.DataMaskingEntity"]] = None, headers: Optional[List["_models.DataMaskingEntity"]] = None, **kwargs ): """ :keyword query_params: Masking settings for Url query parameters. :paramtype query_params: list[~azure.mgmt.apimanagement.models.DataMaskingEntity] :keyword headers: Masking settings for headers. :paramtype headers: list[~azure.mgmt.apimanagement.models.DataMaskingEntity] """ super().__init__(**kwargs) self.query_params = query_params self.headers = headers
[docs]class DataMaskingEntity(_serialization.Model): """DataMaskingEntity. :ivar value: The name of an entity to mask (e.g. a name of a header or a query parameter). :vartype value: str :ivar mode: Data masking mode. Known values are: "Mask" and "Hide". :vartype mode: str or ~azure.mgmt.apimanagement.models.DataMaskingMode """ _attribute_map = { "value": {"key": "value", "type": "str"}, "mode": {"key": "mode", "type": "str"}, } def __init__( self, *, value: Optional[str] = None, mode: Optional[Union[str, "_models.DataMaskingMode"]] = None, **kwargs ): """ :keyword value: The name of an entity to mask (e.g. a name of a header or a query parameter). :paramtype value: str :keyword mode: Data masking mode. Known values are: "Mask" and "Hide". :paramtype mode: str or ~azure.mgmt.apimanagement.models.DataMaskingMode """ super().__init__(**kwargs) self.value = value self.mode = mode
[docs]class DeletedServiceContract(Resource): """Deleted API Management Service information. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar location: API Management Service Master Location. :vartype location: str :ivar service_id: Fully-qualified API Management Service Resource ID. :vartype service_id: str :ivar scheduled_purge_date: UTC Date and Time when the service will be automatically purged. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype scheduled_purge_date: ~datetime.datetime :ivar deletion_date: UTC Timestamp when the service was soft-deleted. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :vartype deletion_date: ~datetime.datetime """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "location": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "location": {"key": "location", "type": "str"}, "service_id": {"key": "properties.serviceId", "type": "str"}, "scheduled_purge_date": {"key": "properties.scheduledPurgeDate", "type": "iso-8601"}, "deletion_date": {"key": "properties.deletionDate", "type": "iso-8601"}, } def __init__( self, *, service_id: Optional[str] = None, scheduled_purge_date: Optional[datetime.datetime] = None, deletion_date: Optional[datetime.datetime] = None, **kwargs ): """ :keyword service_id: Fully-qualified API Management Service Resource ID. :paramtype service_id: str :keyword scheduled_purge_date: UTC Date and Time when the service will be automatically purged. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :paramtype scheduled_purge_date: ~datetime.datetime :keyword deletion_date: UTC Timestamp when the service was soft-deleted. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. :paramtype deletion_date: ~datetime.datetime """ super().__init__(**kwargs) self.location = None self.service_id = service_id self.scheduled_purge_date = scheduled_purge_date self.deletion_date = deletion_date
[docs]class DeletedServicesCollection(_serialization.Model): """Paged deleted API Management Services List Representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.DeletedServiceContract] :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[DeletedServiceContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class DeployConfigurationParameters(_serialization.Model): """Deploy Tenant Configuration Contract. :ivar branch: The name of the Git branch from which the configuration is to be deployed to the configuration database. :vartype branch: str :ivar force: The value enforcing deleting subscriptions to products that are deleted in this update. :vartype force: bool """ _attribute_map = { "branch": {"key": "properties.branch", "type": "str"}, "force": {"key": "properties.force", "type": "bool"}, } def __init__(self, *, branch: Optional[str] = None, force: Optional[bool] = None, **kwargs): """ :keyword branch: The name of the Git branch from which the configuration is to be deployed to the configuration database. :paramtype branch: str :keyword force: The value enforcing deleting subscriptions to products that are deleted in this update. :paramtype force: bool """ super().__init__(**kwargs) self.branch = branch self.force = force
[docs]class DiagnosticCollection(_serialization.Model): """Paged Diagnostic list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.DiagnosticContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[DiagnosticContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.DiagnosticContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.DiagnosticContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class DiagnosticContract(Resource): # pylint: disable=too-many-instance-attributes """Diagnostic details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar always_log: Specifies for what type of messages sampling settings should not apply. "allErrors" :vartype always_log: str or ~azure.mgmt.apimanagement.models.AlwaysLog :ivar logger_id: Resource Id of a target logger. :vartype logger_id: str :ivar sampling: Sampling settings for Diagnostic. :vartype sampling: ~azure.mgmt.apimanagement.models.SamplingSettings :ivar frontend: Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. :vartype frontend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings :ivar backend: Diagnostic settings for incoming/outgoing HTTP messages to the Backend. :vartype backend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings :ivar log_client_ip: Log the ClientIP. Default is false. :vartype log_client_ip: bool :ivar http_correlation_protocol: Sets correlation protocol to use for Application Insights diagnostics. Known values are: "None", "Legacy", and "W3C". :vartype http_correlation_protocol: str or ~azure.mgmt.apimanagement.models.HttpCorrelationProtocol :ivar verbosity: The verbosity level applied to traces emitted by trace policies. Known values are: "verbose", "information", and "error". :vartype verbosity: str or ~azure.mgmt.apimanagement.models.Verbosity :ivar operation_name_format: The format of the Operation Name for Application Insights telemetries. Default is Name. Known values are: "Name" and "Url". :vartype operation_name_format: str or ~azure.mgmt.apimanagement.models.OperationNameFormat :ivar metrics: Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings. :vartype metrics: 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"}, "always_log": {"key": "properties.alwaysLog", "type": "str"}, "logger_id": {"key": "properties.loggerId", "type": "str"}, "sampling": {"key": "properties.sampling", "type": "SamplingSettings"}, "frontend": {"key": "properties.frontend", "type": "PipelineDiagnosticSettings"}, "backend": {"key": "properties.backend", "type": "PipelineDiagnosticSettings"}, "log_client_ip": {"key": "properties.logClientIp", "type": "bool"}, "http_correlation_protocol": {"key": "properties.httpCorrelationProtocol", "type": "str"}, "verbosity": {"key": "properties.verbosity", "type": "str"}, "operation_name_format": {"key": "properties.operationNameFormat", "type": "str"}, "metrics": {"key": "properties.metrics", "type": "bool"}, } def __init__( self, *, always_log: Optional[Union[str, "_models.AlwaysLog"]] = None, logger_id: Optional[str] = None, sampling: Optional["_models.SamplingSettings"] = None, frontend: Optional["_models.PipelineDiagnosticSettings"] = None, backend: Optional["_models.PipelineDiagnosticSettings"] = None, log_client_ip: Optional[bool] = None, http_correlation_protocol: Optional[Union[str, "_models.HttpCorrelationProtocol"]] = None, verbosity: Optional[Union[str, "_models.Verbosity"]] = None, operation_name_format: Optional[Union[str, "_models.OperationNameFormat"]] = None, metrics: Optional[bool] = None, **kwargs ): """ :keyword always_log: Specifies for what type of messages sampling settings should not apply. "allErrors" :paramtype always_log: str or ~azure.mgmt.apimanagement.models.AlwaysLog :keyword logger_id: Resource Id of a target logger. :paramtype logger_id: str :keyword sampling: Sampling settings for Diagnostic. :paramtype sampling: ~azure.mgmt.apimanagement.models.SamplingSettings :keyword frontend: Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. :paramtype frontend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings :keyword backend: Diagnostic settings for incoming/outgoing HTTP messages to the Backend. :paramtype backend: ~azure.mgmt.apimanagement.models.PipelineDiagnosticSettings :keyword log_client_ip: Log the ClientIP. Default is false. :paramtype log_client_ip: bool :keyword http_correlation_protocol: Sets correlation protocol to use for Application Insights diagnostics. Known values are: "None", "Legacy", and "W3C". :paramtype http_correlation_protocol: str or ~azure.mgmt.apimanagement.models.HttpCorrelationProtocol :keyword verbosity: The verbosity level applied to traces emitted by trace policies. Known values are: "verbose", "information", and "error". :paramtype verbosity: str or ~azure.mgmt.apimanagement.models.Verbosity :keyword operation_name_format: The format of the Operation Name for Application Insights telemetries. Default is Name. Known values are: "Name" and "Url". :paramtype operation_name_format: str or ~azure.mgmt.apimanagement.models.OperationNameFormat :keyword metrics: Emit custom metrics via emit-metric policy. Applicable only to Application Insights diagnostic settings. :paramtype metrics: bool """ super().__init__(**kwargs) self.always_log = always_log self.logger_id = logger_id self.sampling = sampling self.frontend = frontend self.backend = backend self.log_client_ip = log_client_ip self.http_correlation_protocol = http_correlation_protocol self.verbosity = verbosity self.operation_name_format = operation_name_format self.metrics = metrics
[docs]class EmailTemplateCollection(_serialization.Model): """Paged email template list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.EmailTemplateContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[EmailTemplateContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.EmailTemplateContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.EmailTemplateContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class EmailTemplateContract(Resource): """Email Template details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar subject: Subject of the Template. :vartype subject: str :ivar body: Email Template Body. This should be a valid XDocument. :vartype body: str :ivar title: Title of the Template. :vartype title: str :ivar description: Description of the Email Template. :vartype description: str :ivar is_default: Whether the template is the default template provided by API Management or has been edited. :vartype is_default: bool :ivar parameters: Email Template Parameter values. :vartype parameters: list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "subject": {"max_length": 1000, "min_length": 1}, "body": {"min_length": 1}, "is_default": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "subject": {"key": "properties.subject", "type": "str"}, "body": {"key": "properties.body", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "is_default": {"key": "properties.isDefault", "type": "bool"}, "parameters": {"key": "properties.parameters", "type": "[EmailTemplateParametersContractProperties]"}, } def __init__( self, *, subject: Optional[str] = None, body: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, parameters: Optional[List["_models.EmailTemplateParametersContractProperties"]] = None, **kwargs ): """ :keyword subject: Subject of the Template. :paramtype subject: str :keyword body: Email Template Body. This should be a valid XDocument. :paramtype body: str :keyword title: Title of the Template. :paramtype title: str :keyword description: Description of the Email Template. :paramtype description: str :keyword parameters: Email Template Parameter values. :paramtype parameters: list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] """ super().__init__(**kwargs) self.subject = subject self.body = body self.title = title self.description = description self.is_default = None self.parameters = parameters
[docs]class EmailTemplateParametersContractProperties(_serialization.Model): """Email Template Parameter contract. :ivar name: Template parameter name. :vartype name: str :ivar title: Template parameter title. :vartype title: str :ivar description: Template parameter description. :vartype description: str """ _validation = { "name": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "title": {"max_length": 4096, "min_length": 1}, "description": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, name: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, **kwargs ): """ :keyword name: Template parameter name. :paramtype name: str :keyword title: Template parameter title. :paramtype title: str :keyword description: Template parameter description. :paramtype description: str """ super().__init__(**kwargs) self.name = name self.title = title self.description = description
[docs]class EmailTemplateUpdateParameters(_serialization.Model): """Email Template update Parameters. :ivar subject: Subject of the Template. :vartype subject: str :ivar title: Title of the Template. :vartype title: str :ivar description: Description of the Email Template. :vartype description: str :ivar body: Email Template Body. This should be a valid XDocument. :vartype body: str :ivar parameters: Email Template Parameter values. :vartype parameters: list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] """ _validation = { "subject": {"max_length": 1000, "min_length": 1}, "body": {"min_length": 1}, } _attribute_map = { "subject": {"key": "properties.subject", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "body": {"key": "properties.body", "type": "str"}, "parameters": {"key": "properties.parameters", "type": "[EmailTemplateParametersContractProperties]"}, } def __init__( self, *, subject: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, body: Optional[str] = None, parameters: Optional[List["_models.EmailTemplateParametersContractProperties"]] = None, **kwargs ): """ :keyword subject: Subject of the Template. :paramtype subject: str :keyword title: Title of the Template. :paramtype title: str :keyword description: Description of the Email Template. :paramtype description: str :keyword body: Email Template Body. This should be a valid XDocument. :paramtype body: str :keyword parameters: Email Template Parameter values. :paramtype parameters: list[~azure.mgmt.apimanagement.models.EmailTemplateParametersContractProperties] """ super().__init__(**kwargs) self.subject = subject self.title = title self.description = description self.body = body self.parameters = parameters
[docs]class EndpointDependency(_serialization.Model): """A domain name that a service is reached at. :ivar domain_name: The domain name of the dependency. :vartype domain_name: str :ivar endpoint_details: The Ports used when connecting to DomainName. :vartype endpoint_details: list[~azure.mgmt.apimanagement.models.EndpointDetail] """ _attribute_map = { "domain_name": {"key": "domainName", "type": "str"}, "endpoint_details": {"key": "endpointDetails", "type": "[EndpointDetail]"}, } def __init__( self, *, domain_name: Optional[str] = None, endpoint_details: Optional[List["_models.EndpointDetail"]] = None, **kwargs ): """ :keyword domain_name: The domain name of the dependency. :paramtype domain_name: str :keyword endpoint_details: The Ports used when connecting to DomainName. :paramtype endpoint_details: list[~azure.mgmt.apimanagement.models.EndpointDetail] """ super().__init__(**kwargs) self.domain_name = domain_name self.endpoint_details = endpoint_details
[docs]class EndpointDetail(_serialization.Model): """Current TCP connectivity information from the Api Management Service to a single endpoint. :ivar port: The port an endpoint is connected to. :vartype port: int :ivar region: The region of the dependency. :vartype region: str """ _attribute_map = { "port": {"key": "port", "type": "int"}, "region": {"key": "region", "type": "str"}, } def __init__(self, *, port: Optional[int] = None, region: Optional[str] = None, **kwargs): """ :keyword port: The port an endpoint is connected to. :paramtype port: int :keyword region: The region of the dependency. :paramtype region: str """ super().__init__(**kwargs) self.port = port self.region = region
[docs]class ErrorFieldContract(_serialization.Model): """Error Field contract. :ivar code: Property level error code. :vartype code: str :ivar message: Human-readable representation of property-level error. :vartype message: str :ivar target: Property name. :vartype target: str """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "target": {"key": "target", "type": "str"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, target: Optional[str] = None, **kwargs ): """ :keyword code: Property level error code. :paramtype code: str :keyword message: Human-readable representation of property-level error. :paramtype message: str :keyword target: Property name. :paramtype target: str """ super().__init__(**kwargs) self.code = code self.message = message self.target = target
[docs]class ErrorResponse(_serialization.Model): """Error Response. :ivar code: Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response. :vartype code: str :ivar message: Human-readable representation of the error. :vartype message: str :ivar details: The list of invalid fields send in request, in case of validation error. :vartype details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] """ _attribute_map = { "code": {"key": "error.code", "type": "str"}, "message": {"key": "error.message", "type": "str"}, "details": {"key": "error.details", "type": "[ErrorFieldContract]"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, details: Optional[List["_models.ErrorFieldContract"]] = None, **kwargs ): """ :keyword code: Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response. :paramtype code: str :keyword message: Human-readable representation of the error. :paramtype message: str :keyword details: The list of invalid fields send in request, in case of validation error. :paramtype details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] """ super().__init__(**kwargs) self.code = code self.message = message self.details = details
[docs]class ErrorResponseBody(_serialization.Model): """Error Body contract. :ivar code: Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response. :vartype code: str :ivar message: Human-readable representation of the error. :vartype message: str :ivar details: The list of invalid fields send in request, in case of validation error. :vartype details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "details": {"key": "details", "type": "[ErrorFieldContract]"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, details: Optional[List["_models.ErrorFieldContract"]] = None, **kwargs ): """ :keyword code: Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response. :paramtype code: str :keyword message: Human-readable representation of the error. :paramtype message: str :keyword details: The list of invalid fields send in request, in case of validation error. :paramtype details: list[~azure.mgmt.apimanagement.models.ErrorFieldContract] """ super().__init__(**kwargs) self.code = code self.message = message self.details = details
[docs]class GatewayCertificateAuthorityCollection(_serialization.Model): """Paged Gateway certificate authority list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.GatewayCertificateAuthorityContract] :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[GatewayCertificateAuthorityContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class GatewayCertificateAuthorityContract(Resource): """Gateway certificate authority details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar is_trusted: Determines whether certificate authority is trusted. :vartype is_trusted: 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"}, "is_trusted": {"key": "properties.isTrusted", "type": "bool"}, } def __init__(self, *, is_trusted: Optional[bool] = None, **kwargs): """ :keyword is_trusted: Determines whether certificate authority is trusted. :paramtype is_trusted: bool """ super().__init__(**kwargs) self.is_trusted = is_trusted
[docs]class GatewayCollection(_serialization.Model): """Paged Gateway list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.GatewayContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[GatewayContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class GatewayContract(Resource): """Gateway details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar location_data: Gateway location. :vartype location_data: ~azure.mgmt.apimanagement.models.ResourceLocationDataContract :ivar description: Gateway description. :vartype description: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 1000}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "location_data": {"key": "properties.locationData", "type": "ResourceLocationDataContract"}, "description": {"key": "properties.description", "type": "str"}, } def __init__( self, *, location_data: Optional["_models.ResourceLocationDataContract"] = None, description: Optional[str] = None, **kwargs ): """ :keyword location_data: Gateway location. :paramtype location_data: ~azure.mgmt.apimanagement.models.ResourceLocationDataContract :keyword description: Gateway description. :paramtype description: str """ super().__init__(**kwargs) self.location_data = location_data self.description = description
[docs]class GatewayHostnameConfigurationCollection(_serialization.Model): """Paged Gateway hostname configuration list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.GatewayHostnameConfigurationContract] :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[GatewayHostnameConfigurationContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class GatewayHostnameConfigurationContract(Resource): """Gateway hostname configuration details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar hostname: Hostname value. Supports valid domain name, partial or full wildcard. :vartype hostname: str :ivar certificate_id: Identifier of Certificate entity that will be used for TLS connection establishment. :vartype certificate_id: str :ivar negotiate_client_certificate: Determines whether gateway requests client certificate. :vartype negotiate_client_certificate: bool :ivar tls10_enabled: Specifies if TLS 1.0 is supported. :vartype tls10_enabled: bool :ivar tls11_enabled: Specifies if TLS 1.1 is supported. :vartype tls11_enabled: bool :ivar http2_enabled: Specifies if HTTP/2.0 is supported. :vartype http2_enabled: 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"}, "hostname": {"key": "properties.hostname", "type": "str"}, "certificate_id": {"key": "properties.certificateId", "type": "str"}, "negotiate_client_certificate": {"key": "properties.negotiateClientCertificate", "type": "bool"}, "tls10_enabled": {"key": "properties.tls10Enabled", "type": "bool"}, "tls11_enabled": {"key": "properties.tls11Enabled", "type": "bool"}, "http2_enabled": {"key": "properties.http2Enabled", "type": "bool"}, } def __init__( self, *, hostname: Optional[str] = None, certificate_id: Optional[str] = None, negotiate_client_certificate: Optional[bool] = None, tls10_enabled: Optional[bool] = None, tls11_enabled: Optional[bool] = None, http2_enabled: Optional[bool] = None, **kwargs ): """ :keyword hostname: Hostname value. Supports valid domain name, partial or full wildcard. :paramtype hostname: str :keyword certificate_id: Identifier of Certificate entity that will be used for TLS connection establishment. :paramtype certificate_id: str :keyword negotiate_client_certificate: Determines whether gateway requests client certificate. :paramtype negotiate_client_certificate: bool :keyword tls10_enabled: Specifies if TLS 1.0 is supported. :paramtype tls10_enabled: bool :keyword tls11_enabled: Specifies if TLS 1.1 is supported. :paramtype tls11_enabled: bool :keyword http2_enabled: Specifies if HTTP/2.0 is supported. :paramtype http2_enabled: bool """ super().__init__(**kwargs) self.hostname = hostname self.certificate_id = certificate_id self.negotiate_client_certificate = negotiate_client_certificate self.tls10_enabled = tls10_enabled self.tls11_enabled = tls11_enabled self.http2_enabled = http2_enabled
[docs]class GatewayKeyRegenerationRequestContract(_serialization.Model): """Gateway key regeneration request contract properties. All required parameters must be populated in order to send to Azure. :ivar key_type: The Key being regenerated. Required. Known values are: "primary" and "secondary". :vartype key_type: str or ~azure.mgmt.apimanagement.models.KeyType """ _validation = { "key_type": {"required": True}, } _attribute_map = { "key_type": {"key": "keyType", "type": "str"}, } def __init__(self, *, key_type: Union[str, "_models.KeyType"], **kwargs): """ :keyword key_type: The Key being regenerated. Required. Known values are: "primary" and "secondary". :paramtype key_type: str or ~azure.mgmt.apimanagement.models.KeyType """ super().__init__(**kwargs) self.key_type = key_type
[docs]class GatewayKeysContract(_serialization.Model): """Gateway authentication keys. :ivar primary: Primary gateway key. :vartype primary: str :ivar secondary: Secondary gateway key. :vartype secondary: str """ _attribute_map = { "primary": {"key": "primary", "type": "str"}, "secondary": {"key": "secondary", "type": "str"}, } def __init__(self, *, primary: Optional[str] = None, secondary: Optional[str] = None, **kwargs): """ :keyword primary: Primary gateway key. :paramtype primary: str :keyword secondary: Secondary gateway key. :paramtype secondary: str """ super().__init__(**kwargs) self.primary = primary self.secondary = secondary
[docs]class GatewayTokenContract(_serialization.Model): """Gateway access token. :ivar value: Shared Access Authentication token value for the Gateway. :vartype value: str """ _attribute_map = { "value": {"key": "value", "type": "str"}, } def __init__(self, *, value: Optional[str] = None, **kwargs): """ :keyword value: Shared Access Authentication token value for the Gateway. :paramtype value: str """ super().__init__(**kwargs) self.value = value
[docs]class GatewayTokenRequestContract(_serialization.Model): """Gateway token request contract properties. All required parameters must be populated in order to send to Azure. :ivar key_type: The Key to be used to generate gateway token. Required. Known values are: "primary" and "secondary". :vartype key_type: str or ~azure.mgmt.apimanagement.models.KeyType :ivar expiry: The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype expiry: ~datetime.datetime """ _validation = { "key_type": {"required": True}, "expiry": {"required": True}, } _attribute_map = { "key_type": {"key": "keyType", "type": "str"}, "expiry": {"key": "expiry", "type": "iso-8601"}, } def __init__(self, *, key_type: Union[str, "_models.KeyType"], expiry: datetime.datetime, **kwargs): """ :keyword key_type: The Key to be used to generate gateway token. Required. Known values are: "primary" and "secondary". :paramtype key_type: str or ~azure.mgmt.apimanagement.models.KeyType :keyword expiry: The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype expiry: ~datetime.datetime """ super().__init__(**kwargs) self.key_type = key_type self.expiry = expiry
[docs]class GenerateSsoUrlResult(_serialization.Model): """Generate SSO Url operations response details. :ivar value: Redirect Url containing the SSO URL value. :vartype value: str """ _attribute_map = { "value": {"key": "value", "type": "str"}, } def __init__(self, *, value: Optional[str] = None, **kwargs): """ :keyword value: Redirect Url containing the SSO URL value. :paramtype value: str """ super().__init__(**kwargs) self.value = value
[docs]class GlobalSchemaCollection(_serialization.Model): """The response of the list schema operation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Global Schema Contract value. :vartype value: list[~azure.mgmt.apimanagement.models.GlobalSchemaContract] :ivar count: Total record count number. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[GlobalSchemaContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class GlobalSchemaContract(Resource): """Global Schema Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar schema_type: Schema Type. Immutable. Known values are: "xml" and "json". :vartype schema_type: str or ~azure.mgmt.apimanagement.models.SchemaType :ivar description: Free-form schema entity description. :vartype description: str :ivar value: Json-encoded string for non json-based schema. :vartype value: any :ivar document: Global Schema document object for json-based schema formats(e.g. json schema). :vartype document: JSON """ _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"}, "schema_type": {"key": "properties.schemaType", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "value": {"key": "properties.value", "type": "object"}, "document": {"key": "properties.document", "type": "object"}, } def __init__( self, *, schema_type: Optional[Union[str, "_models.SchemaType"]] = None, description: Optional[str] = None, value: Optional[Any] = None, document: Optional[JSON] = None, **kwargs ): """ :keyword schema_type: Schema Type. Immutable. Known values are: "xml" and "json". :paramtype schema_type: str or ~azure.mgmt.apimanagement.models.SchemaType :keyword description: Free-form schema entity description. :paramtype description: str :keyword value: Json-encoded string for non json-based schema. :paramtype value: any :keyword document: Global Schema document object for json-based schema formats(e.g. json schema). :paramtype document: JSON """ super().__init__(**kwargs) self.schema_type = schema_type self.description = description self.value = value self.document = document
[docs]class GroupCollection(_serialization.Model): """Paged Group list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.GroupContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[GroupContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.GroupContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.GroupContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class GroupContract(Resource): """Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar display_name: Group name. :vartype display_name: str :ivar description: Group description. Can contain HTML formatting tags. :vartype description: str :ivar built_in: true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false. :vartype built_in: bool :ivar type_properties_type: Group type. Known values are: "custom", "system", and "external". :vartype type_properties_type: str or ~azure.mgmt.apimanagement.models.GroupType :ivar external_id: For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :vartype external_id: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 300, "min_length": 1}, "description": {"max_length": 1000}, "built_in": {"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"}, "built_in": {"key": "properties.builtIn", "type": "bool"}, "type_properties_type": {"key": "properties.type", "type": "str"}, "external_id": {"key": "properties.externalId", "type": "str"}, } def __init__( self, *, display_name: Optional[str] = None, description: Optional[str] = None, type_properties_type: Optional[Union[str, "_models.GroupType"]] = None, external_id: Optional[str] = None, **kwargs ): """ :keyword display_name: Group name. :paramtype display_name: str :keyword description: Group description. Can contain HTML formatting tags. :paramtype description: str :keyword type_properties_type: Group type. Known values are: "custom", "system", and "external". :paramtype type_properties_type: str or ~azure.mgmt.apimanagement.models.GroupType :keyword external_id: For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :paramtype external_id: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.built_in = None self.type_properties_type = type_properties_type self.external_id = external_id
[docs]class GroupContractProperties(_serialization.Model): """Group contract Properties. 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 display_name: Group name. Required. :vartype display_name: str :ivar description: Group description. Can contain HTML formatting tags. :vartype description: str :ivar built_in: true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false. :vartype built_in: bool :ivar type: Group type. Known values are: "custom", "system", and "external". :vartype type: str or ~azure.mgmt.apimanagement.models.GroupType :ivar external_id: For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :vartype external_id: str """ _validation = { "display_name": {"required": True, "max_length": 300, "min_length": 1}, "description": {"max_length": 1000}, "built_in": {"readonly": True}, } _attribute_map = { "display_name": {"key": "displayName", "type": "str"}, "description": {"key": "description", "type": "str"}, "built_in": {"key": "builtIn", "type": "bool"}, "type": {"key": "type", "type": "str"}, "external_id": {"key": "externalId", "type": "str"}, } def __init__( self, *, display_name: str, description: Optional[str] = None, type: Optional[Union[str, "_models.GroupType"]] = None, external_id: Optional[str] = None, **kwargs ): """ :keyword display_name: Group name. Required. :paramtype display_name: str :keyword description: Group description. Can contain HTML formatting tags. :paramtype description: str :keyword type: Group type. Known values are: "custom", "system", and "external". :paramtype type: str or ~azure.mgmt.apimanagement.models.GroupType :keyword external_id: For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :paramtype external_id: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.built_in = None self.type = type self.external_id = external_id
[docs]class GroupCreateParameters(_serialization.Model): """Parameters supplied to the Create Group operation. :ivar display_name: Group name. :vartype display_name: str :ivar description: Group description. :vartype description: str :ivar type: Group type. Known values are: "custom", "system", and "external". :vartype type: str or ~azure.mgmt.apimanagement.models.GroupType :ivar external_id: Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :vartype external_id: str """ _validation = { "display_name": {"max_length": 300, "min_length": 1}, } _attribute_map = { "display_name": {"key": "properties.displayName", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "type": {"key": "properties.type", "type": "str"}, "external_id": {"key": "properties.externalId", "type": "str"}, } def __init__( self, *, display_name: Optional[str] = None, description: Optional[str] = None, type: Optional[Union[str, "_models.GroupType"]] = None, external_id: Optional[str] = None, **kwargs ): """ :keyword display_name: Group name. :paramtype display_name: str :keyword description: Group description. :paramtype description: str :keyword type: Group type. Known values are: "custom", "system", and "external". :paramtype type: str or ~azure.mgmt.apimanagement.models.GroupType :keyword external_id: Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :paramtype external_id: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.type = type self.external_id = external_id
[docs]class GroupUpdateParameters(_serialization.Model): """Parameters supplied to the Update Group operation. :ivar display_name: Group name. :vartype display_name: str :ivar description: Group description. :vartype description: str :ivar type: Group type. Known values are: "custom", "system", and "external". :vartype type: str or ~azure.mgmt.apimanagement.models.GroupType :ivar external_id: Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :vartype external_id: str """ _validation = { "display_name": {"max_length": 300, "min_length": 1}, } _attribute_map = { "display_name": {"key": "properties.displayName", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "type": {"key": "properties.type", "type": "str"}, "external_id": {"key": "properties.externalId", "type": "str"}, } def __init__( self, *, display_name: Optional[str] = None, description: Optional[str] = None, type: Optional[Union[str, "_models.GroupType"]] = None, external_id: Optional[str] = None, **kwargs ): """ :keyword display_name: Group name. :paramtype display_name: str :keyword description: Group description. :paramtype description: str :keyword type: Group type. Known values are: "custom", "system", and "external". :paramtype type: str or ~azure.mgmt.apimanagement.models.GroupType :keyword external_id: Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory ``aad://<tenant>.onmicrosoft.com/groups/<group object id>``\ ; otherwise the value is null. :paramtype external_id: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.type = type self.external_id = external_id
[docs]class HostnameConfiguration(_serialization.Model): # pylint: disable=too-many-instance-attributes """Custom hostname configuration. All required parameters must be populated in order to send to Azure. :ivar type: Hostname type. Required. Known values are: "Proxy", "Portal", "Management", "Scm", and "DeveloperPortal". :vartype type: str or ~azure.mgmt.apimanagement.models.HostnameType :ivar host_name: Hostname to configure on the Api Management service. Required. :vartype host_name: str :ivar key_vault_id: Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with aka.ms/apimmsi. The secret should be of type *application/x-pkcs12*. :vartype key_vault_id: str :ivar identity_client_id: System or User Assigned Managed identity clientId as generated by Azure AD, which has GET access to the keyVault containing the SSL certificate. :vartype identity_client_id: str :ivar encoded_certificate: Base64 Encoded certificate. :vartype encoded_certificate: str :ivar certificate_password: Certificate Password. :vartype certificate_password: str :ivar default_ssl_binding: Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type. :vartype default_ssl_binding: bool :ivar negotiate_client_certificate: Specify true to always negotiate client certificate on the hostname. Default Value is false. :vartype negotiate_client_certificate: bool :ivar certificate: Certificate information. :vartype certificate: ~azure.mgmt.apimanagement.models.CertificateInformation :ivar certificate_source: Certificate Source. Known values are: "Managed", "KeyVault", "Custom", and "BuiltIn". :vartype certificate_source: str or ~azure.mgmt.apimanagement.models.CertificateSource :ivar certificate_status: Certificate Status. Known values are: "Completed", "Failed", and "InProgress". :vartype certificate_status: str or ~azure.mgmt.apimanagement.models.CertificateStatus """ _validation = { "type": {"required": True}, "host_name": {"required": True}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "host_name": {"key": "hostName", "type": "str"}, "key_vault_id": {"key": "keyVaultId", "type": "str"}, "identity_client_id": {"key": "identityClientId", "type": "str"}, "encoded_certificate": {"key": "encodedCertificate", "type": "str"}, "certificate_password": {"key": "certificatePassword", "type": "str"}, "default_ssl_binding": {"key": "defaultSslBinding", "type": "bool"}, "negotiate_client_certificate": {"key": "negotiateClientCertificate", "type": "bool"}, "certificate": {"key": "certificate", "type": "CertificateInformation"}, "certificate_source": {"key": "certificateSource", "type": "str"}, "certificate_status": {"key": "certificateStatus", "type": "str"}, } def __init__( self, *, type: Union[str, "_models.HostnameType"], host_name: str, key_vault_id: Optional[str] = None, identity_client_id: Optional[str] = None, encoded_certificate: Optional[str] = None, certificate_password: Optional[str] = None, default_ssl_binding: bool = False, negotiate_client_certificate: bool = False, certificate: Optional["_models.CertificateInformation"] = None, certificate_source: Optional[Union[str, "_models.CertificateSource"]] = None, certificate_status: Optional[Union[str, "_models.CertificateStatus"]] = None, **kwargs ): """ :keyword type: Hostname type. Required. Known values are: "Proxy", "Portal", "Management", "Scm", and "DeveloperPortal". :paramtype type: str or ~azure.mgmt.apimanagement.models.HostnameType :keyword host_name: Hostname to configure on the Api Management service. Required. :paramtype host_name: str :keyword key_vault_id: Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with aka.ms/apimmsi. The secret should be of type *application/x-pkcs12*. :paramtype key_vault_id: str :keyword identity_client_id: System or User Assigned Managed identity clientId as generated by Azure AD, which has GET access to the keyVault containing the SSL certificate. :paramtype identity_client_id: str :keyword encoded_certificate: Base64 Encoded certificate. :paramtype encoded_certificate: str :keyword certificate_password: Certificate Password. :paramtype certificate_password: str :keyword default_ssl_binding: Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type. :paramtype default_ssl_binding: bool :keyword negotiate_client_certificate: Specify true to always negotiate client certificate on the hostname. Default Value is false. :paramtype negotiate_client_certificate: bool :keyword certificate: Certificate information. :paramtype certificate: ~azure.mgmt.apimanagement.models.CertificateInformation :keyword certificate_source: Certificate Source. Known values are: "Managed", "KeyVault", "Custom", and "BuiltIn". :paramtype certificate_source: str or ~azure.mgmt.apimanagement.models.CertificateSource :keyword certificate_status: Certificate Status. Known values are: "Completed", "Failed", and "InProgress". :paramtype certificate_status: str or ~azure.mgmt.apimanagement.models.CertificateStatus """ super().__init__(**kwargs) self.type = type self.host_name = host_name self.key_vault_id = key_vault_id self.identity_client_id = identity_client_id self.encoded_certificate = encoded_certificate self.certificate_password = certificate_password self.default_ssl_binding = default_ssl_binding self.negotiate_client_certificate = negotiate_client_certificate self.certificate = certificate self.certificate_source = certificate_source self.certificate_status = certificate_status
[docs]class HTTPHeader(_serialization.Model): """HTTP header and it's value. All required parameters must be populated in order to send to Azure. :ivar name: Header name. Required. :vartype name: str :ivar value: Header value. Required. :vartype value: str """ _validation = { "name": {"required": True}, "value": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "value": {"key": "value", "type": "str"}, } def __init__(self, *, name: str, value: str, **kwargs): """ :keyword name: Header name. Required. :paramtype name: str :keyword value: Header value. Required. :paramtype value: str """ super().__init__(**kwargs) self.name = name self.value = value
[docs]class HttpMessageDiagnostic(_serialization.Model): """Http message diagnostic settings. :ivar headers: Array of HTTP Headers to log. :vartype headers: list[str] :ivar body: Body logging settings. :vartype body: ~azure.mgmt.apimanagement.models.BodyDiagnosticSettings :ivar data_masking: Data masking settings. :vartype data_masking: ~azure.mgmt.apimanagement.models.DataMasking """ _attribute_map = { "headers": {"key": "headers", "type": "[str]"}, "body": {"key": "body", "type": "BodyDiagnosticSettings"}, "data_masking": {"key": "dataMasking", "type": "DataMasking"}, } def __init__( self, *, headers: Optional[List[str]] = None, body: Optional["_models.BodyDiagnosticSettings"] = None, data_masking: Optional["_models.DataMasking"] = None, **kwargs ): """ :keyword headers: Array of HTTP Headers to log. :paramtype headers: list[str] :keyword body: Body logging settings. :paramtype body: ~azure.mgmt.apimanagement.models.BodyDiagnosticSettings :keyword data_masking: Data masking settings. :paramtype data_masking: ~azure.mgmt.apimanagement.models.DataMasking """ super().__init__(**kwargs) self.headers = headers self.body = body self.data_masking = data_masking
[docs]class IdentityProviderBaseParameters(_serialization.Model): """Identity Provider Base Parameter Properties. :ivar type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str """ _validation = { "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "signin_tenant": {"key": "signinTenant", "type": "str"}, "allowed_tenants": {"key": "allowedTenants", "type": "[str]"}, "authority": {"key": "authority", "type": "str"}, "signup_policy_name": {"key": "signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "passwordResetPolicyName", "type": "str"}, } def __init__( self, *, type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, **kwargs ): """ :keyword type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str """ super().__init__(**kwargs) self.type = type self.signin_tenant = signin_tenant self.allowed_tenants = allowed_tenants self.authority = authority self.signup_policy_name = signup_policy_name self.signin_policy_name = signin_policy_name self.profile_editing_policy_name = profile_editing_policy_name self.password_reset_policy_name = password_reset_policy_name
[docs]class IdentityProviderContract(Resource): # pylint: disable=too-many-instance-attributes """Identity Provider details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar type_properties_type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type_properties_type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"min_length": 1}, "client_secret": {"min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "type_properties_type": {"key": "properties.type", "type": "str"}, "signin_tenant": {"key": "properties.signinTenant", "type": "str"}, "allowed_tenants": {"key": "properties.allowedTenants", "type": "[str]"}, "authority": {"key": "properties.authority", "type": "str"}, "signup_policy_name": {"key": "properties.signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "properties.signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "properties.profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "properties.passwordResetPolicyName", "type": "str"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, type_properties_type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword type_properties_type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type_properties_type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__(**kwargs) self.type_properties_type = type_properties_type self.signin_tenant = signin_tenant self.allowed_tenants = allowed_tenants self.authority = authority self.signup_policy_name = signup_policy_name self.signin_policy_name = signin_policy_name self.profile_editing_policy_name = profile_editing_policy_name self.password_reset_policy_name = password_reset_policy_name self.client_id = client_id self.client_secret = client_secret
[docs]class IdentityProviderContractProperties(IdentityProviderBaseParameters): """The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users. All required parameters must be populated in order to send to Azure. :ivar type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. Required. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"required": True, "min_length": 1}, "client_secret": {"min_length": 1}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "signin_tenant": {"key": "signinTenant", "type": "str"}, "allowed_tenants": {"key": "allowedTenants", "type": "[str]"}, "authority": {"key": "authority", "type": "str"}, "signup_policy_name": {"key": "signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "passwordResetPolicyName", "type": "str"}, "client_id": {"key": "clientId", "type": "str"}, "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__( self, *, client_id: str, type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. Required. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__( type=type, signin_tenant=signin_tenant, allowed_tenants=allowed_tenants, authority=authority, signup_policy_name=signup_policy_name, signin_policy_name=signin_policy_name, profile_editing_policy_name=profile_editing_policy_name, password_reset_policy_name=password_reset_policy_name, **kwargs ) self.client_id = client_id self.client_secret = client_secret
[docs]class IdentityProviderCreateContract(Resource): # pylint: disable=too-many-instance-attributes """Identity Provider details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar type_properties_type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type_properties_type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype client_secret: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"min_length": 1}, "client_secret": {"min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "type_properties_type": {"key": "properties.type", "type": "str"}, "signin_tenant": {"key": "properties.signinTenant", "type": "str"}, "allowed_tenants": {"key": "properties.allowedTenants", "type": "[str]"}, "authority": {"key": "properties.authority", "type": "str"}, "signup_policy_name": {"key": "properties.signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "properties.signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "properties.profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "properties.passwordResetPolicyName", "type": "str"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, type_properties_type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword type_properties_type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type_properties_type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype client_secret: str """ super().__init__(**kwargs) self.type_properties_type = type_properties_type self.signin_tenant = signin_tenant self.allowed_tenants = allowed_tenants self.authority = authority self.signup_policy_name = signup_policy_name self.signin_policy_name = signin_policy_name self.profile_editing_policy_name = profile_editing_policy_name self.password_reset_policy_name = password_reset_policy_name self.client_id = client_id self.client_secret = client_secret
[docs]class IdentityProviderCreateContractProperties(IdentityProviderBaseParameters): """The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users. All required parameters must be populated in order to send to Azure. :ivar type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. Required. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. Required. :vartype client_secret: str """ _validation = { "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"required": True, "min_length": 1}, "client_secret": {"required": True, "min_length": 1}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "signin_tenant": {"key": "signinTenant", "type": "str"}, "allowed_tenants": {"key": "allowedTenants", "type": "[str]"}, "authority": {"key": "authority", "type": "str"}, "signup_policy_name": {"key": "signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "passwordResetPolicyName", "type": "str"}, "client_id": {"key": "clientId", "type": "str"}, "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__( self, *, client_id: str, client_secret: str, type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, **kwargs ): """ :keyword type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. Required. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. Required. :paramtype client_secret: str """ super().__init__( type=type, signin_tenant=signin_tenant, allowed_tenants=allowed_tenants, authority=authority, signup_policy_name=signup_policy_name, signin_policy_name=signin_policy_name, profile_editing_policy_name=profile_editing_policy_name, password_reset_policy_name=password_reset_policy_name, **kwargs ) self.client_id = client_id self.client_secret = client_secret
[docs]class IdentityProviderList(_serialization.Model): """List of all the Identity Providers configured on the service instance. :ivar value: Identity Provider configuration values. :vartype value: list[~azure.mgmt.apimanagement.models.IdentityProviderContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[IdentityProviderContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.IdentityProviderContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Identity Provider configuration values. :paramtype value: list[~azure.mgmt.apimanagement.models.IdentityProviderContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class IdentityProviderUpdateParameters(_serialization.Model): """Parameters supplied to update Identity Provider. :ivar type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. :vartype client_secret: str """ _validation = { "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"min_length": 1}, "client_secret": {"min_length": 1}, } _attribute_map = { "type": {"key": "properties.type", "type": "str"}, "signin_tenant": {"key": "properties.signinTenant", "type": "str"}, "allowed_tenants": {"key": "properties.allowedTenants", "type": "[str]"}, "authority": {"key": "properties.authority", "type": "str"}, "signup_policy_name": {"key": "properties.signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "properties.signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "properties.profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "properties.passwordResetPolicyName", "type": "str"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. :paramtype client_secret: str """ super().__init__(**kwargs) self.type = type self.signin_tenant = signin_tenant self.allowed_tenants = allowed_tenants self.authority = authority self.signup_policy_name = signup_policy_name self.signin_policy_name = signin_policy_name self.profile_editing_policy_name = profile_editing_policy_name self.password_reset_policy_name = password_reset_policy_name self.client_id = client_id self.client_secret = client_secret
[docs]class IdentityProviderUpdateProperties(IdentityProviderBaseParameters): """Parameters supplied to the Update Identity Provider operation. :ivar type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :vartype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :ivar signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :vartype signin_tenant: str :ivar allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :vartype allowed_tenants: list[str] :ivar authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :vartype authority: str :ivar signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :vartype signup_policy_name: str :ivar signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :vartype signin_policy_name: str :ivar profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :vartype profile_editing_policy_name: str :ivar password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :vartype password_reset_policy_name: str :ivar client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :vartype client_id: str :ivar client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. :vartype client_secret: str """ _validation = { "allowed_tenants": {"max_items": 32, "min_items": 0}, "signup_policy_name": {"min_length": 1}, "signin_policy_name": {"min_length": 1}, "profile_editing_policy_name": {"min_length": 1}, "password_reset_policy_name": {"min_length": 1}, "client_id": {"min_length": 1}, "client_secret": {"min_length": 1}, } _attribute_map = { "type": {"key": "type", "type": "str"}, "signin_tenant": {"key": "signinTenant", "type": "str"}, "allowed_tenants": {"key": "allowedTenants", "type": "[str]"}, "authority": {"key": "authority", "type": "str"}, "signup_policy_name": {"key": "signupPolicyName", "type": "str"}, "signin_policy_name": {"key": "signinPolicyName", "type": "str"}, "profile_editing_policy_name": {"key": "profileEditingPolicyName", "type": "str"}, "password_reset_policy_name": {"key": "passwordResetPolicyName", "type": "str"}, "client_id": {"key": "clientId", "type": "str"}, "client_secret": {"key": "clientSecret", "type": "str"}, } def __init__( self, *, type: Optional[Union[str, "_models.IdentityProviderType"]] = None, signin_tenant: Optional[str] = None, allowed_tenants: Optional[List[str]] = None, authority: Optional[str] = None, signup_policy_name: Optional[str] = None, signin_policy_name: Optional[str] = None, profile_editing_policy_name: Optional[str] = None, password_reset_policy_name: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword type: Identity Provider Type identifier. Known values are: "facebook", "google", "microsoft", "twitter", "aad", and "aadB2C". :paramtype type: str or ~azure.mgmt.apimanagement.models.IdentityProviderType :keyword signin_tenant: The TenantId to use instead of Common when logging into Active Directory. :paramtype signin_tenant: str :keyword allowed_tenants: List of Allowed Tenants when configuring Azure Active Directory login. :paramtype allowed_tenants: list[str] :keyword authority: OpenID Connect discovery endpoint hostname for AAD or AAD B2C. :paramtype authority: str :keyword signup_policy_name: Signup Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signup_policy_name: str :keyword signin_policy_name: Signin Policy Name. Only applies to AAD B2C Identity Provider. :paramtype signin_policy_name: str :keyword profile_editing_policy_name: Profile Editing Policy Name. Only applies to AAD B2C Identity Provider. :paramtype profile_editing_policy_name: str :keyword password_reset_policy_name: Password Reset Policy Name. Only applies to AAD B2C Identity Provider. :paramtype password_reset_policy_name: str :keyword client_id: Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft. :paramtype client_id: str :keyword client_secret: Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. :paramtype client_secret: str """ super().__init__( type=type, signin_tenant=signin_tenant, allowed_tenants=allowed_tenants, authority=authority, signup_policy_name=signup_policy_name, signin_policy_name=signin_policy_name, profile_editing_policy_name=profile_editing_policy_name, password_reset_policy_name=password_reset_policy_name, **kwargs ) self.client_id = client_id self.client_secret = client_secret
[docs]class IssueAttachmentCollection(_serialization.Model): """Paged Issue Attachment list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Issue Attachment values. :vartype value: list[~azure.mgmt.apimanagement.models.IssueAttachmentContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[IssueAttachmentContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class IssueAttachmentContract(Resource): """Issue Attachment Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar title: Filename by which the binary data will be saved. :vartype title: str :ivar content_format: Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property. :vartype content_format: str :ivar content: An HTTP link or Base64-encoded binary data. :vartype content: 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"}, "title": {"key": "properties.title", "type": "str"}, "content_format": {"key": "properties.contentFormat", "type": "str"}, "content": {"key": "properties.content", "type": "str"}, } def __init__( self, *, title: Optional[str] = None, content_format: Optional[str] = None, content: Optional[str] = None, **kwargs ): """ :keyword title: Filename by which the binary data will be saved. :paramtype title: str :keyword content_format: Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property. :paramtype content_format: str :keyword content: An HTTP link or Base64-encoded binary data. :paramtype content: str """ super().__init__(**kwargs) self.title = title self.content_format = content_format self.content = content
[docs]class IssueCollection(_serialization.Model): """Paged Issue list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Issue values. :vartype value: list[~azure.mgmt.apimanagement.models.IssueContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[IssueContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class IssueCommentCollection(_serialization.Model): """Paged Issue Comment list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Issue Comment values. :vartype value: list[~azure.mgmt.apimanagement.models.IssueCommentContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[IssueCommentContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class IssueCommentContract(Resource): """Issue Comment Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar text: Comment text. :vartype text: str :ivar created_date: Date and time when the comment was created. :vartype created_date: ~datetime.datetime :ivar user_id: A resource identifier for the user who left the comment. :vartype user_id: 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"}, "text": {"key": "properties.text", "type": "str"}, "created_date": {"key": "properties.createdDate", "type": "iso-8601"}, "user_id": {"key": "properties.userId", "type": "str"}, } def __init__( self, *, text: Optional[str] = None, created_date: Optional[datetime.datetime] = None, user_id: Optional[str] = None, **kwargs ): """ :keyword text: Comment text. :paramtype text: str :keyword created_date: Date and time when the comment was created. :paramtype created_date: ~datetime.datetime :keyword user_id: A resource identifier for the user who left the comment. :paramtype user_id: str """ super().__init__(**kwargs) self.text = text self.created_date = created_date self.user_id = user_id
[docs]class IssueContract(Resource): """Issue Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar created_date: Date and time when the issue was created. :vartype created_date: ~datetime.datetime :ivar state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :vartype state: str or ~azure.mgmt.apimanagement.models.State :ivar api_id: A resource identifier for the API the issue was created for. :vartype api_id: str :ivar title: The issue title. :vartype title: str :ivar description: Text describing the issue. :vartype description: str :ivar user_id: A resource identifier for the user created the issue. :vartype user_id: 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"}, "created_date": {"key": "properties.createdDate", "type": "iso-8601"}, "state": {"key": "properties.state", "type": "str"}, "api_id": {"key": "properties.apiId", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "user_id": {"key": "properties.userId", "type": "str"}, } def __init__( self, *, created_date: Optional[datetime.datetime] = None, state: Optional[Union[str, "_models.State"]] = None, api_id: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, user_id: Optional[str] = None, **kwargs ): """ :keyword created_date: Date and time when the issue was created. :paramtype created_date: ~datetime.datetime :keyword state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :paramtype state: str or ~azure.mgmt.apimanagement.models.State :keyword api_id: A resource identifier for the API the issue was created for. :paramtype api_id: str :keyword title: The issue title. :paramtype title: str :keyword description: Text describing the issue. :paramtype description: str :keyword user_id: A resource identifier for the user created the issue. :paramtype user_id: str """ super().__init__(**kwargs) self.created_date = created_date self.state = state self.api_id = api_id self.title = title self.description = description self.user_id = user_id
[docs]class IssueContractBaseProperties(_serialization.Model): """Issue contract Base Properties. :ivar created_date: Date and time when the issue was created. :vartype created_date: ~datetime.datetime :ivar state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :vartype state: str or ~azure.mgmt.apimanagement.models.State :ivar api_id: A resource identifier for the API the issue was created for. :vartype api_id: str """ _attribute_map = { "created_date": {"key": "createdDate", "type": "iso-8601"}, "state": {"key": "state", "type": "str"}, "api_id": {"key": "apiId", "type": "str"}, } def __init__( self, *, created_date: Optional[datetime.datetime] = None, state: Optional[Union[str, "_models.State"]] = None, api_id: Optional[str] = None, **kwargs ): """ :keyword created_date: Date and time when the issue was created. :paramtype created_date: ~datetime.datetime :keyword state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :paramtype state: str or ~azure.mgmt.apimanagement.models.State :keyword api_id: A resource identifier for the API the issue was created for. :paramtype api_id: str """ super().__init__(**kwargs) self.created_date = created_date self.state = state self.api_id = api_id
[docs]class IssueContractProperties(IssueContractBaseProperties): """Issue contract Properties. All required parameters must be populated in order to send to Azure. :ivar created_date: Date and time when the issue was created. :vartype created_date: ~datetime.datetime :ivar state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :vartype state: str or ~azure.mgmt.apimanagement.models.State :ivar api_id: A resource identifier for the API the issue was created for. :vartype api_id: str :ivar title: The issue title. Required. :vartype title: str :ivar description: Text describing the issue. Required. :vartype description: str :ivar user_id: A resource identifier for the user created the issue. Required. :vartype user_id: str """ _validation = { "title": {"required": True}, "description": {"required": True}, "user_id": {"required": True}, } _attribute_map = { "created_date": {"key": "createdDate", "type": "iso-8601"}, "state": {"key": "state", "type": "str"}, "api_id": {"key": "apiId", "type": "str"}, "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, "user_id": {"key": "userId", "type": "str"}, } def __init__( self, *, title: str, description: str, user_id: str, created_date: Optional[datetime.datetime] = None, state: Optional[Union[str, "_models.State"]] = None, api_id: Optional[str] = None, **kwargs ): """ :keyword created_date: Date and time when the issue was created. :paramtype created_date: ~datetime.datetime :keyword state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :paramtype state: str or ~azure.mgmt.apimanagement.models.State :keyword api_id: A resource identifier for the API the issue was created for. :paramtype api_id: str :keyword title: The issue title. Required. :paramtype title: str :keyword description: Text describing the issue. Required. :paramtype description: str :keyword user_id: A resource identifier for the user created the issue. Required. :paramtype user_id: str """ super().__init__(created_date=created_date, state=state, api_id=api_id, **kwargs) self.title = title self.description = description self.user_id = user_id
[docs]class IssueUpdateContract(_serialization.Model): """Issue update Parameters. :ivar created_date: Date and time when the issue was created. :vartype created_date: ~datetime.datetime :ivar state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :vartype state: str or ~azure.mgmt.apimanagement.models.State :ivar api_id: A resource identifier for the API the issue was created for. :vartype api_id: str :ivar title: The issue title. :vartype title: str :ivar description: Text describing the issue. :vartype description: str :ivar user_id: A resource identifier for the user created the issue. :vartype user_id: str """ _attribute_map = { "created_date": {"key": "properties.createdDate", "type": "iso-8601"}, "state": {"key": "properties.state", "type": "str"}, "api_id": {"key": "properties.apiId", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "user_id": {"key": "properties.userId", "type": "str"}, } def __init__( self, *, created_date: Optional[datetime.datetime] = None, state: Optional[Union[str, "_models.State"]] = None, api_id: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, user_id: Optional[str] = None, **kwargs ): """ :keyword created_date: Date and time when the issue was created. :paramtype created_date: ~datetime.datetime :keyword state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :paramtype state: str or ~azure.mgmt.apimanagement.models.State :keyword api_id: A resource identifier for the API the issue was created for. :paramtype api_id: str :keyword title: The issue title. :paramtype title: str :keyword description: Text describing the issue. :paramtype description: str :keyword user_id: A resource identifier for the user created the issue. :paramtype user_id: str """ super().__init__(**kwargs) self.created_date = created_date self.state = state self.api_id = api_id self.title = title self.description = description self.user_id = user_id
[docs]class IssueUpdateContractProperties(IssueContractBaseProperties): """Issue contract Update Properties. :ivar created_date: Date and time when the issue was created. :vartype created_date: ~datetime.datetime :ivar state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :vartype state: str or ~azure.mgmt.apimanagement.models.State :ivar api_id: A resource identifier for the API the issue was created for. :vartype api_id: str :ivar title: The issue title. :vartype title: str :ivar description: Text describing the issue. :vartype description: str :ivar user_id: A resource identifier for the user created the issue. :vartype user_id: str """ _attribute_map = { "created_date": {"key": "createdDate", "type": "iso-8601"}, "state": {"key": "state", "type": "str"}, "api_id": {"key": "apiId", "type": "str"}, "title": {"key": "title", "type": "str"}, "description": {"key": "description", "type": "str"}, "user_id": {"key": "userId", "type": "str"}, } def __init__( self, *, created_date: Optional[datetime.datetime] = None, state: Optional[Union[str, "_models.State"]] = None, api_id: Optional[str] = None, title: Optional[str] = None, description: Optional[str] = None, user_id: Optional[str] = None, **kwargs ): """ :keyword created_date: Date and time when the issue was created. :paramtype created_date: ~datetime.datetime :keyword state: Status of the issue. Known values are: "proposed", "open", "removed", "resolved", and "closed". :paramtype state: str or ~azure.mgmt.apimanagement.models.State :keyword api_id: A resource identifier for the API the issue was created for. :paramtype api_id: str :keyword title: The issue title. :paramtype title: str :keyword description: Text describing the issue. :paramtype description: str :keyword user_id: A resource identifier for the user created the issue. :paramtype user_id: str """ super().__init__(created_date=created_date, state=state, api_id=api_id, **kwargs) self.title = title self.description = description self.user_id = user_id
[docs]class KeyVaultContractCreateProperties(_serialization.Model): """Create keyVault contract details. :ivar secret_identifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi. :vartype secret_identifier: str :ivar identity_client_id: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access key vault secret. :vartype identity_client_id: str """ _attribute_map = { "secret_identifier": {"key": "secretIdentifier", "type": "str"}, "identity_client_id": {"key": "identityClientId", "type": "str"}, } def __init__(self, *, secret_identifier: Optional[str] = None, identity_client_id: Optional[str] = None, **kwargs): """ :keyword secret_identifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi. :paramtype secret_identifier: str :keyword identity_client_id: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access key vault secret. :paramtype identity_client_id: str """ super().__init__(**kwargs) self.secret_identifier = secret_identifier self.identity_client_id = identity_client_id
[docs]class KeyVaultContractProperties(KeyVaultContractCreateProperties): """KeyVault contract details. :ivar secret_identifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi. :vartype secret_identifier: str :ivar identity_client_id: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access key vault secret. :vartype identity_client_id: str :ivar last_status: Last time sync and refresh status of secret from key vault. :vartype last_status: ~azure.mgmt.apimanagement.models.KeyVaultLastAccessStatusContractProperties """ _attribute_map = { "secret_identifier": {"key": "secretIdentifier", "type": "str"}, "identity_client_id": {"key": "identityClientId", "type": "str"}, "last_status": {"key": "lastStatus", "type": "KeyVaultLastAccessStatusContractProperties"}, } def __init__( self, *, secret_identifier: Optional[str] = None, identity_client_id: Optional[str] = None, last_status: Optional["_models.KeyVaultLastAccessStatusContractProperties"] = None, **kwargs ): """ :keyword secret_identifier: Key vault secret identifier for fetching secret. Providing a versioned secret will prevent auto-refresh. This requires API Management service to be configured with aka.ms/apimmsi. :paramtype secret_identifier: str :keyword identity_client_id: Null for SystemAssignedIdentity or Client Id for UserAssignedIdentity , which will be used to access key vault secret. :paramtype identity_client_id: str :keyword last_status: Last time sync and refresh status of secret from key vault. :paramtype last_status: ~azure.mgmt.apimanagement.models.KeyVaultLastAccessStatusContractProperties """ super().__init__(secret_identifier=secret_identifier, identity_client_id=identity_client_id, **kwargs) self.last_status = last_status
[docs]class KeyVaultLastAccessStatusContractProperties(_serialization.Model): """Issue contract Update Properties. :ivar code: Last status code for sync and refresh of secret from key vault. :vartype code: str :ivar message: Details of the error else empty. :vartype message: str :ivar time_stamp_utc: Last time secret was accessed. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype time_stamp_utc: ~datetime.datetime """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "time_stamp_utc": {"key": "timeStampUtc", "type": "iso-8601"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, time_stamp_utc: Optional[datetime.datetime] = None, **kwargs ): """ :keyword code: Last status code for sync and refresh of secret from key vault. :paramtype code: str :keyword message: Details of the error else empty. :paramtype message: str :keyword time_stamp_utc: Last time secret was accessed. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype time_stamp_utc: ~datetime.datetime """ super().__init__(**kwargs) self.code = code self.message = message self.time_stamp_utc = time_stamp_utc
[docs]class LoggerCollection(_serialization.Model): """Paged Logger list representation. :ivar value: Logger values. :vartype value: list[~azure.mgmt.apimanagement.models.LoggerContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[LoggerContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.LoggerContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Logger values. :paramtype value: list[~azure.mgmt.apimanagement.models.LoggerContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class LoggerContract(Resource): """Logger details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar logger_type: Logger type. Known values are: "azureEventHub", "applicationInsights", and "azureMonitor". :vartype logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType :ivar description: Logger description. :vartype description: str :ivar credentials: The name and SendRule connection string of the event hub for azureEventHub logger. Instrumentation key for applicationInsights logger. :vartype credentials: dict[str, str] :ivar is_buffered: Whether records are buffered in the logger before publishing. Default is assumed to be true. :vartype is_buffered: bool :ivar resource_id: Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource). :vartype resource_id: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 256}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "logger_type": {"key": "properties.loggerType", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "credentials": {"key": "properties.credentials", "type": "{str}"}, "is_buffered": {"key": "properties.isBuffered", "type": "bool"}, "resource_id": {"key": "properties.resourceId", "type": "str"}, } def __init__( self, *, logger_type: Optional[Union[str, "_models.LoggerType"]] = None, description: Optional[str] = None, credentials: Optional[Dict[str, str]] = None, is_buffered: Optional[bool] = None, resource_id: Optional[str] = None, **kwargs ): """ :keyword logger_type: Logger type. Known values are: "azureEventHub", "applicationInsights", and "azureMonitor". :paramtype logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType :keyword description: Logger description. :paramtype description: str :keyword credentials: The name and SendRule connection string of the event hub for azureEventHub logger. Instrumentation key for applicationInsights logger. :paramtype credentials: dict[str, str] :keyword is_buffered: Whether records are buffered in the logger before publishing. Default is assumed to be true. :paramtype is_buffered: bool :keyword resource_id: Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource). :paramtype resource_id: str """ super().__init__(**kwargs) self.logger_type = logger_type self.description = description self.credentials = credentials self.is_buffered = is_buffered self.resource_id = resource_id
[docs]class LoggerUpdateContract(_serialization.Model): """Logger update contract. :ivar logger_type: Logger type. Known values are: "azureEventHub", "applicationInsights", and "azureMonitor". :vartype logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType :ivar description: Logger description. :vartype description: str :ivar credentials: Logger credentials. :vartype credentials: dict[str, str] :ivar is_buffered: Whether records are buffered in the logger before publishing. Default is assumed to be true. :vartype is_buffered: bool """ _attribute_map = { "logger_type": {"key": "properties.loggerType", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "credentials": {"key": "properties.credentials", "type": "{str}"}, "is_buffered": {"key": "properties.isBuffered", "type": "bool"}, } def __init__( self, *, logger_type: Optional[Union[str, "_models.LoggerType"]] = None, description: Optional[str] = None, credentials: Optional[Dict[str, str]] = None, is_buffered: Optional[bool] = None, **kwargs ): """ :keyword logger_type: Logger type. Known values are: "azureEventHub", "applicationInsights", and "azureMonitor". :paramtype logger_type: str or ~azure.mgmt.apimanagement.models.LoggerType :keyword description: Logger description. :paramtype description: str :keyword credentials: Logger credentials. :paramtype credentials: dict[str, str] :keyword is_buffered: Whether records are buffered in the logger before publishing. Default is assumed to be true. :paramtype is_buffered: bool """ super().__init__(**kwargs) self.logger_type = logger_type self.description = description self.credentials = credentials self.is_buffered = is_buffered
[docs]class NamedValueCollection(_serialization.Model): """Paged NamedValue list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.NamedValueContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[NamedValueContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.NamedValueContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.NamedValueContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class NamedValueContract(Resource): """NamedValue details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "tags": {"max_items": 32, "min_items": 0}, "display_name": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "tags": {"key": "properties.tags", "type": "[str]"}, "secret": {"key": "properties.secret", "type": "bool"}, "display_name": {"key": "properties.displayName", "type": "str"}, "value": {"key": "properties.value", "type": "str"}, "key_vault": {"key": "properties.keyVault", "type": "KeyVaultContractProperties"}, } def __init__( self, *, tags: Optional[List[str]] = None, secret: Optional[bool] = None, display_name: Optional[str] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ super().__init__(**kwargs) self.tags = tags self.secret = secret self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NamedValueEntityBaseParameters(_serialization.Model): """NamedValue Entity Base Parameters set. :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool """ _validation = { "tags": {"max_items": 32, "min_items": 0}, } _attribute_map = { "tags": {"key": "tags", "type": "[str]"}, "secret": {"key": "secret", "type": "bool"}, } def __init__(self, *, tags: Optional[List[str]] = None, secret: Optional[bool] = None, **kwargs): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool """ super().__init__(**kwargs) self.tags = tags self.secret = secret
[docs]class NamedValueContractProperties(NamedValueEntityBaseParameters): """NamedValue Contract properties. All required parameters must be populated in order to send to Azure. :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. Required. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ _validation = { "tags": {"max_items": 32, "min_items": 0}, "display_name": {"required": True, "max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096}, } _attribute_map = { "tags": {"key": "tags", "type": "[str]"}, "secret": {"key": "secret", "type": "bool"}, "display_name": {"key": "displayName", "type": "str"}, "value": {"key": "value", "type": "str"}, "key_vault": {"key": "keyVault", "type": "KeyVaultContractProperties"}, } def __init__( self, *, display_name: str, tags: Optional[List[str]] = None, secret: Optional[bool] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. Required. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractProperties """ super().__init__(tags=tags, secret=secret, **kwargs) self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NamedValueCreateContract(Resource): """NamedValue details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "tags": {"max_items": 32, "min_items": 0}, "display_name": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "tags": {"key": "properties.tags", "type": "[str]"}, "secret": {"key": "properties.secret", "type": "bool"}, "display_name": {"key": "properties.displayName", "type": "str"}, "value": {"key": "properties.value", "type": "str"}, "key_vault": {"key": "properties.keyVault", "type": "KeyVaultContractCreateProperties"}, } def __init__( self, *, tags: Optional[List[str]] = None, secret: Optional[bool] = None, display_name: Optional[str] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractCreateProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ super().__init__(**kwargs) self.tags = tags self.secret = secret self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NamedValueCreateContractProperties(NamedValueEntityBaseParameters): """NamedValue Contract properties. All required parameters must be populated in order to send to Azure. :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. Required. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ _validation = { "tags": {"max_items": 32, "min_items": 0}, "display_name": {"required": True, "max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096}, } _attribute_map = { "tags": {"key": "tags", "type": "[str]"}, "secret": {"key": "secret", "type": "bool"}, "display_name": {"key": "displayName", "type": "str"}, "value": {"key": "value", "type": "str"}, "key_vault": {"key": "keyVault", "type": "KeyVaultContractCreateProperties"}, } def __init__( self, *, display_name: str, tags: Optional[List[str]] = None, secret: Optional[bool] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractCreateProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. Required. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ super().__init__(tags=tags, secret=secret, **kwargs) self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NamedValueSecretContract(_serialization.Model): """Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. :ivar value: This is secret value of the NamedValue entity. :vartype value: str """ _attribute_map = { "value": {"key": "value", "type": "str"}, } def __init__(self, *, value: Optional[str] = None, **kwargs): """ :keyword value: This is secret value of the NamedValue entity. :paramtype value: str """ super().__init__(**kwargs) self.value = value
[docs]class NamedValueUpdateParameterProperties(NamedValueEntityBaseParameters): """NamedValue Contract properties. :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ _validation = { "tags": {"max_items": 32, "min_items": 0}, "display_name": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096, "min_length": 1}, } _attribute_map = { "tags": {"key": "tags", "type": "[str]"}, "secret": {"key": "secret", "type": "bool"}, "display_name": {"key": "displayName", "type": "str"}, "value": {"key": "value", "type": "str"}, "key_vault": {"key": "keyVault", "type": "KeyVaultContractCreateProperties"}, } def __init__( self, *, tags: Optional[List[str]] = None, secret: Optional[bool] = None, display_name: Optional[str] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractCreateProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ super().__init__(tags=tags, secret=secret, **kwargs) self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NamedValueUpdateParameters(_serialization.Model): """NamedValue update Parameters. :ivar tags: Optional tags that when provided can be used to filter the NamedValue list. :vartype tags: list[str] :ivar secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :vartype secret: bool :ivar display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :vartype display_name: str :ivar value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. :vartype value: str :ivar key_vault: KeyVault location details of the namedValue. :vartype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ _validation = { "tags": {"max_items": 32, "min_items": 0}, "display_name": {"max_length": 256, "min_length": 1, "pattern": r"^[A-Za-z0-9-._]+$"}, "value": {"max_length": 4096, "min_length": 1}, } _attribute_map = { "tags": {"key": "properties.tags", "type": "[str]"}, "secret": {"key": "properties.secret", "type": "bool"}, "display_name": {"key": "properties.displayName", "type": "str"}, "value": {"key": "properties.value", "type": "str"}, "key_vault": {"key": "properties.keyVault", "type": "KeyVaultContractCreateProperties"}, } def __init__( self, *, tags: Optional[List[str]] = None, secret: Optional[bool] = None, display_name: Optional[str] = None, value: Optional[str] = None, key_vault: Optional["_models.KeyVaultContractCreateProperties"] = None, **kwargs ): """ :keyword tags: Optional tags that when provided can be used to filter the NamedValue list. :paramtype tags: list[str] :keyword secret: Determines whether the value is a secret and should be encrypted or not. Default value is false. :paramtype secret: bool :keyword display_name: Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters. :paramtype display_name: str :keyword value: Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. :paramtype value: str :keyword key_vault: KeyVault location details of the namedValue. :paramtype key_vault: ~azure.mgmt.apimanagement.models.KeyVaultContractCreateProperties """ super().__init__(**kwargs) self.tags = tags self.secret = secret self.display_name = display_name self.value = value self.key_vault = key_vault
[docs]class NetworkStatusContract(_serialization.Model): """Network Status details. All required parameters must be populated in order to send to Azure. :ivar dns_servers: Gets the list of DNS servers IPV4 addresses. Required. :vartype dns_servers: list[str] :ivar connectivity_status: Gets the list of Connectivity Status to the Resources on which the service depends upon. Required. :vartype connectivity_status: list[~azure.mgmt.apimanagement.models.ConnectivityStatusContract] """ _validation = { "dns_servers": {"required": True}, "connectivity_status": {"required": True}, } _attribute_map = { "dns_servers": {"key": "dnsServers", "type": "[str]"}, "connectivity_status": {"key": "connectivityStatus", "type": "[ConnectivityStatusContract]"}, } def __init__( self, *, dns_servers: List[str], connectivity_status: List["_models.ConnectivityStatusContract"], **kwargs ): """ :keyword dns_servers: Gets the list of DNS servers IPV4 addresses. Required. :paramtype dns_servers: list[str] :keyword connectivity_status: Gets the list of Connectivity Status to the Resources on which the service depends upon. Required. :paramtype connectivity_status: list[~azure.mgmt.apimanagement.models.ConnectivityStatusContract] """ super().__init__(**kwargs) self.dns_servers = dns_servers self.connectivity_status = connectivity_status
[docs]class NetworkStatusContractByLocation(_serialization.Model): """Network Status in the Location. :ivar location: Location of service. :vartype location: str :ivar network_status: Network status in Location. :vartype network_status: ~azure.mgmt.apimanagement.models.NetworkStatusContract """ _validation = { "location": {"min_length": 1}, } _attribute_map = { "location": {"key": "location", "type": "str"}, "network_status": {"key": "networkStatus", "type": "NetworkStatusContract"}, } def __init__( self, *, location: Optional[str] = None, network_status: Optional["_models.NetworkStatusContract"] = None, **kwargs ): """ :keyword location: Location of service. :paramtype location: str :keyword network_status: Network status in Location. :paramtype network_status: ~azure.mgmt.apimanagement.models.NetworkStatusContract """ super().__init__(**kwargs) self.location = location self.network_status = network_status
[docs]class NotificationCollection(_serialization.Model): """Paged Notification list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.NotificationContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[NotificationContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.NotificationContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.NotificationContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class NotificationContract(Resource): """Notification details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar title: Title of the Notification. :vartype title: str :ivar description: Description of the Notification. :vartype description: str :ivar recipients: Recipient Parameter values. :vartype recipients: ~azure.mgmt.apimanagement.models.RecipientsContractProperties """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "title": {"max_length": 1000, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "title": {"key": "properties.title", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "recipients": {"key": "properties.recipients", "type": "RecipientsContractProperties"}, } def __init__( self, *, title: Optional[str] = None, description: Optional[str] = None, recipients: Optional["_models.RecipientsContractProperties"] = None, **kwargs ): """ :keyword title: Title of the Notification. :paramtype title: str :keyword description: Description of the Notification. :paramtype description: str :keyword recipients: Recipient Parameter values. :paramtype recipients: ~azure.mgmt.apimanagement.models.RecipientsContractProperties """ super().__init__(**kwargs) self.title = title self.description = description self.recipients = recipients
[docs]class OAuth2AuthenticationSettingsContract(_serialization.Model): """API OAuth2 Authentication settings details. :ivar authorization_server_id: OAuth authorization server identifier. :vartype authorization_server_id: str :ivar scope: operations scope. :vartype scope: str """ _attribute_map = { "authorization_server_id": {"key": "authorizationServerId", "type": "str"}, "scope": {"key": "scope", "type": "str"}, } def __init__(self, *, authorization_server_id: Optional[str] = None, scope: Optional[str] = None, **kwargs): """ :keyword authorization_server_id: OAuth authorization server identifier. :paramtype authorization_server_id: str :keyword scope: operations scope. :paramtype scope: str """ super().__init__(**kwargs) self.authorization_server_id = authorization_server_id self.scope = scope
[docs]class OpenIdAuthenticationSettingsContract(_serialization.Model): """API OAuth2 Authentication settings details. :ivar openid_provider_id: OAuth authorization server identifier. :vartype openid_provider_id: str :ivar bearer_token_sending_methods: How to send token to the server. :vartype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethods] """ _attribute_map = { "openid_provider_id": {"key": "openidProviderId", "type": "str"}, "bearer_token_sending_methods": {"key": "bearerTokenSendingMethods", "type": "[str]"}, } def __init__( self, *, openid_provider_id: Optional[str] = None, bearer_token_sending_methods: Optional[List[Union[str, "_models.BearerTokenSendingMethods"]]] = None, **kwargs ): """ :keyword openid_provider_id: OAuth authorization server identifier. :paramtype openid_provider_id: str :keyword bearer_token_sending_methods: How to send token to the server. :paramtype bearer_token_sending_methods: list[str or ~azure.mgmt.apimanagement.models.BearerTokenSendingMethods] """ super().__init__(**kwargs) self.openid_provider_id = openid_provider_id self.bearer_token_sending_methods = bearer_token_sending_methods
[docs]class OpenIdConnectProviderCollection(_serialization.Model): """Paged OpenIdProviders list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.OpenidConnectProviderContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[OpenidConnectProviderContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.OpenidConnectProviderContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.OpenidConnectProviderContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class OpenidConnectProviderContract(Resource): """OpenId Connect Provider details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar display_name: User-friendly OpenID Connect Provider name. :vartype display_name: str :ivar description: User-friendly description of OpenID Connect Provider. :vartype description: str :ivar metadata_endpoint: Metadata endpoint URI. :vartype metadata_endpoint: str :ivar client_id: Client ID of developer console which is the client application. :vartype client_id: str :ivar client_secret: Client Secret of developer console which is the client application. :vartype client_secret: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 50}, } _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"}, "metadata_endpoint": {"key": "properties.metadataEndpoint", "type": "str"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, display_name: Optional[str] = None, description: Optional[str] = None, metadata_endpoint: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword display_name: User-friendly OpenID Connect Provider name. :paramtype display_name: str :keyword description: User-friendly description of OpenID Connect Provider. :paramtype description: str :keyword metadata_endpoint: Metadata endpoint URI. :paramtype metadata_endpoint: str :keyword client_id: Client ID of developer console which is the client application. :paramtype client_id: str :keyword client_secret: Client Secret of developer console which is the client application. :paramtype client_secret: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.metadata_endpoint = metadata_endpoint self.client_id = client_id self.client_secret = client_secret
[docs]class OpenidConnectProviderUpdateContract(_serialization.Model): """Parameters supplied to the Update OpenID Connect Provider operation. :ivar display_name: User-friendly OpenID Connect Provider name. :vartype display_name: str :ivar description: User-friendly description of OpenID Connect Provider. :vartype description: str :ivar metadata_endpoint: Metadata endpoint URI. :vartype metadata_endpoint: str :ivar client_id: Client ID of developer console which is the client application. :vartype client_id: str :ivar client_secret: Client Secret of developer console which is the client application. :vartype client_secret: str """ _validation = { "display_name": {"max_length": 50}, } _attribute_map = { "display_name": {"key": "properties.displayName", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "metadata_endpoint": {"key": "properties.metadataEndpoint", "type": "str"}, "client_id": {"key": "properties.clientId", "type": "str"}, "client_secret": {"key": "properties.clientSecret", "type": "str"}, } def __init__( self, *, display_name: Optional[str] = None, description: Optional[str] = None, metadata_endpoint: Optional[str] = None, client_id: Optional[str] = None, client_secret: Optional[str] = None, **kwargs ): """ :keyword display_name: User-friendly OpenID Connect Provider name. :paramtype display_name: str :keyword description: User-friendly description of OpenID Connect Provider. :paramtype description: str :keyword metadata_endpoint: Metadata endpoint URI. :paramtype metadata_endpoint: str :keyword client_id: Client ID of developer console which is the client application. :paramtype client_id: str :keyword client_secret: Client Secret of developer console which is the client application. :paramtype client_secret: str """ super().__init__(**kwargs) self.display_name = display_name self.description = description self.metadata_endpoint = metadata_endpoint self.client_id = client_id self.client_secret = client_secret
[docs]class Operation(_serialization.Model): """REST API operation. :ivar name: Operation name: {provider}/{resource}/{operation}. :vartype name: str :ivar display: The object that describes the operation. :vartype display: ~azure.mgmt.apimanagement.models.OperationDisplay :ivar origin: The operation origin. :vartype origin: str :ivar properties: The operation properties. :vartype properties: JSON """ _attribute_map = { "name": {"key": "name", "type": "str"}, "display": {"key": "display", "type": "OperationDisplay"}, "origin": {"key": "origin", "type": "str"}, "properties": {"key": "properties", "type": "object"}, } def __init__( self, *, name: Optional[str] = None, display: Optional["_models.OperationDisplay"] = None, origin: Optional[str] = None, properties: Optional[JSON] = None, **kwargs ): """ :keyword name: Operation name: {provider}/{resource}/{operation}. :paramtype name: str :keyword display: The object that describes the operation. :paramtype display: ~azure.mgmt.apimanagement.models.OperationDisplay :keyword origin: The operation origin. :paramtype origin: str :keyword properties: The operation properties. :paramtype properties: JSON """ super().__init__(**kwargs) self.name = name self.display = display self.origin = origin self.properties = properties
[docs]class OperationCollection(_serialization.Model): """Paged Operation list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.OperationContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[OperationContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class OperationContract(Resource): # pylint: disable=too-many-instance-attributes """API Operation details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar template_parameters: Collection of URL template parameters. :vartype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar description: Description of the operation. May include HTML formatting tags. :vartype description: str :ivar request: An entity containing request details. :vartype request: ~azure.mgmt.apimanagement.models.RequestContract :ivar responses: Array of Operation responses. :vartype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :ivar policies: Operation Policies. :vartype policies: str :ivar display_name: Operation Name. :vartype display_name: str :ivar method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :vartype method: str :ivar url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :vartype url_template: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, "url_template": {"max_length": 1000, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "template_parameters": {"key": "properties.templateParameters", "type": "[ParameterContract]"}, "description": {"key": "properties.description", "type": "str"}, "request": {"key": "properties.request", "type": "RequestContract"}, "responses": {"key": "properties.responses", "type": "[ResponseContract]"}, "policies": {"key": "properties.policies", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "method": {"key": "properties.method", "type": "str"}, "url_template": {"key": "properties.urlTemplate", "type": "str"}, } def __init__( self, *, template_parameters: Optional[List["_models.ParameterContract"]] = None, description: Optional[str] = None, request: Optional["_models.RequestContract"] = None, responses: Optional[List["_models.ResponseContract"]] = None, policies: Optional[str] = None, display_name: Optional[str] = None, method: Optional[str] = None, url_template: Optional[str] = None, **kwargs ): """ :keyword template_parameters: Collection of URL template parameters. :paramtype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword description: Description of the operation. May include HTML formatting tags. :paramtype description: str :keyword request: An entity containing request details. :paramtype request: ~azure.mgmt.apimanagement.models.RequestContract :keyword responses: Array of Operation responses. :paramtype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :keyword policies: Operation Policies. :paramtype policies: str :keyword display_name: Operation Name. :paramtype display_name: str :keyword method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :paramtype method: str :keyword url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :paramtype url_template: str """ super().__init__(**kwargs) self.template_parameters = template_parameters self.description = description self.request = request self.responses = responses self.policies = policies self.display_name = display_name self.method = method self.url_template = url_template
[docs]class OperationEntityBaseContract(_serialization.Model): """API Operation Entity Base Contract details. :ivar template_parameters: Collection of URL template parameters. :vartype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar description: Description of the operation. May include HTML formatting tags. :vartype description: str :ivar request: An entity containing request details. :vartype request: ~azure.mgmt.apimanagement.models.RequestContract :ivar responses: Array of Operation responses. :vartype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :ivar policies: Operation Policies. :vartype policies: str """ _validation = { "description": {"max_length": 1000}, } _attribute_map = { "template_parameters": {"key": "templateParameters", "type": "[ParameterContract]"}, "description": {"key": "description", "type": "str"}, "request": {"key": "request", "type": "RequestContract"}, "responses": {"key": "responses", "type": "[ResponseContract]"}, "policies": {"key": "policies", "type": "str"}, } def __init__( self, *, template_parameters: Optional[List["_models.ParameterContract"]] = None, description: Optional[str] = None, request: Optional["_models.RequestContract"] = None, responses: Optional[List["_models.ResponseContract"]] = None, policies: Optional[str] = None, **kwargs ): """ :keyword template_parameters: Collection of URL template parameters. :paramtype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword description: Description of the operation. May include HTML formatting tags. :paramtype description: str :keyword request: An entity containing request details. :paramtype request: ~azure.mgmt.apimanagement.models.RequestContract :keyword responses: Array of Operation responses. :paramtype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :keyword policies: Operation Policies. :paramtype policies: str """ super().__init__(**kwargs) self.template_parameters = template_parameters self.description = description self.request = request self.responses = responses self.policies = policies
[docs]class OperationContractProperties(OperationEntityBaseContract): """Operation Contract Properties. All required parameters must be populated in order to send to Azure. :ivar template_parameters: Collection of URL template parameters. :vartype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar description: Description of the operation. May include HTML formatting tags. :vartype description: str :ivar request: An entity containing request details. :vartype request: ~azure.mgmt.apimanagement.models.RequestContract :ivar responses: Array of Operation responses. :vartype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :ivar policies: Operation Policies. :vartype policies: str :ivar display_name: Operation Name. Required. :vartype display_name: str :ivar method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. Required. :vartype method: str :ivar url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. Required. :vartype url_template: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"required": True, "max_length": 300, "min_length": 1}, "method": {"required": True}, "url_template": {"required": True, "max_length": 1000, "min_length": 1}, } _attribute_map = { "template_parameters": {"key": "templateParameters", "type": "[ParameterContract]"}, "description": {"key": "description", "type": "str"}, "request": {"key": "request", "type": "RequestContract"}, "responses": {"key": "responses", "type": "[ResponseContract]"}, "policies": {"key": "policies", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "method": {"key": "method", "type": "str"}, "url_template": {"key": "urlTemplate", "type": "str"}, } def __init__( self, *, display_name: str, method: str, url_template: str, template_parameters: Optional[List["_models.ParameterContract"]] = None, description: Optional[str] = None, request: Optional["_models.RequestContract"] = None, responses: Optional[List["_models.ResponseContract"]] = None, policies: Optional[str] = None, **kwargs ): """ :keyword template_parameters: Collection of URL template parameters. :paramtype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword description: Description of the operation. May include HTML formatting tags. :paramtype description: str :keyword request: An entity containing request details. :paramtype request: ~azure.mgmt.apimanagement.models.RequestContract :keyword responses: Array of Operation responses. :paramtype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :keyword policies: Operation Policies. :paramtype policies: str :keyword display_name: Operation Name. Required. :paramtype display_name: str :keyword method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. Required. :paramtype method: str :keyword url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. Required. :paramtype url_template: str """ super().__init__( template_parameters=template_parameters, description=description, request=request, responses=responses, policies=policies, **kwargs ) self.display_name = display_name self.method = method self.url_template = url_template
[docs]class OperationDisplay(_serialization.Model): """The object that describes the operation. :ivar provider: Friendly name of the resource provider. :vartype provider: str :ivar operation: Operation type: read, write, delete, listKeys/action, etc. :vartype operation: str :ivar resource: Resource type on which the operation is performed. :vartype resource: str :ivar description: Friendly name of the operation. :vartype description: str """ _attribute_map = { "provider": {"key": "provider", "type": "str"}, "operation": {"key": "operation", "type": "str"}, "resource": {"key": "resource", "type": "str"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, provider: Optional[str] = None, operation: Optional[str] = None, resource: Optional[str] = None, description: Optional[str] = None, **kwargs ): """ :keyword provider: Friendly name of the resource provider. :paramtype provider: str :keyword operation: Operation type: read, write, delete, listKeys/action, etc. :paramtype operation: str :keyword resource: Resource type on which the operation is performed. :paramtype resource: str :keyword description: Friendly name of the operation. :paramtype description: str """ super().__init__(**kwargs) self.provider = provider self.operation = operation self.resource = resource self.description = description
[docs]class OperationListResult(_serialization.Model): """Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results. :ivar value: List of operations supported by the resource provider. :vartype value: list[~azure.mgmt.apimanagement.models.Operation] :ivar next_link: URL to get the next set of operation list results if there are any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[Operation]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, value: Optional[List["_models.Operation"]] = None, next_link: Optional[str] = None, **kwargs): """ :keyword value: List of operations supported by the resource provider. :paramtype value: list[~azure.mgmt.apimanagement.models.Operation] :keyword next_link: URL to get the next set of operation list results if there are any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.next_link = next_link
[docs]class OperationResultContract(Resource): """Long Running Git Operation Results. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar id_properties_id: Operation result identifier. :vartype id_properties_id: str :ivar status: Status of an async operation. Known values are: "Started", "InProgress", "Succeeded", and "Failed". :vartype status: str or ~azure.mgmt.apimanagement.models.AsyncOperationStatus :ivar started: Start time of an async operation. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype started: ~datetime.datetime :ivar updated: Last update time of an async operation. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype updated: ~datetime.datetime :ivar result_info: Optional result info. :vartype result_info: str :ivar error: Error Body Contract. :vartype error: ~azure.mgmt.apimanagement.models.ErrorResponseBody :ivar action_log: This property if only provided as part of the TenantConfiguration_Validate operation. It contains the log the entities which will be updated/created/deleted as part of the TenantConfiguration_Deploy operation. :vartype action_log: list[~azure.mgmt.apimanagement.models.OperationResultLogItemContract] """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "action_log": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "id_properties_id": {"key": "properties.id", "type": "str"}, "status": {"key": "properties.status", "type": "str"}, "started": {"key": "properties.started", "type": "iso-8601"}, "updated": {"key": "properties.updated", "type": "iso-8601"}, "result_info": {"key": "properties.resultInfo", "type": "str"}, "error": {"key": "properties.error", "type": "ErrorResponseBody"}, "action_log": {"key": "properties.actionLog", "type": "[OperationResultLogItemContract]"}, } def __init__( self, *, id_properties_id: Optional[str] = None, status: Optional[Union[str, "_models.AsyncOperationStatus"]] = None, started: Optional[datetime.datetime] = None, updated: Optional[datetime.datetime] = None, result_info: Optional[str] = None, error: Optional["_models.ErrorResponseBody"] = None, **kwargs ): """ :keyword id_properties_id: Operation result identifier. :paramtype id_properties_id: str :keyword status: Status of an async operation. Known values are: "Started", "InProgress", "Succeeded", and "Failed". :paramtype status: str or ~azure.mgmt.apimanagement.models.AsyncOperationStatus :keyword started: Start time of an async operation. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype started: ~datetime.datetime :keyword updated: Last update time of an async operation. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype updated: ~datetime.datetime :keyword result_info: Optional result info. :paramtype result_info: str :keyword error: Error Body Contract. :paramtype error: ~azure.mgmt.apimanagement.models.ErrorResponseBody """ super().__init__(**kwargs) self.id_properties_id = id_properties_id self.status = status self.started = started self.updated = updated self.result_info = result_info self.error = error self.action_log = None
[docs]class OperationResultLogItemContract(_serialization.Model): """Log of the entity being created, updated or deleted. :ivar object_type: The type of entity contract. :vartype object_type: str :ivar action: Action like create/update/delete. :vartype action: str :ivar object_key: Identifier of the entity being created/updated/deleted. :vartype object_key: str """ _attribute_map = { "object_type": {"key": "objectType", "type": "str"}, "action": {"key": "action", "type": "str"}, "object_key": {"key": "objectKey", "type": "str"}, } def __init__( self, *, object_type: Optional[str] = None, action: Optional[str] = None, object_key: Optional[str] = None, **kwargs ): """ :keyword object_type: The type of entity contract. :paramtype object_type: str :keyword action: Action like create/update/delete. :paramtype action: str :keyword object_key: Identifier of the entity being created/updated/deleted. :paramtype object_key: str """ super().__init__(**kwargs) self.object_type = object_type self.action = action self.object_key = object_key
[docs]class OperationTagResourceContractProperties(_serialization.Model): """Operation Entity contract Properties. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Identifier of the operation in form /operations/{operationId}. :vartype id: str :ivar name: Operation name. :vartype name: str :ivar api_name: API Name. :vartype api_name: str :ivar api_revision: API Revision. :vartype api_revision: str :ivar api_version: API Version. :vartype api_version: str :ivar description: Operation Description. :vartype description: str :ivar method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :vartype method: str :ivar url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :vartype url_template: str """ _validation = { "name": {"readonly": True}, "api_name": {"readonly": True}, "api_revision": {"readonly": True}, "api_version": {"readonly": True}, "description": {"readonly": True}, "method": {"readonly": True}, "url_template": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "api_name": {"key": "apiName", "type": "str"}, "api_revision": {"key": "apiRevision", "type": "str"}, "api_version": {"key": "apiVersion", "type": "str"}, "description": {"key": "description", "type": "str"}, "method": {"key": "method", "type": "str"}, "url_template": {"key": "urlTemplate", "type": "str"}, } def __init__(self, *, id: Optional[str] = None, **kwargs): # pylint: disable=redefined-builtin """ :keyword id: Identifier of the operation in form /operations/{operationId}. :paramtype id: str """ super().__init__(**kwargs) self.id = id self.name = None self.api_name = None self.api_revision = None self.api_version = None self.description = None self.method = None self.url_template = None
[docs]class OperationUpdateContract(_serialization.Model): """API Operation Update Contract details. :ivar template_parameters: Collection of URL template parameters. :vartype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar description: Description of the operation. May include HTML formatting tags. :vartype description: str :ivar request: An entity containing request details. :vartype request: ~azure.mgmt.apimanagement.models.RequestContract :ivar responses: Array of Operation responses. :vartype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :ivar policies: Operation Policies. :vartype policies: str :ivar display_name: Operation Name. :vartype display_name: str :ivar method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :vartype method: str :ivar url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :vartype url_template: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, "url_template": {"max_length": 1000, "min_length": 1}, } _attribute_map = { "template_parameters": {"key": "properties.templateParameters", "type": "[ParameterContract]"}, "description": {"key": "properties.description", "type": "str"}, "request": {"key": "properties.request", "type": "RequestContract"}, "responses": {"key": "properties.responses", "type": "[ResponseContract]"}, "policies": {"key": "properties.policies", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "method": {"key": "properties.method", "type": "str"}, "url_template": {"key": "properties.urlTemplate", "type": "str"}, } def __init__( self, *, template_parameters: Optional[List["_models.ParameterContract"]] = None, description: Optional[str] = None, request: Optional["_models.RequestContract"] = None, responses: Optional[List["_models.ResponseContract"]] = None, policies: Optional[str] = None, display_name: Optional[str] = None, method: Optional[str] = None, url_template: Optional[str] = None, **kwargs ): """ :keyword template_parameters: Collection of URL template parameters. :paramtype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword description: Description of the operation. May include HTML formatting tags. :paramtype description: str :keyword request: An entity containing request details. :paramtype request: ~azure.mgmt.apimanagement.models.RequestContract :keyword responses: Array of Operation responses. :paramtype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :keyword policies: Operation Policies. :paramtype policies: str :keyword display_name: Operation Name. :paramtype display_name: str :keyword method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :paramtype method: str :keyword url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :paramtype url_template: str """ super().__init__(**kwargs) self.template_parameters = template_parameters self.description = description self.request = request self.responses = responses self.policies = policies self.display_name = display_name self.method = method self.url_template = url_template
[docs]class OperationUpdateContractProperties(OperationEntityBaseContract): """Operation Update Contract Properties. :ivar template_parameters: Collection of URL template parameters. :vartype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar description: Description of the operation. May include HTML formatting tags. :vartype description: str :ivar request: An entity containing request details. :vartype request: ~azure.mgmt.apimanagement.models.RequestContract :ivar responses: Array of Operation responses. :vartype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :ivar policies: Operation Policies. :vartype policies: str :ivar display_name: Operation Name. :vartype display_name: str :ivar method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :vartype method: str :ivar url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :vartype url_template: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, "url_template": {"max_length": 1000, "min_length": 1}, } _attribute_map = { "template_parameters": {"key": "templateParameters", "type": "[ParameterContract]"}, "description": {"key": "description", "type": "str"}, "request": {"key": "request", "type": "RequestContract"}, "responses": {"key": "responses", "type": "[ResponseContract]"}, "policies": {"key": "policies", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, "method": {"key": "method", "type": "str"}, "url_template": {"key": "urlTemplate", "type": "str"}, } def __init__( self, *, template_parameters: Optional[List["_models.ParameterContract"]] = None, description: Optional[str] = None, request: Optional["_models.RequestContract"] = None, responses: Optional[List["_models.ResponseContract"]] = None, policies: Optional[str] = None, display_name: Optional[str] = None, method: Optional[str] = None, url_template: Optional[str] = None, **kwargs ): """ :keyword template_parameters: Collection of URL template parameters. :paramtype template_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword description: Description of the operation. May include HTML formatting tags. :paramtype description: str :keyword request: An entity containing request details. :paramtype request: ~azure.mgmt.apimanagement.models.RequestContract :keyword responses: Array of Operation responses. :paramtype responses: list[~azure.mgmt.apimanagement.models.ResponseContract] :keyword policies: Operation Policies. :paramtype policies: str :keyword display_name: Operation Name. :paramtype display_name: str :keyword method: A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them. :paramtype method: str :keyword url_template: Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}. :paramtype url_template: str """ super().__init__( template_parameters=template_parameters, description=description, request=request, responses=responses, policies=policies, **kwargs ) self.display_name = display_name self.method = method self.url_template = url_template
[docs]class OutboundEnvironmentEndpoint(_serialization.Model): """Endpoints accessed for a common purpose that the Api Management Service requires outbound network access to. :ivar category: The type of service accessed by the Api Management Service, e.g., Azure Storage, Azure SQL Database, and Azure Active Directory. :vartype category: str :ivar endpoints: The endpoints that the Api Management Service reaches the service at. :vartype endpoints: list[~azure.mgmt.apimanagement.models.EndpointDependency] """ _attribute_map = { "category": {"key": "category", "type": "str"}, "endpoints": {"key": "endpoints", "type": "[EndpointDependency]"}, } def __init__( self, *, category: Optional[str] = None, endpoints: Optional[List["_models.EndpointDependency"]] = None, **kwargs ): """ :keyword category: The type of service accessed by the Api Management Service, e.g., Azure Storage, Azure SQL Database, and Azure Active Directory. :paramtype category: str :keyword endpoints: The endpoints that the Api Management Service reaches the service at. :paramtype endpoints: list[~azure.mgmt.apimanagement.models.EndpointDependency] """ super().__init__(**kwargs) self.category = category self.endpoints = endpoints
[docs]class OutboundEnvironmentEndpointList(_serialization.Model): """Collection of Outbound Environment Endpoints. 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 value: Collection of resources. Required. :vartype value: list[~azure.mgmt.apimanagement.models.OutboundEnvironmentEndpoint] :ivar next_link: Link to next page of resources. :vartype next_link: str """ _validation = { "value": {"required": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[OutboundEnvironmentEndpoint]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, value: List["_models.OutboundEnvironmentEndpoint"], **kwargs): """ :keyword value: Collection of resources. Required. :paramtype value: list[~azure.mgmt.apimanagement.models.OutboundEnvironmentEndpoint] """ super().__init__(**kwargs) self.value = value self.next_link = None
[docs]class ParameterContract(_serialization.Model): """Operation parameters details. All required parameters must be populated in order to send to Azure. :ivar name: Parameter name. Required. :vartype name: str :ivar description: Parameter description. :vartype description: str :ivar type: Parameter type. Required. :vartype type: str :ivar default_value: Default parameter value. :vartype default_value: str :ivar required: Specifies whether parameter is required or not. :vartype required: bool :ivar values: Parameter values. :vartype values: list[str] :ivar schema_id: Schema identifier. :vartype schema_id: str :ivar type_name: Type name defined by the schema. :vartype type_name: str :ivar examples: Exampled defined for the parameter. :vartype examples: dict[str, ~azure.mgmt.apimanagement.models.ParameterExampleContract] """ _validation = { "name": {"required": True}, "type": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "description": {"key": "description", "type": "str"}, "type": {"key": "type", "type": "str"}, "default_value": {"key": "defaultValue", "type": "str"}, "required": {"key": "required", "type": "bool"}, "values": {"key": "values", "type": "[str]"}, "schema_id": {"key": "schemaId", "type": "str"}, "type_name": {"key": "typeName", "type": "str"}, "examples": {"key": "examples", "type": "{ParameterExampleContract}"}, } def __init__( self, *, name: str, type: str, description: Optional[str] = None, default_value: Optional[str] = None, required: Optional[bool] = None, values: Optional[List[str]] = None, schema_id: Optional[str] = None, type_name: Optional[str] = None, examples: Optional[Dict[str, "_models.ParameterExampleContract"]] = None, **kwargs ): """ :keyword name: Parameter name. Required. :paramtype name: str :keyword description: Parameter description. :paramtype description: str :keyword type: Parameter type. Required. :paramtype type: str :keyword default_value: Default parameter value. :paramtype default_value: str :keyword required: Specifies whether parameter is required or not. :paramtype required: bool :keyword values: Parameter values. :paramtype values: list[str] :keyword schema_id: Schema identifier. :paramtype schema_id: str :keyword type_name: Type name defined by the schema. :paramtype type_name: str :keyword examples: Exampled defined for the parameter. :paramtype examples: dict[str, ~azure.mgmt.apimanagement.models.ParameterExampleContract] """ super().__init__(**kwargs) self.name = name self.description = description self.type = type self.default_value = default_value self.required = required self.values = values self.schema_id = schema_id self.type_name = type_name self.examples = examples
[docs]class ParameterExampleContract(_serialization.Model): """Parameter example. :ivar summary: Short description for the example. :vartype summary: str :ivar description: Long description for the example. :vartype description: str :ivar value: Example value. May be a primitive value, or an object. :vartype value: any :ivar external_value: A URL that points to the literal example. :vartype external_value: str """ _attribute_map = { "summary": {"key": "summary", "type": "str"}, "description": {"key": "description", "type": "str"}, "value": {"key": "value", "type": "object"}, "external_value": {"key": "externalValue", "type": "str"}, } def __init__( self, *, summary: Optional[str] = None, description: Optional[str] = None, value: Optional[Any] = None, external_value: Optional[str] = None, **kwargs ): """ :keyword summary: Short description for the example. :paramtype summary: str :keyword description: Long description for the example. :paramtype description: str :keyword value: Example value. May be a primitive value, or an object. :paramtype value: any :keyword external_value: A URL that points to the literal example. :paramtype external_value: str """ super().__init__(**kwargs) self.summary = summary self.description = description self.value = value self.external_value = external_value
[docs]class PipelineDiagnosticSettings(_serialization.Model): """Diagnostic settings for incoming/outgoing HTTP messages to the Gateway. :ivar request: Diagnostic settings for request. :vartype request: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic :ivar response: Diagnostic settings for response. :vartype response: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic """ _attribute_map = { "request": {"key": "request", "type": "HttpMessageDiagnostic"}, "response": {"key": "response", "type": "HttpMessageDiagnostic"}, } def __init__( self, *, request: Optional["_models.HttpMessageDiagnostic"] = None, response: Optional["_models.HttpMessageDiagnostic"] = None, **kwargs ): """ :keyword request: Diagnostic settings for request. :paramtype request: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic :keyword response: Diagnostic settings for response. :paramtype response: ~azure.mgmt.apimanagement.models.HttpMessageDiagnostic """ super().__init__(**kwargs) self.request = request self.response = response
[docs]class PolicyCollection(_serialization.Model): """The response of the list policy operation. :ivar value: Policy Contract value. :vartype value: list[~azure.mgmt.apimanagement.models.PolicyContract] :ivar count: Total record count number. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[PolicyContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.PolicyContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Policy Contract value. :paramtype value: list[~azure.mgmt.apimanagement.models.PolicyContract] :keyword count: Total record count number. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class PolicyContract(Resource): """Policy Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar value: Contents of the Policy as defined by the format. :vartype value: str :ivar format: Format of the policyContent. Known values are: "xml", "xml-link", "rawxml", and "rawxml-link". :vartype format: str or ~azure.mgmt.apimanagement.models.PolicyContentFormat """ _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"}, "value": {"key": "properties.value", "type": "str"}, "format": {"key": "properties.format", "type": "str"}, } def __init__( self, *, value: Optional[str] = None, format: Union[str, "_models.PolicyContentFormat"] = "xml", **kwargs ): """ :keyword value: Contents of the Policy as defined by the format. :paramtype value: str :keyword format: Format of the policyContent. Known values are: "xml", "xml-link", "rawxml", and "rawxml-link". :paramtype format: str or ~azure.mgmt.apimanagement.models.PolicyContentFormat """ super().__init__(**kwargs) self.value = value self.format = format
[docs]class PolicyDescriptionCollection(_serialization.Model): """Descriptions of APIM policies. :ivar value: Descriptions of APIM policies. :vartype value: list[~azure.mgmt.apimanagement.models.PolicyDescriptionContract] :ivar count: Total record count number. :vartype count: int """ _attribute_map = { "value": {"key": "value", "type": "[PolicyDescriptionContract]"}, "count": {"key": "count", "type": "int"}, } def __init__( self, *, value: Optional[List["_models.PolicyDescriptionContract"]] = None, count: Optional[int] = None, **kwargs ): """ :keyword value: Descriptions of APIM policies. :paramtype value: list[~azure.mgmt.apimanagement.models.PolicyDescriptionContract] :keyword count: Total record count number. :paramtype count: int """ super().__init__(**kwargs) self.value = value self.count = count
[docs]class PolicyDescriptionContract(Resource): """Policy description details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Policy description. :vartype description: str :ivar scope: Binary OR value of the Snippet scope. :vartype scope: int """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"readonly": True}, "scope": {"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"}, "scope": {"key": "properties.scope", "type": "int"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.description = None self.scope = None
[docs]class PortalDelegationSettings(Resource): """Delegation settings for a developer portal. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar url: A delegation Url. :vartype url: str :ivar validation_key: A base64-encoded validation key to validate, that a request is coming from Azure API Management. :vartype validation_key: str :ivar subscriptions: Subscriptions delegation settings. :vartype subscriptions: ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties :ivar user_registration: User registration delegation settings. :vartype user_registration: ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties """ _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"}, "url": {"key": "properties.url", "type": "str"}, "validation_key": {"key": "properties.validationKey", "type": "str"}, "subscriptions": {"key": "properties.subscriptions", "type": "SubscriptionsDelegationSettingsProperties"}, "user_registration": {"key": "properties.userRegistration", "type": "RegistrationDelegationSettingsProperties"}, } def __init__( self, *, url: Optional[str] = None, validation_key: Optional[str] = None, subscriptions: Optional["_models.SubscriptionsDelegationSettingsProperties"] = None, user_registration: Optional["_models.RegistrationDelegationSettingsProperties"] = None, **kwargs ): """ :keyword url: A delegation Url. :paramtype url: str :keyword validation_key: A base64-encoded validation key to validate, that a request is coming from Azure API Management. :paramtype validation_key: str :keyword subscriptions: Subscriptions delegation settings. :paramtype subscriptions: ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties :keyword user_registration: User registration delegation settings. :paramtype user_registration: ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties """ super().__init__(**kwargs) self.url = url self.validation_key = validation_key self.subscriptions = subscriptions self.user_registration = user_registration
[docs]class PortalRevisionCollection(_serialization.Model): """Paged list of portal revisions. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Collection of portal revisions. :vartype value: list[~azure.mgmt.apimanagement.models.PortalRevisionContract] :ivar next_link: Next page link, if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[PortalRevisionContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class PortalRevisionContract(Resource): """Portal Revision's contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Portal revision description. :vartype description: str :ivar status_details: Portal revision publishing status details. :vartype status_details: str :ivar status: Status of the portal's revision. Known values are: "pending", "publishing", "completed", and "failed". :vartype status: str or ~azure.mgmt.apimanagement.models.PortalRevisionStatus :ivar is_current: Indicates if the portal's revision is public. :vartype is_current: bool :ivar created_date_time: Portal's revision creation date and time. :vartype created_date_time: ~datetime.datetime :ivar updated_date_time: Last updated date and time. :vartype updated_date_time: ~datetime.datetime """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 2000}, "status_details": {"readonly": True, "max_length": 2000}, "status": {"readonly": True}, "created_date_time": {"readonly": True}, "updated_date_time": {"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"}, "status_details": {"key": "properties.statusDetails", "type": "str"}, "status": {"key": "properties.status", "type": "str"}, "is_current": {"key": "properties.isCurrent", "type": "bool"}, "created_date_time": {"key": "properties.createdDateTime", "type": "iso-8601"}, "updated_date_time": {"key": "properties.updatedDateTime", "type": "iso-8601"}, } def __init__(self, *, description: Optional[str] = None, is_current: Optional[bool] = None, **kwargs): """ :keyword description: Portal revision description. :paramtype description: str :keyword is_current: Indicates if the portal's revision is public. :paramtype is_current: bool """ super().__init__(**kwargs) self.description = description self.status_details = None self.status = None self.is_current = is_current self.created_date_time = None self.updated_date_time = None
[docs]class PortalSettingsCollection(_serialization.Model): """Descriptions of APIM policies. :ivar value: Descriptions of APIM policies. :vartype value: list[~azure.mgmt.apimanagement.models.PortalSettingsContract] :ivar count: Total record count number. :vartype count: int """ _attribute_map = { "value": {"key": "value", "type": "[PortalSettingsContract]"}, "count": {"key": "count", "type": "int"}, } def __init__( self, *, value: Optional[List["_models.PortalSettingsContract"]] = None, count: Optional[int] = None, **kwargs ): """ :keyword value: Descriptions of APIM policies. :paramtype value: list[~azure.mgmt.apimanagement.models.PortalSettingsContract] :keyword count: Total record count number. :paramtype count: int """ super().__init__(**kwargs) self.value = value self.count = count
[docs]class PortalSettingsContract(Resource): """Portal Settings for the Developer Portal. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar url: A delegation Url. :vartype url: str :ivar validation_key: A base64-encoded validation key to validate, that a request is coming from Azure API Management. :vartype validation_key: str :ivar subscriptions: Subscriptions delegation settings. :vartype subscriptions: ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties :ivar user_registration: User registration delegation settings. :vartype user_registration: ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties :ivar enabled: Redirect Anonymous users to the Sign-In page. :vartype enabled: bool :ivar terms_of_service: Terms of service contract properties. :vartype terms_of_service: ~azure.mgmt.apimanagement.models.TermsOfServiceProperties """ _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"}, "url": {"key": "properties.url", "type": "str"}, "validation_key": {"key": "properties.validationKey", "type": "str"}, "subscriptions": {"key": "properties.subscriptions", "type": "SubscriptionsDelegationSettingsProperties"}, "user_registration": {"key": "properties.userRegistration", "type": "RegistrationDelegationSettingsProperties"}, "enabled": {"key": "properties.enabled", "type": "bool"}, "terms_of_service": {"key": "properties.termsOfService", "type": "TermsOfServiceProperties"}, } def __init__( self, *, url: Optional[str] = None, validation_key: Optional[str] = None, subscriptions: Optional["_models.SubscriptionsDelegationSettingsProperties"] = None, user_registration: Optional["_models.RegistrationDelegationSettingsProperties"] = None, enabled: Optional[bool] = None, terms_of_service: Optional["_models.TermsOfServiceProperties"] = None, **kwargs ): """ :keyword url: A delegation Url. :paramtype url: str :keyword validation_key: A base64-encoded validation key to validate, that a request is coming from Azure API Management. :paramtype validation_key: str :keyword subscriptions: Subscriptions delegation settings. :paramtype subscriptions: ~azure.mgmt.apimanagement.models.SubscriptionsDelegationSettingsProperties :keyword user_registration: User registration delegation settings. :paramtype user_registration: ~azure.mgmt.apimanagement.models.RegistrationDelegationSettingsProperties :keyword enabled: Redirect Anonymous users to the Sign-In page. :paramtype enabled: bool :keyword terms_of_service: Terms of service contract properties. :paramtype terms_of_service: ~azure.mgmt.apimanagement.models.TermsOfServiceProperties """ super().__init__(**kwargs) self.url = url self.validation_key = validation_key self.subscriptions = subscriptions self.user_registration = user_registration self.enabled = enabled self.terms_of_service = terms_of_service
[docs]class PortalSettingValidationKeyContract(_serialization.Model): """Client or app secret used in IdentityProviders, Aad, OpenID or OAuth. :ivar validation_key: This is secret value of the validation key in portal settings. :vartype validation_key: str """ _attribute_map = { "validation_key": {"key": "validationKey", "type": "str"}, } def __init__(self, *, validation_key: Optional[str] = None, **kwargs): """ :keyword validation_key: This is secret value of the validation key in portal settings. :paramtype validation_key: str """ super().__init__(**kwargs) self.validation_key = validation_key
[docs]class PortalSigninSettings(Resource): """Sign-In settings for the Developer Portal. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar enabled: Redirect Anonymous users to the Sign-In page. :vartype enabled: 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"}, "enabled": {"key": "properties.enabled", "type": "bool"}, } def __init__(self, *, enabled: Optional[bool] = None, **kwargs): """ :keyword enabled: Redirect Anonymous users to the Sign-In page. :paramtype enabled: bool """ super().__init__(**kwargs) self.enabled = enabled
[docs]class PortalSignupSettings(Resource): """Sign-Up settings for a developer portal. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar enabled: Allow users to sign up on a developer portal. :vartype enabled: bool :ivar terms_of_service: Terms of service contract properties. :vartype terms_of_service: ~azure.mgmt.apimanagement.models.TermsOfServiceProperties """ _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"}, "enabled": {"key": "properties.enabled", "type": "bool"}, "terms_of_service": {"key": "properties.termsOfService", "type": "TermsOfServiceProperties"}, } def __init__( self, *, enabled: Optional[bool] = None, terms_of_service: Optional["_models.TermsOfServiceProperties"] = None, **kwargs ): """ :keyword enabled: Allow users to sign up on a developer portal. :paramtype enabled: bool :keyword terms_of_service: Terms of service contract properties. :paramtype terms_of_service: ~azure.mgmt.apimanagement.models.TermsOfServiceProperties """ super().__init__(**kwargs) self.enabled = enabled self.terms_of_service = terms_of_service
[docs]class PrivateEndpoint(_serialization.Model): """The Private Endpoint resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: The ARM identifier for Private Endpoint. :vartype id: str """ _validation = { "id": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.id = None
[docs]class PrivateEndpointConnection(Resource): """The Private Endpoint Connection resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar private_endpoint: The resource of private end point. :vartype private_endpoint: ~azure.mgmt.apimanagement.models.PrivateEndpoint :ivar private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :vartype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState :ivar provisioning_state: The provisioning state of the private endpoint connection resource. Known values are: "Succeeded", "Creating", "Deleting", and "Failed". :vartype provisioning_state: str or ~azure.mgmt.apimanagement.models.PrivateEndpointConnectionProvisioningState """ _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"}, "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, "private_link_service_connection_state": { "key": "properties.privateLinkServiceConnectionState", "type": "PrivateLinkServiceConnectionState", }, "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, } def __init__( self, *, private_endpoint: Optional["_models.PrivateEndpoint"] = None, private_link_service_connection_state: Optional["_models.PrivateLinkServiceConnectionState"] = None, **kwargs ): """ :keyword private_endpoint: The resource of private end point. :paramtype private_endpoint: ~azure.mgmt.apimanagement.models.PrivateEndpoint :keyword private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :paramtype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState """ super().__init__(**kwargs) self.private_endpoint = private_endpoint self.private_link_service_connection_state = private_link_service_connection_state self.provisioning_state = None
[docs]class PrivateEndpointConnectionListResult(_serialization.Model): """List of private endpoint connection associated with the specified storage account. :ivar value: Array of private endpoint connections. :vartype value: list[~azure.mgmt.apimanagement.models.PrivateEndpointConnection] """ _attribute_map = { "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, } def __init__(self, *, value: Optional[List["_models.PrivateEndpointConnection"]] = None, **kwargs): """ :keyword value: Array of private endpoint connections. :paramtype value: list[~azure.mgmt.apimanagement.models.PrivateEndpointConnection] """ super().__init__(**kwargs) self.value = value
[docs]class PrivateEndpointConnectionRequest(_serialization.Model): """A request to approve or reject a private endpoint connection. :ivar id: Private Endpoint Connection Resource Id. :vartype id: str :ivar properties: The connection state of the private endpoint connection. :vartype properties: ~azure.mgmt.apimanagement.models.PrivateEndpointConnectionRequestProperties """ _attribute_map = { "id": {"key": "id", "type": "str"}, "properties": {"key": "properties", "type": "PrivateEndpointConnectionRequestProperties"}, } def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin properties: Optional["_models.PrivateEndpointConnectionRequestProperties"] = None, **kwargs ): """ :keyword id: Private Endpoint Connection Resource Id. :paramtype id: str :keyword properties: The connection state of the private endpoint connection. :paramtype properties: ~azure.mgmt.apimanagement.models.PrivateEndpointConnectionRequestProperties """ super().__init__(**kwargs) self.id = id self.properties = properties
[docs]class PrivateEndpointConnectionRequestProperties(_serialization.Model): """The connection state of the private endpoint connection. :ivar private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :vartype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState """ _attribute_map = { "private_link_service_connection_state": { "key": "privateLinkServiceConnectionState", "type": "PrivateLinkServiceConnectionState", }, } def __init__( self, *, private_link_service_connection_state: Optional["_models.PrivateLinkServiceConnectionState"] = None, **kwargs ): """ :keyword private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :paramtype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState """ super().__init__(**kwargs) self.private_link_service_connection_state = private_link_service_connection_state
[docs]class PrivateLinkResource(Resource): """A private link resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar group_id: The private link resource group id. :vartype group_id: str :ivar required_members: The private link resource required member names. :vartype required_members: list[str] :ivar required_zone_names: The private link resource Private link DNS zone name. :vartype required_zone_names: list[str] """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "group_id": {"readonly": True}, "required_members": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "group_id": {"key": "properties.groupId", "type": "str"}, "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, } def __init__(self, *, required_zone_names: Optional[List[str]] = None, **kwargs): """ :keyword required_zone_names: The private link resource Private link DNS zone name. :paramtype required_zone_names: list[str] """ super().__init__(**kwargs) self.group_id = None self.required_members = None self.required_zone_names = required_zone_names
[docs]class PrivateLinkResourceListResult(_serialization.Model): """A list of private link resources. :ivar value: Array of private link resources. :vartype value: list[~azure.mgmt.apimanagement.models.PrivateLinkResource] """ _attribute_map = { "value": {"key": "value", "type": "[PrivateLinkResource]"}, } def __init__(self, *, value: Optional[List["_models.PrivateLinkResource"]] = None, **kwargs): """ :keyword value: Array of private link resources. :paramtype value: list[~azure.mgmt.apimanagement.models.PrivateLinkResource] """ super().__init__(**kwargs) self.value = value
[docs]class PrivateLinkServiceConnectionState(_serialization.Model): """A collection of information about the state of the connection between service consumer and provider. :ivar status: Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. Known values are: "Pending", "Approved", and "Rejected". :vartype status: str or ~azure.mgmt.apimanagement.models.PrivateEndpointServiceConnectionStatus :ivar description: The reason for approval/rejection of the connection. :vartype description: str :ivar actions_required: A message indicating if changes on the service provider require any updates on the consumer. :vartype 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: Optional[Union[str, "_models.PrivateEndpointServiceConnectionStatus"]] = None, description: Optional[str] = None, actions_required: Optional[str] = None, **kwargs ): """ :keyword status: Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. Known values are: "Pending", "Approved", and "Rejected". :paramtype status: str or ~azure.mgmt.apimanagement.models.PrivateEndpointServiceConnectionStatus :keyword description: The reason for approval/rejection of the connection. :paramtype description: str :keyword actions_required: A message indicating if changes on the service provider require any updates on the consumer. :paramtype actions_required: str """ super().__init__(**kwargs) self.status = status self.description = description self.actions_required = actions_required
[docs]class ProductCollection(_serialization.Model): """Paged Products list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ProductContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[ProductContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.ProductContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.ProductContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class ProductContract(Resource): """Product details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState :ivar display_name: Product name. :vartype display_name: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "terms": {"key": "properties.terms", "type": "str"}, "subscription_required": {"key": "properties.subscriptionRequired", "type": "bool"}, "approval_required": {"key": "properties.approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "properties.subscriptionsLimit", "type": "int"}, "state": {"key": "properties.state", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, display_name: Optional[str] = None, **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState :keyword display_name: Product name. :paramtype display_name: str """ super().__init__(**kwargs) self.description = description self.terms = terms self.subscription_required = subscription_required self.approval_required = approval_required self.subscriptions_limit = subscriptions_limit self.state = state self.display_name = display_name
[docs]class ProductEntityBaseParameters(_serialization.Model): """Product Entity Base Parameters. :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState """ _validation = { "description": {"max_length": 1000}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "terms": {"key": "terms", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "approval_required": {"key": "approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "subscriptionsLimit", "type": "int"}, "state": {"key": "state", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState """ super().__init__(**kwargs) self.description = description self.terms = terms self.subscription_required = subscription_required self.approval_required = approval_required self.subscriptions_limit = subscriptions_limit self.state = state
[docs]class ProductContractProperties(ProductEntityBaseParameters): """Product profile. All required parameters must be populated in order to send to Azure. :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState :ivar display_name: Product name. Required. :vartype display_name: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"required": True, "max_length": 300, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "terms": {"key": "terms", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "approval_required": {"key": "approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "subscriptionsLimit", "type": "int"}, "state": {"key": "state", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, } def __init__( self, *, display_name: str, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState :keyword display_name: Product name. Required. :paramtype display_name: str """ super().__init__( description=description, terms=terms, subscription_required=subscription_required, approval_required=approval_required, subscriptions_limit=subscriptions_limit, state=state, **kwargs ) self.display_name = display_name
[docs]class ProductTagResourceContractProperties(ProductEntityBaseParameters): """Product profile. All required parameters must be populated in order to send to Azure. :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState :ivar id: Identifier of the product in the form of /products/{productId}. :vartype id: str :ivar name: Product name. Required. :vartype name: str """ _validation = { "description": {"max_length": 1000}, "name": {"required": True, "max_length": 300, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "terms": {"key": "terms", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "approval_required": {"key": "approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "subscriptionsLimit", "type": "int"}, "state": {"key": "state", "type": "str"}, "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, } def __init__( self, *, name: str, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, id: Optional[str] = None, # pylint: disable=redefined-builtin **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState :keyword id: Identifier of the product in the form of /products/{productId}. :paramtype id: str :keyword name: Product name. Required. :paramtype name: str """ super().__init__( description=description, terms=terms, subscription_required=subscription_required, approval_required=approval_required, subscriptions_limit=subscriptions_limit, state=state, **kwargs ) self.id = id self.name = name
[docs]class ProductUpdateParameters(_serialization.Model): """Product Update parameters. :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState :ivar display_name: Product name. :vartype display_name: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "terms": {"key": "properties.terms", "type": "str"}, "subscription_required": {"key": "properties.subscriptionRequired", "type": "bool"}, "approval_required": {"key": "properties.approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "properties.subscriptionsLimit", "type": "int"}, "state": {"key": "properties.state", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, display_name: Optional[str] = None, **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState :keyword display_name: Product name. :paramtype display_name: str """ super().__init__(**kwargs) self.description = description self.terms = terms self.subscription_required = subscription_required self.approval_required = approval_required self.subscriptions_limit = subscriptions_limit self.state = state self.display_name = display_name
[docs]class ProductUpdateProperties(ProductEntityBaseParameters): """Parameters supplied to the Update Product operation. :ivar description: Product description. May include HTML formatting tags. :vartype description: str :ivar terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :vartype terms: str :ivar subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :vartype subscription_required: bool :ivar approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :vartype approval_required: bool :ivar subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :vartype subscriptions_limit: int :ivar state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :vartype state: str or ~azure.mgmt.apimanagement.models.ProductState :ivar display_name: Product name. :vartype display_name: str """ _validation = { "description": {"max_length": 1000}, "display_name": {"max_length": 300, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "terms": {"key": "terms", "type": "str"}, "subscription_required": {"key": "subscriptionRequired", "type": "bool"}, "approval_required": {"key": "approvalRequired", "type": "bool"}, "subscriptions_limit": {"key": "subscriptionsLimit", "type": "int"}, "state": {"key": "state", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, terms: Optional[str] = None, subscription_required: Optional[bool] = None, approval_required: Optional[bool] = None, subscriptions_limit: Optional[int] = None, state: Optional[Union[str, "_models.ProductState"]] = None, display_name: Optional[str] = None, **kwargs ): """ :keyword description: Product description. May include HTML formatting tags. :paramtype description: str :keyword terms: Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process. :paramtype terms: str :keyword subscription_required: Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as "protected" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as "open" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true. :paramtype subscription_required: bool :keyword approval_required: whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype approval_required: bool :keyword subscriptions_limit: Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false. :paramtype subscriptions_limit: int :keyword state: whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished. Known values are: "notPublished" and "published". :paramtype state: str or ~azure.mgmt.apimanagement.models.ProductState :keyword display_name: Product name. :paramtype display_name: str """ super().__init__( description=description, terms=terms, subscription_required=subscription_required, approval_required=approval_required, subscriptions_limit=subscriptions_limit, state=state, **kwargs ) self.display_name = display_name
[docs]class QuotaCounterCollection(_serialization.Model): """Paged Quota Counter list representation. :ivar value: Quota counter values. :vartype value: list[~azure.mgmt.apimanagement.models.QuotaCounterContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[QuotaCounterContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.QuotaCounterContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Quota counter values. :paramtype value: list[~azure.mgmt.apimanagement.models.QuotaCounterContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class QuotaCounterContract(_serialization.Model): """Quota counter details. All required parameters must be populated in order to send to Azure. :ivar counter_key: The Key value of the Counter. Must not be empty. Required. :vartype counter_key: str :ivar period_key: Identifier of the Period for which the counter was collected. Must not be empty. Required. :vartype period_key: str :ivar period_start_time: The date of the start of Counter Period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype period_start_time: ~datetime.datetime :ivar period_end_time: The date of the end of Counter Period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :vartype period_end_time: ~datetime.datetime :ivar value: Quota Value Properties. :vartype value: ~azure.mgmt.apimanagement.models.QuotaCounterValueContractProperties """ _validation = { "counter_key": {"required": True, "min_length": 1}, "period_key": {"required": True, "min_length": 1}, "period_start_time": {"required": True}, "period_end_time": {"required": True}, } _attribute_map = { "counter_key": {"key": "counterKey", "type": "str"}, "period_key": {"key": "periodKey", "type": "str"}, "period_start_time": {"key": "periodStartTime", "type": "iso-8601"}, "period_end_time": {"key": "periodEndTime", "type": "iso-8601"}, "value": {"key": "value", "type": "QuotaCounterValueContractProperties"}, } def __init__( self, *, counter_key: str, period_key: str, period_start_time: datetime.datetime, period_end_time: datetime.datetime, value: Optional["_models.QuotaCounterValueContractProperties"] = None, **kwargs ): """ :keyword counter_key: The Key value of the Counter. Must not be empty. Required. :paramtype counter_key: str :keyword period_key: Identifier of the Period for which the counter was collected. Must not be empty. Required. :paramtype period_key: str :keyword period_start_time: The date of the start of Counter Period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype period_start_time: ~datetime.datetime :keyword period_end_time: The date of the end of Counter Period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. Required. :paramtype period_end_time: ~datetime.datetime :keyword value: Quota Value Properties. :paramtype value: ~azure.mgmt.apimanagement.models.QuotaCounterValueContractProperties """ super().__init__(**kwargs) self.counter_key = counter_key self.period_key = period_key self.period_start_time = period_start_time self.period_end_time = period_end_time self.value = value
[docs]class QuotaCounterValueContract(_serialization.Model): """Quota counter value details. :ivar calls_count: Number of times Counter was called. :vartype calls_count: int :ivar kb_transferred: Data Transferred in KiloBytes. :vartype kb_transferred: float """ _attribute_map = { "calls_count": {"key": "value.callsCount", "type": "int"}, "kb_transferred": {"key": "value.kbTransferred", "type": "float"}, } def __init__(self, *, calls_count: Optional[int] = None, kb_transferred: Optional[float] = None, **kwargs): """ :keyword calls_count: Number of times Counter was called. :paramtype calls_count: int :keyword kb_transferred: Data Transferred in KiloBytes. :paramtype kb_transferred: float """ super().__init__(**kwargs) self.calls_count = calls_count self.kb_transferred = kb_transferred
[docs]class QuotaCounterValueContractProperties(_serialization.Model): """Quota counter value details. :ivar calls_count: Number of times Counter was called. :vartype calls_count: int :ivar kb_transferred: Data Transferred in KiloBytes. :vartype kb_transferred: float """ _attribute_map = { "calls_count": {"key": "callsCount", "type": "int"}, "kb_transferred": {"key": "kbTransferred", "type": "float"}, } def __init__(self, *, calls_count: Optional[int] = None, kb_transferred: Optional[float] = None, **kwargs): """ :keyword calls_count: Number of times Counter was called. :paramtype calls_count: int :keyword kb_transferred: Data Transferred in KiloBytes. :paramtype kb_transferred: float """ super().__init__(**kwargs) self.calls_count = calls_count self.kb_transferred = kb_transferred
[docs]class QuotaCounterValueUpdateContract(_serialization.Model): """Quota counter value details. :ivar calls_count: Number of times Counter was called. :vartype calls_count: int :ivar kb_transferred: Data Transferred in KiloBytes. :vartype kb_transferred: float """ _attribute_map = { "calls_count": {"key": "properties.callsCount", "type": "int"}, "kb_transferred": {"key": "properties.kbTransferred", "type": "float"}, } def __init__(self, *, calls_count: Optional[int] = None, kb_transferred: Optional[float] = None, **kwargs): """ :keyword calls_count: Number of times Counter was called. :paramtype calls_count: int :keyword kb_transferred: Data Transferred in KiloBytes. :paramtype kb_transferred: float """ super().__init__(**kwargs) self.calls_count = calls_count self.kb_transferred = kb_transferred
[docs]class RecipientEmailCollection(_serialization.Model): """Paged Recipient User list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.RecipientEmailContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[RecipientEmailContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.RecipientEmailContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.RecipientEmailContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class RecipientEmailContract(Resource): """Recipient Email details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar email: User Email subscribed to notification. :vartype email: 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"}, "email": {"key": "properties.email", "type": "str"}, } def __init__(self, *, email: Optional[str] = None, **kwargs): """ :keyword email: User Email subscribed to notification. :paramtype email: str """ super().__init__(**kwargs) self.email = email
[docs]class RecipientsContractProperties(_serialization.Model): """Notification Parameter contract. :ivar emails: List of Emails subscribed for the notification. :vartype emails: list[str] :ivar users: List of Users subscribed for the notification. :vartype users: list[str] """ _attribute_map = { "emails": {"key": "emails", "type": "[str]"}, "users": {"key": "users", "type": "[str]"}, } def __init__(self, *, emails: Optional[List[str]] = None, users: Optional[List[str]] = None, **kwargs): """ :keyword emails: List of Emails subscribed for the notification. :paramtype emails: list[str] :keyword users: List of Users subscribed for the notification. :paramtype users: list[str] """ super().__init__(**kwargs) self.emails = emails self.users = users
[docs]class RecipientUserCollection(_serialization.Model): """Paged Recipient User list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.RecipientUserContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[RecipientUserContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.RecipientUserContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.RecipientUserContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class RecipientUserContract(Resource): """Recipient User details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar user_id: API Management UserId subscribed to notification. :vartype user_id: 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"}, "user_id": {"key": "properties.userId", "type": "str"}, } def __init__(self, *, user_id: Optional[str] = None, **kwargs): """ :keyword user_id: API Management UserId subscribed to notification. :paramtype user_id: str """ super().__init__(**kwargs) self.user_id = user_id
[docs]class RegionContract(_serialization.Model): """Region profile. Variables are only populated by the server, and will be ignored when sending a request. :ivar name: Region name. :vartype name: str :ivar is_master_region: whether Region is the master region. :vartype is_master_region: bool :ivar is_deleted: whether Region is deleted. :vartype is_deleted: bool """ _validation = { "name": {"readonly": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "is_master_region": {"key": "isMasterRegion", "type": "bool"}, "is_deleted": {"key": "isDeleted", "type": "bool"}, } def __init__(self, *, is_master_region: Optional[bool] = None, is_deleted: Optional[bool] = None, **kwargs): """ :keyword is_master_region: whether Region is the master region. :paramtype is_master_region: bool :keyword is_deleted: whether Region is deleted. :paramtype is_deleted: bool """ super().__init__(**kwargs) self.name = None self.is_master_region = is_master_region self.is_deleted = is_deleted
[docs]class RegionListResult(_serialization.Model): """Lists Regions operation response details. :ivar value: Lists of Regions. :vartype value: list[~azure.mgmt.apimanagement.models.RegionContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[RegionContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.RegionContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Lists of Regions. :paramtype value: list[~azure.mgmt.apimanagement.models.RegionContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class RegistrationDelegationSettingsProperties(_serialization.Model): """User registration delegation settings properties. :ivar enabled: Enable or disable delegation for user registration. :vartype enabled: bool """ _attribute_map = { "enabled": {"key": "enabled", "type": "bool"}, } def __init__(self, *, enabled: Optional[bool] = None, **kwargs): """ :keyword enabled: Enable or disable delegation for user registration. :paramtype enabled: bool """ super().__init__(**kwargs) self.enabled = enabled
[docs]class RemotePrivateEndpointConnectionWrapper(_serialization.Model): """Remote Private Endpoint Connection resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Private Endpoint connection resource id. :vartype id: str :ivar name: Private Endpoint Connection Name. :vartype name: str :ivar type: Private Endpoint Connection Resource Type. :vartype type: str :ivar private_endpoint: The resource of private end point. :vartype private_endpoint: ~azure.mgmt.apimanagement.models.ArmIdWrapper :ivar private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :vartype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState :ivar provisioning_state: The provisioning state of the private endpoint connection resource. :vartype provisioning_state: str :ivar group_ids: All the Group ids. :vartype group_ids: list[str] """ _validation = { "provisioning_state": {"readonly": True}, "group_ids": {"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": "ArmIdWrapper"}, "private_link_service_connection_state": { "key": "properties.privateLinkServiceConnectionState", "type": "PrivateLinkServiceConnectionState", }, "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, "group_ids": {"key": "properties.groupIds", "type": "[str]"}, } def __init__( self, *, id: Optional[str] = None, # pylint: disable=redefined-builtin name: Optional[str] = None, type: Optional[str] = None, private_endpoint: Optional["_models.ArmIdWrapper"] = None, private_link_service_connection_state: Optional["_models.PrivateLinkServiceConnectionState"] = None, **kwargs ): """ :keyword id: Private Endpoint connection resource id. :paramtype id: str :keyword name: Private Endpoint Connection Name. :paramtype name: str :keyword type: Private Endpoint Connection Resource Type. :paramtype type: str :keyword private_endpoint: The resource of private end point. :paramtype private_endpoint: ~azure.mgmt.apimanagement.models.ArmIdWrapper :keyword private_link_service_connection_state: A collection of information about the state of the connection between service consumer and provider. :paramtype private_link_service_connection_state: ~azure.mgmt.apimanagement.models.PrivateLinkServiceConnectionState """ super().__init__(**kwargs) self.id = id self.name = name self.type = type self.private_endpoint = private_endpoint self.private_link_service_connection_state = private_link_service_connection_state self.provisioning_state = None self.group_ids = None
[docs]class ReportCollection(_serialization.Model): """Paged Report records list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.ReportRecordContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[ReportRecordContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.ReportRecordContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.ReportRecordContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class ReportRecordContract(_serialization.Model): # pylint: disable=too-many-instance-attributes """Report data. Variables are only populated by the server, and will be ignored when sending a request. :ivar name: Name depending on report endpoint specifies product, API, operation or developer name. :vartype name: str :ivar timestamp: Start of aggregation period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype timestamp: ~datetime.datetime :ivar interval: Length of aggregation period. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). :vartype interval: str :ivar country: Country to which this record data is related. :vartype country: str :ivar region: Country region to which this record data is related. :vartype region: str :ivar zip: Zip code to which this record data is related. :vartype zip: str :ivar user_id: User identifier path. /users/{userId}. :vartype user_id: str :ivar product_id: Product identifier path. /products/{productId}. :vartype product_id: str :ivar api_id: API identifier path. /apis/{apiId}. :vartype api_id: str :ivar operation_id: Operation identifier path. /apis/{apiId}/operations/{operationId}. :vartype operation_id: str :ivar api_region: API region identifier. :vartype api_region: str :ivar subscription_id: Subscription identifier path. /subscriptions/{subscriptionId}. :vartype subscription_id: str :ivar call_count_success: Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect. :vartype call_count_success: int :ivar call_count_blocked: Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests. :vartype call_count_blocked: int :ivar call_count_failed: Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600. :vartype call_count_failed: int :ivar call_count_other: Number of other calls. :vartype call_count_other: int :ivar call_count_total: Total number of calls. :vartype call_count_total: int :ivar bandwidth: Bandwidth consumed. :vartype bandwidth: int :ivar cache_hit_count: Number of times when content was served from cache policy. :vartype cache_hit_count: int :ivar cache_miss_count: Number of times content was fetched from backend. :vartype cache_miss_count: int :ivar api_time_avg: Average time it took to process request. :vartype api_time_avg: float :ivar api_time_min: Minimum time it took to process request. :vartype api_time_min: float :ivar api_time_max: Maximum time it took to process request. :vartype api_time_max: float :ivar service_time_avg: Average time it took to process request on backend. :vartype service_time_avg: float :ivar service_time_min: Minimum time it took to process request on backend. :vartype service_time_min: float :ivar service_time_max: Maximum time it took to process request on backend. :vartype service_time_max: float """ _validation = { "user_id": {"readonly": True}, "product_id": {"readonly": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "timestamp": {"key": "timestamp", "type": "iso-8601"}, "interval": {"key": "interval", "type": "str"}, "country": {"key": "country", "type": "str"}, "region": {"key": "region", "type": "str"}, "zip": {"key": "zip", "type": "str"}, "user_id": {"key": "userId", "type": "str"}, "product_id": {"key": "productId", "type": "str"}, "api_id": {"key": "apiId", "type": "str"}, "operation_id": {"key": "operationId", "type": "str"}, "api_region": {"key": "apiRegion", "type": "str"}, "subscription_id": {"key": "subscriptionId", "type": "str"}, "call_count_success": {"key": "callCountSuccess", "type": "int"}, "call_count_blocked": {"key": "callCountBlocked", "type": "int"}, "call_count_failed": {"key": "callCountFailed", "type": "int"}, "call_count_other": {"key": "callCountOther", "type": "int"}, "call_count_total": {"key": "callCountTotal", "type": "int"}, "bandwidth": {"key": "bandwidth", "type": "int"}, "cache_hit_count": {"key": "cacheHitCount", "type": "int"}, "cache_miss_count": {"key": "cacheMissCount", "type": "int"}, "api_time_avg": {"key": "apiTimeAvg", "type": "float"}, "api_time_min": {"key": "apiTimeMin", "type": "float"}, "api_time_max": {"key": "apiTimeMax", "type": "float"}, "service_time_avg": {"key": "serviceTimeAvg", "type": "float"}, "service_time_min": {"key": "serviceTimeMin", "type": "float"}, "service_time_max": {"key": "serviceTimeMax", "type": "float"}, } def __init__( # pylint: disable=too-many-locals self, *, name: Optional[str] = None, timestamp: Optional[datetime.datetime] = None, interval: Optional[str] = None, country: Optional[str] = None, region: Optional[str] = None, zip: Optional[str] = None, api_id: Optional[str] = None, operation_id: Optional[str] = None, api_region: Optional[str] = None, subscription_id: Optional[str] = None, call_count_success: Optional[int] = None, call_count_blocked: Optional[int] = None, call_count_failed: Optional[int] = None, call_count_other: Optional[int] = None, call_count_total: Optional[int] = None, bandwidth: Optional[int] = None, cache_hit_count: Optional[int] = None, cache_miss_count: Optional[int] = None, api_time_avg: Optional[float] = None, api_time_min: Optional[float] = None, api_time_max: Optional[float] = None, service_time_avg: Optional[float] = None, service_time_min: Optional[float] = None, service_time_max: Optional[float] = None, **kwargs ): """ :keyword name: Name depending on report endpoint specifies product, API, operation or developer name. :paramtype name: str :keyword timestamp: Start of aggregation period. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype timestamp: ~datetime.datetime :keyword interval: Length of aggregation period. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). :paramtype interval: str :keyword country: Country to which this record data is related. :paramtype country: str :keyword region: Country region to which this record data is related. :paramtype region: str :keyword zip: Zip code to which this record data is related. :paramtype zip: str :keyword api_id: API identifier path. /apis/{apiId}. :paramtype api_id: str :keyword operation_id: Operation identifier path. /apis/{apiId}/operations/{operationId}. :paramtype operation_id: str :keyword api_region: API region identifier. :paramtype api_region: str :keyword subscription_id: Subscription identifier path. /subscriptions/{subscriptionId}. :paramtype subscription_id: str :keyword call_count_success: Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect. :paramtype call_count_success: int :keyword call_count_blocked: Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests. :paramtype call_count_blocked: int :keyword call_count_failed: Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600. :paramtype call_count_failed: int :keyword call_count_other: Number of other calls. :paramtype call_count_other: int :keyword call_count_total: Total number of calls. :paramtype call_count_total: int :keyword bandwidth: Bandwidth consumed. :paramtype bandwidth: int :keyword cache_hit_count: Number of times when content was served from cache policy. :paramtype cache_hit_count: int :keyword cache_miss_count: Number of times content was fetched from backend. :paramtype cache_miss_count: int :keyword api_time_avg: Average time it took to process request. :paramtype api_time_avg: float :keyword api_time_min: Minimum time it took to process request. :paramtype api_time_min: float :keyword api_time_max: Maximum time it took to process request. :paramtype api_time_max: float :keyword service_time_avg: Average time it took to process request on backend. :paramtype service_time_avg: float :keyword service_time_min: Minimum time it took to process request on backend. :paramtype service_time_min: float :keyword service_time_max: Maximum time it took to process request on backend. :paramtype service_time_max: float """ super().__init__(**kwargs) self.name = name self.timestamp = timestamp self.interval = interval self.country = country self.region = region self.zip = zip self.user_id = None self.product_id = None self.api_id = api_id self.operation_id = operation_id self.api_region = api_region self.subscription_id = subscription_id self.call_count_success = call_count_success self.call_count_blocked = call_count_blocked self.call_count_failed = call_count_failed self.call_count_other = call_count_other self.call_count_total = call_count_total self.bandwidth = bandwidth self.cache_hit_count = cache_hit_count self.cache_miss_count = cache_miss_count self.api_time_avg = api_time_avg self.api_time_min = api_time_min self.api_time_max = api_time_max self.service_time_avg = service_time_avg self.service_time_min = service_time_min self.service_time_max = service_time_max
[docs]class RepresentationContract(_serialization.Model): """Operation request/response representation details. All required parameters must be populated in order to send to Azure. :ivar content_type: Specifies a registered or custom content type for this representation, e.g. application/xml. Required. :vartype content_type: str :ivar schema_id: Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. :vartype schema_id: str :ivar type_name: Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. :vartype type_name: str :ivar form_parameters: Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.. :vartype form_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar examples: Exampled defined for the representation. :vartype examples: dict[str, ~azure.mgmt.apimanagement.models.ParameterExampleContract] """ _validation = { "content_type": {"required": True}, } _attribute_map = { "content_type": {"key": "contentType", "type": "str"}, "schema_id": {"key": "schemaId", "type": "str"}, "type_name": {"key": "typeName", "type": "str"}, "form_parameters": {"key": "formParameters", "type": "[ParameterContract]"}, "examples": {"key": "examples", "type": "{ParameterExampleContract}"}, } def __init__( self, *, content_type: str, schema_id: Optional[str] = None, type_name: Optional[str] = None, form_parameters: Optional[List["_models.ParameterContract"]] = None, examples: Optional[Dict[str, "_models.ParameterExampleContract"]] = None, **kwargs ): """ :keyword content_type: Specifies a registered or custom content type for this representation, e.g. application/xml. Required. :paramtype content_type: str :keyword schema_id: Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. :paramtype schema_id: str :keyword type_name: Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'. :paramtype type_name: str :keyword form_parameters: Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.. :paramtype form_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword examples: Exampled defined for the representation. :paramtype examples: dict[str, ~azure.mgmt.apimanagement.models.ParameterExampleContract] """ super().__init__(**kwargs) self.content_type = content_type self.schema_id = schema_id self.type_name = type_name self.form_parameters = form_parameters self.examples = examples
[docs]class RequestContract(_serialization.Model): """Operation request details. :ivar description: Operation request description. :vartype description: str :ivar query_parameters: Collection of operation request query parameters. :vartype query_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar headers: Collection of operation request headers. :vartype headers: list[~azure.mgmt.apimanagement.models.ParameterContract] :ivar representations: Collection of operation request representations. :vartype representations: list[~azure.mgmt.apimanagement.models.RepresentationContract] """ _attribute_map = { "description": {"key": "description", "type": "str"}, "query_parameters": {"key": "queryParameters", "type": "[ParameterContract]"}, "headers": {"key": "headers", "type": "[ParameterContract]"}, "representations": {"key": "representations", "type": "[RepresentationContract]"}, } def __init__( self, *, description: Optional[str] = None, query_parameters: Optional[List["_models.ParameterContract"]] = None, headers: Optional[List["_models.ParameterContract"]] = None, representations: Optional[List["_models.RepresentationContract"]] = None, **kwargs ): """ :keyword description: Operation request description. :paramtype description: str :keyword query_parameters: Collection of operation request query parameters. :paramtype query_parameters: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword headers: Collection of operation request headers. :paramtype headers: list[~azure.mgmt.apimanagement.models.ParameterContract] :keyword representations: Collection of operation request representations. :paramtype representations: list[~azure.mgmt.apimanagement.models.RepresentationContract] """ super().__init__(**kwargs) self.description = description self.query_parameters = query_parameters self.headers = headers self.representations = representations
[docs]class RequestReportCollection(_serialization.Model): """Paged Report records list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.RequestReportRecordContract] :ivar count: Total record count number across all pages. :vartype count: int """ _attribute_map = { "value": {"key": "value", "type": "[RequestReportRecordContract]"}, "count": {"key": "count", "type": "int"}, } def __init__( self, *, value: Optional[List["_models.RequestReportRecordContract"]] = None, count: Optional[int] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.RequestReportRecordContract] :keyword count: Total record count number across all pages. :paramtype count: int """ super().__init__(**kwargs) self.value = value self.count = count
[docs]class RequestReportRecordContract(_serialization.Model): # pylint: disable=too-many-instance-attributes """Request Report data. Variables are only populated by the server, and will be ignored when sending a request. :ivar api_id: API identifier path. /apis/{apiId}. :vartype api_id: str :ivar operation_id: Operation identifier path. /apis/{apiId}/operations/{operationId}. :vartype operation_id: str :ivar product_id: Product identifier path. /products/{productId}. :vartype product_id: str :ivar user_id: User identifier path. /users/{userId}. :vartype user_id: str :ivar method: The HTTP method associated with this request.. :vartype method: str :ivar url: The full URL associated with this request. :vartype url: str :ivar ip_address: The client IP address associated with this request. :vartype ip_address: str :ivar backend_response_code: The HTTP status code received by the gateway as a result of forwarding this request to the backend. :vartype backend_response_code: str :ivar response_code: The HTTP status code returned by the gateway. :vartype response_code: int :ivar response_size: The size of the response returned by the gateway. :vartype response_size: int :ivar timestamp: The date and time when this request was received by the gateway in ISO 8601 format. :vartype timestamp: ~datetime.datetime :ivar cache: Specifies if response cache was involved in generating the response. If the value is none, the cache was not used. If the value is hit, cached response was returned. If the value is miss, the cache was used but lookup resulted in a miss and request was fulfilled by the backend. :vartype cache: str :ivar api_time: The total time it took to process this request. :vartype api_time: float :ivar service_time: he time it took to forward this request to the backend and get the response back. :vartype service_time: float :ivar api_region: Azure region where the gateway that processed this request is located. :vartype api_region: str :ivar subscription_id: Subscription identifier path. /subscriptions/{subscriptionId}. :vartype subscription_id: str :ivar request_id: Request Identifier. :vartype request_id: str :ivar request_size: The size of this request.. :vartype request_size: int """ _validation = { "product_id": {"readonly": True}, "user_id": {"readonly": True}, } _attribute_map = { "api_id": {"key": "apiId", "type": "str"}, "operation_id": {"key": "operationId", "type": "str"}, "product_id": {"key": "productId", "type": "str"}, "user_id": {"key": "userId", "type": "str"}, "method": {"key": "method", "type": "str"}, "url": {"key": "url", "type": "str"}, "ip_address": {"key": "ipAddress", "type": "str"}, "backend_response_code": {"key": "backendResponseCode", "type": "str"}, "response_code": {"key": "responseCode", "type": "int"}, "response_size": {"key": "responseSize", "type": "int"}, "timestamp": {"key": "timestamp", "type": "iso-8601"}, "cache": {"key": "cache", "type": "str"}, "api_time": {"key": "apiTime", "type": "float"}, "service_time": {"key": "serviceTime", "type": "float"}, "api_region": {"key": "apiRegion", "type": "str"}, "subscription_id": {"key": "subscriptionId", "type": "str"}, "request_id": {"key": "requestId", "type": "str"}, "request_size": {"key": "requestSize", "type": "int"}, } def __init__( self, *, api_id: Optional[str] = None, operation_id: Optional[str] = None, method: Optional[str] = None, url: Optional[str] = None, ip_address: Optional[str] = None, backend_response_code: Optional[str] = None, response_code: Optional[int] = None, response_size: Optional[int] = None, timestamp: Optional[datetime.datetime] = None, cache: Optional[str] = None, api_time: Optional[float] = None, service_time: Optional[float] = None, api_region: Optional[str] = None, subscription_id: Optional[str] = None, request_id: Optional[str] = None, request_size: Optional[int] = None, **kwargs ): """ :keyword api_id: API identifier path. /apis/{apiId}. :paramtype api_id: str :keyword operation_id: Operation identifier path. /apis/{apiId}/operations/{operationId}. :paramtype operation_id: str :keyword method: The HTTP method associated with this request.. :paramtype method: str :keyword url: The full URL associated with this request. :paramtype url: str :keyword ip_address: The client IP address associated with this request. :paramtype ip_address: str :keyword backend_response_code: The HTTP status code received by the gateway as a result of forwarding this request to the backend. :paramtype backend_response_code: str :keyword response_code: The HTTP status code returned by the gateway. :paramtype response_code: int :keyword response_size: The size of the response returned by the gateway. :paramtype response_size: int :keyword timestamp: The date and time when this request was received by the gateway in ISO 8601 format. :paramtype timestamp: ~datetime.datetime :keyword cache: Specifies if response cache was involved in generating the response. If the value is none, the cache was not used. If the value is hit, cached response was returned. If the value is miss, the cache was used but lookup resulted in a miss and request was fulfilled by the backend. :paramtype cache: str :keyword api_time: The total time it took to process this request. :paramtype api_time: float :keyword service_time: he time it took to forward this request to the backend and get the response back. :paramtype service_time: float :keyword api_region: Azure region where the gateway that processed this request is located. :paramtype api_region: str :keyword subscription_id: Subscription identifier path. /subscriptions/{subscriptionId}. :paramtype subscription_id: str :keyword request_id: Request Identifier. :paramtype request_id: str :keyword request_size: The size of this request.. :paramtype request_size: int """ super().__init__(**kwargs) self.api_id = api_id self.operation_id = operation_id self.product_id = None self.user_id = None self.method = method self.url = url self.ip_address = ip_address self.backend_response_code = backend_response_code self.response_code = response_code self.response_size = response_size self.timestamp = timestamp self.cache = cache self.api_time = api_time self.service_time = service_time self.api_region = api_region self.subscription_id = subscription_id self.request_id = request_id self.request_size = request_size
[docs]class ResourceLocationDataContract(_serialization.Model): """Resource location data properties. All required parameters must be populated in order to send to Azure. :ivar name: A canonical name for the geographic or physical location. Required. :vartype name: str :ivar city: The city or locality where the resource is located. :vartype city: str :ivar district: The district, state, or province where the resource is located. :vartype district: str :ivar country_or_region: The country or region where the resource is located. :vartype country_or_region: str """ _validation = { "name": {"required": True, "max_length": 256}, "city": {"max_length": 256}, "district": {"max_length": 256}, "country_or_region": {"max_length": 256}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "city": {"key": "city", "type": "str"}, "district": {"key": "district", "type": "str"}, "country_or_region": {"key": "countryOrRegion", "type": "str"}, } def __init__( self, *, name: str, city: Optional[str] = None, district: Optional[str] = None, country_or_region: Optional[str] = None, **kwargs ): """ :keyword name: A canonical name for the geographic or physical location. Required. :paramtype name: str :keyword city: The city or locality where the resource is located. :paramtype city: str :keyword district: The district, state, or province where the resource is located. :paramtype district: str :keyword country_or_region: The country or region where the resource is located. :paramtype country_or_region: str """ super().__init__(**kwargs) self.name = name self.city = city self.district = district self.country_or_region = country_or_region
[docs]class ResourceSku(_serialization.Model): """Describes an available API Management SKU. :ivar name: Name of the Sku. Known values are: "Developer", "Standard", "Premium", "Basic", "Consumption", and "Isolated". :vartype name: str or ~azure.mgmt.apimanagement.models.SkuType """ _attribute_map = { "name": {"key": "name", "type": "str"}, } def __init__(self, *, name: Optional[Union[str, "_models.SkuType"]] = None, **kwargs): """ :keyword name: Name of the Sku. Known values are: "Developer", "Standard", "Premium", "Basic", "Consumption", and "Isolated". :paramtype name: str or ~azure.mgmt.apimanagement.models.SkuType """ super().__init__(**kwargs) self.name = name
[docs]class ResourceSkuCapacity(_serialization.Model): """Describes scaling information of a SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar minimum: The minimum capacity. :vartype minimum: int :ivar maximum: The maximum capacity that can be set. :vartype maximum: int :ivar default: The default capacity. :vartype default: int :ivar scale_type: The scale type applicable to the sku. Known values are: "automatic", "manual", and "none". :vartype scale_type: str or ~azure.mgmt.apimanagement.models.ResourceSkuCapacityScaleType """ _validation = { "minimum": {"readonly": True}, "maximum": {"readonly": True}, "default": {"readonly": True}, "scale_type": {"readonly": True}, } _attribute_map = { "minimum": {"key": "minimum", "type": "int"}, "maximum": {"key": "maximum", "type": "int"}, "default": {"key": "default", "type": "int"}, "scale_type": {"key": "scaleType", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.minimum = None self.maximum = None self.default = None self.scale_type = None
[docs]class ResourceSkuResult(_serialization.Model): """Describes an available API Management service SKU. Variables are only populated by the server, and will be ignored when sending a request. :ivar resource_type: The type of resource the SKU applies to. :vartype resource_type: str :ivar sku: Specifies API Management SKU. :vartype sku: ~azure.mgmt.apimanagement.models.ResourceSku :ivar capacity: Specifies the number of API Management units. :vartype capacity: ~azure.mgmt.apimanagement.models.ResourceSkuCapacity """ _validation = { "resource_type": {"readonly": True}, "sku": {"readonly": True}, "capacity": {"readonly": True}, } _attribute_map = { "resource_type": {"key": "resourceType", "type": "str"}, "sku": {"key": "sku", "type": "ResourceSku"}, "capacity": {"key": "capacity", "type": "ResourceSkuCapacity"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.resource_type = None self.sku = None self.capacity = None
[docs]class ResourceSkuResults(_serialization.Model): """The API Management service SKUs operation response. All required parameters must be populated in order to send to Azure. :ivar value: The list of skus available for the service. Required. :vartype value: list[~azure.mgmt.apimanagement.models.ResourceSkuResult] :ivar next_link: The uri to fetch the next page of API Management service Skus. :vartype next_link: str """ _validation = { "value": {"required": True}, } _attribute_map = { "value": {"key": "value", "type": "[ResourceSkuResult]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, value: List["_models.ResourceSkuResult"], next_link: Optional[str] = None, **kwargs): """ :keyword value: The list of skus available for the service. Required. :paramtype value: list[~azure.mgmt.apimanagement.models.ResourceSkuResult] :keyword next_link: The uri to fetch the next page of API Management service Skus. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.next_link = next_link
[docs]class ResponseContract(_serialization.Model): """Operation response details. All required parameters must be populated in order to send to Azure. :ivar status_code: Operation response HTTP status code. Required. :vartype status_code: int :ivar description: Operation response description. :vartype description: str :ivar representations: Collection of operation response representations. :vartype representations: list[~azure.mgmt.apimanagement.models.RepresentationContract] :ivar headers: Collection of operation response headers. :vartype headers: list[~azure.mgmt.apimanagement.models.ParameterContract] """ _validation = { "status_code": {"required": True}, } _attribute_map = { "status_code": {"key": "statusCode", "type": "int"}, "description": {"key": "description", "type": "str"}, "representations": {"key": "representations", "type": "[RepresentationContract]"}, "headers": {"key": "headers", "type": "[ParameterContract]"}, } def __init__( self, *, status_code: int, description: Optional[str] = None, representations: Optional[List["_models.RepresentationContract"]] = None, headers: Optional[List["_models.ParameterContract"]] = None, **kwargs ): """ :keyword status_code: Operation response HTTP status code. Required. :paramtype status_code: int :keyword description: Operation response description. :paramtype description: str :keyword representations: Collection of operation response representations. :paramtype representations: list[~azure.mgmt.apimanagement.models.RepresentationContract] :keyword headers: Collection of operation response headers. :paramtype headers: list[~azure.mgmt.apimanagement.models.ParameterContract] """ super().__init__(**kwargs) self.status_code = status_code self.description = description self.representations = representations self.headers = headers
[docs]class SamplingSettings(_serialization.Model): """Sampling settings for Diagnostic. :ivar sampling_type: Sampling type. "fixed" :vartype sampling_type: str or ~azure.mgmt.apimanagement.models.SamplingType :ivar percentage: Rate of sampling for fixed-rate sampling. :vartype percentage: float """ _validation = { "percentage": {"maximum": 100, "minimum": 0}, } _attribute_map = { "sampling_type": {"key": "samplingType", "type": "str"}, "percentage": {"key": "percentage", "type": "float"}, } def __init__( self, *, sampling_type: Optional[Union[str, "_models.SamplingType"]] = None, percentage: Optional[float] = None, **kwargs ): """ :keyword sampling_type: Sampling type. "fixed" :paramtype sampling_type: str or ~azure.mgmt.apimanagement.models.SamplingType :keyword percentage: Rate of sampling for fixed-rate sampling. :paramtype percentage: float """ super().__init__(**kwargs) self.sampling_type = sampling_type self.percentage = percentage
[docs]class SaveConfigurationParameter(_serialization.Model): """Save Tenant Configuration Contract details. :ivar branch: The name of the Git branch in which to commit the current configuration snapshot. :vartype branch: str :ivar force: The value if true, the current configuration database is committed to the Git repository, even if the Git repository has newer changes that would be overwritten. :vartype force: bool """ _attribute_map = { "branch": {"key": "properties.branch", "type": "str"}, "force": {"key": "properties.force", "type": "bool"}, } def __init__(self, *, branch: Optional[str] = None, force: Optional[bool] = None, **kwargs): """ :keyword branch: The name of the Git branch in which to commit the current configuration snapshot. :paramtype branch: str :keyword force: The value if true, the current configuration database is committed to the Git repository, even if the Git repository has newer changes that would be overwritten. :paramtype force: bool """ super().__init__(**kwargs) self.branch = branch self.force = force
[docs]class SchemaCollection(_serialization.Model): """The response of the list schema operation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: API Schema Contract value. :vartype value: list[~azure.mgmt.apimanagement.models.SchemaContract] :ivar count: Total record count number. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[SchemaContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, *, count: Optional[int] = None, **kwargs): """ :keyword count: Total record count number. :paramtype count: int """ super().__init__(**kwargs) self.value = None self.count = count self.next_link = None
[docs]class SchemaContract(Resource): """API Schema Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar content_type: Must be a valid a media type used in a Content-Type header as defined in the RFC 2616. Media type of the schema document (e.g. application/json, application/xml). </br> - ``Swagger`` Schema use ``application/vnd.ms-azure-apim.swagger.definitions+json`` </br> - ``WSDL`` Schema use ``application/vnd.ms-azure-apim.xsd+xml`` </br> - ``OpenApi`` Schema use ``application/vnd.oai.openapi.components+json`` </br> - ``WADL Schema`` use ``application/vnd.ms-azure-apim.wadl.grammars+xml``. :vartype content_type: str :ivar value: Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI. :vartype value: str :ivar definitions: Types definitions. Used for Swagger/OpenAPI v1 schemas only, null otherwise. :vartype definitions: JSON :ivar components: Types definitions. Used for Swagger/OpenAPI v2/v3 schemas only, null otherwise. :vartype components: JSON """ _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"}, "content_type": {"key": "properties.contentType", "type": "str"}, "value": {"key": "properties.document.value", "type": "str"}, "definitions": {"key": "properties.document.definitions", "type": "object"}, "components": {"key": "properties.document.components", "type": "object"}, } def __init__( self, *, content_type: Optional[str] = None, value: Optional[str] = None, definitions: Optional[JSON] = None, components: Optional[JSON] = None, **kwargs ): """ :keyword content_type: Must be a valid a media type used in a Content-Type header as defined in the RFC 2616. Media type of the schema document (e.g. application/json, application/xml). </br> - ``Swagger`` Schema use ``application/vnd.ms-azure-apim.swagger.definitions+json`` </br> - ``WSDL`` Schema use ``application/vnd.ms-azure-apim.xsd+xml`` </br> - ``OpenApi`` Schema use ``application/vnd.oai.openapi.components+json`` </br> - ``WADL Schema`` use ``application/vnd.ms-azure-apim.wadl.grammars+xml``. :paramtype content_type: str :keyword value: Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI. :paramtype value: str :keyword definitions: Types definitions. Used for Swagger/OpenAPI v1 schemas only, null otherwise. :paramtype definitions: JSON :keyword components: Types definitions. Used for Swagger/OpenAPI v2/v3 schemas only, null otherwise. :paramtype components: JSON """ super().__init__(**kwargs) self.content_type = content_type self.value = value self.definitions = definitions self.components = components
[docs]class SubscriptionCollection(_serialization.Model): """Paged Subscriptions list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.SubscriptionContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[SubscriptionContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.SubscriptionContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.SubscriptionContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class SubscriptionContract(Resource): # pylint: disable=too-many-instance-attributes """Subscription details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar owner_id: The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{userId} where {userId} is a user identifier. :vartype owner_id: str :ivar scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :vartype scope: str :ivar display_name: The name of the subscription, or null if the subscription has no name. :vartype display_name: str :ivar state: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :vartype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :ivar created_date: Subscription creation date. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype created_date: ~datetime.datetime :ivar start_date: Subscription activation date. The setting is for audit purposes only and the subscription is not automatically activated. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype start_date: ~datetime.datetime :ivar expiration_date: Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype expiration_date: ~datetime.datetime :ivar end_date: Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is not automatically cancelled. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype end_date: ~datetime.datetime :ivar notification_date: Upcoming subscription expiration notification date. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype notification_date: ~datetime.datetime :ivar primary_key: Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype primary_key: str :ivar secondary_key: Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :vartype secondary_key: str :ivar state_comment: Optional subscription comment added by an administrator when the state is changed to the 'rejected'. :vartype state_comment: str :ivar allow_tracing: Determines whether tracing is enabled. :vartype allow_tracing: bool """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 100}, "created_date": {"readonly": True}, "primary_key": {"max_length": 256, "min_length": 1}, "secondary_key": {"max_length": 256, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "owner_id": {"key": "properties.ownerId", "type": "str"}, "scope": {"key": "properties.scope", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "state": {"key": "properties.state", "type": "str"}, "created_date": {"key": "properties.createdDate", "type": "iso-8601"}, "start_date": {"key": "properties.startDate", "type": "iso-8601"}, "expiration_date": {"key": "properties.expirationDate", "type": "iso-8601"}, "end_date": {"key": "properties.endDate", "type": "iso-8601"}, "notification_date": {"key": "properties.notificationDate", "type": "iso-8601"}, "primary_key": {"key": "properties.primaryKey", "type": "str"}, "secondary_key": {"key": "properties.secondaryKey", "type": "str"}, "state_comment": {"key": "properties.stateComment", "type": "str"}, "allow_tracing": {"key": "properties.allowTracing", "type": "bool"}, } def __init__( self, *, owner_id: Optional[str] = None, scope: Optional[str] = None, display_name: Optional[str] = None, state: Optional[Union[str, "_models.SubscriptionState"]] = None, start_date: Optional[datetime.datetime] = None, expiration_date: Optional[datetime.datetime] = None, end_date: Optional[datetime.datetime] = None, notification_date: Optional[datetime.datetime] = None, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, state_comment: Optional[str] = None, allow_tracing: Optional[bool] = None, **kwargs ): """ :keyword owner_id: The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{userId} where {userId} is a user identifier. :paramtype owner_id: str :keyword scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :paramtype scope: str :keyword display_name: The name of the subscription, or null if the subscription has no name. :paramtype display_name: str :keyword state: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :paramtype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :keyword start_date: Subscription activation date. The setting is for audit purposes only and the subscription is not automatically activated. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype start_date: ~datetime.datetime :keyword expiration_date: Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype expiration_date: ~datetime.datetime :keyword end_date: Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is not automatically cancelled. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype end_date: ~datetime.datetime :keyword notification_date: Upcoming subscription expiration notification date. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype notification_date: ~datetime.datetime :keyword primary_key: Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype primary_key: str :keyword secondary_key: Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value. :paramtype secondary_key: str :keyword state_comment: Optional subscription comment added by an administrator when the state is changed to the 'rejected'. :paramtype state_comment: str :keyword allow_tracing: Determines whether tracing is enabled. :paramtype allow_tracing: bool """ super().__init__(**kwargs) self.owner_id = owner_id self.scope = scope self.display_name = display_name self.state = state self.created_date = None self.start_date = start_date self.expiration_date = expiration_date self.end_date = end_date self.notification_date = notification_date self.primary_key = primary_key self.secondary_key = secondary_key self.state_comment = state_comment self.allow_tracing = allow_tracing
[docs]class SubscriptionCreateParameters(_serialization.Model): """Subscription create details. :ivar owner_id: User (user id path) for whom subscription is being created in form /users/{userId}. :vartype owner_id: str :ivar scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :vartype scope: str :ivar display_name: Subscription name. :vartype display_name: str :ivar primary_key: Primary subscription key. If not specified during request key will be generated automatically. :vartype primary_key: str :ivar secondary_key: Secondary subscription key. If not specified during request key will be generated automatically. :vartype secondary_key: str :ivar state: Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :vartype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :ivar allow_tracing: Determines whether tracing can be enabled. :vartype allow_tracing: bool """ _validation = { "display_name": {"max_length": 100, "min_length": 1}, "primary_key": {"max_length": 256, "min_length": 1}, "secondary_key": {"max_length": 256, "min_length": 1}, } _attribute_map = { "owner_id": {"key": "properties.ownerId", "type": "str"}, "scope": {"key": "properties.scope", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, "primary_key": {"key": "properties.primaryKey", "type": "str"}, "secondary_key": {"key": "properties.secondaryKey", "type": "str"}, "state": {"key": "properties.state", "type": "str"}, "allow_tracing": {"key": "properties.allowTracing", "type": "bool"}, } def __init__( self, *, owner_id: Optional[str] = None, scope: Optional[str] = None, display_name: Optional[str] = None, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, state: Optional[Union[str, "_models.SubscriptionState"]] = None, allow_tracing: Optional[bool] = None, **kwargs ): """ :keyword owner_id: User (user id path) for whom subscription is being created in form /users/{userId}. :paramtype owner_id: str :keyword scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :paramtype scope: str :keyword display_name: Subscription name. :paramtype display_name: str :keyword primary_key: Primary subscription key. If not specified during request key will be generated automatically. :paramtype primary_key: str :keyword secondary_key: Secondary subscription key. If not specified during request key will be generated automatically. :paramtype secondary_key: str :keyword state: Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :paramtype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :keyword allow_tracing: Determines whether tracing can be enabled. :paramtype allow_tracing: bool """ super().__init__(**kwargs) self.owner_id = owner_id self.scope = scope self.display_name = display_name self.primary_key = primary_key self.secondary_key = secondary_key self.state = state self.allow_tracing = allow_tracing
[docs]class SubscriptionKeyParameterNamesContract(_serialization.Model): """Subscription key parameter names details. :ivar header: Subscription key header name. :vartype header: str :ivar query: Subscription key query string parameter name. :vartype query: str """ _attribute_map = { "header": {"key": "header", "type": "str"}, "query": {"key": "query", "type": "str"}, } def __init__(self, *, header: Optional[str] = None, query: Optional[str] = None, **kwargs): """ :keyword header: Subscription key header name. :paramtype header: str :keyword query: Subscription key query string parameter name. :paramtype query: str """ super().__init__(**kwargs) self.header = header self.query = query
[docs]class SubscriptionKeysContract(_serialization.Model): """Subscription keys. :ivar primary_key: Subscription primary key. :vartype primary_key: str :ivar secondary_key: Subscription secondary key. :vartype secondary_key: str """ _validation = { "primary_key": {"max_length": 256, "min_length": 1}, "secondary_key": {"max_length": 256, "min_length": 1}, } _attribute_map = { "primary_key": {"key": "primaryKey", "type": "str"}, "secondary_key": {"key": "secondaryKey", "type": "str"}, } def __init__(self, *, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, **kwargs): """ :keyword primary_key: Subscription primary key. :paramtype primary_key: str :keyword secondary_key: Subscription secondary key. :paramtype secondary_key: str """ super().__init__(**kwargs) self.primary_key = primary_key self.secondary_key = secondary_key
[docs]class SubscriptionsDelegationSettingsProperties(_serialization.Model): """Subscriptions delegation settings properties. :ivar enabled: Enable or disable delegation for subscriptions. :vartype enabled: bool """ _attribute_map = { "enabled": {"key": "enabled", "type": "bool"}, } def __init__(self, *, enabled: Optional[bool] = None, **kwargs): """ :keyword enabled: Enable or disable delegation for subscriptions. :paramtype enabled: bool """ super().__init__(**kwargs) self.enabled = enabled
[docs]class SubscriptionUpdateParameters(_serialization.Model): """Subscription update details. :ivar owner_id: User identifier path: /users/{userId}. :vartype owner_id: str :ivar scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :vartype scope: str :ivar expiration_date: Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype expiration_date: ~datetime.datetime :ivar display_name: Subscription name. :vartype display_name: str :ivar primary_key: Primary subscription key. :vartype primary_key: str :ivar secondary_key: Secondary subscription key. :vartype secondary_key: str :ivar state: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :vartype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :ivar state_comment: Comments describing subscription state change by the administrator when the state is changed to the 'rejected'. :vartype state_comment: str :ivar allow_tracing: Determines whether tracing can be enabled. :vartype allow_tracing: bool """ _validation = { "primary_key": {"max_length": 256, "min_length": 1}, "secondary_key": {"max_length": 256, "min_length": 1}, } _attribute_map = { "owner_id": {"key": "properties.ownerId", "type": "str"}, "scope": {"key": "properties.scope", "type": "str"}, "expiration_date": {"key": "properties.expirationDate", "type": "iso-8601"}, "display_name": {"key": "properties.displayName", "type": "str"}, "primary_key": {"key": "properties.primaryKey", "type": "str"}, "secondary_key": {"key": "properties.secondaryKey", "type": "str"}, "state": {"key": "properties.state", "type": "str"}, "state_comment": {"key": "properties.stateComment", "type": "str"}, "allow_tracing": {"key": "properties.allowTracing", "type": "bool"}, } def __init__( self, *, owner_id: Optional[str] = None, scope: Optional[str] = None, expiration_date: Optional[datetime.datetime] = None, display_name: Optional[str] = None, primary_key: Optional[str] = None, secondary_key: Optional[str] = None, state: Optional[Union[str, "_models.SubscriptionState"]] = None, state_comment: Optional[str] = None, allow_tracing: Optional[bool] = None, **kwargs ): """ :keyword owner_id: User identifier path: /users/{userId}. :paramtype owner_id: str :keyword scope: Scope like /products/{productId} or /apis or /apis/{apiId}. :paramtype scope: str :keyword expiration_date: Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the ``state`` property. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype expiration_date: ~datetime.datetime :keyword display_name: Subscription name. :paramtype display_name: str :keyword primary_key: Primary subscription key. :paramtype primary_key: str :keyword secondary_key: Secondary subscription key. :paramtype secondary_key: str :keyword state: Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated. Known values are: "suspended", "active", "expired", "submitted", "rejected", and "cancelled". :paramtype state: str or ~azure.mgmt.apimanagement.models.SubscriptionState :keyword state_comment: Comments describing subscription state change by the administrator when the state is changed to the 'rejected'. :paramtype state_comment: str :keyword allow_tracing: Determines whether tracing can be enabled. :paramtype allow_tracing: bool """ super().__init__(**kwargs) self.owner_id = owner_id self.scope = scope self.expiration_date = expiration_date self.display_name = display_name self.primary_key = primary_key self.secondary_key = secondary_key self.state = state self.state_comment = state_comment self.allow_tracing = allow_tracing
[docs]class SystemData(_serialization.Model): """Metadata pertaining to creation and last modification of the resource. :ivar created_by: The identity that created the resource. :vartype created_by: str :ivar created_by_type: The type of identity that created the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :vartype created_by_type: str or ~azure.mgmt.apimanagement.models.CreatedByType :ivar created_at: The timestamp of resource creation (UTC). :vartype created_at: ~datetime.datetime :ivar last_modified_by: The identity that last modified the resource. :vartype last_modified_by: str :ivar last_modified_by_type: The type of identity that last modified the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :vartype last_modified_by_type: str or ~azure.mgmt.apimanagement.models.CreatedByType :ivar last_modified_at: The timestamp of resource last modification (UTC). :vartype last_modified_at: ~datetime.datetime """ _attribute_map = { "created_by": {"key": "createdBy", "type": "str"}, "created_by_type": {"key": "createdByType", "type": "str"}, "created_at": {"key": "createdAt", "type": "iso-8601"}, "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, } def __init__( self, *, created_by: Optional[str] = None, created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, created_at: Optional[datetime.datetime] = None, last_modified_by: Optional[str] = None, last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, last_modified_at: Optional[datetime.datetime] = None, **kwargs ): """ :keyword created_by: The identity that created the resource. :paramtype created_by: str :keyword created_by_type: The type of identity that created the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :paramtype created_by_type: str or ~azure.mgmt.apimanagement.models.CreatedByType :keyword created_at: The timestamp of resource creation (UTC). :paramtype created_at: ~datetime.datetime :keyword last_modified_by: The identity that last modified the resource. :paramtype last_modified_by: str :keyword last_modified_by_type: The type of identity that last modified the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :paramtype last_modified_by_type: str or ~azure.mgmt.apimanagement.models.CreatedByType :keyword last_modified_at: The timestamp of resource last modification (UTC). :paramtype last_modified_at: ~datetime.datetime """ super().__init__(**kwargs) self.created_by = created_by self.created_by_type = created_by_type self.created_at = created_at self.last_modified_by = last_modified_by self.last_modified_by_type = last_modified_by_type self.last_modified_at = last_modified_at
[docs]class TagCollection(_serialization.Model): """Paged Tag list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.TagContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[TagContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.TagContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.TagContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class TagContract(Resource): """Tag Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar display_name: Tag name. :vartype display_name: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "display_name": {"max_length": 160, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, } def __init__(self, *, display_name: Optional[str] = None, **kwargs): """ :keyword display_name: Tag name. :paramtype display_name: str """ super().__init__(**kwargs) self.display_name = display_name
[docs]class TagCreateUpdateParameters(_serialization.Model): """Parameters supplied to Create/Update Tag operations. :ivar display_name: Tag name. :vartype display_name: str """ _validation = { "display_name": {"max_length": 160, "min_length": 1}, } _attribute_map = { "display_name": {"key": "properties.displayName", "type": "str"}, } def __init__(self, *, display_name: Optional[str] = None, **kwargs): """ :keyword display_name: Tag name. :paramtype display_name: str """ super().__init__(**kwargs) self.display_name = display_name
[docs]class TagDescriptionBaseProperties(_serialization.Model): """Parameters supplied to the Create TagDescription operation. :ivar description: Description of the Tag. :vartype description: str :ivar external_docs_url: Absolute URL of external resources describing the tag. :vartype external_docs_url: str :ivar external_docs_description: Description of the external resources describing the tag. :vartype external_docs_description: str """ _validation = { "external_docs_url": {"max_length": 2000}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "external_docs_url": {"key": "externalDocsUrl", "type": "str"}, "external_docs_description": {"key": "externalDocsDescription", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, external_docs_url: Optional[str] = None, external_docs_description: Optional[str] = None, **kwargs ): """ :keyword description: Description of the Tag. :paramtype description: str :keyword external_docs_url: Absolute URL of external resources describing the tag. :paramtype external_docs_url: str :keyword external_docs_description: Description of the external resources describing the tag. :paramtype external_docs_description: str """ super().__init__(**kwargs) self.description = description self.external_docs_url = external_docs_url self.external_docs_description = external_docs_description
[docs]class TagDescriptionCollection(_serialization.Model): """Paged TagDescription list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.TagDescriptionContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[TagDescriptionContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.TagDescriptionContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.TagDescriptionContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class TagDescriptionContract(Resource): """Contract details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar description: Description of the Tag. :vartype description: str :ivar external_docs_url: Absolute URL of external resources describing the tag. :vartype external_docs_url: str :ivar external_docs_description: Description of the external resources describing the tag. :vartype external_docs_description: str :ivar tag_id: Identifier of the tag in the form of /tags/{tagId}. :vartype tag_id: str :ivar display_name: Tag name. :vartype display_name: str """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "external_docs_url": {"max_length": 2000}, "display_name": {"max_length": 160, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "description": {"key": "properties.description", "type": "str"}, "external_docs_url": {"key": "properties.externalDocsUrl", "type": "str"}, "external_docs_description": {"key": "properties.externalDocsDescription", "type": "str"}, "tag_id": {"key": "properties.tagId", "type": "str"}, "display_name": {"key": "properties.displayName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, external_docs_url: Optional[str] = None, external_docs_description: Optional[str] = None, tag_id: Optional[str] = None, display_name: Optional[str] = None, **kwargs ): """ :keyword description: Description of the Tag. :paramtype description: str :keyword external_docs_url: Absolute URL of external resources describing the tag. :paramtype external_docs_url: str :keyword external_docs_description: Description of the external resources describing the tag. :paramtype external_docs_description: str :keyword tag_id: Identifier of the tag in the form of /tags/{tagId}. :paramtype tag_id: str :keyword display_name: Tag name. :paramtype display_name: str """ super().__init__(**kwargs) self.description = description self.external_docs_url = external_docs_url self.external_docs_description = external_docs_description self.tag_id = tag_id self.display_name = display_name
[docs]class TagDescriptionContractProperties(TagDescriptionBaseProperties): """TagDescription contract Properties. :ivar description: Description of the Tag. :vartype description: str :ivar external_docs_url: Absolute URL of external resources describing the tag. :vartype external_docs_url: str :ivar external_docs_description: Description of the external resources describing the tag. :vartype external_docs_description: str :ivar tag_id: Identifier of the tag in the form of /tags/{tagId}. :vartype tag_id: str :ivar display_name: Tag name. :vartype display_name: str """ _validation = { "external_docs_url": {"max_length": 2000}, "display_name": {"max_length": 160, "min_length": 1}, } _attribute_map = { "description": {"key": "description", "type": "str"}, "external_docs_url": {"key": "externalDocsUrl", "type": "str"}, "external_docs_description": {"key": "externalDocsDescription", "type": "str"}, "tag_id": {"key": "tagId", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, external_docs_url: Optional[str] = None, external_docs_description: Optional[str] = None, tag_id: Optional[str] = None, display_name: Optional[str] = None, **kwargs ): """ :keyword description: Description of the Tag. :paramtype description: str :keyword external_docs_url: Absolute URL of external resources describing the tag. :paramtype external_docs_url: str :keyword external_docs_description: Description of the external resources describing the tag. :paramtype external_docs_description: str :keyword tag_id: Identifier of the tag in the form of /tags/{tagId}. :paramtype tag_id: str :keyword display_name: Tag name. :paramtype display_name: str """ super().__init__( description=description, external_docs_url=external_docs_url, external_docs_description=external_docs_description, **kwargs ) self.tag_id = tag_id self.display_name = display_name
[docs]class TagDescriptionCreateParameters(_serialization.Model): """Parameters supplied to the Create TagDescription operation. :ivar description: Description of the Tag. :vartype description: str :ivar external_docs_url: Absolute URL of external resources describing the tag. :vartype external_docs_url: str :ivar external_docs_description: Description of the external resources describing the tag. :vartype external_docs_description: str """ _validation = { "external_docs_url": {"max_length": 2000}, } _attribute_map = { "description": {"key": "properties.description", "type": "str"}, "external_docs_url": {"key": "properties.externalDocsUrl", "type": "str"}, "external_docs_description": {"key": "properties.externalDocsDescription", "type": "str"}, } def __init__( self, *, description: Optional[str] = None, external_docs_url: Optional[str] = None, external_docs_description: Optional[str] = None, **kwargs ): """ :keyword description: Description of the Tag. :paramtype description: str :keyword external_docs_url: Absolute URL of external resources describing the tag. :paramtype external_docs_url: str :keyword external_docs_description: Description of the external resources describing the tag. :paramtype external_docs_description: str """ super().__init__(**kwargs) self.description = description self.external_docs_url = external_docs_url self.external_docs_description = external_docs_description
[docs]class TagResourceCollection(_serialization.Model): """Paged Tag list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.TagResourceContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[TagResourceContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.TagResourceContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.TagResourceContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class TagResourceContract(_serialization.Model): """TagResource contract properties. All required parameters must be populated in order to send to Azure. :ivar tag: Tag associated with the resource. Required. :vartype tag: ~azure.mgmt.apimanagement.models.TagResourceContractProperties :ivar api: API associated with the tag. :vartype api: ~azure.mgmt.apimanagement.models.ApiTagResourceContractProperties :ivar operation: Operation associated with the tag. :vartype operation: ~azure.mgmt.apimanagement.models.OperationTagResourceContractProperties :ivar product: Product associated with the tag. :vartype product: ~azure.mgmt.apimanagement.models.ProductTagResourceContractProperties """ _validation = { "tag": {"required": True}, } _attribute_map = { "tag": {"key": "tag", "type": "TagResourceContractProperties"}, "api": {"key": "api", "type": "ApiTagResourceContractProperties"}, "operation": {"key": "operation", "type": "OperationTagResourceContractProperties"}, "product": {"key": "product", "type": "ProductTagResourceContractProperties"}, } def __init__( self, *, tag: "_models.TagResourceContractProperties", api: Optional["_models.ApiTagResourceContractProperties"] = None, operation: Optional["_models.OperationTagResourceContractProperties"] = None, product: Optional["_models.ProductTagResourceContractProperties"] = None, **kwargs ): """ :keyword tag: Tag associated with the resource. Required. :paramtype tag: ~azure.mgmt.apimanagement.models.TagResourceContractProperties :keyword api: API associated with the tag. :paramtype api: ~azure.mgmt.apimanagement.models.ApiTagResourceContractProperties :keyword operation: Operation associated with the tag. :paramtype operation: ~azure.mgmt.apimanagement.models.OperationTagResourceContractProperties :keyword product: Product associated with the tag. :paramtype product: ~azure.mgmt.apimanagement.models.ProductTagResourceContractProperties """ super().__init__(**kwargs) self.tag = tag self.api = api self.operation = operation self.product = product
[docs]class TagResourceContractProperties(_serialization.Model): """Contract defining the Tag property in the Tag Resource Contract. :ivar id: Tag identifier. :vartype id: str :ivar name: Tag Name. :vartype name: str """ _validation = { "name": {"max_length": 160, "min_length": 1}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, } def __init__( self, *, id: Optional[str] = None, name: Optional[str] = None, **kwargs # pylint: disable=redefined-builtin ): """ :keyword id: Tag identifier. :paramtype id: str :keyword name: Tag Name. :paramtype name: str """ super().__init__(**kwargs) self.id = id self.name = name
[docs]class TenantConfigurationSyncStateContract(Resource): # pylint: disable=too-many-instance-attributes """Result of Tenant Configuration Sync State. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar branch: The name of Git branch. :vartype branch: str :ivar commit_id: The latest commit Id. :vartype commit_id: str :ivar is_export: value indicating if last sync was save (true) or deploy (false) operation. :vartype is_export: bool :ivar is_synced: value indicating if last synchronization was later than the configuration change. :vartype is_synced: bool :ivar is_git_enabled: value indicating whether Git configuration access is enabled. :vartype is_git_enabled: bool :ivar sync_date: The date of the latest synchronization. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype sync_date: ~datetime.datetime :ivar configuration_change_date: The date of the latest configuration change. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype configuration_change_date: ~datetime.datetime :ivar last_operation_id: Most recent tenant configuration operation identifier. :vartype last_operation_id: 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"}, "branch": {"key": "properties.branch", "type": "str"}, "commit_id": {"key": "properties.commitId", "type": "str"}, "is_export": {"key": "properties.isExport", "type": "bool"}, "is_synced": {"key": "properties.isSynced", "type": "bool"}, "is_git_enabled": {"key": "properties.isGitEnabled", "type": "bool"}, "sync_date": {"key": "properties.syncDate", "type": "iso-8601"}, "configuration_change_date": {"key": "properties.configurationChangeDate", "type": "iso-8601"}, "last_operation_id": {"key": "properties.lastOperationId", "type": "str"}, } def __init__( self, *, branch: Optional[str] = None, commit_id: Optional[str] = None, is_export: Optional[bool] = None, is_synced: Optional[bool] = None, is_git_enabled: Optional[bool] = None, sync_date: Optional[datetime.datetime] = None, configuration_change_date: Optional[datetime.datetime] = None, last_operation_id: Optional[str] = None, **kwargs ): """ :keyword branch: The name of Git branch. :paramtype branch: str :keyword commit_id: The latest commit Id. :paramtype commit_id: str :keyword is_export: value indicating if last sync was save (true) or deploy (false) operation. :paramtype is_export: bool :keyword is_synced: value indicating if last synchronization was later than the configuration change. :paramtype is_synced: bool :keyword is_git_enabled: value indicating whether Git configuration access is enabled. :paramtype is_git_enabled: bool :keyword sync_date: The date of the latest synchronization. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype sync_date: ~datetime.datetime :keyword configuration_change_date: The date of the latest configuration change. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype configuration_change_date: ~datetime.datetime :keyword last_operation_id: Most recent tenant configuration operation identifier. :paramtype last_operation_id: str """ super().__init__(**kwargs) self.branch = branch self.commit_id = commit_id self.is_export = is_export self.is_synced = is_synced self.is_git_enabled = is_git_enabled self.sync_date = sync_date self.configuration_change_date = configuration_change_date self.last_operation_id = last_operation_id
[docs]class TenantSettingsCollection(_serialization.Model): """Paged AccessInformation list representation. Variables are only populated by the server, and will be ignored when sending a request. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.TenantSettingsContract] :ivar next_link: Next page link if any. :vartype next_link: str """ _validation = { "value": {"readonly": True}, "next_link": {"readonly": True}, } _attribute_map = { "value": {"key": "value", "type": "[TenantSettingsContract]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.value = None self.next_link = None
[docs]class TenantSettingsContract(Resource): """Tenant Settings. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar settings: Tenant settings. :vartype settings: dict[str, 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"}, "settings": {"key": "properties.settings", "type": "{str}"}, } def __init__(self, *, settings: Optional[Dict[str, str]] = None, **kwargs): """ :keyword settings: Tenant settings. :paramtype settings: dict[str, str] """ super().__init__(**kwargs) self.settings = settings
[docs]class TermsOfServiceProperties(_serialization.Model): """Terms of service contract properties. :ivar text: A terms of service text. :vartype text: str :ivar enabled: Display terms of service during a sign-up process. :vartype enabled: bool :ivar consent_required: Ask user for consent to the terms of service. :vartype consent_required: bool """ _attribute_map = { "text": {"key": "text", "type": "str"}, "enabled": {"key": "enabled", "type": "bool"}, "consent_required": {"key": "consentRequired", "type": "bool"}, } def __init__( self, *, text: Optional[str] = None, enabled: Optional[bool] = None, consent_required: Optional[bool] = None, **kwargs ): """ :keyword text: A terms of service text. :paramtype text: str :keyword enabled: Display terms of service during a sign-up process. :paramtype enabled: bool :keyword consent_required: Ask user for consent to the terms of service. :paramtype consent_required: bool """ super().__init__(**kwargs) self.text = text self.enabled = enabled self.consent_required = consent_required
[docs]class TokenBodyParameterContract(_serialization.Model): """OAuth acquire token request body parameter (www-url-form-encoded). All required parameters must be populated in order to send to Azure. :ivar name: body parameter name. Required. :vartype name: str :ivar value: body parameter value. Required. :vartype value: str """ _validation = { "name": {"required": True}, "value": {"required": True}, } _attribute_map = { "name": {"key": "name", "type": "str"}, "value": {"key": "value", "type": "str"}, } def __init__(self, *, name: str, value: str, **kwargs): """ :keyword name: body parameter name. Required. :paramtype name: str :keyword value: body parameter value. Required. :paramtype value: str """ super().__init__(**kwargs) self.name = name self.value = value
[docs]class UserCollection(_serialization.Model): """Paged Users list representation. :ivar value: Page values. :vartype value: list[~azure.mgmt.apimanagement.models.UserContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[UserContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.UserContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: Page values. :paramtype value: list[~azure.mgmt.apimanagement.models.UserContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class UserContract(Resource): # pylint: disable=too-many-instance-attributes """User details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. :vartype id: str :ivar name: The name of the resource. :vartype name: str :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". :vartype type: str :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar first_name: First name. :vartype first_name: str :ivar last_name: Last name. :vartype last_name: str :ivar email: Email address. :vartype email: str :ivar registration_date: Date of user registration. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype registration_date: ~datetime.datetime :ivar groups: Collection of groups user is part of. :vartype groups: list[~azure.mgmt.apimanagement.models.GroupContractProperties] """ _validation = { "id": {"readonly": True}, "name": {"readonly": True}, "type": {"readonly": True}, "groups": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, "type": {"key": "type", "type": "str"}, "state": {"key": "properties.state", "type": "str"}, "note": {"key": "properties.note", "type": "str"}, "identities": {"key": "properties.identities", "type": "[UserIdentityContract]"}, "first_name": {"key": "properties.firstName", "type": "str"}, "last_name": {"key": "properties.lastName", "type": "str"}, "email": {"key": "properties.email", "type": "str"}, "registration_date": {"key": "properties.registrationDate", "type": "iso-8601"}, "groups": {"key": "properties.groups", "type": "[GroupContractProperties]"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, first_name: Optional[str] = None, last_name: Optional[str] = None, email: Optional[str] = None, registration_date: Optional[datetime.datetime] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword first_name: First name. :paramtype first_name: str :keyword last_name: Last name. :paramtype last_name: str :keyword email: Email address. :paramtype email: str :keyword registration_date: Date of user registration. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype registration_date: ~datetime.datetime """ super().__init__(**kwargs) self.state = state self.note = note self.identities = identities self.first_name = first_name self.last_name = last_name self.email = email self.registration_date = registration_date self.groups = None
[docs]class UserEntityBaseParameters(_serialization.Model): """User Entity Base Parameters set. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] """ _attribute_map = { "state": {"key": "state", "type": "str"}, "note": {"key": "note", "type": "str"}, "identities": {"key": "identities", "type": "[UserIdentityContract]"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] """ super().__init__(**kwargs) self.state = state self.note = note self.identities = identities
[docs]class UserContractProperties(UserEntityBaseParameters): """User profile. Variables are only populated by the server, and will be ignored when sending a request. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar first_name: First name. :vartype first_name: str :ivar last_name: Last name. :vartype last_name: str :ivar email: Email address. :vartype email: str :ivar registration_date: Date of user registration. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype registration_date: ~datetime.datetime :ivar groups: Collection of groups user is part of. :vartype groups: list[~azure.mgmt.apimanagement.models.GroupContractProperties] """ _validation = { "groups": {"readonly": True}, } _attribute_map = { "state": {"key": "state", "type": "str"}, "note": {"key": "note", "type": "str"}, "identities": {"key": "identities", "type": "[UserIdentityContract]"}, "first_name": {"key": "firstName", "type": "str"}, "last_name": {"key": "lastName", "type": "str"}, "email": {"key": "email", "type": "str"}, "registration_date": {"key": "registrationDate", "type": "iso-8601"}, "groups": {"key": "groups", "type": "[GroupContractProperties]"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, first_name: Optional[str] = None, last_name: Optional[str] = None, email: Optional[str] = None, registration_date: Optional[datetime.datetime] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword first_name: First name. :paramtype first_name: str :keyword last_name: Last name. :paramtype last_name: str :keyword email: Email address. :paramtype email: str :keyword registration_date: Date of user registration. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype registration_date: ~datetime.datetime """ super().__init__(state=state, note=note, identities=identities, **kwargs) self.first_name = first_name self.last_name = last_name self.email = email self.registration_date = registration_date self.groups = None
[docs]class UserCreateParameterProperties(UserEntityBaseParameters): """Parameters supplied to the Create User operation. All required parameters must be populated in order to send to Azure. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar email: Email address. Must not be empty and must be unique within the service instance. Required. :vartype email: str :ivar first_name: First name. Required. :vartype first_name: str :ivar last_name: Last name. Required. :vartype last_name: str :ivar password: User Password. If no value is provided, a default password is generated. :vartype password: str :ivar app_type: Determines the type of application which send the create user request. Default is legacy portal. Known values are: "portal" and "developerPortal". :vartype app_type: str or ~azure.mgmt.apimanagement.models.AppType :ivar confirmation: Determines the type of confirmation e-mail that will be sent to the newly created user. Known values are: "signup" and "invite". :vartype confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation """ _validation = { "email": {"required": True, "max_length": 254, "min_length": 1}, "first_name": {"required": True, "max_length": 100, "min_length": 1}, "last_name": {"required": True, "max_length": 100, "min_length": 1}, } _attribute_map = { "state": {"key": "state", "type": "str"}, "note": {"key": "note", "type": "str"}, "identities": {"key": "identities", "type": "[UserIdentityContract]"}, "email": {"key": "email", "type": "str"}, "first_name": {"key": "firstName", "type": "str"}, "last_name": {"key": "lastName", "type": "str"}, "password": {"key": "password", "type": "str"}, "app_type": {"key": "appType", "type": "str"}, "confirmation": {"key": "confirmation", "type": "str"}, } def __init__( self, *, email: str, first_name: str, last_name: str, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, password: Optional[str] = None, app_type: Optional[Union[str, "_models.AppType"]] = None, confirmation: Optional[Union[str, "_models.Confirmation"]] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword email: Email address. Must not be empty and must be unique within the service instance. Required. :paramtype email: str :keyword first_name: First name. Required. :paramtype first_name: str :keyword last_name: Last name. Required. :paramtype last_name: str :keyword password: User Password. If no value is provided, a default password is generated. :paramtype password: str :keyword app_type: Determines the type of application which send the create user request. Default is legacy portal. Known values are: "portal" and "developerPortal". :paramtype app_type: str or ~azure.mgmt.apimanagement.models.AppType :keyword confirmation: Determines the type of confirmation e-mail that will be sent to the newly created user. Known values are: "signup" and "invite". :paramtype confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation """ super().__init__(state=state, note=note, identities=identities, **kwargs) self.email = email self.first_name = first_name self.last_name = last_name self.password = password self.app_type = app_type self.confirmation = confirmation
[docs]class UserCreateParameters(_serialization.Model): """User create details. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar email: Email address. Must not be empty and must be unique within the service instance. :vartype email: str :ivar first_name: First name. :vartype first_name: str :ivar last_name: Last name. :vartype last_name: str :ivar password: User Password. If no value is provided, a default password is generated. :vartype password: str :ivar app_type: Determines the type of application which send the create user request. Default is legacy portal. Known values are: "portal" and "developerPortal". :vartype app_type: str or ~azure.mgmt.apimanagement.models.AppType :ivar confirmation: Determines the type of confirmation e-mail that will be sent to the newly created user. Known values are: "signup" and "invite". :vartype confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation """ _validation = { "email": {"max_length": 254, "min_length": 1}, "first_name": {"max_length": 100, "min_length": 1}, "last_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "state": {"key": "properties.state", "type": "str"}, "note": {"key": "properties.note", "type": "str"}, "identities": {"key": "properties.identities", "type": "[UserIdentityContract]"}, "email": {"key": "properties.email", "type": "str"}, "first_name": {"key": "properties.firstName", "type": "str"}, "last_name": {"key": "properties.lastName", "type": "str"}, "password": {"key": "properties.password", "type": "str"}, "app_type": {"key": "properties.appType", "type": "str"}, "confirmation": {"key": "properties.confirmation", "type": "str"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, email: Optional[str] = None, first_name: Optional[str] = None, last_name: Optional[str] = None, password: Optional[str] = None, app_type: Optional[Union[str, "_models.AppType"]] = None, confirmation: Optional[Union[str, "_models.Confirmation"]] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword email: Email address. Must not be empty and must be unique within the service instance. :paramtype email: str :keyword first_name: First name. :paramtype first_name: str :keyword last_name: Last name. :paramtype last_name: str :keyword password: User Password. If no value is provided, a default password is generated. :paramtype password: str :keyword app_type: Determines the type of application which send the create user request. Default is legacy portal. Known values are: "portal" and "developerPortal". :paramtype app_type: str or ~azure.mgmt.apimanagement.models.AppType :keyword confirmation: Determines the type of confirmation e-mail that will be sent to the newly created user. Known values are: "signup" and "invite". :paramtype confirmation: str or ~azure.mgmt.apimanagement.models.Confirmation """ super().__init__(**kwargs) self.state = state self.note = note self.identities = identities self.email = email self.first_name = first_name self.last_name = last_name self.password = password self.app_type = app_type self.confirmation = confirmation
[docs]class UserIdentityCollection(_serialization.Model): """List of Users Identity list representation. :ivar value: User Identity values. :vartype value: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar count: Total record count number across all pages. :vartype count: int :ivar next_link: Next page link if any. :vartype next_link: str """ _attribute_map = { "value": {"key": "value", "type": "[UserIdentityContract]"}, "count": {"key": "count", "type": "int"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, value: Optional[List["_models.UserIdentityContract"]] = None, count: Optional[int] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword value: User Identity values. :paramtype value: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword count: Total record count number across all pages. :paramtype count: int :keyword next_link: Next page link if any. :paramtype next_link: str """ super().__init__(**kwargs) self.value = value self.count = count self.next_link = next_link
[docs]class UserIdentityContract(_serialization.Model): """User identity details. :ivar provider: Identity provider name. :vartype provider: str :ivar id: Identifier value within provider. :vartype id: str """ _attribute_map = { "provider": {"key": "provider", "type": "str"}, "id": {"key": "id", "type": "str"}, } def __init__( self, *, provider: Optional[str] = None, id: Optional[str] = None, **kwargs # pylint: disable=redefined-builtin ): """ :keyword provider: Identity provider name. :paramtype provider: str :keyword id: Identifier value within provider. :paramtype id: str """ super().__init__(**kwargs) self.provider = provider self.id = id
[docs]class UserIdentityProperties(_serialization.Model): """UserIdentityProperties. :ivar principal_id: The principal id of user assigned identity. :vartype principal_id: str :ivar client_id: The client id of user assigned identity. :vartype client_id: str """ _attribute_map = { "principal_id": {"key": "principalId", "type": "str"}, "client_id": {"key": "clientId", "type": "str"}, } def __init__(self, *, principal_id: Optional[str] = None, client_id: Optional[str] = None, **kwargs): """ :keyword principal_id: The principal id of user assigned identity. :paramtype principal_id: str :keyword client_id: The client id of user assigned identity. :paramtype client_id: str """ super().__init__(**kwargs) self.principal_id = principal_id self.client_id = client_id
[docs]class UserTokenParameters(_serialization.Model): """Get User Token parameters. :ivar key_type: The Key to be used to generate token for user. Known values are: "primary" and "secondary". :vartype key_type: str or ~azure.mgmt.apimanagement.models.KeyType :ivar expiry: The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :vartype expiry: ~datetime.datetime """ _attribute_map = { "key_type": {"key": "properties.keyType", "type": "str"}, "expiry": {"key": "properties.expiry", "type": "iso-8601"}, } def __init__( self, *, key_type: Optional[Union[str, "_models.KeyType"]] = None, expiry: Optional[datetime.datetime] = None, **kwargs ): """ :keyword key_type: The Key to be used to generate token for user. Known values are: "primary" and "secondary". :paramtype key_type: str or ~azure.mgmt.apimanagement.models.KeyType :keyword expiry: The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: ``yyyy-MM-ddTHH:mm:ssZ`` as specified by the ISO 8601 standard. :paramtype expiry: ~datetime.datetime """ super().__init__(**kwargs) self.key_type = key_type self.expiry = expiry
[docs]class UserTokenResult(_serialization.Model): """Get User Token response details. :ivar value: Shared Access Authorization token for the User. :vartype value: str """ _attribute_map = { "value": {"key": "value", "type": "str"}, } def __init__(self, *, value: Optional[str] = None, **kwargs): """ :keyword value: Shared Access Authorization token for the User. :paramtype value: str """ super().__init__(**kwargs) self.value = value
[docs]class UserUpdateParameters(_serialization.Model): """User update parameters. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar email: Email address. Must not be empty and must be unique within the service instance. :vartype email: str :ivar password: User Password. :vartype password: str :ivar first_name: First name. :vartype first_name: str :ivar last_name: Last name. :vartype last_name: str """ _validation = { "email": {"max_length": 254, "min_length": 1}, "first_name": {"max_length": 100, "min_length": 1}, "last_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "state": {"key": "properties.state", "type": "str"}, "note": {"key": "properties.note", "type": "str"}, "identities": {"key": "properties.identities", "type": "[UserIdentityContract]"}, "email": {"key": "properties.email", "type": "str"}, "password": {"key": "properties.password", "type": "str"}, "first_name": {"key": "properties.firstName", "type": "str"}, "last_name": {"key": "properties.lastName", "type": "str"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, email: Optional[str] = None, password: Optional[str] = None, first_name: Optional[str] = None, last_name: Optional[str] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword email: Email address. Must not be empty and must be unique within the service instance. :paramtype email: str :keyword password: User Password. :paramtype password: str :keyword first_name: First name. :paramtype first_name: str :keyword last_name: Last name. :paramtype last_name: str """ super().__init__(**kwargs) self.state = state self.note = note self.identities = identities self.email = email self.password = password self.first_name = first_name self.last_name = last_name
[docs]class UserUpdateParametersProperties(UserEntityBaseParameters): """Parameters supplied to the Update User operation. :ivar state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :vartype state: str or ~azure.mgmt.apimanagement.models.UserState :ivar note: Optional note about a user set by the administrator. :vartype note: str :ivar identities: Collection of user identities. :vartype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :ivar email: Email address. Must not be empty and must be unique within the service instance. :vartype email: str :ivar password: User Password. :vartype password: str :ivar first_name: First name. :vartype first_name: str :ivar last_name: Last name. :vartype last_name: str """ _validation = { "email": {"max_length": 254, "min_length": 1}, "first_name": {"max_length": 100, "min_length": 1}, "last_name": {"max_length": 100, "min_length": 1}, } _attribute_map = { "state": {"key": "state", "type": "str"}, "note": {"key": "note", "type": "str"}, "identities": {"key": "identities", "type": "[UserIdentityContract]"}, "email": {"key": "email", "type": "str"}, "password": {"key": "password", "type": "str"}, "first_name": {"key": "firstName", "type": "str"}, "last_name": {"key": "lastName", "type": "str"}, } def __init__( self, *, state: Union[str, "_models.UserState"] = "active", note: Optional[str] = None, identities: Optional[List["_models.UserIdentityContract"]] = None, email: Optional[str] = None, password: Optional[str] = None, first_name: Optional[str] = None, last_name: Optional[str] = None, **kwargs ): """ :keyword state: Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active. Known values are: "active", "blocked", "pending", and "deleted". :paramtype state: str or ~azure.mgmt.apimanagement.models.UserState :keyword note: Optional note about a user set by the administrator. :paramtype note: str :keyword identities: Collection of user identities. :paramtype identities: list[~azure.mgmt.apimanagement.models.UserIdentityContract] :keyword email: Email address. Must not be empty and must be unique within the service instance. :paramtype email: str :keyword password: User Password. :paramtype password: str :keyword first_name: First name. :paramtype first_name: str :keyword last_name: Last name. :paramtype last_name: str """ super().__init__(state=state, note=note, identities=identities, **kwargs) self.email = email self.password = password self.first_name = first_name self.last_name = last_name
[docs]class VirtualNetworkConfiguration(_serialization.Model): """Configuration of a virtual network to which API Management service is deployed. Variables are only populated by the server, and will be ignored when sending a request. :ivar vnetid: The virtual network ID. This is typically a GUID. Expect a null GUID by default. :vartype vnetid: str :ivar subnetname: The name of the subnet. :vartype subnetname: str :ivar subnet_resource_id: The full resource ID of a subnet in a virtual network to deploy the API Management service in. :vartype subnet_resource_id: str """ _validation = { "vnetid": {"readonly": True}, "subnetname": {"readonly": True}, "subnet_resource_id": { "pattern": r"^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$" }, } _attribute_map = { "vnetid": {"key": "vnetid", "type": "str"}, "subnetname": {"key": "subnetname", "type": "str"}, "subnet_resource_id": {"key": "subnetResourceId", "type": "str"}, } def __init__(self, *, subnet_resource_id: Optional[str] = None, **kwargs): """ :keyword subnet_resource_id: The full resource ID of a subnet in a virtual network to deploy the API Management service in. :paramtype subnet_resource_id: str """ super().__init__(**kwargs) self.vnetid = None self.subnetname = None self.subnet_resource_id = subnet_resource_id
[docs]class X509CertificateName(_serialization.Model): """Properties of server X509Names. :ivar name: Common Name of the Certificate. :vartype name: str :ivar issuer_certificate_thumbprint: Thumbprint for the Issuer of the Certificate. :vartype issuer_certificate_thumbprint: str """ _attribute_map = { "name": {"key": "name", "type": "str"}, "issuer_certificate_thumbprint": {"key": "issuerCertificateThumbprint", "type": "str"}, } def __init__(self, *, name: Optional[str] = None, issuer_certificate_thumbprint: Optional[str] = None, **kwargs): """ :keyword name: Common Name of the Certificate. :paramtype name: str :keyword issuer_certificate_thumbprint: Thumbprint for the Issuer of the Certificate. :paramtype issuer_certificate_thumbprint: str """ super().__init__(**kwargs) self.name = name self.issuer_certificate_thumbprint = issuer_certificate_thumbprint