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-01-01-preview

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

Collection of authentication settings included into this API.

contact

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

License information for the API.

properties.apiType

Type of API to create.

  • http creates a REST API
  • soap creates a SOAP pass-through API
  • websocket creates websocket API.
properties.apiVersionSet

Version set details

properties.displayName
  • string

API name. Must be 1 to 300 characters long.

properties.format

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

properties.protocols
  • string[]

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

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

subscriptionKeyParameterNames

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

Type of API.

Responses

Name Type Description
200 OK

API was successfully updated.

Headers

  • ETag: string
201 Created

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

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
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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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
  }
}

ApiManagementCreateSoapPassThroughApiUsingWsdlImport

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi?api-version=2021-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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-01-01-preview
{
  "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-01-01-preview&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

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.

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.

SoapApiType

Type of API to create.

  • http creates a REST API
  • soap creates a SOAP pass-through API
  • websocket creates websocket 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

Resource ID.

name
  • string

Resource name.

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
  • string[]

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

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

Resource type for API Management resource.

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

Collection of authentication settings included into this API.

contact

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

License information for the API.

properties.apiType

Type of API to create.

  • http creates a REST API
  • soap creates a SOAP pass-through API
  • websocket creates websocket API.
properties.apiVersionSet

Version set details

properties.displayName
  • string

API name. Must be 1 to 300 characters long.

properties.format

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
  • string[]

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

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

subscriptionKeyParameterNames

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

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

OAuth2 Authentication settings

openid

OpenID Connect Authentication Settings

ContentFormat

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

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

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
  • string[]

How to send token to the server.

openidProviderId
  • string

OAuth authorization server identifier.

SoapApiType

Type of API to create.

  • http creates a REST API
  • soap creates a SOAP pass-through API
  • websocket creates websocket API.
Name Type Description
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 Soap 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