Class ApiManagementServiceProperties

java.lang.Object
com.azure.resourcemanager.apimanagement.models.ApiManagementServiceBaseProperties
com.azure.resourcemanager.apimanagement.fluent.models.ApiManagementServiceProperties
All Implemented Interfaces:
com.azure.json.JsonSerializable<ApiManagementServiceBaseProperties>

public final class ApiManagementServiceProperties extends ApiManagementServiceBaseProperties
Properties of an API Management service resource description.
  • Constructor Details

    • ApiManagementServiceProperties

      public ApiManagementServiceProperties()
      Creates an instance of ApiManagementServiceProperties class.
  • Method Details

    • publisherEmail

      public String publisherEmail()
      Get the publisherEmail property: Publisher email.
      Returns:
      the publisherEmail value.
    • withPublisherEmail

      public ApiManagementServiceProperties withPublisherEmail(String publisherEmail)
      Set the publisherEmail property: Publisher email.
      Parameters:
      publisherEmail - the publisherEmail value to set.
      Returns:
      the ApiManagementServiceProperties object itself.
    • publisherName

      public String publisherName()
      Get the publisherName property: Publisher name.
      Returns:
      the publisherName value.
    • withPublisherName

      public ApiManagementServiceProperties withPublisherName(String publisherName)
      Set the publisherName property: Publisher name.
      Parameters:
      publisherName - the publisherName value to set.
      Returns:
      the ApiManagementServiceProperties object itself.
    • platformVersion

      public PlatformVersion platformVersion()
      Get the platformVersion property: Compute Platform Version running the service in this location.
      Overrides:
      platformVersion in class ApiManagementServiceBaseProperties
      Returns:
      the platformVersion value.
    • outboundPublicIpAddresses

      public List<String> outboundPublicIpAddresses()
      Get the outboundPublicIpAddresses property: Outbound public IPV4 address prefixes associated with NAT Gateway deployed service. Available only for Premium SKU on stv2 platform.
      Overrides:
      outboundPublicIpAddresses in class ApiManagementServiceBaseProperties
      Returns:
      the outboundPublicIpAddresses value.
    • privateIpAddresses

      public List<String> privateIpAddresses()
      Get the privateIpAddresses property: 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.
      Overrides:
      privateIpAddresses in class ApiManagementServiceBaseProperties
      Returns:
      the privateIpAddresses value.
    • publicIpAddresses

      public List<String> publicIpAddresses()
      Get the publicIpAddresses property: Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU.
      Overrides:
      publicIpAddresses in class ApiManagementServiceBaseProperties
      Returns:
      the publicIpAddresses value.
    • developerPortalUrl

      public String developerPortalUrl()
      Get the developerPortalUrl property: DEveloper Portal endpoint URL of the API Management service.
      Overrides:
      developerPortalUrl in class ApiManagementServiceBaseProperties
      Returns:
      the developerPortalUrl value.
    • scmUrl

      public String scmUrl()
      Get the scmUrl property: SCM endpoint URL of the API Management service.
      Overrides:
      scmUrl in class ApiManagementServiceBaseProperties
      Returns:
      the scmUrl value.
    • managementApiUrl

      public String managementApiUrl()
      Get the managementApiUrl property: Management API endpoint URL of the API Management service.
      Overrides:
      managementApiUrl in class ApiManagementServiceBaseProperties
      Returns:
      the managementApiUrl value.
    • portalUrl

      public String portalUrl()
      Get the portalUrl property: Publisher portal endpoint Url of the API Management service.
      Overrides:
      portalUrl in class ApiManagementServiceBaseProperties
      Returns:
      the portalUrl value.
    • gatewayRegionalUrl

      public String gatewayRegionalUrl()
      Get the gatewayRegionalUrl property: Gateway URL of the API Management service in the Default Region.
      Overrides:
      gatewayRegionalUrl in class ApiManagementServiceBaseProperties
      Returns:
      the gatewayRegionalUrl value.
    • gatewayUrl

      public String gatewayUrl()
      Get the gatewayUrl property: Gateway URL of the API Management service.
      Overrides:
      gatewayUrl in class ApiManagementServiceBaseProperties
      Returns:
      the gatewayUrl value.
    • createdAtUtc

      public OffsetDateTime createdAtUtc()
      Get the createdAtUtc property: 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.
      Overrides:
      createdAtUtc in class ApiManagementServiceBaseProperties
      Returns:
      the createdAtUtc value.
    • targetProvisioningState

      public String targetProvisioningState()
      Get the targetProvisioningState property: The provisioning state of the API Management service, which is targeted by the long running operation started on the service.
      Overrides:
      targetProvisioningState in class ApiManagementServiceBaseProperties
      Returns:
      the targetProvisioningState value.
    • provisioningState

      public String provisioningState()
      Get the provisioningState property: 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.
      Overrides:
      provisioningState in class ApiManagementServiceBaseProperties
      Returns:
      the provisioningState value.
    • withNotificationSenderEmail

      public ApiManagementServiceProperties withNotificationSenderEmail(String notificationSenderEmail)
      Set the notificationSenderEmail property: Email address from which the notification will be sent.
      Overrides:
      withNotificationSenderEmail in class ApiManagementServiceBaseProperties
      Parameters:
      notificationSenderEmail - the notificationSenderEmail value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withHostnameConfigurations

      public ApiManagementServiceProperties withHostnameConfigurations(List<HostnameConfiguration> hostnameConfigurations)
      Set the hostnameConfigurations property: Custom hostname configuration of the API Management service.
      Overrides:
      withHostnameConfigurations in class ApiManagementServiceBaseProperties
      Parameters:
      hostnameConfigurations - the hostnameConfigurations value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withPublicIpAddressId

      public ApiManagementServiceProperties withPublicIpAddressId(String publicIpAddressId)
      Set the publicIpAddressId property: 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.
      Overrides:
      withPublicIpAddressId in class ApiManagementServiceBaseProperties
      Parameters:
      publicIpAddressId - the publicIpAddressId value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withPublicNetworkAccess

      public ApiManagementServiceProperties withPublicNetworkAccess(PublicNetworkAccess publicNetworkAccess)
      Set the publicNetworkAccess property: 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'.
      Overrides:
      withPublicNetworkAccess in class ApiManagementServiceBaseProperties
      Parameters:
      publicNetworkAccess - the publicNetworkAccess value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withConfigurationApi

      public ApiManagementServiceProperties withConfigurationApi(ConfigurationApi configurationApi)
      Set the configurationApi property: Configuration API configuration of the API Management service.
      Overrides:
      withConfigurationApi in class ApiManagementServiceBaseProperties
      Parameters:
      configurationApi - the configurationApi value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withVirtualNetworkConfiguration

      public ApiManagementServiceProperties withVirtualNetworkConfiguration(VirtualNetworkConfiguration virtualNetworkConfiguration)
      Set the virtualNetworkConfiguration property: Virtual network configuration of the API Management service.
      Overrides:
      withVirtualNetworkConfiguration in class ApiManagementServiceBaseProperties
      Parameters:
      virtualNetworkConfiguration - the virtualNetworkConfiguration value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withAdditionalLocations

      public ApiManagementServiceProperties withAdditionalLocations(List<AdditionalLocation> additionalLocations)
      Set the additionalLocations property: Additional datacenter locations of the API Management service.
      Overrides:
      withAdditionalLocations in class ApiManagementServiceBaseProperties
      Parameters:
      additionalLocations - the additionalLocations value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withCustomProperties

      public ApiManagementServiceProperties withCustomProperties(Map<String,String> customProperties)
      Set the customProperties property: 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 1, 2018 and `False` otherwise. Http2 setting's default value is `False`.</br></br>You can disable any of the following 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.</br> Note: The following ciphers can't be disabled since they are required by internal platform components: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,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.
      Overrides:
      withCustomProperties in class ApiManagementServiceBaseProperties
      Parameters:
      customProperties - the customProperties value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withCertificates

      public ApiManagementServiceProperties withCertificates(List<CertificateConfiguration> certificates)
      Set the certificates property: List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10.
      Overrides:
      withCertificates in class ApiManagementServiceBaseProperties
      Parameters:
      certificates - the certificates value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withEnableClientCertificate

      public ApiManagementServiceProperties withEnableClientCertificate(Boolean enableClientCertificate)
      Set the enableClientCertificate property: 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.
      Overrides:
      withEnableClientCertificate in class ApiManagementServiceBaseProperties
      Parameters:
      enableClientCertificate - the enableClientCertificate value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withNatGatewayState

      public ApiManagementServiceProperties withNatGatewayState(NatGatewayState natGatewayState)
      Set the natGatewayState property: Property can be used to enable NAT Gateway for this API Management service.
      Overrides:
      withNatGatewayState in class ApiManagementServiceBaseProperties
      Parameters:
      natGatewayState - the natGatewayState value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withDisableGateway

      public ApiManagementServiceProperties withDisableGateway(Boolean disableGateway)
      Set the disableGateway property: Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.
      Overrides:
      withDisableGateway in class ApiManagementServiceBaseProperties
      Parameters:
      disableGateway - the disableGateway value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withVirtualNetworkType

      public ApiManagementServiceProperties withVirtualNetworkType(VirtualNetworkType virtualNetworkType)
      Set the virtualNetworkType property: 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.
      Overrides:
      withVirtualNetworkType in class ApiManagementServiceBaseProperties
      Parameters:
      virtualNetworkType - the virtualNetworkType value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withApiVersionConstraint

      public ApiManagementServiceProperties withApiVersionConstraint(ApiVersionConstraint apiVersionConstraint)
      Set the apiVersionConstraint property: Control Plane Apis version constraint for the API Management service.
      Overrides:
      withApiVersionConstraint in class ApiManagementServiceBaseProperties
      Parameters:
      apiVersionConstraint - the apiVersionConstraint value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withRestore

      public ApiManagementServiceProperties withRestore(Boolean restore)
      Set the restore property: 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.
      Overrides:
      withRestore in class ApiManagementServiceBaseProperties
      Parameters:
      restore - the restore value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withPrivateEndpointConnections

      public ApiManagementServiceProperties withPrivateEndpointConnections(List<RemotePrivateEndpointConnectionWrapper> privateEndpointConnections)
      Set the privateEndpointConnections property: List of Private Endpoint Connections of this service.
      Overrides:
      withPrivateEndpointConnections in class ApiManagementServiceBaseProperties
      Parameters:
      privateEndpointConnections - the privateEndpointConnections value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withLegacyPortalStatus

      public ApiManagementServiceProperties withLegacyPortalStatus(LegacyPortalStatus legacyPortalStatus)
      Set the legacyPortalStatus property: Status of legacy portal in the API Management service.
      Overrides:
      withLegacyPortalStatus in class ApiManagementServiceBaseProperties
      Parameters:
      legacyPortalStatus - the legacyPortalStatus value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • withDeveloperPortalStatus

      public ApiManagementServiceProperties withDeveloperPortalStatus(DeveloperPortalStatus developerPortalStatus)
      Set the developerPortalStatus property: Status of developer portal in this API Management service.
      Overrides:
      withDeveloperPortalStatus in class ApiManagementServiceBaseProperties
      Parameters:
      developerPortalStatus - the developerPortalStatus value to set.
      Returns:
      the ApiManagementServiceBaseProperties object itself.
    • validate

      public void validate()
      Validates the instance.
      Overrides:
      validate in class ApiManagementServiceBaseProperties
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<ApiManagementServiceBaseProperties>
      Overrides:
      toJson in class ApiManagementServiceBaseProperties
      Throws:
      IOException
    • fromJson

      public static ApiManagementServiceProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of ApiManagementServiceProperties from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of ApiManagementServiceProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IllegalStateException - If the deserialized JSON object was missing any required properties.
      IOException - If an error occurs while reading the ApiManagementServiceProperties.