import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a Spring Cloud API Portal. * * > **Note:** This resource is applicable only for Spring Cloud Service with enterprise tier. * * !> **Note:** Azure Spring Apps is now deprecated and will be retired on 2028-05-31 - as such the `azure.appplatform.SpringCloudApiPortal` resource is deprecated and will be removed in a future major version of the AzureRM Provider. See https://aka.ms/asaretirement for more information. * * ## Example Usage * * ```typescript * 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 exampleSpringCloudService = new azure.appplatform.SpringCloudService("example", { * name: "example", * location: example.location, * resourceGroupName: example.name, * skuName: "E0", * }); * const exampleSpringCloudGateway = new azure.appplatform.SpringCloudGateway("example", { * name: "default", * springCloudServiceId: exampleSpringCloudService.id, * }); * const exampleSpringCloudApiPortal = new azure.appplatform.SpringCloudApiPortal("example", { * name: "default", * springCloudServiceId: exampleSpringCloudService.id, * gatewayIds: [exampleSpringCloudGateway.id], * httpsOnlyEnabled: false, * publicNetworkAccessEnabled: true, * instanceCount: 1, * apiTryOutEnabled: true, * sso: { * clientId: "test", * clientSecret: "secret", * issuerUri: "https://www.example.com/issueToken", * scopes: ["read"], * }, * }); * ``` * * ## API Providers * * * This resource uses the following Azure API Providers: * * * `Microsoft.AppPlatform` - 2024-01-01-preview * * ## Import * * Spring Cloud API Portals can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:appplatform/springCloudApiPortal:SpringCloudApiPortal example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.AppPlatform/spring/service1/apiPortals/apiPortal1 * ``` */ export declare class SpringCloudApiPortal extends pulumi.CustomResource { /** * Get an existing SpringCloudApiPortal resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: SpringCloudApiPortalState, opts?: pulumi.CustomResourceOptions): SpringCloudApiPortal; /** * Returns true if the given object is an instance of SpringCloudApiPortal. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is SpringCloudApiPortal; /** * Specifies whether the API try-out feature is enabled. When enabled, users can try out the API by sending requests and viewing responses in API portal. */ readonly apiTryOutEnabled: pulumi.Output; /** * Specifies a list of Spring Cloud Gateway. */ readonly gatewayIds: pulumi.Output; /** * is only https is allowed? */ readonly httpsOnlyEnabled: pulumi.Output; /** * Specifies the required instance count of the Spring Cloud API Portal. Possible Values are between `1` and `500`. Defaults to `1` if not specified. */ readonly instanceCount: pulumi.Output; /** * The name which should be used for this Spring Cloud API Portal. Changing this forces a new Spring Cloud API Portal to be created. The only possible value is `default`. */ readonly name: pulumi.Output; /** * Is the public network access enabled? */ readonly publicNetworkAccessEnabled: pulumi.Output; /** * The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud API Portal to be created. */ readonly springCloudServiceId: pulumi.Output; /** * A `sso` block as defined below. */ readonly sso: pulumi.Output; /** * TODO. */ readonly url: pulumi.Output; /** * Create a SpringCloudApiPortal resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: SpringCloudApiPortalArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering SpringCloudApiPortal resources. */ export interface SpringCloudApiPortalState { /** * Specifies whether the API try-out feature is enabled. When enabled, users can try out the API by sending requests and viewing responses in API portal. */ apiTryOutEnabled?: pulumi.Input; /** * Specifies a list of Spring Cloud Gateway. */ gatewayIds?: pulumi.Input[]>; /** * is only https is allowed? */ httpsOnlyEnabled?: pulumi.Input; /** * Specifies the required instance count of the Spring Cloud API Portal. Possible Values are between `1` and `500`. Defaults to `1` if not specified. */ instanceCount?: pulumi.Input; /** * The name which should be used for this Spring Cloud API Portal. Changing this forces a new Spring Cloud API Portal to be created. The only possible value is `default`. */ name?: pulumi.Input; /** * Is the public network access enabled? */ publicNetworkAccessEnabled?: pulumi.Input; /** * The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud API Portal to be created. */ springCloudServiceId?: pulumi.Input; /** * A `sso` block as defined below. */ sso?: pulumi.Input; /** * TODO. */ url?: pulumi.Input; } /** * The set of arguments for constructing a SpringCloudApiPortal resource. */ export interface SpringCloudApiPortalArgs { /** * Specifies whether the API try-out feature is enabled. When enabled, users can try out the API by sending requests and viewing responses in API portal. */ apiTryOutEnabled?: pulumi.Input; /** * Specifies a list of Spring Cloud Gateway. */ gatewayIds?: pulumi.Input[]>; /** * is only https is allowed? */ httpsOnlyEnabled?: pulumi.Input; /** * Specifies the required instance count of the Spring Cloud API Portal. Possible Values are between `1` and `500`. Defaults to `1` if not specified. */ instanceCount?: pulumi.Input; /** * The name which should be used for this Spring Cloud API Portal. Changing this forces a new Spring Cloud API Portal to be created. The only possible value is `default`. */ name?: pulumi.Input; /** * Is the public network access enabled? */ publicNetworkAccessEnabled?: pulumi.Input; /** * The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud API Portal to be created. */ springCloudServiceId: pulumi.Input; /** * A `sso` block as defined below. */ sso?: pulumi.Input; }