Gateway Api - Create Or Update
Adds an API to the specified Gateway.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis/{apiId}?api-version=2024-05-01
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
api
|
path | True |
string |
API identifier. Must be unique in the current API Management service instance. |
gateway
|
path | True |
string |
Gateway entity identifier. Must be unique in the current API Management service instance. Must not have value 'managed' |
resource
|
path | True |
string |
The name of the resource group. The name is case insensitive. |
service
|
path | True |
string |
The name of the API Management service. Regex pattern: |
subscription
|
path | True |
string uuid |
The ID of the target subscription. The value must be an UUID. |
api-version
|
query | True |
string |
The API version to use for this operation. |
Request Body
Name | Type | Description |
---|---|---|
properties.provisioningState |
Provisioning state. |
Responses
Name | Type | Description |
---|---|---|
200 OK |
The specified API is already added to the Gateway. |
|
201 Created |
The API was successfully added to the Gateway. |
|
Other Status Codes |
Error response describing why the operation failed. |
Security
azure_auth
Azure Active Directory OAuth2 Flow.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name | Description |
---|---|
user_impersonation | impersonate your user account |
Examples
ApiManagementCreateGatewayApi
Sample request
PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api?api-version=2024-05-01
{
"properties": {
"provisioningState": "created"
}
}
Sample response
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api",
"type": "Microsoft.ApiManagement/service/gateways/apis",
"name": "echo-api",
"properties": {
"displayName": "EchoApi",
"apiRevision": "1",
"serviceUrl": "https://contoso.com/apis/echo",
"path": "",
"protocols": [
"http",
"https"
],
"subscriptionKeyParameterNames": {
"header": "Ocp-Apim-Subscription-Key",
"query": "subscription-key"
},
"isCurrent": true
}
}
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api",
"type": "Microsoft.ApiManagement/service/gateways/apis",
"name": "echo-api",
"properties": {
"displayName": "EchoApi",
"apiRevision": "1",
"serviceUrl": "https://contoso.com/apis/echo",
"path": "",
"protocols": [
"http",
"https"
],
"subscriptionKeyParameterNames": {
"header": "Ocp-Apim-Subscription-Key",
"query": "subscription-key"
},
"isCurrent": true
}
}
Definitions
Name | Description |
---|---|
Api |
API contact information |
Api |
API details. |
Api |
API license information |
Api |
Type of API. |
Api |
An API Version Set contains the common configuration for a set of API Versions relating |
Association |
Association entity details. |
Authentication |
API Authentication Settings. |
bearer |
How to send token to the server. |
Error |
The resource management error additional info. |
Error |
The error detail. |
Error |
Error response |
OAuth2Authentication |
API OAuth2 Authentication settings details. |
Open |
API OAuth2 Authentication settings details. |
Protocol |
Describes on which protocols the operations in this API can be invoked. |
Provisioning |
Provisioning state. |
Subscription |
Subscription key parameter names details. |
versioning |
An value that determines where the API Version identifier will be located in a HTTP request. |
ApiContactInformation
API contact information
Name | Type | Description |
---|---|---|
string |
The email address of the contact person/organization. MUST be in the format of an email address |
|
name |
string |
The identifying name of the contact person/organization |
url |
string |
The URL pointing to the contact information. MUST be in the format of a URL |
ApiContract
API details.
Name | Type | Description |
---|---|---|
id |
string |
Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
name |
string |
The name of the resource |
properties.apiRevision |
string |
Describes the revision of the API. If no value is provided, default revision 1 is created |
properties.apiRevisionDescription |
string |
Description of the API Revision. |
properties.apiVersion |
string |
Indicates the version identifier of the API if the API is versioned |
properties.apiVersionDescription |
string |
Description of the API Version. |
properties.apiVersionSet |
Version set details |
|
properties.apiVersionSetId |
string |
A resource identifier for the related ApiVersionSet. |
properties.authenticationSettings |
Collection of authentication settings included into this API. |
|
properties.contact |
Contact information for the API. |
|
properties.description |
string |
Description of the API. May include HTML formatting tags. |
properties.displayName |
string |
API name. Must be 1 to 300 characters long. |
properties.isCurrent |
boolean |
Indicates if API revision is current api revision. |
properties.isOnline |
boolean |
Indicates if API revision is accessible via the gateway. |
properties.license |
License information for the API. |
|
properties.path |
string |
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. |
properties.protocols |
Protocol[] |
Describes on which protocols the operations in this API can be invoked. |
properties.provisioningState |
string |
The provisioning state |
properties.serviceUrl |
string |
Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long. |
properties.sourceApiId |
string |
API identifier of the source API. |
properties.subscriptionKeyParameterNames |
Protocols over which API is made available. |
|
properties.subscriptionRequired |
boolean |
Specifies whether an API or Product subscription is required for accessing the API. |
properties.termsOfServiceUrl |
string |
A URL to the Terms of Service for the API. MUST be in the format of a URL. |
properties.type |
Type of API. |
|
type |
string |
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" |
ApiLicenseInformation
API license information
Name | Type | Description |
---|---|---|
name |
string |
The license name used for the API |
url |
string |
A URL to the license used for the API. MUST be in the format of a URL |
ApiType
Type of API.
Name | Type | Description |
---|---|---|
graphql |
string |
|
grpc |
string |
|
http |
string |
|
odata |
string |
|
soap |
string |
|
websocket |
string |
ApiVersionSetContractDetails
An API Version Set contains the common configuration for a set of API Versions relating
Name | Type | Description |
---|---|---|
description |
string |
Description of API Version Set. |
id |
string |
Identifier for existing API Version Set. Omit this value to create a new Version Set. |
name |
string |
The display Name of the API Version Set. |
versionHeaderName |
string |
Name of HTTP header parameter that indicates the API Version if versioningScheme is set to |
versionQueryName |
string |
Name of query parameter that indicates the API Version if versioningScheme is set to |
versioningScheme |
An value that determines where the API Version identifier will be located in a HTTP request. |
AssociationContract
Association entity details.
Name | Type | Description |
---|---|---|
id |
string |
Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
name |
string |
The name of the resource |
properties.provisioningState |
Provisioning state. |
|
type |
string |
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" |
AuthenticationSettingsContract
API Authentication Settings.
Name | Type | Description |
---|---|---|
oAuth2 |
OAuth2 Authentication settings |
|
oAuth2AuthenticationSettings |
Collection of OAuth2 authentication settings included into this API. |
|
openid |
OpenID Connect Authentication Settings |
|
openidAuthenticationSettings |
Collection of Open ID Connect authentication settings included into this API. |
bearerTokenSendingMethods
How to send token to the server.
Name | Type | Description |
---|---|---|
authorizationHeader |
string |
Access token will be transmitted in the Authorization header using Bearer schema |
query |
string |
Access token will be transmitted as query parameters. |
ErrorAdditionalInfo
The resource management error additional info.
Name | Type | Description |
---|---|---|
info |
object |
The additional info. |
type |
string |
The additional info type. |
ErrorDetail
The error detail.
Name | Type | Description |
---|---|---|
additionalInfo |
The error additional info. |
|
code |
string |
The error code. |
details |
The error details. |
|
message |
string |
The error message. |
target |
string |
The error target. |
ErrorResponse
Error response
Name | Type | Description |
---|---|---|
error |
The error object. |
OAuth2AuthenticationSettingsContract
API OAuth2 Authentication settings details.
Name | Type | Description |
---|---|---|
authorizationServerId |
string |
OAuth authorization server identifier. |
scope |
string |
operations scope. |
OpenIdAuthenticationSettingsContract
API OAuth2 Authentication settings details.
Name | Type | Description |
---|---|---|
bearerTokenSendingMethods |
How to send token to the server. |
|
openidProviderId |
string |
OAuth authorization server identifier. |
Protocol
Describes on which protocols the operations in this API can be invoked.
Name | Type | Description |
---|---|---|
http |
string |
|
https |
string |
|
ws |
string |
|
wss |
string |
ProvisioningState
Provisioning state.
Name | Type | Description |
---|---|---|
created |
string |
SubscriptionKeyParameterNamesContract
Subscription key parameter names details.
Name | Type | Description |
---|---|---|
header |
string |
Subscription key header name. |
query |
string |
Subscription key query string parameter name. |
versioningScheme
An value that determines where the API Version identifier will be located in a HTTP request.
Name | Type | Description |
---|---|---|
Header |
string |
The API Version is passed in a HTTP header. |
Query |
string |
The API Version is passed in a query parameter. |
Segment |
string |
The API Version is passed in a path segment. |