Apis - Create Or Update

Creates new or updates existing specified API of the API Management service instance.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?api-version=2021-08-01

URI Parameters

Name In Required Type Description
apiId
path True

string

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.

Regex pattern: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

The name of the resource group.

serviceName
path True

string

The name of the API Management service.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

api-version
query True

string

Version of the API to be used with the client request.

Request Header

Name Required Type Description
If-Match

string

ETag of the Entity. Not required when creating an entity, but required when updating an entity.

Request Body

Name Required Type Description
properties.path True

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.

apiRevision

string

Describes the revision of the API. If no value is provided, default revision 1 is created

apiRevisionDescription

string

Description of the API Revision.

apiVersion

string

Indicates the version identifier of the API if the API is versioned

apiVersionDescription

string

Description of the API Version.

apiVersionSetId

string

A resource identifier for the related ApiVersionSet.

authenticationSettings

AuthenticationSettingsContract

Collection of authentication settings included into this API.

contact

ApiContactInformation

Contact information for the API.

description

string

Description of the API. May include HTML formatting tags.

isCurrent

boolean

Indicates if API revision is current api revision.

license

ApiLicenseInformation

License information for the API.

properties.apiType

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.
properties.apiVersionSet

ApiVersionSetContractDetails

Version set details

properties.displayName

string

API name. Must be 1 to 300 characters long.

properties.format

ContentFormat

Format of the Content in which the API is getting imported.

properties.protocols

Protocol[]

Describes on which protocols the operations in this API can be invoked.

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.value

string

Content value when Importing an API.

properties.wsdlSelector

WsdlSelector

Criteria to limit import of WSDL to a subset of the document.

subscriptionKeyParameterNames

SubscriptionKeyParameterNamesContract

Protocols over which API is made available.

subscriptionRequired

boolean

Specifies whether an API or Product subscription is required for accessing the API.

termsOfServiceUrl

string

A URL to the Terms of Service for the API. MUST be in the format of a URL.

type

ApiType

Type of API.

Responses

Name Type Description
200 OK

ApiContract

API was successfully updated.

Headers

ETag: string

201 Created

ApiContract

API was successfully created.

Headers

ETag: string

202 Accepted

Request to create or update API was accepted. Location header contains the URL where the status of the long running operation can be checked.

Other Status Codes

ErrorResponse

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

ApiManagementCreateApi
ApiManagementCreateApiClone
ApiManagementCreateApiNewVersionUsingExistingApi
ApiManagementCreateApiRevisionFromExistingApi
ApiManagementCreateApiUsingImportOverrideServiceUrl
ApiManagementCreateApiUsingOai3Import
ApiManagementCreateApiUsingSwaggerImport
ApiManagementCreateApiUsingWadlImport
ApiManagementCreateApiWithOpenIdConnect
ApiManagementCreateGraphQLApi
ApiManagementCreateSoapPassThroughApiUsingWsdlImport
ApiManagementCreateSoapToRestApiUsingWsdlImport
ApiManagementCreateWebSocketApi

ApiManagementCreateApi

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01

{
  "properties": {
    "description": "apidescription5200",
    "authenticationSettings": {
      "oAuth2": {
        "authorizationServerId": "authorizationServerId2283",
        "scope": "oauth2scope2580"
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "header4520",
      "query": "query3037"
    },
    "displayName": "apiname1463",
    "serviceUrl": "http://newechoapi.cloudapp.net/api",
    "path": "newapiPath",
    "protocols": [
      "https",
      "http"
    ]
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "http://newechoapi.cloudapp.net/api",
    "path": "newapiPath",
    "protocols": [
      "http",
      "https"
    ],
    "authenticationSettings": {
      "oAuth2": {
        "authorizationServerId": "authorizationServerId2283",
        "scope": "oauth2scope2580"
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "header4520",
      "query": "query3037"
    },
    "isCurrent": true,
    "isOnline": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "http://newechoapi.cloudapp.net/api",
    "path": "newapiPath",
    "protocols": [
      "http",
      "https"
    ],
    "authenticationSettings": {
      "oAuth2": {
        "authorizationServerId": "authorizationServerId2283",
        "scope": "oauth2scope2580"
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "header4520",
      "query": "query3037"
    },
    "isCurrent": true,
    "isOnline": true
  }
}

ApiManagementCreateApiClone

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api2?api-version=2021-08-01

{
  "properties": {
    "displayName": "Echo API2",
    "description": "Copy of Existing Echo Api including Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "isCurrent": true,
    "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echoapi2",
  "properties": {
    "displayName": "Echo API2",
    "apiRevision": "1",
    "description": "Copy of Existing Echo Api including Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echoapi2",
  "properties": {
    "displayName": "Echo API2",
    "apiRevision": "1",
    "description": "Copy of Existing Echo Api including Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateApiNewVersionUsingExistingApi

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3?api-version=2021-08-01

{
  "properties": {
    "displayName": "Echo API2",
    "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "isCurrent": true,
    "apiVersion": "v4",
    "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath",
    "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echoapiv3",
  "properties": {
    "displayName": "Echo API2",
    "apiRevision": "1",
    "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true,
    "apiVersion": "v4",
    "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
    "apiVersionSet": {
      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
      "name": "Echo API2",
      "versioningScheme": "Segment"
    }
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echoapiv3",
  "properties": {
    "displayName": "Echo API2",
    "apiRevision": "1",
    "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/api",
    "path": "echo2",
    "protocols": [
      "http",
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true,
    "apiVersion": "v4",
    "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
    "apiVersionSet": {
      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
      "name": "Echo API2",
      "versioningScheme": "Segment"
    }
  }
}

ApiManagementCreateApiRevisionFromExistingApi

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3?api-version=2021-08-01

{
  "properties": {
    "path": "echo",
    "serviceUrl": "http://echoapi.cloudapp.net/apiv3",
    "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api",
    "apiRevisionDescription": "Creating a Revision of an existing API"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echo-api;rev=3",
  "properties": {
    "displayName": "Echo API",
    "apiRevision": "3",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/apiv3",
    "path": "echo",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "apiRevisionDescription": "Creating a Revision of an existing API"
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "echo-api;rev=3",
  "properties": {
    "displayName": "Echo API",
    "apiRevision": "3",
    "subscriptionRequired": true,
    "serviceUrl": "http://echoapi.cloudapp.net/apiv3",
    "path": "echo",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "apiRevisionDescription": "Creating a Revision of an existing API"
  }
}

ApiManagementCreateApiUsingImportOverrideServiceUrl

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs?api-version=2021-08-01

{
  "properties": {
    "format": "swagger-link",
    "value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
    "path": "petstoreapi123",
    "serviceUrl": "http://petstore.swagger.wordnik.com/api"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apidocs",
  "properties": {
    "displayName": "Swagger Sample App",
    "apiRevision": "1",
    "description": "This is a sample server Petstore server.  You can find out more about Swagger \n    at <a href=\"http://swagger.wordnik.com\">http://swagger.wordnik.com</a> or on irc.freenode.net, #swagger.  For this sample,\n    you can use the api key \"special-key\" to test the authorization filters",
    "serviceUrl": "http://petstore.swagger.wordnik.com/api",
    "path": "petstoreapi123",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apidocs",
  "properties": {
    "displayName": "Swagger Sample App",
    "apiRevision": "1",
    "description": "This is a sample server Petstore server.  You can find out more about Swagger \n    at <a href=\"http://swagger.wordnik.com\">http://swagger.wordnik.com</a> or on irc.freenode.net, #swagger.  For this sample,\n    you can use the api key \"special-key\" to test the authorization filters",
    "serviceUrl": "http://petstore.swagger.wordnik.com/api",
    "path": "petstoreapi123",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateApiUsingOai3Import

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstore?api-version=2021-08-01

{
  "properties": {
    "format": "openapi-link",
    "value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
    "path": "petstore"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "petstoreapi",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "serviceUrl": "http://petstore.swagger.io/v1",
    "path": "petstore",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "petstoreapi",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "serviceUrl": "http://petstore.swagger.io/v1",
    "path": "petstore",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateApiUsingSwaggerImport

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstore?api-version=2021-08-01

{
  "properties": {
    "format": "swagger-link-json",
    "value": "http://petstore.swagger.io/v2/swagger.json",
    "path": "petstore"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "petstoreapi",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "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.",
    "serviceUrl": "http://petstore.swagger.io/v2",
    "path": "petstore",
    "protocols": [
      "http"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "petstoreapi",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "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.",
    "serviceUrl": "http://petstore.swagger.io/v2",
    "path": "petstore",
    "protocols": [
      "http"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateApiUsingWadlImport

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstore?api-version=2021-08-01

{
  "properties": {
    "format": "wadl-link-json",
    "value": "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl",
    "path": "collector"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "collectorwadl",
  "properties": {
    "displayName": "http://localhost:8080/collector-northbound",
    "apiRevision": "1",
    "description": "",
    "serviceUrl": "http://localhost:8080/collector-northbound",
    "path": "collector",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "collectorwadl",
  "properties": {
    "displayName": "http://localhost:8080/collector-northbound",
    "apiRevision": "1",
    "description": "",
    "serviceUrl": "http://localhost:8080/collector-northbound",
    "path": "collector",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateApiWithOpenIdConnect

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01

{
  "properties": {
    "displayName": "Swagger Petstore",
    "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.",
    "serviceUrl": "http://petstore.swagger.io/v2",
    "path": "petstore",
    "protocols": [
      "https"
    ],
    "authenticationSettings": {
      "openid": {
        "openidProviderId": "testopenid",
        "bearerTokenSendingMethods": [
          "authorizationHeader"
        ]
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    }
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "58da4c4ccdae970a08121230",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "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.",
    "serviceUrl": "http://petstore.swagger.io/v2",
    "path": "petstore",
    "protocols": [
      "https"
    ],
    "authenticationSettings": {
      "openid": {
        "openidProviderId": "testopenid",
        "bearerTokenSendingMethods": [
          "authorizationHeader"
        ]
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "58da4c4ccdae970a08121230",
  "properties": {
    "displayName": "Swagger Petstore",
    "apiRevision": "1",
    "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.",
    "serviceUrl": "http://petstore.swagger.io/v2",
    "path": "petstore",
    "protocols": [
      "https"
    ],
    "authenticationSettings": {
      "openid": {
        "openidProviderId": "testopenid",
        "bearerTokenSendingMethods": [
          "authorizationHeader"
        ]
      }
    },
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateGraphQLApi

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01

{
  "properties": {
    "description": "apidescription5200",
    "displayName": "apiname1463",
    "type": "graphql",
    "serviceUrl": "https://api.spacex.land/graphql",
    "path": "graphql-api",
    "protocols": [
      "http",
      "https"
    ]
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "https://api.spacex.land/graphql",
    "type": "graphql",
    "path": "graphql-api",
    "protocols": [
      "https",
      "https"
    ],
    "authenticationSettings": null,
    "subscriptionKeyParameterNames": null,
    "isCurrent": true,
    "isOnline": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "https://api.spacex.land/graphql",
    "type": "graphql",
    "path": "graphql-api",
    "protocols": [
      "http",
      "https"
    ],
    "authenticationSettings": null,
    "subscriptionKeyParameterNames": null,
    "isCurrent": true,
    "isOnline": true
  }
}

ApiManagementCreateSoapPassThroughApiUsingWsdlImport

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi?api-version=2021-08-01

{
  "properties": {
    "format": "wsdl-link",
    "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
    "path": "currency",
    "apiType": "soap",
    "wsdlSelector": {
      "wsdlServiceName": "CurrencyConvertor",
      "wsdlEndpointName": "CurrencyConvertorSoap"
    }
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "soapApi",
  "properties": {
    "displayName": "CurrencyConvertor",
    "apiRevision": "1",
    "serviceUrl": "http://www.webservicex.net",
    "path": "currency",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "type": "soap",
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "soapApi",
  "properties": {
    "displayName": "CurrencyConvertor",
    "apiRevision": "1",
    "serviceUrl": "http://www.webservicex.net",
    "path": "currency",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "type": "soap",
    "isCurrent": true
  }
}

ApiManagementCreateSoapToRestApiUsingWsdlImport

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi?api-version=2021-08-01

{
  "properties": {
    "format": "wsdl-link",
    "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
    "path": "currency",
    "wsdlSelector": {
      "wsdlServiceName": "CurrencyConvertor",
      "wsdlEndpointName": "CurrencyConvertorSoap"
    }
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "soapApi",
  "properties": {
    "displayName": "CurrencyConvertor",
    "apiRevision": "1",
    "serviceUrl": "http://www.webservicex.net",
    "path": "currency",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "soapApi",
  "properties": {
    "displayName": "CurrencyConvertor",
    "apiRevision": "1",
    "serviceUrl": "http://www.webservicex.net",
    "path": "currency",
    "protocols": [
      "https"
    ],
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "isCurrent": true
  }
}

ApiManagementCreateWebSocketApi

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01

{
  "properties": {
    "description": "apidescription5200",
    "displayName": "apiname1463",
    "type": "websocket",
    "serviceUrl": "wss://echo.websocket.org",
    "path": "newapiPath",
    "protocols": [
      "wss",
      "ws"
    ]
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "wss://echo.websocket.org",
    "type": "websocket",
    "path": "newapiPath",
    "protocols": [
      "ws",
      "wss"
    ],
    "authenticationSettings": null,
    "subscriptionKeyParameterNames": null,
    "isCurrent": true,
    "isOnline": true
  }
}
location: https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2021-08-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419",
  "type": "Microsoft.ApiManagement/service/apis",
  "name": "apiid9419",
  "properties": {
    "displayName": "apiname1463",
    "apiRevision": "1",
    "description": "apidescription5200",
    "serviceUrl": "wss://echo.websocket.org",
    "type": "websocket",
    "path": "newapiPath",
    "protocols": [
      "ws",
      "wss"
    ],
    "authenticationSettings": null,
    "subscriptionKeyParameterNames": null,
    "isCurrent": true,
    "isOnline": true
  }
}

Definitions

Name Description
ApiContactInformation

API contact information

ApiContract

API details.

ApiCreateOrUpdateParameter

API Create or Update Parameters.

ApiLicenseInformation

API license information

ApiType

Type of API.

ApiVersionSetContractDetails

An API Version Set contains the common configuration for a set of API Versions relating

AuthenticationSettingsContract

API Authentication Settings.

bearerTokenSendingMethods

How to send token to the server.

ContentFormat

Format of the Content in which the API is getting imported.

ErrorFieldContract

Error Field contract.

ErrorResponse

Error Response.

OAuth2AuthenticationSettingsContract

API OAuth2 Authentication settings details.

OpenIdAuthenticationSettingsContract

API OAuth2 Authentication settings details.

Protocol

Describes on which protocols the operations in this API can be invoked.

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.
SubscriptionKeyParameterNamesContract

Subscription key parameter names details.

WsdlSelector

Criteria to limit import of WSDL to a subset of the document.

ApiContactInformation

API contact information

Name Type Description
email

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

ApiVersionSetContractDetails

Version set details

properties.apiVersionSetId

string

A resource identifier for the related ApiVersionSet.

properties.authenticationSettings

AuthenticationSettingsContract

Collection of authentication settings included into this API.

properties.contact

ApiContactInformation

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

ApiLicenseInformation

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.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

SubscriptionKeyParameterNamesContract

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

ApiType

Type of API.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ApiCreateOrUpdateParameter

API Create or Update Parameters.

Name Type Description
apiRevision

string

Describes the revision of the API. If no value is provided, default revision 1 is created

apiRevisionDescription

string

Description of the API Revision.

apiVersion

string

Indicates the version identifier of the API if the API is versioned

apiVersionDescription

string

Description of the API Version.

apiVersionSetId

string

A resource identifier for the related ApiVersionSet.

authenticationSettings

AuthenticationSettingsContract

Collection of authentication settings included into this API.

contact

ApiContactInformation

Contact information for the API.

description

string

Description of the API. May include HTML formatting tags.

isCurrent

boolean

Indicates if API revision is current api revision.

isOnline

boolean

Indicates if API revision is accessible via the gateway.

license

ApiLicenseInformation

License information for the API.

properties.apiType

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.
properties.apiVersionSet

ApiVersionSetContractDetails

Version set details

properties.displayName

string

API name. Must be 1 to 300 characters long.

properties.format

ContentFormat

Format of the Content in which the API is getting imported.

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.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.value

string

Content value when Importing an API.

properties.wsdlSelector

WsdlSelector

Criteria to limit import of WSDL to a subset of the document.

subscriptionKeyParameterNames

SubscriptionKeyParameterNamesContract

Protocols over which API is made available.

subscriptionRequired

boolean

Specifies whether an API or Product subscription is required for accessing the API.

termsOfServiceUrl

string

A URL to the Terms of Service for the API. MUST be in the format of a URL.

type

ApiType

Type of API.

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

http

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 header.

versionQueryName

string

Name of query parameter that indicates the API Version if versioningScheme is set to query.

versioningScheme enum:
  • Header
  • Query
  • Segment

An value that determines where the API Version identifier will be located in a HTTP request.

AuthenticationSettingsContract

API Authentication Settings.

Name Type Description
oAuth2

OAuth2AuthenticationSettingsContract

OAuth2 Authentication settings

openid

OpenIdAuthenticationSettingsContract

OpenID Connect Authentication Settings

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.

ContentFormat

Format of the Content in which the API is getting imported.

Name Type Description
graphql-link

string

The GraphQL API endpoint hosted on a publicly accessible internet address.

openapi

string

The contents are inline and Content Type is a OpenAPI 3.0 YAML Document.

openapi+json

string

The contents are inline and Content Type is a OpenAPI 3.0 JSON Document.

openapi+json-link

string

The OpenAPI 3.0 JSON document is hosted on a publicly accessible internet address.

openapi-link

string

The OpenAPI 3.0 YAML document is hosted on a publicly accessible internet address.

swagger-json

string

The contents are inline and Content Type is a OpenAPI 2.0 JSON Document.

swagger-link-json

string

The OpenAPI 2.0 JSON document is hosted on a publicly accessible internet address.

wadl-link-json

string

The WADL document is hosted on a publicly accessible internet address.

wadl-xml

string

The contents are inline and Content type is a WADL document.

wsdl

string

The contents are inline and the document is a WSDL/Soap document.

wsdl-link

string

The WSDL document is hosted on a publicly accessible internet address.

ErrorFieldContract

Error Field contract.

Name Type Description
code

string

Property level error code.

message

string

Human-readable representation of property-level error.

target

string

Property name.

ErrorResponse

Error Response.

Name Type Description
error.code

string

Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.

error.details

ErrorFieldContract[]

The list of invalid fields send in request, in case of validation error.

error.message

string

Human-readable representation of the error.

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

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

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.
Name Type Description
graphql

string

Imports the API having a GraphQL front end.

http

string

Imports a SOAP API having a RESTful front end.

soap

string

Imports the SOAP API having a SOAP front end.

websocket

string

Imports the API having a Websocket front end.

SubscriptionKeyParameterNamesContract

Subscription key parameter names details.

Name Type Description
header

string

Subscription key header name.

query

string

Subscription key query string parameter name.

WsdlSelector

Criteria to limit import of WSDL to a subset of the document.

Name Type Description
wsdlEndpointName

string

Name of endpoint(port) to import from WSDL

wsdlServiceName

string

Name of service to import from WSDL