ServiceArgs

data class ServiceArgs(val additionalLocations: Output<List<ServiceAdditionalLocationArgs>>? = null, val certificates: Output<List<ServiceCertificateArgs>>? = null, val clientCertificateEnabled: Output<Boolean>? = null, val delegation: Output<ServiceDelegationArgs>? = null, val gatewayDisabled: Output<Boolean>? = null, val hostnameConfiguration: Output<ServiceHostnameConfigurationArgs>? = null, val identity: Output<ServiceIdentityArgs>? = null, val location: Output<String>? = null, val minApiVersion: Output<String>? = null, val name: Output<String>? = null, val notificationSenderEmail: Output<String>? = null, val protocols: Output<ServiceProtocolsArgs>? = null, val publicIpAddressId: Output<String>? = null, val publicNetworkAccessEnabled: Output<Boolean>? = null, val publisherEmail: Output<String>? = null, val publisherName: Output<String>? = null, val resourceGroupName: Output<String>? = null, val security: Output<ServiceSecurityArgs>? = null, val signIn: Output<ServiceSignInArgs>? = null, val signUp: Output<ServiceSignUpArgs>? = null, val skuName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val tenantAccess: Output<ServiceTenantAccessArgs>? = null, val virtualNetworkConfiguration: Output<ServiceVirtualNetworkConfigurationArgs>? = null, val virtualNetworkType: Output<String>? = null, val zones: Output<List<String>>? = null) : ConvertibleToJava<ServiceArgs>

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleService = new azure.apimanagement.Service("example", {
name: "example-apim",
location: example.location,
resourceGroupName: example.name,
publisherName: "My Company",
publisherEmail: "company@exmaple.com",
skuName: "Developer_1",
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_service = azure.apimanagement.Service("example",
name="example-apim",
location=example.location,
resource_group_name=example.name,
publisher_name="My Company",
publisher_email="company@exmaple.com",
sku_name="Developer_1")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example-resources",
Location = "West Europe",
});
var exampleService = new Azure.ApiManagement.Service("example", new()
{
Name = "example-apim",
Location = example.Location,
ResourceGroupName = example.Name,
PublisherName = "My Company",
PublisherEmail = "company@exmaple.com",
SkuName = "Developer_1",
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/apimanagement"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
_, err = apimanagement.NewService(ctx, "example", &apimanagement.ServiceArgs{
Name: pulumi.String("example-apim"),
Location: example.Location,
ResourceGroupName: example.Name,
PublisherName: pulumi.String("My Company"),
PublisherEmail: pulumi.String("company@exmaple.com"),
SkuName: pulumi.String("Developer_1"),
})
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.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.apimanagement.Service;
import com.pulumi.azure.apimanagement.ServiceArgs;
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 example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.name("example-apim")
.location(example.location())
.resourceGroupName(example.name())
.publisherName("My Company")
.publisherEmail("company@exmaple.com")
.skuName("Developer_1")
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleService:
type: azure:apimanagement:Service
name: example
properties:
name: example-apim
location: ${example.location}
resourceGroupName: ${example.name}
publisherName: My Company
publisherEmail: company@exmaple.com
skuName: Developer_1

Import

API Management Services can be imported using the resource id, e.g.

$ pulumi import azure:apimanagement/service:Service example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1

Constructors

Link copied to clipboard
constructor(additionalLocations: Output<List<ServiceAdditionalLocationArgs>>? = null, certificates: Output<List<ServiceCertificateArgs>>? = null, clientCertificateEnabled: Output<Boolean>? = null, delegation: Output<ServiceDelegationArgs>? = null, gatewayDisabled: Output<Boolean>? = null, hostnameConfiguration: Output<ServiceHostnameConfigurationArgs>? = null, identity: Output<ServiceIdentityArgs>? = null, location: Output<String>? = null, minApiVersion: Output<String>? = null, name: Output<String>? = null, notificationSenderEmail: Output<String>? = null, protocols: Output<ServiceProtocolsArgs>? = null, publicIpAddressId: Output<String>? = null, publicNetworkAccessEnabled: Output<Boolean>? = null, publisherEmail: Output<String>? = null, publisherName: Output<String>? = null, resourceGroupName: Output<String>? = null, security: Output<ServiceSecurityArgs>? = null, signIn: Output<ServiceSignInArgs>? = null, signUp: Output<ServiceSignUpArgs>? = null, skuName: Output<String>? = null, tags: Output<Map<String, String>>? = null, tenantAccess: Output<ServiceTenantAccessArgs>? = null, virtualNetworkConfiguration: Output<ServiceVirtualNetworkConfigurationArgs>? = null, virtualNetworkType: Output<String>? = null, zones: Output<List<String>>? = null)

Properties

Link copied to clipboard

One or more additional_location blocks as defined below.

Link copied to clipboard

One or more certificate blocks (up to 10) as defined below.

Link copied to clipboard
val clientCertificateEnabled: Output<Boolean>? = null

Enforce a client certificate to be presented on each request to the gateway? This is only supported when SKU type is Consumption.

Link copied to clipboard
val delegation: Output<ServiceDelegationArgs>? = null

A delegation block as defined below.

Link copied to clipboard
val gatewayDisabled: Output<Boolean>? = null

Disable the gateway in main region? This is only supported when additional_location is set.

Link copied to clipboard

A hostname_configuration block as defined below.

Link copied to clipboard
val identity: Output<ServiceIdentityArgs>? = null

An identity block as defined below.

Link copied to clipboard
val location: Output<String>? = null

The Azure location where the API Management Service exists. Changing this forces a new resource to be created.

Link copied to clipboard
val minApiVersion: Output<String>? = null

The version which the control plane API calls to API Management service are limited with version equal to or newer than.

Link copied to clipboard
val name: Output<String>? = null

The name of the API Management Service. Changing this forces a new resource to be created.

Link copied to clipboard
val notificationSenderEmail: Output<String>? = null

Email address from which the notification will be sent.

Link copied to clipboard
val protocols: Output<ServiceProtocolsArgs>? = null

A protocols block as defined below.

Link copied to clipboard
val publicIpAddressId: Output<String>? = null

ID of a standard SKU IPv4 Public IP.

Link copied to clipboard
val publicNetworkAccessEnabled: Output<Boolean>? = null

Is public access to the service allowed? Defaults to true.

Link copied to clipboard
val publisherEmail: Output<String>? = null

The email of publisher/company.

Link copied to clipboard
val publisherName: Output<String>? = null

The name of publisher/company.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the Resource Group in which the API Management Service should be exist. Changing this forces a new resource to be created.

Link copied to clipboard
val security: Output<ServiceSecurityArgs>? = null

A security block as defined below.

Link copied to clipboard
val signIn: Output<ServiceSignInArgs>? = null

A sign_in block as defined below.

Link copied to clipboard
val signUp: Output<ServiceSignUpArgs>? = null

A sign_up block as defined below.

Link copied to clipboard
val skuName: Output<String>? = null

sku_name is a string consisting of two parts separated by an underscore(\_). The first part is the name, valid values include: Consumption, Developer, Basic, Standard and Premium. The second part is the capacity (e.g. the number of deployed units of the sku), which must be a positive integer (e.g. Developer_1).

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A mapping of tags assigned to the resource.

Link copied to clipboard

A tenant_access block as defined below.

Link copied to clipboard

A virtual_network_configuration block as defined below. Required when virtual_network_type is External or Internal.

Link copied to clipboard
val virtualNetworkType: Output<String>? = null

The type of virtual network you want to use, valid values include: None, External, Internal. Defaults to None.

Link copied to clipboard
val zones: Output<List<String>>? = null

Specifies a list of Availability Zones in which this API Management service should be located.

Functions

Link copied to clipboard
open override fun toJava(): ServiceArgs