Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.apimanagement.kotlin.ApiArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.apimanagement.kotlin
import com.pulumi.azurenative.apimanagement.ApiArgs.builder
import com.pulumi.azurenative.apimanagement.kotlin.enums.ApiType
import com.pulumi.azurenative.apimanagement.kotlin.enums.ContentFormat
import com.pulumi.azurenative.apimanagement.kotlin.enums.Protocol
import com.pulumi.azurenative.apimanagement.kotlin.enums.SoapApiType
import com.pulumi.azurenative.apimanagement.kotlin.enums.TranslateRequiredQueryParametersConduct
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiContactInformationArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiContactInformationArgsBuilder
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgsBuilder
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiLicenseInformationArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiLicenseInformationArgsBuilder
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiVersionSetContractDetailsArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.ApiVersionSetContractDetailsArgsBuilder
import com.pulumi.azurenative.apimanagement.kotlin.inputs.AuthenticationSettingsContractArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.AuthenticationSettingsContractArgsBuilder
import com.pulumi.azurenative.apimanagement.kotlin.inputs.SubscriptionKeyParameterNamesContractArgs
import com.pulumi.azurenative.apimanagement.kotlin.inputs.SubscriptionKeyParameterNamesContractArgsBuilder
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* API details.
* Azure REST API version: 2022-08-01. Prior API version in Azure Native 1.x: 2020-12-01.
* Other available API versions: 2016-07-07, 2016-10-10, 2017-03-01, 2018-06-01-preview, 2020-12-01, 2022-09-01-preview, 2023-03-01-preview, 2023-05-01-preview, 2023-09-01-preview, 2024-05-01.
* ## Example Usage
* ### ApiManagementCreateApi
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* AuthenticationSettings = new AzureNative.ApiManagement.Inputs.AuthenticationSettingsContractArgs
* {
* OAuth2 = new AzureNative.ApiManagement.Inputs.OAuth2AuthenticationSettingsContractArgs
* {
* AuthorizationServerId = "authorizationServerId2283",
* Scope = "oauth2scope2580",
* },
* },
* Description = "apidescription5200",
* DisplayName = "apiname1463",
* Path = "newapiPath",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Https,
* AzureNative.ApiManagement.Protocol.Http,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://newechoapi.cloudapp.net/api",
* SubscriptionKeyParameterNames = new AzureNative.ApiManagement.Inputs.SubscriptionKeyParameterNamesContractArgs
* {
* Header = "header4520",
* Query = "query3037",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* AuthenticationSettings: &apimanagement.AuthenticationSettingsContractArgs{
* OAuth2: &apimanagement.OAuth2AuthenticationSettingsContractArgs{
* AuthorizationServerId: pulumi.String("authorizationServerId2283"),
* Scope: pulumi.String("oauth2scope2580"),
* },
* },
* Description: pulumi.String("apidescription5200"),
* DisplayName: pulumi.String("apiname1463"),
* Path: pulumi.String("newapiPath"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttps),
* pulumi.String(apimanagement.ProtocolHttp),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://newechoapi.cloudapp.net/api"),
* SubscriptionKeyParameterNames: &apimanagement.SubscriptionKeyParameterNamesContractArgs{
* Header: pulumi.String("header4520"),
* Query: pulumi.String("query3037"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.AuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.OAuth2AuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.SubscriptionKeyParameterNamesContractArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .authenticationSettings(AuthenticationSettingsContractArgs.builder()
* .oAuth2(OAuth2AuthenticationSettingsContractArgs.builder()
* .authorizationServerId("authorizationServerId2283")
* .scope("oauth2scope2580")
* .build())
* .build())
* .description("apidescription5200")
* .displayName("apiname1463")
* .path("newapiPath")
* .protocols(
* "https",
* "http")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://newechoapi.cloudapp.net/api")
* .subscriptionKeyParameterNames(SubscriptionKeyParameterNamesContractArgs.builder()
* .header("header4520")
* .query("query3037")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiClone
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "echo-api2",
* Description = "Copy of Existing Echo Api including Operations.",
* DisplayName = "Echo API2",
* IsCurrent = true,
* Path = "echo2",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Http,
* AzureNative.ApiManagement.Protocol.Https,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://echoapi.cloudapp.net/api",
* SourceApiId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001",
* SubscriptionRequired = true,
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("echo-api2"),
* Description: pulumi.String("Copy of Existing Echo Api including Operations."),
* DisplayName: pulumi.String("Echo API2"),
* IsCurrent: pulumi.Bool(true),
* Path: pulumi.String("echo2"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttp),
* pulumi.String(apimanagement.ProtocolHttps),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://echoapi.cloudapp.net/api"),
* SourceApiId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001"),
* SubscriptionRequired: pulumi.Bool(true),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("echo-api2")
* .description("Copy of Existing Echo Api including Operations.")
* .displayName("Echo API2")
* .isCurrent(true)
* .path("echo2")
* .protocols(
* "http",
* "https")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://echoapi.cloudapp.net/api")
* .sourceApiId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001")
* .subscriptionRequired(true)
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiNewVersionUsingExistingApi
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "echoapiv3",
* ApiVersion = "v4",
* ApiVersionSetId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
* Description = "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
* DisplayName = "Echo API2",
* IsCurrent = true,
* Path = "echo2",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Http,
* AzureNative.ApiManagement.Protocol.Https,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://echoapi.cloudapp.net/api",
* SourceApiId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath",
* SubscriptionRequired = true,
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("echoapiv3"),
* ApiVersion: pulumi.String("v4"),
* ApiVersionSetId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"),
* Description: pulumi.String("Create Echo API into a new Version using Existing Version Set and Copy all Operations."),
* DisplayName: pulumi.String("Echo API2"),
* IsCurrent: pulumi.Bool(true),
* Path: pulumi.String("echo2"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttp),
* pulumi.String(apimanagement.ProtocolHttps),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://echoapi.cloudapp.net/api"),
* SourceApiId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath"),
* SubscriptionRequired: pulumi.Bool(true),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("echoapiv3")
* .apiVersion("v4")
* .apiVersionSetId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458")
* .description("Create Echo API into a new Version using Existing Version Set and Copy all Operations.")
* .displayName("Echo API2")
* .isCurrent(true)
* .path("echo2")
* .protocols(
* "http",
* "https")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://echoapi.cloudapp.net/api")
* .sourceApiId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath")
* .subscriptionRequired(true)
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiRevisionFromExistingApi
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "echo-api;rev=3",
* ApiRevisionDescription = "Creating a Revision of an existing API",
* Path = "echo",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://echoapi.cloudapp.net/apiv3",
* SourceApiId = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("echo-api;rev=3"),
* ApiRevisionDescription: pulumi.String("Creating a Revision of an existing API"),
* Path: pulumi.String("echo"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://echoapi.cloudapp.net/apiv3"),
* SourceApiId: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("echo-api;rev=3")
* .apiRevisionDescription("Creating a Revision of an existing API")
* .path("echo")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://echoapi.cloudapp.net/apiv3")
* .sourceApiId("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiUsingImportOverrideServiceUrl
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "apidocs",
* Format = "swagger-link",
* Path = "petstoreapi123",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://petstore.swagger.wordnik.com/api",
* Value = "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("apidocs"),
* Format: pulumi.String("swagger-link"),
* Path: pulumi.String("petstoreapi123"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://petstore.swagger.wordnik.com/api"),
* Value: pulumi.String("http://apimpimportviaurl.azurewebsites.net/api/apidocs/"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("apidocs")
* .format("swagger-link")
* .path("petstoreapi123")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://petstore.swagger.wordnik.com/api")
* .value("http://apimpimportviaurl.azurewebsites.net/api/apidocs/")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiUsingOai3Import
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "petstore",
* Format = AzureNative.ApiManagement.ContentFormat.Openapi_link,
* Path = "petstore",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* Value = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("petstore"),
* Format: pulumi.String(apimanagement.ContentFormat_Openapi_Link),
* Path: pulumi.String("petstore"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* Value: pulumi.String("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("petstore")
* .format("openapi-link")
* .path("petstore")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .value("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "petstore",
* Format = AzureNative.ApiManagement.ContentFormat.Openapi_link,
* Path = "petstore",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* TranslateRequiredQueryParametersConduct = AzureNative.ApiManagement.TranslateRequiredQueryParametersConduct.Template,
* Value = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("petstore"),
* Format: pulumi.String(apimanagement.ContentFormat_Openapi_Link),
* Path: pulumi.String("petstore"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* TranslateRequiredQueryParametersConduct: pulumi.String(apimanagement.TranslateRequiredQueryParametersConductTemplate),
* Value: pulumi.String("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("petstore")
* .format("openapi-link")
* .path("petstore")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .translateRequiredQueryParametersConduct("template")
* .value("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiUsingSwaggerImport
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "petstore",
* Format = AzureNative.ApiManagement.ContentFormat.Swagger_link_json,
* Path = "petstore",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* Value = "http://petstore.swagger.io/v2/swagger.json",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("petstore"),
* Format: pulumi.String(apimanagement.ContentFormat_Swagger_Link_Json),
* Path: pulumi.String("petstore"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* Value: pulumi.String("http://petstore.swagger.io/v2/swagger.json"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("petstore")
* .format("swagger-link-json")
* .path("petstore")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .value("http://petstore.swagger.io/v2/swagger.json")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiUsingWadlImport
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "petstore",
* Format = AzureNative.ApiManagement.ContentFormat.Wadl_link_json,
* Path = "collector",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* Value = "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("petstore"),
* Format: pulumi.String(apimanagement.ContentFormat_Wadl_Link_Json),
* Path: pulumi.String("collector"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* Value: pulumi.String("https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("petstore")
* .format("wadl-link-json")
* .path("collector")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .value("https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl")
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiWithMultipleAuthServers
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* AuthenticationSettings = new AzureNative.ApiManagement.Inputs.AuthenticationSettingsContractArgs
* {
* OAuth2AuthenticationSettings = new[]
* {
* new AzureNative.ApiManagement.Inputs.OAuth2AuthenticationSettingsContractArgs
* {
* AuthorizationServerId = "authorizationServerId2283",
* Scope = "oauth2scope2580",
* },
* new AzureNative.ApiManagement.Inputs.OAuth2AuthenticationSettingsContractArgs
* {
* AuthorizationServerId = "authorizationServerId2284",
* Scope = "oauth2scope2581",
* },
* },
* },
* Description = "apidescription5200",
* DisplayName = "apiname1463",
* Path = "newapiPath",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Https,
* AzureNative.ApiManagement.Protocol.Http,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://newechoapi.cloudapp.net/api",
* SubscriptionKeyParameterNames = new AzureNative.ApiManagement.Inputs.SubscriptionKeyParameterNamesContractArgs
* {
* Header = "header4520",
* Query = "query3037",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* AuthenticationSettings: &apimanagement.AuthenticationSettingsContractArgs{
* OAuth2AuthenticationSettings: apimanagement.OAuth2AuthenticationSettingsContractArray{
* &apimanagement.OAuth2AuthenticationSettingsContractArgs{
* AuthorizationServerId: pulumi.String("authorizationServerId2283"),
* Scope: pulumi.String("oauth2scope2580"),
* },
* &apimanagement.OAuth2AuthenticationSettingsContractArgs{
* AuthorizationServerId: pulumi.String("authorizationServerId2284"),
* Scope: pulumi.String("oauth2scope2581"),
* },
* },
* },
* Description: pulumi.String("apidescription5200"),
* DisplayName: pulumi.String("apiname1463"),
* Path: pulumi.String("newapiPath"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttps),
* pulumi.String(apimanagement.ProtocolHttp),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://newechoapi.cloudapp.net/api"),
* SubscriptionKeyParameterNames: &apimanagement.SubscriptionKeyParameterNamesContractArgs{
* Header: pulumi.String("header4520"),
* Query: pulumi.String("query3037"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.AuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.SubscriptionKeyParameterNamesContractArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .authenticationSettings(AuthenticationSettingsContractArgs.builder()
* .oAuth2AuthenticationSettings(
* OAuth2AuthenticationSettingsContractArgs.builder()
* .authorizationServerId("authorizationServerId2283")
* .scope("oauth2scope2580")
* .build(),
* OAuth2AuthenticationSettingsContractArgs.builder()
* .authorizationServerId("authorizationServerId2284")
* .scope("oauth2scope2581")
* .build())
* .build())
* .description("apidescription5200")
* .displayName("apiname1463")
* .path("newapiPath")
* .protocols(
* "https",
* "http")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://newechoapi.cloudapp.net/api")
* .subscriptionKeyParameterNames(SubscriptionKeyParameterNamesContractArgs.builder()
* .header("header4520")
* .query("query3037")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiWithMultipleOpenIdConnectProviders
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* AuthenticationSettings = new AzureNative.ApiManagement.Inputs.AuthenticationSettingsContractArgs
* {
* OpenidAuthenticationSettings = new[]
* {
* new AzureNative.ApiManagement.Inputs.OpenIdAuthenticationSettingsContractArgs
* {
* BearerTokenSendingMethods = new[]
* {
* AzureNative.ApiManagement.BearerTokenSendingMethods.AuthorizationHeader,
* },
* OpenidProviderId = "openidProviderId2283",
* },
* new AzureNative.ApiManagement.Inputs.OpenIdAuthenticationSettingsContractArgs
* {
* BearerTokenSendingMethods = new[]
* {
* AzureNative.ApiManagement.BearerTokenSendingMethods.AuthorizationHeader,
* },
* OpenidProviderId = "openidProviderId2284",
* },
* },
* },
* Description = "apidescription5200",
* DisplayName = "apiname1463",
* Path = "newapiPath",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Https,
* AzureNative.ApiManagement.Protocol.Http,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://newechoapi.cloudapp.net/api",
* SubscriptionKeyParameterNames = new AzureNative.ApiManagement.Inputs.SubscriptionKeyParameterNamesContractArgs
* {
* Header = "header4520",
* Query = "query3037",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* AuthenticationSettings: &apimanagement.AuthenticationSettingsContractArgs{
* OpenidAuthenticationSettings: apimanagement.OpenIdAuthenticationSettingsContractArray{
* &apimanagement.OpenIdAuthenticationSettingsContractArgs{
* BearerTokenSendingMethods: pulumi.StringArray{
* pulumi.String(apimanagement.BearerTokenSendingMethodsAuthorizationHeader),
* },
* OpenidProviderId: pulumi.String("openidProviderId2283"),
* },
* &apimanagement.OpenIdAuthenticationSettingsContractArgs{
* BearerTokenSendingMethods: pulumi.StringArray{
* pulumi.String(apimanagement.BearerTokenSendingMethodsAuthorizationHeader),
* },
* OpenidProviderId: pulumi.String("openidProviderId2284"),
* },
* },
* },
* Description: pulumi.String("apidescription5200"),
* DisplayName: pulumi.String("apiname1463"),
* Path: pulumi.String("newapiPath"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttps),
* pulumi.String(apimanagement.ProtocolHttp),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://newechoapi.cloudapp.net/api"),
* SubscriptionKeyParameterNames: &apimanagement.SubscriptionKeyParameterNamesContractArgs{
* Header: pulumi.String("header4520"),
* Query: pulumi.String("query3037"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.AuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.SubscriptionKeyParameterNamesContractArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .authenticationSettings(AuthenticationSettingsContractArgs.builder()
* .openidAuthenticationSettings(
* OpenIdAuthenticationSettingsContractArgs.builder()
* .bearerTokenSendingMethods("authorizationHeader")
* .openidProviderId("openidProviderId2283")
* .build(),
* OpenIdAuthenticationSettingsContractArgs.builder()
* .bearerTokenSendingMethods("authorizationHeader")
* .openidProviderId("openidProviderId2284")
* .build())
* .build())
* .description("apidescription5200")
* .displayName("apiname1463")
* .path("newapiPath")
* .protocols(
* "https",
* "http")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://newechoapi.cloudapp.net/api")
* .subscriptionKeyParameterNames(SubscriptionKeyParameterNamesContractArgs.builder()
* .header("header4520")
* .query("query3037")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateApiWithOpenIdConnect
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* AuthenticationSettings = new AzureNative.ApiManagement.Inputs.AuthenticationSettingsContractArgs
* {
* Openid = new AzureNative.ApiManagement.Inputs.OpenIdAuthenticationSettingsContractArgs
* {
* BearerTokenSendingMethods = new[]
* {
* AzureNative.ApiManagement.BearerTokenSendingMethods.AuthorizationHeader,
* },
* OpenidProviderId = "testopenid",
* },
* },
* Description = "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.",
* DisplayName = "Swagger Petstore",
* Path = "petstore",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Https,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "http://petstore.swagger.io/v2",
* SubscriptionKeyParameterNames = new AzureNative.ApiManagement.Inputs.SubscriptionKeyParameterNamesContractArgs
* {
* Header = "Ocp-Apim-Subscription-Key",
* Query = "subscription-key",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* AuthenticationSettings: &apimanagement.AuthenticationSettingsContractArgs{
* Openid: &apimanagement.OpenIdAuthenticationSettingsContractArgs{
* BearerTokenSendingMethods: pulumi.StringArray{
* pulumi.String(apimanagement.BearerTokenSendingMethodsAuthorizationHeader),
* },
* OpenidProviderId: pulumi.String("testopenid"),
* },
* },
* Description: pulumi.String("This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters."),
* DisplayName: pulumi.String("Swagger Petstore"),
* Path: pulumi.String("petstore"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttps),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("http://petstore.swagger.io/v2"),
* SubscriptionKeyParameterNames: &apimanagement.SubscriptionKeyParameterNamesContractArgs{
* Header: pulumi.String("Ocp-Apim-Subscription-Key"),
* Query: pulumi.String("subscription-key"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.AuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.OpenIdAuthenticationSettingsContractArgs;
* import com.pulumi.azurenative.apimanagement.inputs.SubscriptionKeyParameterNamesContractArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .authenticationSettings(AuthenticationSettingsContractArgs.builder()
* .openid(OpenIdAuthenticationSettingsContractArgs.builder()
* .bearerTokenSendingMethods("authorizationHeader")
* .openidProviderId("testopenid")
* .build())
* .build())
* .description("This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.")
* .displayName("Swagger Petstore")
* .path("petstore")
* .protocols("https")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("http://petstore.swagger.io/v2")
* .subscriptionKeyParameterNames(SubscriptionKeyParameterNamesContractArgs.builder()
* .header("Ocp-Apim-Subscription-Key")
* .query("subscription-key")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateGraphQLApi
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* ApiType = AzureNative.ApiManagement.ApiType.Graphql,
* Description = "apidescription5200",
* DisplayName = "apiname1463",
* Path = "graphql-api",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Http,
* AzureNative.ApiManagement.Protocol.Https,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "https://api.spacex.land/graphql",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* ApiType: pulumi.String(apimanagement.ApiTypeGraphql),
* Description: pulumi.String("apidescription5200"),
* DisplayName: pulumi.String("apiname1463"),
* Path: pulumi.String("graphql-api"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolHttp),
* pulumi.String(apimanagement.ProtocolHttps),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("https://api.spacex.land/graphql"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .apiType("graphql")
* .description("apidescription5200")
* .displayName("apiname1463")
* .path("graphql-api")
* .protocols(
* "http",
* "https")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("https://api.spacex.land/graphql")
* .build());
* }
* }
* ```
* ### ApiManagementCreateSoapPassThroughApiUsingWsdlImport
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "soapApi",
* Format = AzureNative.ApiManagement.ContentFormat.Wsdl_link,
* Path = "currency",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* SoapApiType = AzureNative.ApiManagement.SoapApiType.SoapPassThrough,
* Value = "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
* WsdlSelector = new AzureNative.ApiManagement.Inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgs
* {
* WsdlEndpointName = "CurrencyConvertorSoap",
* WsdlServiceName = "CurrencyConvertor",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("soapApi"),
* Format: pulumi.String(apimanagement.ContentFormat_Wsdl_Link),
* Path: pulumi.String("currency"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* SoapApiType: pulumi.String(apimanagement.SoapApiTypeSoapPassThrough),
* Value: pulumi.String("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL"),
* WsdlSelector: &apimanagement.ApiCreateOrUpdatePropertiesWsdlSelectorArgs{
* WsdlEndpointName: pulumi.String("CurrencyConvertorSoap"),
* WsdlServiceName: pulumi.String("CurrencyConvertor"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("soapApi")
* .format("wsdl-link")
* .path("currency")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .soapApiType("soap")
* .value("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL")
* .wsdlSelector(ApiCreateOrUpdatePropertiesWsdlSelectorArgs.builder()
* .wsdlEndpointName("CurrencyConvertorSoap")
* .wsdlServiceName("CurrencyConvertor")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateSoapToRestApiUsingWsdlImport
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "soapApi",
* Format = AzureNative.ApiManagement.ContentFormat.Wsdl_link,
* Path = "currency",
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* Value = "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
* WsdlSelector = new AzureNative.ApiManagement.Inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgs
* {
* WsdlEndpointName = "CurrencyConvertorSoap",
* WsdlServiceName = "CurrencyConvertor",
* },
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("soapApi"),
* Format: pulumi.String(apimanagement.ContentFormat_Wsdl_Link),
* Path: pulumi.String("currency"),
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* Value: pulumi.String("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL"),
* WsdlSelector: &apimanagement.ApiCreateOrUpdatePropertiesWsdlSelectorArgs{
* WsdlEndpointName: pulumi.String("CurrencyConvertorSoap"),
* WsdlServiceName: pulumi.String("CurrencyConvertor"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* import com.pulumi.azurenative.apimanagement.inputs.ApiCreateOrUpdatePropertiesWsdlSelectorArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("soapApi")
* .format("wsdl-link")
* .path("currency")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .value("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL")
* .wsdlSelector(ApiCreateOrUpdatePropertiesWsdlSelectorArgs.builder()
* .wsdlEndpointName("CurrencyConvertorSoap")
* .wsdlServiceName("CurrencyConvertor")
* .build())
* .build());
* }
* }
* ```
* ### ApiManagementCreateWebSocketApi
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var api = new AzureNative.ApiManagement.Api("api", new()
* {
* ApiId = "tempgroup",
* ApiType = AzureNative.ApiManagement.ApiType.Websocket,
* Description = "apidescription5200",
* DisplayName = "apiname1463",
* Path = "newapiPath",
* Protocols = new[]
* {
* AzureNative.ApiManagement.Protocol.Wss,
* AzureNative.ApiManagement.Protocol.Ws,
* },
* ResourceGroupName = "rg1",
* ServiceName = "apimService1",
* ServiceUrl = "wss://echo.websocket.org",
* });
* });
* ```
* ```go
* package main
* import (
* apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := apimanagement.NewApi(ctx, "api", &apimanagement.ApiArgs{
* ApiId: pulumi.String("tempgroup"),
* ApiType: pulumi.String(apimanagement.ApiTypeWebsocket),
* Description: pulumi.String("apidescription5200"),
* DisplayName: pulumi.String("apiname1463"),
* Path: pulumi.String("newapiPath"),
* Protocols: pulumi.StringArray{
* pulumi.String(apimanagement.ProtocolWss),
* pulumi.String(apimanagement.ProtocolWs),
* },
* ResourceGroupName: pulumi.String("rg1"),
* ServiceName: pulumi.String("apimService1"),
* ServiceUrl: pulumi.String("wss://echo.websocket.org"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.apimanagement.Api;
* import com.pulumi.azurenative.apimanagement.ApiArgs;
* 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 api = new Api("api", ApiArgs.builder()
* .apiId("tempgroup")
* .apiType("websocket")
* .description("apidescription5200")
* .displayName("apiname1463")
* .path("newapiPath")
* .protocols(
* "wss",
* "ws")
* .resourceGroupName("rg1")
* .serviceName("apimService1")
* .serviceUrl("wss://echo.websocket.org")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:apimanagement:Api apiid9419 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}
* ```
* @property apiId API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.
* @property apiRevision Describes the revision of the API. If no value is provided, default revision 1 is created
* @property apiRevisionDescription Description of the API Revision.
* @property apiType Type of API.
* @property apiVersion Indicates the version identifier of the API if the API is versioned
* @property apiVersionDescription Description of the API Version.
* @property apiVersionSet Version set details
* @property apiVersionSetId A resource identifier for the related ApiVersionSet.
* @property authenticationSettings Collection of authentication settings included into this API.
* @property contact Contact information for the API.
* @property description Description of the API. May include HTML formatting tags.
* @property displayName API name. Must be 1 to 300 characters long.
* @property format Format of the Content in which the API is getting imported.
* @property isCurrent Indicates if API revision is current api revision.
* @property license License information for the API.
* @property 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.
* @property protocols Describes on which protocols the operations in this API can be invoked.
* @property resourceGroupName The name of the resource group. The name is case insensitive.
* @property serviceName The name of the API Management service.
* @property serviceUrl Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.
* @property soapApiType 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.
* @property sourceApiId API identifier of the source API.
* @property subscriptionKeyParameterNames Protocols over which API is made available.
* @property subscriptionRequired Specifies whether an API or Product subscription is required for accessing the API.
* @property termsOfServiceUrl A URL to the Terms of Service for the API. MUST be in the format of a URL.
* @property translateRequiredQueryParametersConduct Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query'
* @property value Content value when Importing an API.
* @property wsdlSelector Criteria to limit import of WSDL to a subset of the document.
*/
public data class ApiArgs(
public val apiId: Output? = null,
public val apiRevision: Output? = null,
public val apiRevisionDescription: Output? = null,
public val apiType: Output>? = null,
public val apiVersion: Output? = null,
public val apiVersionDescription: Output? = null,
public val apiVersionSet: Output? = null,
public val apiVersionSetId: Output? = null,
public val authenticationSettings: Output? = null,
public val contact: Output? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val format: Output>? = null,
public val isCurrent: Output? = null,
public val license: Output? = null,
public val path: Output? = null,
public val protocols: Output>>? = null,
public val resourceGroupName: Output? = null,
public val serviceName: Output? = null,
public val serviceUrl: Output? = null,
public val soapApiType: Output>? = null,
public val sourceApiId: Output? = null,
public val subscriptionKeyParameterNames: Output? =
null,
public val subscriptionRequired: Output? = null,
public val termsOfServiceUrl: Output? = null,
public val translateRequiredQueryParametersConduct: Output>? = null,
public val `value`: Output? = null,
public val wsdlSelector: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.apimanagement.ApiArgs =
com.pulumi.azurenative.apimanagement.ApiArgs.builder()
.apiId(apiId?.applyValue({ args0 -> args0 }))
.apiRevision(apiRevision?.applyValue({ args0 -> args0 }))
.apiRevisionDescription(apiRevisionDescription?.applyValue({ args0 -> args0 }))
.apiType(
apiType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.apiVersion(apiVersion?.applyValue({ args0 -> args0 }))
.apiVersionDescription(apiVersionDescription?.applyValue({ args0 -> args0 }))
.apiVersionSet(apiVersionSet?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.apiVersionSetId(apiVersionSetId?.applyValue({ args0 -> args0 }))
.authenticationSettings(
authenticationSettings?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.contact(contact?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.format(
format?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.isCurrent(isCurrent?.applyValue({ args0 -> args0 }))
.license(license?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.path(path?.applyValue({ args0 -> args0 }))
.protocols(
protocols?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
})
}),
)
.resourceGroupName(resourceGroupName?.applyValue({ args0 -> args0 }))
.serviceName(serviceName?.applyValue({ args0 -> args0 }))
.serviceUrl(serviceUrl?.applyValue({ args0 -> args0 }))
.soapApiType(
soapApiType?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.sourceApiId(sourceApiId?.applyValue({ args0 -> args0 }))
.subscriptionKeyParameterNames(
subscriptionKeyParameterNames?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.subscriptionRequired(subscriptionRequired?.applyValue({ args0 -> args0 }))
.termsOfServiceUrl(termsOfServiceUrl?.applyValue({ args0 -> args0 }))
.translateRequiredQueryParametersConduct(
translateRequiredQueryParametersConduct?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
}),
)
.`value`(`value`?.applyValue({ args0 -> args0 }))
.wsdlSelector(wsdlSelector?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [ApiArgs].
*/
@PulumiTagMarker
public class ApiArgsBuilder internal constructor() {
private var apiId: Output? = null
private var apiRevision: Output? = null
private var apiRevisionDescription: Output? = null
private var apiType: Output>? = null
private var apiVersion: Output? = null
private var apiVersionDescription: Output? = null
private var apiVersionSet: Output? = null
private var apiVersionSetId: Output? = null
private var authenticationSettings: Output? = null
private var contact: Output? = null
private var description: Output? = null
private var displayName: Output? = null
private var format: Output>? = null
private var isCurrent: Output? = null
private var license: Output? = null
private var path: Output? = null
private var protocols: Output>>? = null
private var resourceGroupName: Output? = null
private var serviceName: Output? = null
private var serviceUrl: Output? = null
private var soapApiType: Output>? = null
private var sourceApiId: Output? = null
private var subscriptionKeyParameterNames: Output? =
null
private var subscriptionRequired: Output? = null
private var termsOfServiceUrl: Output? = null
private var translateRequiredQueryParametersConduct:
Output>? = null
private var `value`: Output? = null
private var wsdlSelector: Output? = null
/**
* @param value API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.
*/
@JvmName("ewbmtpwgsqxgqaib")
public suspend fun apiId(`value`: Output) {
this.apiId = value
}
/**
* @param value Describes the revision of the API. If no value is provided, default revision 1 is created
*/
@JvmName("ykyjocoxtcrofain")
public suspend fun apiRevision(`value`: Output) {
this.apiRevision = value
}
/**
* @param value Description of the API Revision.
*/
@JvmName("eewqvulklonoxhop")
public suspend fun apiRevisionDescription(`value`: Output) {
this.apiRevisionDescription = value
}
/**
* @param value Type of API.
*/
@JvmName("qqbnohdaptisapmh")
public suspend fun apiType(`value`: Output>) {
this.apiType = value
}
/**
* @param value Indicates the version identifier of the API if the API is versioned
*/
@JvmName("omhyrmlujghdpfup")
public suspend fun apiVersion(`value`: Output) {
this.apiVersion = value
}
/**
* @param value Description of the API Version.
*/
@JvmName("naywlmsjdiqmnyic")
public suspend fun apiVersionDescription(`value`: Output) {
this.apiVersionDescription = value
}
/**
* @param value Version set details
*/
@JvmName("pettsfouywurragv")
public suspend fun apiVersionSet(`value`: Output) {
this.apiVersionSet = value
}
/**
* @param value A resource identifier for the related ApiVersionSet.
*/
@JvmName("nnmweatqltkdsqrs")
public suspend fun apiVersionSetId(`value`: Output) {
this.apiVersionSetId = value
}
/**
* @param value Collection of authentication settings included into this API.
*/
@JvmName("tykwcuqjjsrjxcks")
public suspend fun authenticationSettings(`value`: Output) {
this.authenticationSettings = value
}
/**
* @param value Contact information for the API.
*/
@JvmName("lkdmoeevrhvjoeyd")
public suspend fun contact(`value`: Output) {
this.contact = value
}
/**
* @param value Description of the API. May include HTML formatting tags.
*/
@JvmName("brshccurmlmovjlk")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value API name. Must be 1 to 300 characters long.
*/
@JvmName("jqjfuubxotwvsafv")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value Format of the Content in which the API is getting imported.
*/
@JvmName("daioxavuejwxtnii")
public suspend fun format(`value`: Output>) {
this.format = value
}
/**
* @param value Indicates if API revision is current api revision.
*/
@JvmName("eaylxkksukmdmqyr")
public suspend fun isCurrent(`value`: Output) {
this.isCurrent = value
}
/**
* @param value License information for the API.
*/
@JvmName("ysefpjofevuyebbn")
public suspend fun license(`value`: Output) {
this.license = value
}
/**
* @param value 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.
*/
@JvmName("yblcarsbcskcogcj")
public suspend fun path(`value`: Output) {
this.path = value
}
/**
* @param value Describes on which protocols the operations in this API can be invoked.
*/
@JvmName("xrajdksnordgiqqi")
public suspend fun protocols(`value`: Output>>) {
this.protocols = value
}
@JvmName("kpxpavdiijsiycvs")
public suspend fun protocols(vararg values: Output>) {
this.protocols = Output.all(values.asList())
}
/**
* @param values Describes on which protocols the operations in this API can be invoked.
*/
@JvmName("uqlvllatbtkuoulb")
public suspend fun protocols(values: List>>) {
this.protocols = Output.all(values)
}
/**
* @param value The name of the resource group. The name is case insensitive.
*/
@JvmName("hvqtmnbitthxshuo")
public suspend fun resourceGroupName(`value`: Output) {
this.resourceGroupName = value
}
/**
* @param value The name of the API Management service.
*/
@JvmName("ueoueoedjtvhycmh")
public suspend fun serviceName(`value`: Output) {
this.serviceName = value
}
/**
* @param value Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.
*/
@JvmName("jpklwdgcobuoaexe")
public suspend fun serviceUrl(`value`: Output) {
this.serviceUrl = value
}
/**
* @param value 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.
*/
@JvmName("idoxvnftlhpkuilu")
public suspend fun soapApiType(`value`: Output>) {
this.soapApiType = value
}
/**
* @param value API identifier of the source API.
*/
@JvmName("obdgxehpauqaaxvg")
public suspend fun sourceApiId(`value`: Output) {
this.sourceApiId = value
}
/**
* @param value Protocols over which API is made available.
*/
@JvmName("dgtpliliggawuouw")
public suspend fun subscriptionKeyParameterNames(`value`: Output) {
this.subscriptionKeyParameterNames = value
}
/**
* @param value Specifies whether an API or Product subscription is required for accessing the API.
*/
@JvmName("ebxxvaelbyfassli")
public suspend fun subscriptionRequired(`value`: Output) {
this.subscriptionRequired = value
}
/**
* @param value A URL to the Terms of Service for the API. MUST be in the format of a URL.
*/
@JvmName("uhhlksmidrjleclb")
public suspend fun termsOfServiceUrl(`value`: Output) {
this.termsOfServiceUrl = value
}
/**
* @param value Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query'
*/
@JvmName("citqucbtdjnbpyga")
public suspend fun translateRequiredQueryParametersConduct(`value`: Output>) {
this.translateRequiredQueryParametersConduct = value
}
/**
* @param value Content value when Importing an API.
*/
@JvmName("edxfbdxcuuqccbmo")
public suspend fun `value`(`value`: Output) {
this.`value` = value
}
/**
* @param value Criteria to limit import of WSDL to a subset of the document.
*/
@JvmName("jsltisjrsxdtjkyi")
public suspend fun wsdlSelector(`value`: Output) {
this.wsdlSelector = value
}
/**
* @param value API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.
*/
@JvmName("amugvtcbqjartiog")
public suspend fun apiId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiId = mapped
}
/**
* @param value Describes the revision of the API. If no value is provided, default revision 1 is created
*/
@JvmName("ilhmjorwbjcbkdvl")
public suspend fun apiRevision(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiRevision = mapped
}
/**
* @param value Description of the API Revision.
*/
@JvmName("fbtwgoxuwsnieeqp")
public suspend fun apiRevisionDescription(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiRevisionDescription = mapped
}
/**
* @param value Type of API.
*/
@JvmName("yhgattyvmqoxtnuc")
public suspend fun apiType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiType = mapped
}
/**
* @param value Type of API.
*/
@JvmName("nwkmjxkuufhxndch")
public fun apiType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.apiType = mapped
}
/**
* @param value Type of API.
*/
@JvmName("ukoowoihboxfejvc")
public fun apiType(`value`: ApiType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.apiType = mapped
}
/**
* @param value Indicates the version identifier of the API if the API is versioned
*/
@JvmName("rvuxpyghiodnadwa")
public suspend fun apiVersion(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiVersion = mapped
}
/**
* @param value Description of the API Version.
*/
@JvmName("gfbdfovudticwdos")
public suspend fun apiVersionDescription(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiVersionDescription = mapped
}
/**
* @param value Version set details
*/
@JvmName("iiidaunpdbxmytrr")
public suspend fun apiVersionSet(`value`: ApiVersionSetContractDetailsArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiVersionSet = mapped
}
/**
* @param argument Version set details
*/
@JvmName("tmwhjvhgirnaobvc")
public suspend fun apiVersionSet(argument: suspend ApiVersionSetContractDetailsArgsBuilder.() -> Unit) {
val toBeMapped = ApiVersionSetContractDetailsArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.apiVersionSet = mapped
}
/**
* @param value A resource identifier for the related ApiVersionSet.
*/
@JvmName("rlarujjyokhmomoa")
public suspend fun apiVersionSetId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.apiVersionSetId = mapped
}
/**
* @param value Collection of authentication settings included into this API.
*/
@JvmName("vuckbbhdgaivkdwo")
public suspend fun authenticationSettings(`value`: AuthenticationSettingsContractArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.authenticationSettings = mapped
}
/**
* @param argument Collection of authentication settings included into this API.
*/
@JvmName("rcbeniiiadvrcojt")
public suspend fun authenticationSettings(argument: suspend AuthenticationSettingsContractArgsBuilder.() -> Unit) {
val toBeMapped = AuthenticationSettingsContractArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.authenticationSettings = mapped
}
/**
* @param value Contact information for the API.
*/
@JvmName("nxpphovoesncfkgi")
public suspend fun contact(`value`: ApiContactInformationArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.contact = mapped
}
/**
* @param argument Contact information for the API.
*/
@JvmName("sxayhsqyvermromb")
public suspend fun contact(argument: suspend ApiContactInformationArgsBuilder.() -> Unit) {
val toBeMapped = ApiContactInformationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.contact = mapped
}
/**
* @param value Description of the API. May include HTML formatting tags.
*/
@JvmName("euntmvbrrbgkaimu")
public suspend fun description(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.description = mapped
}
/**
* @param value API name. Must be 1 to 300 characters long.
*/
@JvmName("eguihbxbkbgwdqmi")
public suspend fun displayName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.displayName = mapped
}
/**
* @param value Format of the Content in which the API is getting imported.
*/
@JvmName("hpkbuyqncbhlxppn")
public suspend fun format(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value Format of the Content in which the API is getting imported.
*/
@JvmName("rsnwnqkgoysbqxjm")
public fun format(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value Format of the Content in which the API is getting imported.
*/
@JvmName("bgnselevfvbjscld")
public fun format(`value`: ContentFormat) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value Indicates if API revision is current api revision.
*/
@JvmName("hmrfluvimpwwgeie")
public suspend fun isCurrent(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.isCurrent = mapped
}
/**
* @param value License information for the API.
*/
@JvmName("mwaisectwrcuwbkv")
public suspend fun license(`value`: ApiLicenseInformationArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.license = mapped
}
/**
* @param argument License information for the API.
*/
@JvmName("gpjsbbucyiayrykr")
public suspend fun license(argument: suspend ApiLicenseInformationArgsBuilder.() -> Unit) {
val toBeMapped = ApiLicenseInformationArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.license = mapped
}
/**
* @param value 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.
*/
@JvmName("glmmasgetmvgtoik")
public suspend fun path(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.path = mapped
}
/**
* @param value Describes on which protocols the operations in this API can be invoked.
*/
@JvmName("ieiihgorplfdeudl")
public suspend fun protocols(`value`: List>?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.protocols = mapped
}
/**
* @param values Describes on which protocols the operations in this API can be invoked.
*/
@JvmName("tgeednvmwdqgukho")
public suspend fun protocols(vararg values: Either) {
val toBeMapped = values.toList()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.protocols = mapped
}
/**
* @param value The name of the resource group. The name is case insensitive.
*/
@JvmName("sjukuhmwdbokudja")
public suspend fun resourceGroupName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.resourceGroupName = mapped
}
/**
* @param value The name of the API Management service.
*/
@JvmName("grxqnkfjwywcfuij")
public suspend fun serviceName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.serviceName = mapped
}
/**
* @param value Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.
*/
@JvmName("jhtypashwxcbxbuk")
public suspend fun serviceUrl(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.serviceUrl = mapped
}
/**
* @param value 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.
*/
@JvmName("otthylexsqhgpucn")
public suspend fun soapApiType(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.soapApiType = mapped
}
/**
* @param value 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.
*/
@JvmName("ckmnmforihtywuly")
public fun soapApiType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.soapApiType = mapped
}
/**
* @param value 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.
*/
@JvmName("hpbbkckwrwqxxnyg")
public fun soapApiType(`value`: SoapApiType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.soapApiType = mapped
}
/**
* @param value API identifier of the source API.
*/
@JvmName("pqlkwvwguxyvuwim")
public suspend fun sourceApiId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.sourceApiId = mapped
}
/**
* @param value Protocols over which API is made available.
*/
@JvmName("jorsxjlesvyxfeaq")
public suspend fun subscriptionKeyParameterNames(`value`: SubscriptionKeyParameterNamesContractArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.subscriptionKeyParameterNames = mapped
}
/**
* @param argument Protocols over which API is made available.
*/
@JvmName("umqwthjytkykxjel")
public suspend fun subscriptionKeyParameterNames(argument: suspend SubscriptionKeyParameterNamesContractArgsBuilder.() -> Unit) {
val toBeMapped = SubscriptionKeyParameterNamesContractArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.subscriptionKeyParameterNames = mapped
}
/**
* @param value Specifies whether an API or Product subscription is required for accessing the API.
*/
@JvmName("wjtritcorqfdtdmy")
public suspend fun subscriptionRequired(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.subscriptionRequired = mapped
}
/**
* @param value A URL to the Terms of Service for the API. MUST be in the format of a URL.
*/
@JvmName("aumnkatcqrutcqoa")
public suspend fun termsOfServiceUrl(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.termsOfServiceUrl = mapped
}
/**
* @param value Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query'
*/
@JvmName("hrinhhivpgjpxabh")
public suspend fun translateRequiredQueryParametersConduct(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.translateRequiredQueryParametersConduct = mapped
}
/**
* @param value Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query'
*/
@JvmName("ememdbkgkxftvswn")
public fun translateRequiredQueryParametersConduct(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.translateRequiredQueryParametersConduct = mapped
}
/**
* @param value Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query'
*/
@JvmName("mwacrgrdwacbdimv")
public fun translateRequiredQueryParametersConduct(`value`: TranslateRequiredQueryParametersConduct) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.translateRequiredQueryParametersConduct = mapped
}
/**
* @param value Content value when Importing an API.
*/
@JvmName("vkeldsdvuljghnyg")
public suspend fun `value`(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.`value` = mapped
}
/**
* @param value Criteria to limit import of WSDL to a subset of the document.
*/
@JvmName("fwqdwuejgybawwkl")
public suspend fun wsdlSelector(`value`: ApiCreateOrUpdatePropertiesWsdlSelectorArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.wsdlSelector = mapped
}
/**
* @param argument Criteria to limit import of WSDL to a subset of the document.
*/
@JvmName("pbqhjijhtpnwqdvr")
public suspend fun wsdlSelector(argument: suspend ApiCreateOrUpdatePropertiesWsdlSelectorArgsBuilder.() -> Unit) {
val toBeMapped = ApiCreateOrUpdatePropertiesWsdlSelectorArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.wsdlSelector = mapped
}
internal fun build(): ApiArgs = ApiArgs(
apiId = apiId,
apiRevision = apiRevision,
apiRevisionDescription = apiRevisionDescription,
apiType = apiType,
apiVersion = apiVersion,
apiVersionDescription = apiVersionDescription,
apiVersionSet = apiVersionSet,
apiVersionSetId = apiVersionSetId,
authenticationSettings = authenticationSettings,
contact = contact,
description = description,
displayName = displayName,
format = format,
isCurrent = isCurrent,
license = license,
path = path,
protocols = protocols,
resourceGroupName = resourceGroupName,
serviceName = serviceName,
serviceUrl = serviceUrl,
soapApiType = soapApiType,
sourceApiId = sourceApiId,
subscriptionKeyParameterNames = subscriptionKeyParameterNames,
subscriptionRequired = subscriptionRequired,
termsOfServiceUrl = termsOfServiceUrl,
translateRequiredQueryParametersConduct = translateRequiredQueryParametersConduct,
`value` = `value`,
wsdlSelector = wsdlSelector,
)
}