Cria ou atualiza a API especificada da instância do serviço de Gerenciamento de API.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?api-version=2022-08-01
Parâmetros de URI
Nome |
Em |
Obrigatório |
Tipo |
Description |
apiId
|
path |
True
|
string
|
Identificador de revisão de API. Deve ser exclusivo na instância de serviço Gerenciamento de API atual. A revisão não atual tem ; rev=n como um sufixo em que n é o número de revisão.
Regex pattern: ^[^*#&+:<>?]+$
|
resourceGroupName
|
path |
True
|
string
|
O nome do grupo de recursos. O nome diferencia maiúsculas de minúsculas.
|
serviceName
|
path |
True
|
string
|
O nome do serviço Gerenciamento de API.
Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
A ID da assinatura de destino.
|
api-version
|
query |
True
|
string
|
A versão da API a ser usada para esta operação.
|
Nome |
Obrigatório |
Tipo |
Description |
If-Match
|
|
string
|
ETag da Entidade. Não é necessário ao criar uma entidade, mas necessário ao atualizar uma entidade.
|
Corpo da solicitação
Nome |
Obrigatório |
Tipo |
Description |
properties.path
|
True
|
string
|
A URL relativa que identifica exclusivamente esta API e todos os seus caminhos de recurso dentro da instância do serviço de Gerenciamento de API. Ele é acrescentado à URL base do Ponto de Extremidade de API especificada durante a criação da instância de serviço para formar uma URL pública para essa API.
|
apiRevision
|
|
string
|
Descreve a revisão da API. Se nenhum valor for fornecido, a revisão padrão 1 será criada
|
apiRevisionDescription
|
|
string
|
Descrição da Revisão da API.
|
apiVersion
|
|
string
|
Indica o identificador de versão da API se a API tiver controle de versão
|
apiVersionDescription
|
|
string
|
Descrição da versão da API.
|
apiVersionSetId
|
|
string
|
Um identificador de recurso para o ApiVersionSet relacionado.
|
authenticationSettings
|
|
AuthenticationSettingsContract
|
Coleção de configurações de autenticação incluídas nessa API.
|
contact
|
|
ApiContactInformation
|
Informações de contato para a API.
|
description
|
|
string
|
A descrição da API. Pode incluir marcas de formatação HTML.
|
isCurrent
|
|
boolean
|
Indica se a revisão de API é a revisão de API atual.
|
license
|
|
ApiLicenseInformation
|
Informações de licença para a API.
|
properties.apiType
|
|
SoapApiType
|
Tipo de API a ser criada.
http cria uma API REST
soap cria uma API de passagem SOAP
websocket cria a API websocket
graphql cria GraphQL API.
|
properties.apiVersionSet
|
|
ApiVersionSetContractDetails
|
Detalhes do conjunto de versões
|
properties.displayName
|
|
string
|
Nome da API. Deve ter de 1 a 300 caracteres.
|
properties.format
|
|
ContentFormat
|
Formato do Conteúdo no qual a API está sendo importada.
|
properties.protocols
|
|
Protocol[]
|
Descreve em quais protocolos as operações nessa API podem ser invocadas.
|
properties.serviceUrl
|
|
string
|
A URL absoluta do serviço de back-end implementado esta API. Não pode ter mais de 2.000 caracteres.
|
properties.sourceApiId
|
|
string
|
Identificador de API da API de origem.
|
properties.translateRequiredQueryParameters
|
|
TranslateRequiredQueryParametersConduct
|
Estratégia de traduzir parâmetros de consulta necessários para os modelos. Por padrão, tem o valor 'template'. Valores possíveis: 'template', 'query'
|
properties.value
|
|
string
|
Valor do conteúdo ao importar uma API.
|
properties.wsdlSelector
|
|
WsdlSelector
|
Critérios para limitar a importação do WSDL a um subconjunto do documento.
|
subscriptionKeyParameterNames
|
|
SubscriptionKeyParameterNamesContract
|
Protocolos sobre os quais a API é disponibilizada.
|
subscriptionRequired
|
|
boolean
|
Especifica se uma assinatura de API ou produto é necessária para acessar a API.
|
termsOfServiceUrl
|
|
string
|
Uma URL para os Termos de Serviço da API. DEVE estar no formato de uma URL.
|
type
|
|
ApiType
|
Tipo de API.
|
Respostas
Nome |
Tipo |
Description |
200 OK
|
ApiContract
|
A API foi atualizada com êxito.
Headers
ETag: string
|
201 Created
|
ApiContract
|
A API foi criada com êxito.
Headers
ETag: string
|
202 Accepted
|
|
A solicitação para criar ou atualizar a API foi aceita. O cabeçalho location contém a URL em que o status da operação de execução prolongada pode ser verificado.
|
Other Status Codes
|
ErrorResponse
|
Resposta de erro que descreve por que a operação falhou.
|
Segurança
azure_auth
Fluxo OAuth2 do Azure Active Directory.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Nome |
Description |
user_impersonation
|
representar sua conta de usuário
|
Exemplos
ApiManagementCreateApi
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2022-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"
]
}
}
import com.azure.resourcemanager.apimanagement.models.AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.OAuth2AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import com.azure.resourcemanager.apimanagement.models.SubscriptionKeyParameterNamesContract;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApi.json
*/
/**
* Sample code: ApiManagementCreateApi.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApi(com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("apiname1463")
.withServiceUrl("http://newechoapi.cloudapp.net/api")
.withPath("newapiPath")
.withProtocols(Arrays.asList(Protocol.HTTPS, Protocol.HTTP))
.withDescription("apidescription5200")
.withAuthenticationSettings(
new AuthenticationSettingsContract()
.withOAuth2(
new OAuth2AuthenticationSettingsContract()
.withAuthorizationServerId("fakeTokenPlaceholder")
.withScope("oauth2scope2580")))
.withSubscriptionKeyParameterNames(
new SubscriptionKeyParameterNamesContract().withHeaderProperty("header4520").withQuery("query3037"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"authenticationSettings": {
"oAuth2": {"authorizationServerId": "authorizationServerId2283", "scope": "oauth2scope2580"}
},
"description": "apidescription5200",
"displayName": "apiname1463",
"path": "newapiPath",
"protocols": ["https", "http"],
"serviceUrl": "http://newechoapi.cloudapp.net/api",
"subscriptionKeyParameterNames": {"header": "header4520", "query": "query3037"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApi.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApi.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApi() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("apidescription5200"),
AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
OAuth2: &armapimanagement.OAuth2AuthenticationSettingsContract{
AuthorizationServerID: to.Ptr("authorizationServerId2283"),
Scope: to.Ptr("oauth2scope2580"),
},
},
SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
Header: to.Ptr("header4520"),
Query: to.Ptr("query3037"),
},
Path: to.Ptr("newapiPath"),
DisplayName: to.Ptr("apiname1463"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTPS),
to.Ptr(armapimanagement.ProtocolHTTP)},
ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apiid9419"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("apidescription5200"),
// APIRevision: to.Ptr("1"),
// AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
// OAuth2: &armapimanagement.OAuth2AuthenticationSettingsContract{
// AuthorizationServerID: to.Ptr("authorizationServerId2283"),
// Scope: to.Ptr("oauth2scope2580"),
// },
// OAuth2AuthenticationSettings: []*armapimanagement.OAuth2AuthenticationSettingsContract{
// {
// AuthorizationServerID: to.Ptr("authorizationServerId2283"),
// Scope: to.Ptr("oauth2scope2580"),
// }},
// },
// IsCurrent: to.Ptr(true),
// IsOnline: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("header4520"),
// Query: to.Ptr("query3037"),
// },
// Path: to.Ptr("newapiPath"),
// DisplayName: to.Ptr("apiname1463"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApi.json
*/
async function apiManagementCreateApi() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
path: "newapiPath",
description: "apidescription5200",
authenticationSettings: {
oAuth2: {
authorizationServerId: "authorizationServerId2283",
scope: "oauth2scope2580",
},
},
displayName: "apiname1463",
protocols: ["https", "http"],
serviceUrl: "http://newechoapi.cloudapp.net/api",
subscriptionKeyParameterNames: { header: "header4520", query: "query3037" },
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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"
},
"oAuth2AuthenticationSettings": [
{
"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=2022-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"
},
"oAuth2AuthenticationSettings": [
{
"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=2022-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"
}
}
import com.azure.resourcemanager.apimanagement.models.Protocol;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiClone.json
*/
/**
* Sample code: ApiManagementCreateApiClone.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiClone(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("echo-api2")
.withExistingService("rg1", "apimService1")
.withSourceApiId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001")
.withDisplayName("Echo API2")
.withServiceUrl("http://echoapi.cloudapp.net/api")
.withPath("echo2")
.withProtocols(Arrays.asList(Protocol.HTTP, Protocol.HTTPS))
.withDescription("Copy of Existing Echo Api including Operations.")
.withIsCurrent(true)
.withSubscriptionRequired(true)
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_clone.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="echo-api2",
parameters={
"properties": {
"description": "Copy of Existing Echo Api including Operations.",
"displayName": "Echo API2",
"isCurrent": True,
"path": "echo2",
"protocols": ["http", "https"],
"serviceUrl": "http://echoapi.cloudapp.net/api",
"sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001",
"subscriptionRequired": True,
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiClone.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiClone.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiClone() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "echo-api2", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("Copy of Existing Echo Api including Operations."),
IsCurrent: to.Ptr(true),
SubscriptionRequired: to.Ptr(true),
Path: to.Ptr("echo2"),
DisplayName: to.Ptr("Echo API2"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTP),
to.Ptr(armapimanagement.ProtocolHTTPS)},
ServiceURL: to.Ptr("http://echoapi.cloudapp.net/api"),
SourceAPIID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("echoapi2"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("Copy of Existing Echo Api including Operations."),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// SubscriptionRequired: to.Ptr(true),
// Path: to.Ptr("echo2"),
// DisplayName: to.Ptr("Echo API2"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://echoapi.cloudapp.net/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiClone.json
*/
async function apiManagementCreateApiClone() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "echo-api2";
const parameters = {
path: "echo2",
description: "Copy of Existing Echo Api including Operations.",
displayName: "Echo API2",
isCurrent: true,
protocols: ["http", "https"],
serviceUrl: "http://echoapi.cloudapp.net/api",
sourceApiId:
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001",
subscriptionRequired: true,
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-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"
}
}
import com.azure.resourcemanager.apimanagement.models.Protocol;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json
*/
/**
* Sample code: ApiManagementCreateApiNewVersionUsingExistingApi.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiNewVersionUsingExistingApi(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("echoapiv3")
.withExistingService("rg1", "apimService1")
.withSourceApiId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath")
.withDisplayName("Echo API2")
.withServiceUrl("http://echoapi.cloudapp.net/api")
.withPath("echo2")
.withProtocols(Arrays.asList(Protocol.HTTP, Protocol.HTTPS))
.withDescription("Create Echo API into a new Version using Existing Version Set and Copy all Operations.")
.withApiVersion("v4")
.withIsCurrent(true)
.withApiVersionSetId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458")
.withSubscriptionRequired(true)
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_new_version_using_existing_api.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="echoapiv3",
parameters={
"properties": {
"apiVersion": "v4",
"apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
"description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
"displayName": "Echo API2",
"isCurrent": True,
"path": "echo2",
"protocols": ["http", "https"],
"serviceUrl": "http://echoapi.cloudapp.net/api",
"sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath",
"subscriptionRequired": True,
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiNewVersionUsingExistingApi() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "echoapiv3", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("Create Echo API into a new Version using Existing Version Set and Copy all Operations."),
APIVersion: to.Ptr("v4"),
APIVersionSetID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"),
IsCurrent: to.Ptr(true),
SubscriptionRequired: to.Ptr(true),
Path: to.Ptr("echo2"),
DisplayName: to.Ptr("Echo API2"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTP),
to.Ptr(armapimanagement.ProtocolHTTPS)},
ServiceURL: to.Ptr("http://echoapi.cloudapp.net/api"),
SourceAPIID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("echoapiv3"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("Create Echo API into a new Version using Existing Version Set and Copy all Operations."),
// APIRevision: to.Ptr("1"),
// APIVersion: to.Ptr("v4"),
// APIVersionSetID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// SubscriptionRequired: to.Ptr(true),
// Path: to.Ptr("echo2"),
// APIVersionSet: &armapimanagement.APIVersionSetContractDetails{
// Name: to.Ptr("Echo API2"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"),
// VersioningScheme: to.Ptr(armapimanagement.APIVersionSetContractDetailsVersioningSchemeSegment),
// },
// DisplayName: to.Ptr("Echo API2"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://echoapi.cloudapp.net/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json
*/
async function apiManagementCreateApiNewVersionUsingExistingApi() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "echoapiv3";
const parameters = {
path: "echo2",
description:
"Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
apiVersion: "v4",
apiVersionSetId:
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458",
displayName: "Echo API2",
isCurrent: true,
protocols: ["http", "https"],
serviceUrl: "http://echoapi.cloudapp.net/api",
sourceApiId:
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath",
subscriptionRequired: true,
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-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"
}
}
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json
*/
/**
* Sample code: ApiManagementCreateApiRevisionFromExistingApi.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiRevisionFromExistingApi(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("echo-api;rev=3")
.withExistingService("rg1", "apimService1")
.withSourceApiId(
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api")
.withServiceUrl("http://echoapi.cloudapp.net/apiv3")
.withPath("echo")
.withApiRevisionDescription("Creating a Revision of an existing API")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_revision_from_existing_api.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="echo-api;rev=3",
parameters={
"properties": {
"apiRevisionDescription": "Creating a Revision of an existing API",
"path": "echo",
"serviceUrl": "http://echoapi.cloudapp.net/apiv3",
"sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiRevisionFromExistingApi() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "echo-api;rev=3", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
APIRevisionDescription: to.Ptr("Creating a Revision of an existing API"),
Path: to.Ptr("echo"),
ServiceURL: to.Ptr("http://echoapi.cloudapp.net/apiv3"),
SourceAPIID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("echo-api;rev=3"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3"),
// Properties: &armapimanagement.APIContractProperties{
// APIRevision: to.Ptr("3"),
// APIRevisionDescription: to.Ptr("Creating a Revision of an existing API"),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// SubscriptionRequired: to.Ptr(true),
// Path: to.Ptr("echo"),
// DisplayName: to.Ptr("Echo API"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://echoapi.cloudapp.net/apiv3"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json
*/
async function apiManagementCreateApiRevisionFromExistingApi() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "echo-api;rev=3";
const parameters = {
path: "echo",
apiRevisionDescription: "Creating a Revision of an existing API",
serviceUrl: "http://echoapi.cloudapp.net/apiv3",
sourceApiId:
"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"format": "swagger-link",
"value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
"path": "petstoreapi123",
"serviceUrl": "http://petstore.swagger.wordnik.com/api"
}
}
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json
*/
/**
* Sample code: ApiManagementCreateApiUsingImportOverrideServiceUrl.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiUsingImportOverrideServiceUrl(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("apidocs")
.withExistingService("rg1", "apimService1")
.withValue("http://apimpimportviaurl.azurewebsites.net/api/apidocs/")
.withFormat(ContentFormat.fromString("swagger-link"))
.withServiceUrl("http://petstore.swagger.wordnik.com/api")
.withPath("petstoreapi123")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_using_import_override_service_url.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="apidocs",
parameters={
"properties": {
"format": "swagger-link",
"path": "petstoreapi123",
"serviceUrl": "http://petstore.swagger.wordnik.com/api",
"value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiUsingImportOverrideServiceUrl() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "apidocs", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("petstoreapi123"),
ServiceURL: to.Ptr("http://petstore.swagger.wordnik.com/api"),
Format: to.Ptr(armapimanagement.ContentFormat("swagger-link")),
Value: to.Ptr("http://apimpimportviaurl.azurewebsites.net/api/apidocs/"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apidocs"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("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"),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("petstoreapi123"),
// DisplayName: to.Ptr("Swagger Sample App"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://petstore.swagger.wordnik.com/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json
*/
async function apiManagementCreateApiUsingImportOverrideServiceUrl() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "apidocs";
const parameters = {
format: "swagger-link",
path: "petstoreapi123",
serviceUrl: "http://petstore.swagger.wordnik.com/api",
value: "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"format": "openapi-link",
"value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
"path": "petstore"
}
}
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3Import.json
*/
/**
* Sample code: ApiManagementCreateApiUsingOai3Import.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiUsingOai3Import(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("petstore")
.withExistingService("rg1", "apimService1")
.withValue("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml")
.withFormat(ContentFormat.OPENAPI_LINK)
.withPath("petstore")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_using_oai3_import.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="petstore",
parameters={
"properties": {
"format": "openapi-link",
"path": "petstore",
"value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3Import.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3Import.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiUsingOai3Import() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "petstore", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("petstore"),
Format: to.Ptr(armapimanagement.ContentFormatOpenapiLink),
Value: to.Ptr("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("petstoreapi"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi"),
// Properties: &armapimanagement.APIContractProperties{
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("petstore"),
// DisplayName: to.Ptr("Swagger Petstore"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://petstore.swagger.io/v1"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3Import.json
*/
async function apiManagementCreateApiUsingOai3Import() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "petstore";
const parameters = {
format: "openapi-link",
path: "petstore",
value:
"https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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
}
}
ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstore?api-version=2022-08-01
{
"properties": {
"format": "openapi-link",
"value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
"path": "petstore",
"translateRequiredQueryParameters": "template"
}
}
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
import com.azure.resourcemanager.apimanagement.models.TranslateRequiredQueryParametersConduct;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.json
*/
/**
* Sample code: ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("petstore")
.withExistingService("rg1", "apimService1")
.withValue("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml")
.withFormat(ContentFormat.OPENAPI_LINK)
.withTranslateRequiredQueryParametersConduct(TranslateRequiredQueryParametersConduct.TEMPLATE)
.withPath("petstore")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_using_oai3_import_with_translate_required_query_parameters_conduct.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="petstore",
parameters={
"properties": {
"format": "openapi-link",
"path": "petstore",
"translateRequiredQueryParameters": "template",
"value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "petstore", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("petstore"),
Format: to.Ptr(armapimanagement.ContentFormatOpenapiLink),
TranslateRequiredQueryParametersConduct: to.Ptr(armapimanagement.TranslateRequiredQueryParametersConductTemplate),
Value: to.Ptr("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("petstoreapi"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi"),
// Properties: &armapimanagement.APIContractProperties{
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("petstore"),
// DisplayName: to.Ptr("Swagger Petstore"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://petstore.swagger.io/v1"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.json
*/
async function apiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "petstore";
const parameters = {
format: "openapi-link",
path: "petstore",
translateRequiredQueryParametersConduct: "template",
value:
"https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"format": "swagger-link-json",
"value": "http://petstore.swagger.io/v2/swagger.json",
"path": "petstore"
}
}
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingSwaggerImport.json
*/
/**
* Sample code: ApiManagementCreateApiUsingSwaggerImport.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiUsingSwaggerImport(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("petstore")
.withExistingService("rg1", "apimService1")
.withValue("http://petstore.swagger.io/v2/swagger.json")
.withFormat(ContentFormat.SWAGGER_LINK_JSON)
.withPath("petstore")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_using_swagger_import.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="petstore",
parameters={
"properties": {
"format": "swagger-link-json",
"path": "petstore",
"value": "http://petstore.swagger.io/v2/swagger.json",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingSwaggerImport.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingSwaggerImport.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiUsingSwaggerImport() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "petstore", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("petstore"),
Format: to.Ptr(armapimanagement.ContentFormatSwaggerLinkJSON),
Value: to.Ptr("http://petstore.swagger.io/v2/swagger.json"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("petstoreapi"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("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."),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("petstore"),
// DisplayName: to.Ptr("Swagger Petstore"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP)},
// ServiceURL: to.Ptr("http://petstore.swagger.io/v2"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingSwaggerImport.json
*/
async function apiManagementCreateApiUsingSwaggerImport() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "petstore";
const parameters = {
format: "swagger-link-json",
path: "petstore",
value: "http://petstore.swagger.io/v2/swagger.json",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-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"
}
}
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingWadlImport.json
*/
/**
* Sample code: ApiManagementCreateApiUsingWadlImport.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiUsingWadlImport(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("petstore")
.withExistingService("rg1", "apimService1")
.withValue(
"https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl")
.withFormat(ContentFormat.WADL_LINK_JSON)
.withPath("collector")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_using_wadl_import.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="petstore",
parameters={
"properties": {
"format": "wadl-link-json",
"path": "collector",
"value": "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingWadlImport.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingWadlImport.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiUsingWadlImport() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "petstore", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("collector"),
Format: to.Ptr(armapimanagement.ContentFormatWadlLinkJSON),
Value: to.Ptr("https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("collectorwadl"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr(""),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("collector"),
// DisplayName: to.Ptr("http://localhost:8080/collector-northbound"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://localhost:8080/collector-northbound"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingWadlImport.json
*/
async function apiManagementCreateApiUsingWadlImport() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "petstore";
const parameters = {
format: "wadl-link-json",
path: "collector",
value:
"https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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
}
}
ApiManagementCreateApiWithMultipleAuthServers
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2022-08-01
{
"properties": {
"description": "apidescription5200",
"authenticationSettings": {
"oAuth2AuthenticationSettings": [
{
"authorizationServerId": "authorizationServerId2283",
"scope": "oauth2scope2580"
},
{
"authorizationServerId": "authorizationServerId2284",
"scope": "oauth2scope2581"
}
]
},
"subscriptionKeyParameterNames": {
"header": "header4520",
"query": "query3037"
},
"displayName": "apiname1463",
"serviceUrl": "http://newechoapi.cloudapp.net/api",
"path": "newapiPath",
"protocols": [
"https",
"http"
]
}
}
import com.azure.resourcemanager.apimanagement.models.AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.OAuth2AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import com.azure.resourcemanager.apimanagement.models.SubscriptionKeyParameterNamesContract;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleAuthServers.json
*/
/**
* Sample code: ApiManagementCreateApiWithMultipleAuthServers.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiWithMultipleAuthServers(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("apiname1463")
.withServiceUrl("http://newechoapi.cloudapp.net/api")
.withPath("newapiPath")
.withProtocols(Arrays.asList(Protocol.HTTPS, Protocol.HTTP))
.withDescription("apidescription5200")
.withAuthenticationSettings(
new AuthenticationSettingsContract()
.withOAuth2AuthenticationSettings(
Arrays
.asList(
new OAuth2AuthenticationSettingsContract()
.withAuthorizationServerId("fakeTokenPlaceholder")
.withScope("oauth2scope2580"),
new OAuth2AuthenticationSettingsContract()
.withAuthorizationServerId("fakeTokenPlaceholder")
.withScope("oauth2scope2581"))))
.withSubscriptionKeyParameterNames(
new SubscriptionKeyParameterNamesContract().withHeaderProperty("header4520").withQuery("query3037"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_with_multiple_auth_servers.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"authenticationSettings": {
"oAuth2AuthenticationSettings": [
{"authorizationServerId": "authorizationServerId2283", "scope": "oauth2scope2580"},
{"authorizationServerId": "authorizationServerId2284", "scope": "oauth2scope2581"},
]
},
"description": "apidescription5200",
"displayName": "apiname1463",
"path": "newapiPath",
"protocols": ["https", "http"],
"serviceUrl": "http://newechoapi.cloudapp.net/api",
"subscriptionKeyParameterNames": {"header": "header4520", "query": "query3037"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleAuthServers.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleAuthServers.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiWithMultipleAuthServers() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("apidescription5200"),
AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
OAuth2AuthenticationSettings: []*armapimanagement.OAuth2AuthenticationSettingsContract{
{
AuthorizationServerID: to.Ptr("authorizationServerId2283"),
Scope: to.Ptr("oauth2scope2580"),
},
{
AuthorizationServerID: to.Ptr("authorizationServerId2284"),
Scope: to.Ptr("oauth2scope2581"),
}},
},
SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
Header: to.Ptr("header4520"),
Query: to.Ptr("query3037"),
},
Path: to.Ptr("newapiPath"),
DisplayName: to.Ptr("apiname1463"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTPS),
to.Ptr(armapimanagement.ProtocolHTTP)},
ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apiid9419"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("apidescription5200"),
// APIRevision: to.Ptr("1"),
// AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
// OAuth2: &armapimanagement.OAuth2AuthenticationSettingsContract{
// AuthorizationServerID: to.Ptr("authorizationServerId2283"),
// Scope: to.Ptr("oauth2scope2580"),
// },
// OAuth2AuthenticationSettings: []*armapimanagement.OAuth2AuthenticationSettingsContract{
// {
// AuthorizationServerID: to.Ptr("authorizationServerId2283"),
// Scope: to.Ptr("oauth2scope2580"),
// },
// {
// AuthorizationServerID: to.Ptr("authorizationServerId2284"),
// Scope: to.Ptr("oauth2scope2581"),
// }},
// },
// IsCurrent: to.Ptr(true),
// IsOnline: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("header4520"),
// Query: to.Ptr("query3037"),
// },
// Path: to.Ptr("newapiPath"),
// DisplayName: to.Ptr("apiname1463"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleAuthServers.json
*/
async function apiManagementCreateApiWithMultipleAuthServers() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
path: "newapiPath",
description: "apidescription5200",
authenticationSettings: {
oAuth2AuthenticationSettings: [
{
authorizationServerId: "authorizationServerId2283",
scope: "oauth2scope2580",
},
{
authorizationServerId: "authorizationServerId2284",
scope: "oauth2scope2581",
},
],
},
displayName: "apiname1463",
protocols: ["https", "http"],
serviceUrl: "http://newechoapi.cloudapp.net/api",
subscriptionKeyParameterNames: { header: "header4520", query: "query3037" },
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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"
],
"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=2022-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"
},
"oAuth2AuthenticationSettings": [
{
"authorizationServerId": "authorizationServerId2283",
"scope": "oauth2scope2580"
},
{
"authorizationServerId": "authorizationServerId2284",
"scope": "oauth2scope2581"
}
]
},
"subscriptionKeyParameterNames": {
"header": "header4520",
"query": "query3037"
},
"isCurrent": true,
"isOnline": true
}
}
ApiManagementCreateApiWithMultipleOpenIdConnectProviders
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2022-08-01
{
"properties": {
"description": "apidescription5200",
"authenticationSettings": {
"openidAuthenticationSettings": [
{
"openidProviderId": "openidProviderId2283",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
},
{
"openidProviderId": "openidProviderId2284",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
}
]
},
"subscriptionKeyParameterNames": {
"header": "header4520",
"query": "query3037"
},
"displayName": "apiname1463",
"serviceUrl": "http://newechoapi.cloudapp.net/api",
"path": "newapiPath",
"protocols": [
"https",
"http"
]
}
}
import com.azure.resourcemanager.apimanagement.models.AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.BearerTokenSendingMethods;
import com.azure.resourcemanager.apimanagement.models.OpenIdAuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import com.azure.resourcemanager.apimanagement.models.SubscriptionKeyParameterNamesContract;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleOpenIdConnectProviders.json
*/
/**
* Sample code: ApiManagementCreateApiWithMultipleOpenIdConnectProviders.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiWithMultipleOpenIdConnectProviders(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("apiname1463")
.withServiceUrl("http://newechoapi.cloudapp.net/api")
.withPath("newapiPath")
.withProtocols(Arrays.asList(Protocol.HTTPS, Protocol.HTTP))
.withDescription("apidescription5200")
.withAuthenticationSettings(
new AuthenticationSettingsContract()
.withOpenidAuthenticationSettings(
Arrays
.asList(
new OpenIdAuthenticationSettingsContract()
.withOpenidProviderId("openidProviderId2283")
.withBearerTokenSendingMethods(
Arrays.asList(BearerTokenSendingMethods.AUTHORIZATION_HEADER)),
new OpenIdAuthenticationSettingsContract()
.withOpenidProviderId("openidProviderId2284")
.withBearerTokenSendingMethods(
Arrays.asList(BearerTokenSendingMethods.AUTHORIZATION_HEADER)))))
.withSubscriptionKeyParameterNames(
new SubscriptionKeyParameterNamesContract().withHeaderProperty("header4520").withQuery("query3037"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_with_multiple_open_id_connect_providers.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"authenticationSettings": {
"openidAuthenticationSettings": [
{
"bearerTokenSendingMethods": ["authorizationHeader"],
"openidProviderId": "openidProviderId2283",
},
{
"bearerTokenSendingMethods": ["authorizationHeader"],
"openidProviderId": "openidProviderId2284",
},
]
},
"description": "apidescription5200",
"displayName": "apiname1463",
"path": "newapiPath",
"protocols": ["https", "http"],
"serviceUrl": "http://newechoapi.cloudapp.net/api",
"subscriptionKeyParameterNames": {"header": "header4520", "query": "query3037"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleOpenIdConnectProviders.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleOpenIdConnectProviders.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiWithMultipleOpenIdConnectProviders() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("apidescription5200"),
AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
OpenidAuthenticationSettings: []*armapimanagement.OpenIDAuthenticationSettingsContract{
{
BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
OpenidProviderID: to.Ptr("openidProviderId2283"),
},
{
BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
OpenidProviderID: to.Ptr("openidProviderId2284"),
}},
},
SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
Header: to.Ptr("header4520"),
Query: to.Ptr("query3037"),
},
Path: to.Ptr("newapiPath"),
DisplayName: to.Ptr("apiname1463"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTPS),
to.Ptr(armapimanagement.ProtocolHTTP)},
ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apiid9419"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("apidescription5200"),
// APIRevision: to.Ptr("1"),
// AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
// Openid: &armapimanagement.OpenIDAuthenticationSettingsContract{
// BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
// to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
// OpenidProviderID: to.Ptr("openidProviderId2283"),
// },
// OpenidAuthenticationSettings: []*armapimanagement.OpenIDAuthenticationSettingsContract{
// {
// BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
// to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
// OpenidProviderID: to.Ptr("openidProviderId2283"),
// },
// {
// BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
// to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
// OpenidProviderID: to.Ptr("openidProviderId2284"),
// }},
// },
// IsCurrent: to.Ptr(true),
// IsOnline: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("header4520"),
// Query: to.Ptr("query3037"),
// },
// Path: to.Ptr("newapiPath"),
// DisplayName: to.Ptr("apiname1463"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://newechoapi.cloudapp.net/api"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleOpenIdConnectProviders.json
*/
async function apiManagementCreateApiWithMultipleOpenIdConnectProviders() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
path: "newapiPath",
description: "apidescription5200",
authenticationSettings: {
openidAuthenticationSettings: [
{
bearerTokenSendingMethods: ["authorizationHeader"],
openidProviderId: "openidProviderId2283",
},
{
bearerTokenSendingMethods: ["authorizationHeader"],
openidProviderId: "openidProviderId2284",
},
],
},
displayName: "apiname1463",
protocols: ["https", "http"],
serviceUrl: "http://newechoapi.cloudapp.net/api",
subscriptionKeyParameterNames: { header: "header4520", query: "query3037" },
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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"
],
"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=2022-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": {
"openid": {
"openidProviderId": "openidProviderId2283",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
},
"openidAuthenticationSettings": [
{
"openidProviderId": "openidProviderId2283",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
},
{
"openidProviderId": "openidProviderId2284",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
}
]
},
"subscriptionKeyParameterNames": {
"header": "header4520",
"query": "query3037"
},
"isCurrent": true,
"isOnline": true
}
}
ApiManagementCreateApiWithOpenIdConnect
Sample Request
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2022-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"
}
}
}
import com.azure.resourcemanager.apimanagement.models.AuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.BearerTokenSendingMethods;
import com.azure.resourcemanager.apimanagement.models.OpenIdAuthenticationSettingsContract;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import com.azure.resourcemanager.apimanagement.models.SubscriptionKeyParameterNamesContract;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithOpenIdConnect.json
*/
/**
* Sample code: ApiManagementCreateApiWithOpenIdConnect.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateApiWithOpenIdConnect(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("Swagger Petstore")
.withServiceUrl("http://petstore.swagger.io/v2")
.withPath("petstore")
.withProtocols(Arrays.asList(Protocol.HTTPS))
.withDescription(
"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.")
.withAuthenticationSettings(
new AuthenticationSettingsContract()
.withOpenid(
new OpenIdAuthenticationSettingsContract()
.withOpenidProviderId("testopenid")
.withBearerTokenSendingMethods(
Arrays.asList(BearerTokenSendingMethods.AUTHORIZATION_HEADER))))
.withSubscriptionKeyParameterNames(
new SubscriptionKeyParameterNamesContract()
.withHeaderProperty("Ocp-Apim-Subscription-Key")
.withQuery("subscription-key"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_api_with_open_id_connect.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"authenticationSettings": {
"openid": {"bearerTokenSendingMethods": ["authorizationHeader"], "openidProviderId": "testopenid"}
},
"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.",
"displayName": "Swagger Petstore",
"path": "petstore",
"protocols": ["https"],
"serviceUrl": "http://petstore.swagger.io/v2",
"subscriptionKeyParameterNames": {"header": "Ocp-Apim-Subscription-Key", "query": "subscription-key"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithOpenIdConnect.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithOpenIdConnect.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateApiWithOpenIdConnect() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Description: to.Ptr("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."),
AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
Openid: &armapimanagement.OpenIDAuthenticationSettingsContract{
BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
OpenidProviderID: to.Ptr("testopenid"),
},
},
SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
Header: to.Ptr("Ocp-Apim-Subscription-Key"),
Query: to.Ptr("subscription-key"),
},
Path: to.Ptr("petstore"),
DisplayName: to.Ptr("Swagger Petstore"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTPS)},
ServiceURL: to.Ptr("http://petstore.swagger.io/v2"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("58da4c4ccdae970a08121230"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230"),
// Properties: &armapimanagement.APIContractProperties{
// Description: to.Ptr("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."),
// APIRevision: to.Ptr("1"),
// AuthenticationSettings: &armapimanagement.AuthenticationSettingsContract{
// Openid: &armapimanagement.OpenIDAuthenticationSettingsContract{
// BearerTokenSendingMethods: []*armapimanagement.BearerTokenSendingMethods{
// to.Ptr(armapimanagement.BearerTokenSendingMethodsAuthorizationHeader)},
// OpenidProviderID: to.Ptr("testopenid"),
// },
// },
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("petstore"),
// DisplayName: to.Ptr("Swagger Petstore"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://petstore.swagger.io/v2"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithOpenIdConnect.json
*/
async function apiManagementCreateApiWithOpenIdConnect() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
path: "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.",
authenticationSettings: {
openid: {
bearerTokenSendingMethods: ["authorizationHeader"],
openidProviderId: "testopenid",
},
},
displayName: "Swagger Petstore",
protocols: ["https"],
serviceUrl: "http://petstore.swagger.io/v2",
subscriptionKeyParameterNames: {
header: "Ocp-Apim-Subscription-Key",
query: "subscription-key",
},
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"description": "apidescription5200",
"displayName": "apiname1463",
"type": "graphql",
"serviceUrl": "https://api.spacex.land/graphql",
"path": "graphql-api",
"protocols": [
"http",
"https"
]
}
}
import com.azure.resourcemanager.apimanagement.models.ApiType;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGraphQLApi.json
*/
/**
* Sample code: ApiManagementCreateGraphQLApi.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateGraphQLApi(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("apiname1463")
.withServiceUrl("https://api.spacex.land/graphql")
.withPath("graphql-api")
.withProtocols(Arrays.asList(Protocol.HTTP, Protocol.HTTPS))
.withDescription("apidescription5200")
.withApiType(ApiType.GRAPHQL)
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_graph_ql_api.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"description": "apidescription5200",
"displayName": "apiname1463",
"path": "graphql-api",
"protocols": ["http", "https"],
"serviceUrl": "https://api.spacex.land/graphql",
"type": "graphql",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGraphQLApi.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGraphQLApi.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateGraphQlApi() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
APIType: to.Ptr(armapimanagement.APITypeGraphql),
Description: to.Ptr("apidescription5200"),
Path: to.Ptr("graphql-api"),
DisplayName: to.Ptr("apiname1463"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolHTTP),
to.Ptr(armapimanagement.ProtocolHTTPS)},
ServiceURL: to.Ptr("https://api.spacex.land/graphql"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apiid9419"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419"),
// Properties: &armapimanagement.APIContractProperties{
// APIType: to.Ptr(armapimanagement.APITypeGraphql),
// Description: to.Ptr("apidescription5200"),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// IsOnline: to.Ptr(true),
// Path: to.Ptr("graphql-api"),
// DisplayName: to.Ptr("apiname1463"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTP),
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("https://api.spacex.land/graphql"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGraphQLApi.json
*/
async function apiManagementCreateGraphQlApi() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
apiType: "graphql",
path: "graphql-api",
description: "apidescription5200",
displayName: "apiname1463",
protocols: ["http", "https"],
serviceUrl: "https://api.spacex.land/graphql",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"format": "wsdl-link",
"value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
"path": "currency",
"apiType": "soap",
"wsdlSelector": {
"wsdlServiceName": "CurrencyConvertor",
"wsdlEndpointName": "CurrencyConvertorSoap"
}
}
}
import com.azure.resourcemanager.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector;
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
import com.azure.resourcemanager.apimanagement.models.SoapApiType;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json
*/
/**
* Sample code: ApiManagementCreateSoapPassThroughApiUsingWsdlImport.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateSoapPassThroughApiUsingWsdlImport(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("soapApi")
.withExistingService("rg1", "apimService1")
.withValue("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL")
.withFormat(ContentFormat.WSDL_LINK)
.withWsdlSelector(
new ApiCreateOrUpdatePropertiesWsdlSelector()
.withWsdlServiceName("CurrencyConvertor")
.withWsdlEndpointName("CurrencyConvertorSoap"))
.withSoapApiType(SoapApiType.SOAP)
.withPath("currency")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_soap_pass_through_api_using_wsdl_import.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="soapApi",
parameters={
"properties": {
"apiType": "soap",
"format": "wsdl-link",
"path": "currency",
"value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
"wsdlSelector": {"wsdlEndpointName": "CurrencyConvertorSoap", "wsdlServiceName": "CurrencyConvertor"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateSoapPassThroughApiUsingWsdlImport() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "soapApi", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("currency"),
Format: to.Ptr(armapimanagement.ContentFormatWsdlLink),
SoapAPIType: to.Ptr(armapimanagement.SoapAPITypeSoapPassThrough),
Value: to.Ptr("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL"),
WsdlSelector: &armapimanagement.APICreateOrUpdatePropertiesWsdlSelector{
WsdlEndpointName: to.Ptr("CurrencyConvertorSoap"),
WsdlServiceName: to.Ptr("CurrencyConvertor"),
},
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("soapApi"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi"),
// Properties: &armapimanagement.APIContractProperties{
// APIType: to.Ptr(armapimanagement.APITypeSoap),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("currency"),
// DisplayName: to.Ptr("CurrencyConvertor"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://www.webservicex.net"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json
*/
async function apiManagementCreateSoapPassThroughApiUsingWsdlImport() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "soapApi";
const parameters = {
format: "wsdl-link",
path: "currency",
soapApiType: "soap",
value: "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
wsdlSelector: {
wsdlEndpointName: "CurrencyConvertorSoap",
wsdlServiceName: "CurrencyConvertor",
},
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"format": "wsdl-link",
"value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
"path": "currency",
"wsdlSelector": {
"wsdlServiceName": "CurrencyConvertor",
"wsdlEndpointName": "CurrencyConvertorSoap"
}
}
}
import com.azure.resourcemanager.apimanagement.models.ApiCreateOrUpdatePropertiesWsdlSelector;
import com.azure.resourcemanager.apimanagement.models.ContentFormat;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json
*/
/**
* Sample code: ApiManagementCreateSoapToRestApiUsingWsdlImport.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateSoapToRestApiUsingWsdlImport(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("soapApi")
.withExistingService("rg1", "apimService1")
.withValue("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL")
.withFormat(ContentFormat.WSDL_LINK)
.withWsdlSelector(
new ApiCreateOrUpdatePropertiesWsdlSelector()
.withWsdlServiceName("CurrencyConvertor")
.withWsdlEndpointName("CurrencyConvertorSoap"))
.withPath("currency")
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_soap_to_rest_api_using_wsdl_import.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="soapApi",
parameters={
"properties": {
"format": "wsdl-link",
"path": "currency",
"value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
"wsdlSelector": {"wsdlEndpointName": "CurrencyConvertorSoap", "wsdlServiceName": "CurrencyConvertor"},
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateSoapToRestApiUsingWsdlImport() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "soapApi", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
Path: to.Ptr("currency"),
Format: to.Ptr(armapimanagement.ContentFormatWsdlLink),
Value: to.Ptr("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL"),
WsdlSelector: &armapimanagement.APICreateOrUpdatePropertiesWsdlSelector{
WsdlEndpointName: to.Ptr("CurrencyConvertorSoap"),
WsdlServiceName: to.Ptr("CurrencyConvertor"),
},
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("soapApi"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi"),
// Properties: &armapimanagement.APIContractProperties{
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// SubscriptionKeyParameterNames: &armapimanagement.SubscriptionKeyParameterNamesContract{
// Header: to.Ptr("Ocp-Apim-Subscription-Key"),
// Query: to.Ptr("subscription-key"),
// },
// Path: to.Ptr("currency"),
// DisplayName: to.Ptr("CurrencyConvertor"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolHTTPS)},
// ServiceURL: to.Ptr("http://www.webservicex.net"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json
*/
async function apiManagementCreateSoapToRestApiUsingWsdlImport() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "soapApi";
const parameters = {
format: "wsdl-link",
path: "currency",
value: "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
wsdlSelector: {
wsdlEndpointName: "CurrencyConvertorSoap",
wsdlServiceName: "CurrencyConvertor",
},
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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=2022-08-01
{
"properties": {
"description": "apidescription5200",
"displayName": "apiname1463",
"type": "websocket",
"serviceUrl": "wss://echo.websocket.org",
"path": "newapiPath",
"protocols": [
"wss",
"ws"
]
}
}
import com.azure.resourcemanager.apimanagement.models.ApiType;
import com.azure.resourcemanager.apimanagement.models.Protocol;
import java.util.Arrays;
/** Samples for Api CreateOrUpdate. */
public final class Main {
/*
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateWebsocketApi.json
*/
/**
* Sample code: ApiManagementCreateWebSocketApi.
*
* @param manager Entry point to ApiManagementManager.
*/
public static void apiManagementCreateWebSocketApi(
com.azure.resourcemanager.apimanagement.ApiManagementManager manager) {
manager
.apis()
.define("tempgroup")
.withExistingService("rg1", "apimService1")
.withDisplayName("apiname1463")
.withServiceUrl("wss://echo.websocket.org")
.withPath("newapiPath")
.withProtocols(Arrays.asList(Protocol.WSS, Protocol.WS))
.withDescription("apidescription5200")
.withApiType(ApiType.WEBSOCKET)
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from typing import Any, IO, Union
from azure.identity import DefaultAzureCredential
from azure.mgmt.apimanagement import ApiManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-apimanagement
# USAGE
python api_management_create_websocket_api.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = ApiManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.api.begin_create_or_update(
resource_group_name="rg1",
service_name="apimService1",
api_id="tempgroup",
parameters={
"properties": {
"description": "apidescription5200",
"displayName": "apiname1463",
"path": "newapiPath",
"protocols": ["wss", "ws"],
"serviceUrl": "wss://echo.websocket.org",
"type": "websocket",
}
},
).result()
print(response)
# x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateWebsocketApi.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armapimanagement_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/apimanagement/armapimanagement/v2"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/4cd95123fb961c68740565a1efcaa5e43bd35802/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateWebsocketApi.json
func ExampleAPIClient_BeginCreateOrUpdate_apiManagementCreateWebSocketApi() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armapimanagement.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewAPIClient().BeginCreateOrUpdate(ctx, "rg1", "apimService1", "tempgroup", armapimanagement.APICreateOrUpdateParameter{
Properties: &armapimanagement.APICreateOrUpdateProperties{
APIType: to.Ptr(armapimanagement.APITypeWebsocket),
Description: to.Ptr("apidescription5200"),
Path: to.Ptr("newapiPath"),
DisplayName: to.Ptr("apiname1463"),
Protocols: []*armapimanagement.Protocol{
to.Ptr(armapimanagement.ProtocolWss),
to.Ptr(armapimanagement.ProtocolWs)},
ServiceURL: to.Ptr("wss://echo.websocket.org"),
},
}, &armapimanagement.APIClientBeginCreateOrUpdateOptions{IfMatch: nil})
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.APIContract = armapimanagement.APIContract{
// Name: to.Ptr("apiid9419"),
// Type: to.Ptr("Microsoft.ApiManagement/service/apis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419"),
// Properties: &armapimanagement.APIContractProperties{
// APIType: to.Ptr(armapimanagement.APITypeWebsocket),
// Description: to.Ptr("apidescription5200"),
// APIRevision: to.Ptr("1"),
// IsCurrent: to.Ptr(true),
// IsOnline: to.Ptr(true),
// Path: to.Ptr("newapiPath"),
// DisplayName: to.Ptr("apiname1463"),
// Protocols: []*armapimanagement.Protocol{
// to.Ptr(armapimanagement.ProtocolWs),
// to.Ptr(armapimanagement.ProtocolWss)},
// ServiceURL: to.Ptr("wss://echo.websocket.org"),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ApiManagementClient } = require("@azure/arm-apimanagement");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Creates new or updates existing specified API of the API Management service instance.
*
* @summary Creates new or updates existing specified API of the API Management service instance.
* x-ms-original-file: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateWebsocketApi.json
*/
async function apiManagementCreateWebSocketApi() {
const subscriptionId = process.env["APIMANAGEMENT_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["APIMANAGEMENT_RESOURCE_GROUP"] || "rg1";
const serviceName = "apimService1";
const apiId = "tempgroup";
const parameters = {
apiType: "websocket",
path: "newapiPath",
description: "apidescription5200",
displayName: "apiname1463",
protocols: ["wss", "ws"],
serviceUrl: "wss://echo.websocket.org",
};
const credential = new DefaultAzureCredential();
const client = new ApiManagementClient(credential, subscriptionId);
const result = await client.api.beginCreateOrUpdateAndWait(
resourceGroupName,
serviceName,
apiId,
parameters
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
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=2022-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
}
}
Definições
Informações de contato da API
Nome |
Tipo |
Description |
email
|
string
|
O endereço de email da pessoa/organização do contato. DEVE estar no formato de um endereço de email
|
name
|
string
|
O nome de identificação da pessoa/organização do contato
|
url
|
string
|
A URL que aponta para as informações de contato. DEVE estar no formato de uma URL
|
ApiContract
Detalhes da API.
Nome |
Tipo |
Description |
id
|
string
|
ID de recurso totalmente qualificada para o recurso. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
O nome do recurso
|
properties.apiRevision
|
string
|
Descreve a revisão da API. Se nenhum valor for fornecido, a revisão padrão 1 será criada
|
properties.apiRevisionDescription
|
string
|
Descrição da Revisão de API.
|
properties.apiVersion
|
string
|
Indica o identificador de versão da API se a API for versão
|
properties.apiVersionDescription
|
string
|
Descrição da versão da API.
|
properties.apiVersionSet
|
ApiVersionSetContractDetails
|
Detalhes do conjunto de versões
|
properties.apiVersionSetId
|
string
|
Um identificador de recurso para o ApiVersionSet relacionado.
|
properties.authenticationSettings
|
AuthenticationSettingsContract
|
Coleção de configurações de autenticação incluídas nessa API.
|
properties.contact
|
ApiContactInformation
|
Informações de contato para a API.
|
properties.description
|
string
|
A descrição da API. Pode incluir marcas de formatação HTML.
|
properties.displayName
|
string
|
Nome da API. Deve ter de 1 a 300 caracteres.
|
properties.isCurrent
|
boolean
|
Indica se a revisão da API é a revisão de API atual.
|
properties.isOnline
|
boolean
|
Indica se a revisão de API está acessível por meio do gateway.
|
properties.license
|
ApiLicenseInformation
|
Informações de licença para a API.
|
properties.path
|
string
|
A URL relativa que identifica exclusivamente esta API e todos os seus caminhos de recurso dentro da instância do serviço de Gerenciamento de API. Ele é acrescentado à URL base do Ponto de Extremidade de API especificada durante a criação da instância de serviço para formar uma URL pública para essa API.
|
properties.protocols
|
Protocol[]
|
Descreve em quais protocolos as operações nessa API podem ser invocadas.
|
properties.serviceUrl
|
string
|
A URL absoluta do serviço de back-end implementado esta API. Não pode ter mais de 2.000 caracteres.
|
properties.sourceApiId
|
string
|
Identificador de API da API de origem.
|
properties.subscriptionKeyParameterNames
|
SubscriptionKeyParameterNamesContract
|
Protocolos sobre os quais a API é disponibilizada.
|
properties.subscriptionRequired
|
boolean
|
Especifica se uma assinatura de API ou produto é necessária para acessar a API.
|
properties.termsOfServiceUrl
|
string
|
Uma URL para os Termos de Serviço da API. DEVE estar no formato de uma URL.
|
properties.type
|
ApiType
|
Tipo de API.
|
type
|
string
|
Tipo do recurso. Por exemplo, "Microsoft.Compute/virtualMachines" ou "Microsoft.Storage/storageAccounts"
|
ApiCreateOrUpdateParameter
Criar ou atualizar parâmetros da API.
Nome |
Tipo |
Description |
apiRevision
|
string
|
Descreve a revisão da API. Se nenhum valor for fornecido, a revisão padrão 1 será criada
|
apiRevisionDescription
|
string
|
Descrição da Revisão da API.
|
apiVersion
|
string
|
Indica o identificador de versão da API se a API for versão
|
apiVersionDescription
|
string
|
Descrição da versão da API.
|
apiVersionSetId
|
string
|
Um identificador de recurso para o ApiVersionSet relacionado.
|
authenticationSettings
|
AuthenticationSettingsContract
|
Coleção de configurações de autenticação incluídas nessa API.
|
contact
|
ApiContactInformation
|
Informações de contato para a API.
|
description
|
string
|
A descrição da API. Pode incluir marcas de formatação HTML.
|
isCurrent
|
boolean
|
Indica se a revisão da API é a revisão de API atual.
|
isOnline
|
boolean
|
Indica se a revisão de API está acessível por meio do gateway.
|
license
|
ApiLicenseInformation
|
Informações de licença para a API.
|
properties.apiType
|
SoapApiType
|
Tipo de API a ser criada.
http cria uma API REST
soap cria uma API de passagem SOAP
websocket cria a API websocket
graphql cria GraphQL API.
|
properties.apiVersionSet
|
ApiVersionSetContractDetails
|
Detalhes do conjunto de versões
|
properties.displayName
|
string
|
Nome da API. Deve ter de 1 a 300 caracteres.
|
properties.format
|
ContentFormat
|
Formato do Conteúdo no qual a API está sendo importada.
|
properties.path
|
string
|
A URL relativa que identifica exclusivamente esta API e todos os seus caminhos de recurso dentro da instância do serviço de Gerenciamento de API. Ele é acrescentado à URL base do Ponto de Extremidade de API especificada durante a criação da instância de serviço para formar uma URL pública para essa API.
|
properties.protocols
|
Protocol[]
|
Descreve em quais protocolos as operações nessa API podem ser invocadas.
|
properties.serviceUrl
|
string
|
A URL absoluta do serviço de back-end implementado esta API. Não pode ter mais de 2.000 caracteres.
|
properties.sourceApiId
|
string
|
Identificador de API da API de origem.
|
properties.translateRequiredQueryParameters
|
TranslateRequiredQueryParametersConduct
|
Estratégia de traduzir parâmetros de consulta necessários para os modelos. Por padrão, tem o valor 'template'. Valores possíveis: 'template', 'query'
|
properties.value
|
string
|
Valor de conteúdo ao importar uma API.
|
properties.wsdlSelector
|
WsdlSelector
|
Critérios para limitar a importação de WSDL a um subconjunto do documento.
|
subscriptionKeyParameterNames
|
SubscriptionKeyParameterNamesContract
|
Protocolos sobre os quais a API é disponibilizada.
|
subscriptionRequired
|
boolean
|
Especifica se uma assinatura de API ou produto é necessária para acessar a API.
|
termsOfServiceUrl
|
string
|
Uma URL para os Termos de Serviço da API. DEVE estar no formato de uma URL.
|
type
|
ApiType
|
Tipo de API.
|
Informações de licença de API
Nome |
Tipo |
Description |
name
|
string
|
O nome da licença usado para a API
|
url
|
string
|
Uma URL para a licença usada para a API. DEVE estar no formato de uma URL
|
ApiType
Tipo de API.
Nome |
Tipo |
Description |
graphql
|
string
|
|
http
|
string
|
|
soap
|
string
|
|
websocket
|
string
|
|
ApiVersionSetContractDetails
Um Conjunto de Versões de API contém a configuração comum para um conjunto de versões de API relacionadas
Nome |
Tipo |
Description |
description
|
string
|
Descrição do Conjunto de Versões da API.
|
id
|
string
|
Identificador do Conjunto de Versões da API existente. Omita esse valor para criar um novo Conjunto de Versões.
|
name
|
string
|
O nome de exibição do conjunto de versões da API.
|
versionHeaderName
|
string
|
Nome do parâmetro de cabeçalho HTTP que indica a versão da API se versioningScheme estiver definido como header .
|
versionQueryName
|
string
|
Nome do parâmetro de consulta que indica a versão da API se versioningScheme estiver definido como query .
|
versioningScheme
|
versioningScheme
|
Um valor que determina onde o identificador de Versão da API estará localizado em uma solicitação HTTP.
|
AuthenticationSettingsContract
Configurações de Autenticação de API.
bearerTokenSendingMethods
Como enviar o token para o servidor.
Nome |
Tipo |
Description |
authorizationHeader
|
string
|
O token de acesso será transmitido no cabeçalho autorização usando o esquema de portador
|
query
|
string
|
O token de acesso será transmitido como parâmetros de consulta.
|
ContentFormat
Formato do Conteúdo no qual a API está sendo importada.
Nome |
Tipo |
Description |
graphql-link
|
string
|
O ponto de extremidade da API GraphQL hospedado em um endereço de Internet publicamente acessível.
|
openapi
|
string
|
O conteúdo está embutido e o Tipo de Conteúdo é um Documento YAML do OpenAPI 3.0.
|
openapi+json
|
string
|
O conteúdo está embutido e o Tipo de Conteúdo é um Documento JSON OpenAPI 3.0.
|
openapi+json-link
|
string
|
O documento JSON do OpenAPI 3.0 é hospedado em um endereço de Internet publicamente acessível.
|
openapi-link
|
string
|
O documento YAML do OpenAPI 3.0 é hospedado em um endereço de Internet publicamente acessível.
|
swagger-json
|
string
|
O conteúdo está embutido e o Tipo de Conteúdo é um Documento JSON OpenAPI 2.0.
|
swagger-link-json
|
string
|
O documento JSON do OpenAPI 2.0 é hospedado em um endereço de Internet publicamente acessível.
|
wadl-link-json
|
string
|
O documento WADL é hospedado em um endereço de Internet publicamente acessível.
|
wadl-xml
|
string
|
O conteúdo está embutido e o Tipo de conteúdo é um documento WADL.
|
wsdl
|
string
|
O conteúdo está embutido e o documento é um documento WSDL/Soap.
|
wsdl-link
|
string
|
O documento WSDL é hospedado em um endereço de Internet publicamente acessível.
|
ErrorFieldContract
Contrato de Campo de Erro.
Nome |
Tipo |
Description |
code
|
string
|
Código de erro no nível da propriedade.
|
message
|
string
|
Representação legível por humanos do erro no nível da propriedade.
|
target
|
string
|
Nome da propriedade.
|
ErrorResponse
Resposta de erro.
Nome |
Tipo |
Description |
error.code
|
string
|
Código de erro definido pelo serviço. Esse código atua como um substatus do código de erro HTTP especificado na resposta.
|
error.details
|
ErrorFieldContract[]
|
A lista de campos inválidos enviados na solicitação, em caso de erro de validação.
|
error.message
|
string
|
Representação legível ao olho humano do erro.
|
OAuth2AuthenticationSettingsContract
Detalhes das configurações de Autenticação OAuth2 da API.
Nome |
Tipo |
Description |
authorizationServerId
|
string
|
Identificador do servidor de autorização OAuth.
|
scope
|
string
|
escopo de operações.
|
OpenIdAuthenticationSettingsContract
Detalhes das configurações de Autenticação OAuth2 da API.
Nome |
Tipo |
Description |
bearerTokenSendingMethods
|
bearerTokenSendingMethods[]
|
Como enviar o token para o servidor.
|
openidProviderId
|
string
|
Identificador do servidor de autorização OAuth.
|
Protocol
Descreve em quais protocolos as operações nessa API podem ser invocadas.
Nome |
Tipo |
Description |
http
|
string
|
|
https
|
string
|
|
ws
|
string
|
|
wss
|
string
|
|
SoapApiType
Tipo de API a ser criada.
http
cria uma API REST
soap
cria uma API de passagem SOAP
websocket
cria a API websocket
graphql
cria GraphQL API.
Nome |
Tipo |
Description |
graphql
|
string
|
Importa a API que tem um front-end GraphQL.
|
http
|
string
|
Importa uma API SOAP com um front-end RESTful.
|
soap
|
string
|
Importa a API SOAP com um front-end SOAP.
|
websocket
|
string
|
Importa a API com um front-end Websocket.
|
SubscriptionKeyParameterNamesContract
Detalhes dos nomes dos parâmetros da chave de assinatura.
Nome |
Tipo |
Description |
header
|
string
|
Nome do cabeçalho da chave de assinatura.
|
query
|
string
|
Nome do parâmetro da cadeia de consulta de chave de assinatura.
|
TranslateRequiredQueryParametersConduct
Estratégia de traduzir parâmetros de consulta necessários para os modelos. Por padrão, tem o valor 'template'. Valores possíveis: 'template', 'query'
Nome |
Tipo |
Description |
query
|
string
|
Deixa os parâmetros de consulta necessários como estão (nenhuma tradução concluída).
|
template
|
string
|
Converte os parâmetros de consulta necessários para os modelos. É um valor padrão
|
versioningScheme
Um valor que determina onde o identificador de Versão da API estará localizado em uma solicitação HTTP.
Nome |
Tipo |
Description |
Header
|
string
|
A Versão da API é passada em um cabeçalho HTTP.
|
Query
|
string
|
A Versão da API é passada em um parâmetro de consulta.
|
Segment
|
string
|
A Versão da API é passada em um segmento de caminho.
|
WsdlSelector
Critérios para limitar a importação de WSDL a um subconjunto do documento.
Nome |
Tipo |
Description |
wsdlEndpointName
|
string
|
Nome do ponto de extremidade (porta) a ser importado do WSDL
|
wsdlServiceName
|
string
|
Nome do serviço a ser importado do WSDL
|