import * as pulumi from "@pulumi/pulumi"; import * as types from "./types"; /** * API details. * * Uses Azure REST API version 2022-09-01-preview. In version 2.x of the Azure Native provider, it used API version 2022-08-01. * * Other available API versions: 2021-04-01-preview, 2021-08-01, 2021-12-01-preview, 2022-04-01-preview, 2022-08-01, 2023-03-01-preview, 2023-05-01-preview, 2023-09-01-preview, 2024-05-01, 2024-06-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native apimanagement [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details. */ export declare class Api extends pulumi.CustomResource { /** * Get an existing Api 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Api; /** @internal */ static readonly __pulumiType = "azure-native:apimanagement:Api"; /** * Returns true if the given object is an instance of Api. 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 Api; /** * Describes the revision of the API. If no value is provided, default revision 1 is created */ readonly apiRevision: pulumi.Output; /** * Description of the API Revision. */ readonly apiRevisionDescription: pulumi.Output; /** * Type of API. */ readonly apiType: pulumi.Output; /** * Indicates the version identifier of the API if the API is versioned */ readonly apiVersion: pulumi.Output; /** * Description of the API Version. */ readonly apiVersionDescription: pulumi.Output; /** * Version set details */ readonly apiVersionSet: pulumi.Output; /** * A resource identifier for the related ApiVersionSet. */ readonly apiVersionSetId: pulumi.Output; /** * Collection of authentication settings included into this API. */ readonly authenticationSettings: pulumi.Output; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output; /** * Contact information for the API. */ readonly contact: pulumi.Output; /** * Description of the API. May include HTML formatting tags. */ readonly description: pulumi.Output; /** * API name. Must be 1 to 300 characters long. */ readonly displayName: pulumi.Output; /** * Indicates if API revision is current api revision. */ readonly isCurrent: pulumi.Output; /** * Indicates if API revision is accessible via the gateway. */ readonly isOnline: pulumi.Output; /** * License information for the API. */ readonly license: pulumi.Output; /** * The name of the resource */ readonly name: pulumi.Output; /** * 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. */ readonly path: pulumi.Output; /** * Describes on which protocols the operations in this API can be invoked. */ readonly protocols: pulumi.Output; /** * Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. */ readonly serviceUrl: pulumi.Output; /** * API identifier of the source API. */ readonly sourceApiId: pulumi.Output; /** * Protocols over which API is made available. */ readonly subscriptionKeyParameterNames: pulumi.Output; /** * Specifies whether an API or Product subscription is required for accessing the API. */ readonly subscriptionRequired: pulumi.Output; /** * A URL to the Terms of Service for the API. MUST be in the format of a URL. */ readonly termsOfServiceUrl: pulumi.Output; /** * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ readonly type: pulumi.Output; /** * Create a Api 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: ApiArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Api resource. */ export interface ApiArgs { /** * 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. */ apiId?: pulumi.Input; /** * Describes the revision of the API. If no value is provided, default revision 1 is created */ apiRevision?: pulumi.Input; /** * Description of the API Revision. */ apiRevisionDescription?: pulumi.Input; /** * Type of API. */ apiType?: pulumi.Input; /** * Indicates the version identifier of the API if the API is versioned */ apiVersion?: pulumi.Input; /** * Description of the API Version. */ apiVersionDescription?: pulumi.Input; /** * Version set details */ apiVersionSet?: pulumi.Input; /** * A resource identifier for the related ApiVersionSet. */ apiVersionSetId?: pulumi.Input; /** * Collection of authentication settings included into this API. */ authenticationSettings?: pulumi.Input; /** * Contact information for the API. */ contact?: pulumi.Input; /** * Description of the API. May include HTML formatting tags. */ description?: pulumi.Input; /** * API name. Must be 1 to 300 characters long. */ displayName?: pulumi.Input; /** * Format of the Content in which the API is getting imported. */ format?: pulumi.Input; /** * Indicates if API revision is current api revision. */ isCurrent?: pulumi.Input; /** * License information for the API. */ license?: pulumi.Input; /** * 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. */ path: pulumi.Input; /** * Describes on which protocols the operations in this API can be invoked. */ protocols?: pulumi.Input[]>; /** * The name of the resource group. The name is case insensitive. */ resourceGroupName: pulumi.Input; /** * The name of the API Management service. */ serviceName: pulumi.Input; /** * Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. */ serviceUrl?: pulumi.Input; /** * 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. */ soapApiType?: pulumi.Input; /** * API identifier of the source API. */ sourceApiId?: pulumi.Input; /** * Protocols over which API is made available. */ subscriptionKeyParameterNames?: pulumi.Input; /** * Specifies whether an API or Product subscription is required for accessing the API. */ subscriptionRequired?: pulumi.Input; /** * A URL to the Terms of Service for the API. MUST be in the format of a URL. */ termsOfServiceUrl?: pulumi.Input; /** * Strategy of translating required query parameters to template ones. By default has value 'template'. Possible values: 'template', 'query' */ translateRequiredQueryParametersConduct?: pulumi.Input; /** * Content value when Importing an API. */ value?: pulumi.Input; /** * Criteria to limit import of WSDL to a subset of the document. */ wsdlSelector?: pulumi.Input; }