Api Args
data class ApiArgs(val apiName: Output<String>? = null, val contacts: Output<List<ContactArgs>>? = null, val customProperties: Output<Any>? = null, val description: Output<String>? = null, val externalDocumentation: Output<List<ExternalDocumentationArgs>>? = null, val kind: Output<Either<String, ApiKind>>? = null, val license: Output<LicenseArgs>? = null, val resourceGroupName: Output<String>? = null, val serviceName: Output<String>? = null, val summary: Output<String>? = null, val termsOfService: Output<TermsOfServiceArgs>? = null, val title: Output<String>? = null, val workspaceName: Output<String>? = null) : ConvertibleToJava<ApiArgs>
API entity. Uses Azure REST API version 2024-03-01. Other available API versions: 2024-03-15-preview, 2024-06-01-preview.
Example Usage
Apis_CreateOrUpdate
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var api = new AzureNative.ApiCenter.Api("api", new()
{
ApiName = "echo-api",
CustomProperties = new Dictionary<string, object?>
{
["author"] = "John Doe",
},
Description = "A simple HTTP request/response service.",
ExternalDocumentation = new[]
{
new AzureNative.ApiCenter.Inputs.ExternalDocumentationArgs
{
Title = "Onboarding docs",
Url = "https://docs.contoso.com",
},
},
Kind = AzureNative.ApiCenter.ApiKind.Rest,
License = new AzureNative.ApiCenter.Inputs.LicenseArgs
{
Url = "https://contoso.com/license",
},
ResourceGroupName = "contoso-resources",
ServiceName = "contoso",
TermsOfService = new AzureNative.ApiCenter.Inputs.TermsOfServiceArgs
{
Url = "https://contoso.com/terms-of-service",
},
Title = "Echo API",
WorkspaceName = "default",
});
});
Content copied to clipboard
package main
import (
apicenter "github.com/pulumi/pulumi-azure-native-sdk/apicenter/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := apicenter.NewApi(ctx, "api", &apicenter.ApiArgs{
ApiName: pulumi.String("echo-api"),
CustomProperties: pulumi.Any(map[string]interface{}{
"author": "John Doe",
}),
Description: pulumi.String("A simple HTTP request/response service."),
ExternalDocumentation: apicenter.ExternalDocumentationArray{
&apicenter.ExternalDocumentationArgs{
Title: pulumi.String("Onboarding docs"),
Url: pulumi.String("https://docs.contoso.com"),
},
},
Kind: pulumi.String(apicenter.ApiKindRest),
License: &apicenter.LicenseArgs{
Url: pulumi.String("https://contoso.com/license"),
},
ResourceGroupName: pulumi.String("contoso-resources"),
ServiceName: pulumi.String("contoso"),
TermsOfService: &apicenter.TermsOfServiceArgs{
Url: pulumi.String("https://contoso.com/terms-of-service"),
},
Title: pulumi.String("Echo API"),
WorkspaceName: pulumi.String("default"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apicenter.Api;
import com.pulumi.azurenative.apicenter.ApiArgs;
import com.pulumi.azurenative.apicenter.inputs.ExternalDocumentationArgs;
import com.pulumi.azurenative.apicenter.inputs.LicenseArgs;
import com.pulumi.azurenative.apicenter.inputs.TermsOfServiceArgs;
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()
.apiName("echo-api")
.customProperties(Map.of("author", "John Doe"))
.description("A simple HTTP request/response service.")
.externalDocumentation(ExternalDocumentationArgs.builder()
.title("Onboarding docs")
.url("https://docs.contoso.com")
.build())
.kind("rest")
.license(LicenseArgs.builder()
.url("https://contoso.com/license")
.build())
.resourceGroupName("contoso-resources")
.serviceName("contoso")
.termsOfService(TermsOfServiceArgs.builder()
.url("https://contoso.com/terms-of-service")
.build())
.title("Echo API")
.workspaceName("default")
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:apicenter:Api echo-api /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiCenter/services/{serviceName}/workspaces/{workspaceName}/apis/{apiName}
Content copied to clipboard
Constructors
Link copied to clipboard
constructor(apiName: Output<String>? = null, contacts: Output<List<ContactArgs>>? = null, customProperties: Output<Any>? = null, description: Output<String>? = null, externalDocumentation: Output<List<ExternalDocumentationArgs>>? = null, kind: Output<Either<String, ApiKind>>? = null, license: Output<LicenseArgs>? = null, resourceGroupName: Output<String>? = null, serviceName: Output<String>? = null, summary: Output<String>? = null, termsOfService: Output<TermsOfServiceArgs>? = null, title: Output<String>? = null, workspaceName: Output<String>? = null)
Properties
Link copied to clipboard
The set of contacts
Link copied to clipboard
The custom metadata defined for API catalog entities.
Link copied to clipboard
Description of the API.
Link copied to clipboard
The set of external documentation
Link copied to clipboard
The license information for the API.
Link copied to clipboard
The name of the resource group. The name is case insensitive.
Link copied to clipboard
The name of Azure API Center service.
Link copied to clipboard
Terms of service for the API.
Link copied to clipboard
The name of the workspace.