Api Management Service Args
A single API Management service resource in List or Get response. API Version: 2020-12-01.
Example Usage
ApiManagementCreateMultiRegionServiceWithCustomHostname
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
AdditionalLocations = new[]
{
new AzureNative.ApiManagement.Inputs.AdditionalLocationArgs
{
DisableGateway = true,
Location = "East US",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Premium",
},
},
},
ApiVersionConstraint = new AzureNative.ApiManagement.Inputs.ApiVersionConstraintArgs
{
MinApiVersion = "2019-01-01",
},
HostnameConfigurations = new[]
{
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
CertificatePassword = "Password",
DefaultSslBinding = true,
EncodedCertificate = "****** Base 64 Encoded Certificate ************",
HostName = "gateway1.msitesting.net",
Type = "Proxy",
},
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
CertificatePassword = "Password",
EncodedCertificate = "****** Base 64 Encoded Certificate ************",
HostName = "mgmt.msitesting.net",
Type = "Management",
},
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
CertificatePassword = "Password",
EncodedCertificate = "****** Base 64 Encoded Certificate ************",
HostName = "portal1.msitesting.net",
Type = "Portal",
},
},
Location = "West US",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Premium",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
VirtualNetworkType = "None",
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
AdditionalLocations: []apimanagement.AdditionalLocationArgs{
{
DisableGateway: pulumi.Bool(true),
Location: pulumi.String("East US"),
Sku: {
Capacity: pulumi.Int(1),
Name: pulumi.String("Premium"),
},
},
},
ApiVersionConstraint: &apimanagement.ApiVersionConstraintArgs{
MinApiVersion: pulumi.String("2019-01-01"),
},
HostnameConfigurations: []apimanagement.HostnameConfigurationArgs{
{
CertificatePassword: pulumi.String("Password"),
DefaultSslBinding: pulumi.Bool(true),
EncodedCertificate: pulumi.String("****** Base 64 Encoded Certificate ************"),
HostName: pulumi.String("gateway1.msitesting.net"),
Type: pulumi.String("Proxy"),
},
{
CertificatePassword: pulumi.String("Password"),
EncodedCertificate: pulumi.String("****** Base 64 Encoded Certificate ************"),
HostName: pulumi.String("mgmt.msitesting.net"),
Type: pulumi.String("Management"),
},
{
CertificatePassword: pulumi.String("Password"),
EncodedCertificate: pulumi.String("****** Base 64 Encoded Certificate ************"),
HostName: pulumi.String("portal1.msitesting.net"),
Type: pulumi.String("Portal"),
},
},
Location: pulumi.String("West US"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Premium"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
VirtualNetworkType: pulumi.String("None"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.additionalLocations(Map.ofEntries(
Map.entry("disableGateway", true),
Map.entry("location", "East US"),
Map.entry("sku", Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Premium")
))
))
.apiVersionConstraint(Map.of("minApiVersion", "2019-01-01"))
.hostnameConfigurations(
Map.ofEntries(
Map.entry("certificatePassword", "Password"),
Map.entry("defaultSslBinding", true),
Map.entry("encodedCertificate", "****** Base 64 Encoded Certificate ************"),
Map.entry("hostName", "gateway1.msitesting.net"),
Map.entry("type", "Proxy")
),
Map.ofEntries(
Map.entry("certificatePassword", "Password"),
Map.entry("encodedCertificate", "****** Base 64 Encoded Certificate ************"),
Map.entry("hostName", "mgmt.msitesting.net"),
Map.entry("type", "Management")
),
Map.ofEntries(
Map.entry("certificatePassword", "Password"),
Map.entry("encodedCertificate", "****** Base 64 Encoded Certificate ************"),
Map.entry("hostName", "portal1.msitesting.net"),
Map.entry("type", "Portal")
))
.location("West US")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Premium")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.virtualNetworkType("None")
.build());
}
}
ApiManagementCreateService
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Location = "South Central US",
PublisherEmail = "foo@contoso.com",
PublisherName = "foo",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Developer",
},
Tags =
{
{ "Name", "Contoso" },
{ "Test", "User" },
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Location: pulumi.String("South Central US"),
PublisherEmail: pulumi.String("foo@contoso.com"),
PublisherName: pulumi.String("foo"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Developer"),
},
Tags: pulumi.StringMap{
"Name": pulumi.String("Contoso"),
"Test": pulumi.String("User"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.location("South Central US")
.publisherEmail("foo@contoso.com")
.publisherName("foo")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Developer")
))
.tags(Map.ofEntries(
Map.entry("Name", "Contoso"),
Map.entry("Test", "User")
))
.build());
}
}
ApiManagementCreateServiceHavingMsi
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Identity = new AzureNative.ApiManagement.Inputs.ApiManagementServiceIdentityArgs
{
Type = "SystemAssigned",
},
Location = "West US",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 0,
Name = "Consumption",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Identity: &apimanagement.ApiManagementServiceIdentityArgs{
Type: pulumi.String("SystemAssigned"),
},
Location: pulumi.String("West US"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(0),
Name: pulumi.String("Consumption"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.identity(Map.of("type", "SystemAssigned"))
.location("West US")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 0),
Map.entry("name", "Consumption")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.build());
}
}
ApiManagementCreateServiceInZones
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Location = "North europe",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Premium",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
Zones = new[]
{
"1",
"2",
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Location: pulumi.String("North europe"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Premium"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
Zones: pulumi.StringArray{
pulumi.String("1"),
pulumi.String("2"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.location("North europe")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Premium")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.zones(
"1",
"2")
.build());
}
}
ApiManagementCreateServiceWithCustomHostnameKeyVault
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
ApiVersionConstraint = new AzureNative.ApiManagement.Inputs.ApiVersionConstraintArgs
{
MinApiVersion = "2019-01-01",
},
HostnameConfigurations = new[]
{
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
DefaultSslBinding = true,
HostName = "gateway1.msitesting.net",
IdentityClientId = "329419bc-adec-4dce-9568-25a6d486e468",
KeyVaultId = "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert",
Type = "Proxy",
},
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
HostName = "mgmt.msitesting.net",
IdentityClientId = "329419bc-adec-4dce-9568-25a6d486e468",
KeyVaultId = "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert",
Type = "Management",
},
new AzureNative.ApiManagement.Inputs.HostnameConfigurationArgs
{
HostName = "portal1.msitesting.net",
IdentityClientId = "329419bc-adec-4dce-9568-25a6d486e468",
KeyVaultId = "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert",
Type = "Portal",
},
},
Identity = new AzureNative.ApiManagement.Inputs.ApiManagementServiceIdentityArgs
{
Type = "UserAssigned",
UserAssignedIdentities =
{
{ "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1", null },
},
},
Location = "North Europe",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Premium",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
VirtualNetworkType = "None",
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
ApiVersionConstraint: &apimanagement.ApiVersionConstraintArgs{
MinApiVersion: pulumi.String("2019-01-01"),
},
HostnameConfigurations: []apimanagement.HostnameConfigurationArgs{
{
DefaultSslBinding: pulumi.Bool(true),
HostName: pulumi.String("gateway1.msitesting.net"),
IdentityClientId: pulumi.String("329419bc-adec-4dce-9568-25a6d486e468"),
KeyVaultId: pulumi.String("https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Type: pulumi.String("Proxy"),
},
{
HostName: pulumi.String("mgmt.msitesting.net"),
IdentityClientId: pulumi.String("329419bc-adec-4dce-9568-25a6d486e468"),
KeyVaultId: pulumi.String("https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Type: pulumi.String("Management"),
},
{
HostName: pulumi.String("portal1.msitesting.net"),
IdentityClientId: pulumi.String("329419bc-adec-4dce-9568-25a6d486e468"),
KeyVaultId: pulumi.String("https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Type: pulumi.String("Portal"),
},
},
Identity: apimanagement.ApiManagementServiceIdentityResponse{
Type: pulumi.String("UserAssigned"),
UserAssignedIdentities: apimanagement.UserIdentityPropertiesMap{
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": nil,
},
},
Location: pulumi.String("North Europe"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Premium"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
VirtualNetworkType: pulumi.String("None"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.apiVersionConstraint(Map.of("minApiVersion", "2019-01-01"))
.hostnameConfigurations(
Map.ofEntries(
Map.entry("defaultSslBinding", true),
Map.entry("hostName", "gateway1.msitesting.net"),
Map.entry("identityClientId", "329419bc-adec-4dce-9568-25a6d486e468"),
Map.entry("keyVaultId", "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Map.entry("type", "Proxy")
),
Map.ofEntries(
Map.entry("hostName", "mgmt.msitesting.net"),
Map.entry("identityClientId", "329419bc-adec-4dce-9568-25a6d486e468"),
Map.entry("keyVaultId", "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Map.entry("type", "Management")
),
Map.ofEntries(
Map.entry("hostName", "portal1.msitesting.net"),
Map.entry("identityClientId", "329419bc-adec-4dce-9568-25a6d486e468"),
Map.entry("keyVaultId", "https://rpbvtkeyvaultintegration.vault.azure.net/secrets/msitestingCert"),
Map.entry("type", "Portal")
))
.identity(Map.ofEntries(
Map.entry("type", "UserAssigned"),
Map.entry("userAssignedIdentities", Map.of("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1", ))
))
.location("North Europe")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Premium")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.virtualNetworkType("None")
.build());
}
}
ApiManagementCreateServiceWithSystemCertificates
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Certificates = new[]
{
new AzureNative.ApiManagement.Inputs.CertificateConfigurationArgs
{
CertificatePassword = "Password",
EncodedCertificate = "*******Base64 encoded Certificate******************",
StoreName = "CertificateAuthority",
},
},
Location = "Central US",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Basic",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Certificates: []apimanagement.CertificateConfigurationArgs{
{
CertificatePassword: pulumi.String("Password"),
EncodedCertificate: pulumi.String("*******Base64 encoded Certificate******************"),
StoreName: pulumi.String("CertificateAuthority"),
},
},
Location: pulumi.String("Central US"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Basic"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.certificates(Map.ofEntries(
Map.entry("certificatePassword", "Password"),
Map.entry("encodedCertificate", "*******Base64 encoded Certificate******************"),
Map.entry("storeName", "CertificateAuthority")
))
.location("Central US")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Basic")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.build());
}
}
ApiManagementCreateServiceWithUserAssignedIdentity
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Identity = new AzureNative.ApiManagement.Inputs.ApiManagementServiceIdentityArgs
{
Type = "UserAssigned",
UserAssignedIdentities =
{
{ "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1", null },
},
},
Location = "West US",
PublisherEmail = "apim@autorestsdk.com",
PublisherName = "autorestsdk",
ResourceGroupName = "rg1",
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 0,
Name = "Consumption",
},
Tags =
{
{ "tag1", "value1" },
{ "tag2", "value2" },
{ "tag3", "value3" },
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Identity: apimanagement.ApiManagementServiceIdentityResponse{
Type: pulumi.String("UserAssigned"),
UserAssignedIdentities: apimanagement.UserIdentityPropertiesMap{
"/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": nil,
},
},
Location: pulumi.String("West US"),
PublisherEmail: pulumi.String("apim@autorestsdk.com"),
PublisherName: pulumi.String("autorestsdk"),
ResourceGroupName: pulumi.String("rg1"),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(0),
Name: pulumi.String("Consumption"),
},
Tags: pulumi.StringMap{
"tag1": pulumi.String("value1"),
"tag2": pulumi.String("value2"),
"tag3": pulumi.String("value3"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.identity(Map.ofEntries(
Map.entry("type", "UserAssigned"),
Map.entry("userAssignedIdentities", Map.of("/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1", ))
))
.location("West US")
.publisherEmail("apim@autorestsdk.com")
.publisherName("autorestsdk")
.resourceGroupName("rg1")
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 0),
Map.entry("name", "Consumption")
))
.tags(Map.ofEntries(
Map.entry("tag1", "value1"),
Map.entry("tag2", "value2"),
Map.entry("tag3", "value3")
))
.build());
}
}
ApiManagementUndelete
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var apiManagementService = new AzureNative.ApiManagement.ApiManagementService("apiManagementService", new()
{
Location = "South Central US",
PublisherEmail = "foo@contoso.com",
PublisherName = "foo",
ResourceGroupName = "rg1",
Restore = true,
ServiceName = "apimService1",
Sku = new AzureNative.ApiManagement.Inputs.ApiManagementServiceSkuPropertiesArgs
{
Capacity = 1,
Name = "Developer",
},
});
});
package main
import (
apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apimanagement.NewApiManagementService(ctx, "apiManagementService", &apimanagement.ApiManagementServiceArgs{
Location: pulumi.String("South Central US"),
PublisherEmail: pulumi.String("foo@contoso.com"),
PublisherName: pulumi.String("foo"),
ResourceGroupName: pulumi.String("rg1"),
Restore: pulumi.Bool(true),
ServiceName: pulumi.String("apimService1"),
Sku: &apimanagement.ApiManagementServiceSkuPropertiesArgs{
Capacity: pulumi.Int(1),
Name: pulumi.String("Developer"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.ApiManagementService;
import com.pulumi.azurenative.apimanagement.ApiManagementServiceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var apiManagementService = new ApiManagementService("apiManagementService", ApiManagementServiceArgs.builder()
.location("South Central US")
.publisherEmail("foo@contoso.com")
.publisherName("foo")
.resourceGroupName("rg1")
.restore(true)
.serviceName("apimService1")
.sku(Map.ofEntries(
Map.entry("capacity", 1),
Map.entry("name", "Developer")
))
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:apimanagement:ApiManagementService apimService1 /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1
Constructors
Properties
Additional datacenter locations of the API Management service.
Control Plane Apis version constraint for the API Management service.
List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10.
Custom properties of the API Management service.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).Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11
can be used to disable just TLS 1.1.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10
can be used to disable TLS 1.0 on an API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11
can be used to disable just TLS 1.1 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10
can be used to disable TLS 1.0 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2
can be used to enable HTTP2 protocol on an API Management service.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
.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
Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.
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.
Custom hostname configuration of the API Management service.
Managed service identity of the Api Management service.
Email address from which the notification will be sent.
Publisher email.
Publisher name.
The name of the resource group.
The name of the API Management service.
SKU properties of the API Management service.
Virtual network configuration of the API Management service.
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.