API Management 서비스 인스턴스의 지정된 기존 API를 새로 만들거나 업데이트합니다.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?api-version=2022-08-01
URI 매개 변수
Name |
In(다음 안에) |
필수 |
형식 |
Description |
apiId
|
path |
True
|
string
|
API 수정 식별자입니다. 현재 API Management 서비스 instance 고유해야 합니다. 현재 버전이 아닌 수정 버전에는 가 있습니다. rev=n은 접미사로, 여기서 n은 수정 번호입니다.
regex 패턴: ^[^*#&+:<>?]+$
|
resourceGroupName
|
path |
True
|
string
|
리소스 그룹의 이름. 이름은 대소문자를 구분하지 않습니다.
|
serviceName
|
path |
True
|
string
|
API Management 서비스의 이름입니다.
regex 패턴: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$
|
subscriptionId
|
path |
True
|
string
|
대상 구독의 ID입니다.
|
api-version
|
query |
True
|
string
|
이 작업에 사용할 API 버전입니다.
|
Name |
필수 |
형식 |
Description |
If-Match
|
|
string
|
엔터티의 ETag입니다. 엔터티를 만들 때는 필요하지 않지만 엔터티를 업데이트할 때 필요합니다.
|
요청 본문
Name |
필수 |
형식 |
Description |
properties.path
|
True
|
string
|
API Management 서비스 인스턴스 내의 이 API 및 모든 해당 리소스 경로를 고유하게 식별하는 상대 URL입니다. 이 API에 대한 공용 URL을 형성하는 서비스 인스턴스를 만드는 동안 지정된 API 엔드포인트 기준 URL에 추가됩니다.
|
apiRevision
|
|
string
|
API의 수정 버전에 대해 설명합니다. 값이 제공되지 않으면 기본 수정 버전 1이 만들어집니다.
|
apiRevisionDescription
|
|
string
|
API 수정 버전에 대한 설명입니다.
|
apiVersion
|
|
string
|
API 버전이 지정된 경우 API의 버전 식별자를 나타냅니다.
|
apiVersionDescription
|
|
string
|
API 버전에 대한 설명입니다.
|
apiVersionSetId
|
|
string
|
관련 ApiVersionSet에 대한 리소스 식별자입니다.
|
authenticationSettings
|
|
AuthenticationSettingsContract
|
이 API에 포함된 인증 설정의 컬렉션입니다.
|
contact
|
|
ApiContactInformation
|
API에 대한 연락처 정보입니다.
|
description
|
|
string
|
API에 대한 설명입니다. HTML 서식 지정 태그를 포함할 수 있습니다.
|
isCurrent
|
|
boolean
|
API 수정 버전이 현재 api 수정 버전인지를 나타냅니다.
|
license
|
|
ApiLicenseInformation
|
API에 대한 라이선스 정보입니다.
|
properties.apiType
|
|
SoapApiType
|
만들 API의 유형입니다.
-
http REST API를 만듭니다.
-
soap SOAP 통과 API 만들기
-
websocket websocket API를 만듭니다.
-
graphql 는 GraphQL API를 만듭니다.
|
properties.apiVersionSet
|
|
ApiVersionSetContractDetails
|
버전 집합 세부 정보
|
properties.displayName
|
|
string
|
API 이름입니다. 길이는 1~300자여야 합니다.
|
properties.format
|
|
ContentFormat
|
API를 가져오는 콘텐츠의 형식입니다.
|
properties.protocols
|
|
Protocol[]
|
이 API의 작업을 호출할 수 있는 프로토콜을 설명합니다.
|
properties.serviceUrl
|
|
string
|
이 API를 구현하는 백 엔드 서비스의 절대 URL입니다. 2000자를 초과할 수 없습니다.
|
properties.sourceApiId
|
|
string
|
원본 API의 API 식별자입니다.
|
properties.translateRequiredQueryParameters
|
|
TranslateRequiredQueryParametersConduct
|
필요한 쿼리 매개 변수를 템플릿 매개 변수로 변환하는 전략입니다. 기본적으로 값은 'template'입니다. 가능한 값: 'template', 'query'
|
properties.value
|
|
string
|
API를 가져올 때의 콘텐츠 값입니다.
|
properties.wsdlSelector
|
|
WsdlSelector
|
WSDL의 가져오기를 문서의 하위 집합으로 제한하는 조건입니다.
|
subscriptionKeyParameterNames
|
|
SubscriptionKeyParameterNamesContract
|
API를 사용할 수 있는 프로토콜입니다.
|
subscriptionRequired
|
|
boolean
|
API에 액세스하는 데 API 또는 제품 구독이 필요한지 여부를 지정합니다.
|
termsOfServiceUrl
|
|
string
|
API에 대한 서비스 약관의 URL입니다. URL 형식이어야 합니다.
|
type
|
|
ApiType
|
API의 유형입니다.
|
응답
Name |
형식 |
Description |
200 OK
|
ApiContract
|
API가 성공적으로 업데이트되었습니다.
헤더
ETag: string
|
201 Created
|
ApiContract
|
API가 성공적으로 만들어졌습니다.
헤더
ETag: string
|
202 Accepted
|
|
API를 만들거나 업데이트하라는 요청이 수락되었습니다. 위치 헤더에는 장기 실행 작업의 상태 확인할 수 있는 URL이 포함되어 있습니다.
|
Other Status Codes
|
ErrorResponse
|
작업이 실패한 이유를 설명하는 오류 응답입니다.
|
보안
azure_auth
Azure Active Directory OAuth2 Flow.
형식:
oauth2
Flow:
implicit
권한 부여 URL:
https://login.microsoftonline.com/common/oauth2/authorize
범위
Name |
Description |
user_impersonation
|
사용자 계정 가장
|
예제
ApiManagementCreateApi
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApi.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "apidescription5200",
AuthenticationSettings = new AuthenticationSettingsContract()
{
OAuth2 = new OAuth2AuthenticationSettingsContract()
{
AuthorizationServerId = "authorizationServerId2283",
Scope = "oauth2scope2580",
},
},
SubscriptionKeyParameterNames = new SubscriptionKeyParameterNamesContract()
{
Header = "header4520",
Query = "query3037",
},
DisplayName = "apiname1463",
ServiceLink = "http://newechoapi.cloudapp.net/api",
Path = "newapiPath",
Protocols =
{
ApiOperationInvokableProtocol.Https,ApiOperationInvokableProtocol.Http
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiClone.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "echo-api2";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "Copy of Existing Echo Api including Operations.",
IsCurrent = true,
IsSubscriptionRequired = true,
SourceApiId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001"),
DisplayName = "Echo API2",
ServiceLink = "http://echoapi.cloudapp.net/api",
Path = "echo2",
Protocols =
{
ApiOperationInvokableProtocol.Http,ApiOperationInvokableProtocol.Https
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "echoapiv3";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "Create Echo API into a new Version using Existing Version Set and Copy all Operations.",
ApiVersion = "v4",
IsCurrent = true,
ApiVersionSetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458"),
IsSubscriptionRequired = true,
SourceApiId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath"),
DisplayName = "Echo API2",
ServiceLink = "http://echoapi.cloudapp.net/api",
Path = "echo2",
Protocols =
{
ApiOperationInvokableProtocol.Http,ApiOperationInvokableProtocol.Https
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "echo-api;rev=3";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
ApiRevisionDescription = "Creating a Revision of an existing API",
SourceApiId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api"),
ServiceLink = "http://echoapi.cloudapp.net/apiv3",
Path = "echo",
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "apidocs";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
ServiceLink = "http://petstore.swagger.wordnik.com/api",
Path = "petstoreapi123",
Value = "http://apimpimportviaurl.azurewebsites.net/api/apidocs/",
Format = new ContentFormat("swagger-link"),
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3Import.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "petstore";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "petstore",
Value = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
Format = ContentFormat.OpenApiLink,
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingOai3ImportWithTranslateRequiredQueryParametersConduct.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "petstore";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "petstore",
Value = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml",
Format = ContentFormat.OpenApiLink,
TranslateRequiredQueryParametersConduct = TranslateRequiredQueryParametersConduct.Template,
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingSwaggerImport.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "petstore";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "petstore",
Value = "http://petstore.swagger.io/v2/swagger.json",
Format = ContentFormat.SwaggerLinkJson,
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiUsingWadlImport.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "petstore";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "collector",
Value = "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl",
Format = ContentFormat.WadlLinkJson,
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleAuthServers.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "apidescription5200",
AuthenticationSettings = new AuthenticationSettingsContract()
{
OAuth2AuthenticationSettings =
{
new OAuth2AuthenticationSettingsContract()
{
AuthorizationServerId = "authorizationServerId2283",
Scope = "oauth2scope2580",
},new OAuth2AuthenticationSettingsContract()
{
AuthorizationServerId = "authorizationServerId2284",
Scope = "oauth2scope2581",
}
},
},
SubscriptionKeyParameterNames = new SubscriptionKeyParameterNamesContract()
{
Header = "header4520",
Query = "query3037",
},
DisplayName = "apiname1463",
ServiceLink = "http://newechoapi.cloudapp.net/api",
Path = "newapiPath",
Protocols =
{
ApiOperationInvokableProtocol.Https,ApiOperationInvokableProtocol.Http
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithMultipleOpenIdConnectProviders.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "apidescription5200",
AuthenticationSettings = new AuthenticationSettingsContract()
{
OpenidAuthenticationSettings =
{
new OpenIdAuthenticationSettingsContract()
{
OpenIdProviderId = "openidProviderId2283",
BearerTokenSendingMethods =
{
BearerTokenSendingMethod.AuthorizationHeader
},
},new OpenIdAuthenticationSettingsContract()
{
OpenIdProviderId = "openidProviderId2284",
BearerTokenSendingMethods =
{
BearerTokenSendingMethod.AuthorizationHeader
},
}
},
},
SubscriptionKeyParameterNames = new SubscriptionKeyParameterNamesContract()
{
Header = "header4520",
Query = "query3037",
},
DisplayName = "apiname1463",
ServiceLink = "http://newechoapi.cloudapp.net/api",
Path = "newapiPath",
Protocols =
{
ApiOperationInvokableProtocol.Https,ApiOperationInvokableProtocol.Http
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateApiWithOpenIdConnect.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
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 = new AuthenticationSettingsContract()
{
OpenId = new OpenIdAuthenticationSettingsContract()
{
OpenIdProviderId = "testopenid",
BearerTokenSendingMethods =
{
BearerTokenSendingMethod.AuthorizationHeader
},
},
},
SubscriptionKeyParameterNames = new SubscriptionKeyParameterNamesContract()
{
Header = "Ocp-Apim-Subscription-Key",
Query = "subscription-key",
},
DisplayName = "Swagger Petstore",
ServiceLink = "http://petstore.swagger.io/v2",
Path = "petstore",
Protocols =
{
ApiOperationInvokableProtocol.Https
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateGraphQLApi.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "apidescription5200",
ApiType = ApiType.GraphQL,
DisplayName = "apiname1463",
ServiceLink = "https://api.spacex.land/graphql",
Path = "graphql-api",
Protocols =
{
ApiOperationInvokableProtocol.Http,ApiOperationInvokableProtocol.Https
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "soapApi";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "currency",
Value = "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
Format = ContentFormat.WsdlLink,
WsdlSelector = new ApiCreateOrUpdatePropertiesWsdlSelector()
{
WsdlServiceName = "CurrencyConvertor",
WsdlEndpointName = "CurrencyConvertorSoap",
},
SoapApiType = SoapApiType.SoapPassThrough,
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "soapApi";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Path = "currency",
Value = "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",
Format = ContentFormat.WsdlLink,
WsdlSelector = new ApiCreateOrUpdatePropertiesWsdlSelector()
{
WsdlServiceName = "CurrencyConvertor",
WsdlEndpointName = "CurrencyConvertorSoap",
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
샘플 요청
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
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.ApiManagement.Models;
using Azure.ResourceManager.ApiManagement;
// Generated from example definition: specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2022-08-01/examples/ApiManagementCreateWebsocketApi.json
// this example is just showing the usage of "Api_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ApiManagementServiceResource created on azure
// for more information of creating ApiManagementServiceResource, please refer to the document of ApiManagementServiceResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
string serviceName = "apimService1";
ResourceIdentifier apiManagementServiceResourceId = ApiManagementServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serviceName);
ApiManagementServiceResource apiManagementService = client.GetApiManagementServiceResource(apiManagementServiceResourceId);
// get the collection of this ApiResource
ApiCollection collection = apiManagementService.GetApis();
// invoke the operation
string apiId = "tempgroup";
ApiCreateOrUpdateContent content = new ApiCreateOrUpdateContent()
{
Description = "apidescription5200",
ApiType = ApiType.WebSocket,
DisplayName = "apiname1463",
ServiceLink = "wss://echo.websocket.org",
Path = "newapiPath",
Protocols =
{
ApiOperationInvokableProtocol.Wss,ApiOperationInvokableProtocol.Ws
},
};
ArmOperation<ApiResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, apiId, content);
ApiResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ApiData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
샘플 응답
{
"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
}
}
정의
API 연락처 정보
Name |
형식 |
Description |
email
|
string
|
연락처/organization 전자 메일 주소입니다. 전자 메일 주소 형식이어야 합니다.
|
name
|
string
|
연락처/organization 식별 이름
|
url
|
string
|
연락처 정보를 가리키는 URL입니다. URL 형식이어야 합니다.
|
ApiContract
API 세부 정보입니다.
Name |
형식 |
Description |
id
|
string
|
리소스에 대한 정규화된 리소스 ID입니다. 예 - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
리소스의 이름입니다.
|
properties.apiRevision
|
string
|
API의 수정 버전에 대해 설명합니다. 값이 제공되지 않으면 기본 수정 버전 1이 만들어집니다.
|
properties.apiRevisionDescription
|
string
|
API 수정 버전에 대한 설명입니다.
|
properties.apiVersion
|
string
|
API 버전이 지정된 경우 API의 버전 식별자를 나타냅니다.
|
properties.apiVersionDescription
|
string
|
API 버전에 대한 설명입니다.
|
properties.apiVersionSet
|
ApiVersionSetContractDetails
|
버전 집합 세부 정보
|
properties.apiVersionSetId
|
string
|
관련 ApiVersionSet에 대한 리소스 식별자입니다.
|
properties.authenticationSettings
|
AuthenticationSettingsContract
|
이 API에 포함된 인증 설정 컬렉션입니다.
|
properties.contact
|
ApiContactInformation
|
API에 대한 연락처 정보입니다.
|
properties.description
|
string
|
API에 대한 설명입니다. HTML 서식 지정 태그를 포함할 수 있습니다.
|
properties.displayName
|
string
|
API 이름입니다. 길이는 1~300자여야 합니다.
|
properties.isCurrent
|
boolean
|
API 수정 버전이 현재 API 수정 버전인지를 나타냅니다.
|
properties.isOnline
|
boolean
|
게이트웨이를 통해 API 수정 버전에 액세스할 수 있는지를 나타냅니다.
|
properties.license
|
ApiLicenseInformation
|
API에 대한 라이선스 정보입니다.
|
properties.path
|
string
|
API Management 서비스 인스턴스 내의 이 API 및 모든 해당 리소스 경로를 고유하게 식별하는 상대 URL입니다. 이 API에 대한 공용 URL을 형성하는 서비스 인스턴스를 만드는 동안 지정된 API 엔드포인트 기준 URL에 추가됩니다.
|
properties.protocols
|
Protocol[]
|
이 API의 작업을 호출할 수 있는 프로토콜을 설명합니다.
|
properties.serviceUrl
|
string
|
이 API를 구현하는 백 엔드 서비스의 절대 URL입니다. 2000자를 초과할 수 없습니다.
|
properties.sourceApiId
|
string
|
원본 API의 API 식별자입니다.
|
properties.subscriptionKeyParameterNames
|
SubscriptionKeyParameterNamesContract
|
API를 사용할 수 있는 프로토콜입니다.
|
properties.subscriptionRequired
|
boolean
|
API에 액세스하는 데 API 또는 제품 구독이 필요한지 여부를 지정합니다.
|
properties.termsOfServiceUrl
|
string
|
API에 대한 서비스 약관에 대한 URL입니다. URL 형식이어야 합니다.
|
properties.type
|
ApiType
|
API 유형입니다.
|
type
|
string
|
리소스 형식입니다. 예: "Microsoft.Compute/virtualMachines" 또는 "Microsoft.Storage/storageAccounts"
|
ApiCreateOrUpdateParameter
API 매개 변수를 만들거나 업데이트합니다.
Name |
형식 |
Description |
apiRevision
|
string
|
API의 수정 버전에 대해 설명합니다. 값이 제공되지 않으면 기본 수정 버전 1이 만들어집니다.
|
apiRevisionDescription
|
string
|
API 수정 버전에 대한 설명입니다.
|
apiVersion
|
string
|
API 버전이 지정된 경우 API의 버전 식별자를 나타냅니다.
|
apiVersionDescription
|
string
|
API 버전에 대한 설명입니다.
|
apiVersionSetId
|
string
|
관련 ApiVersionSet에 대한 리소스 식별자입니다.
|
authenticationSettings
|
AuthenticationSettingsContract
|
이 API에 포함된 인증 설정 컬렉션입니다.
|
contact
|
ApiContactInformation
|
API에 대한 연락처 정보입니다.
|
description
|
string
|
API에 대한 설명입니다. HTML 서식 지정 태그를 포함할 수 있습니다.
|
isCurrent
|
boolean
|
API 수정 버전이 현재 API 수정 버전인지를 나타냅니다.
|
isOnline
|
boolean
|
게이트웨이를 통해 API 수정 버전에 액세스할 수 있는지를 나타냅니다.
|
license
|
ApiLicenseInformation
|
API에 대한 라이선스 정보입니다.
|
properties.apiType
|
SoapApiType
|
만들 API의 유형입니다.
-
http REST API를 만듭니다.
-
soap SOAP 통과 API를 만듭니다.
-
websocket websocket API를 만듭니다.
-
graphql 는 GraphQL API를 만듭니다.
|
properties.apiVersionSet
|
ApiVersionSetContractDetails
|
버전 집합 세부 정보
|
properties.displayName
|
string
|
API 이름입니다. 길이는 1~300자여야 합니다.
|
properties.format
|
ContentFormat
|
API를 가져오는 콘텐츠의 형식입니다.
|
properties.path
|
string
|
API Management 서비스 인스턴스 내의 이 API 및 모든 해당 리소스 경로를 고유하게 식별하는 상대 URL입니다. 이 API에 대한 공용 URL을 형성하는 서비스 인스턴스를 만드는 동안 지정된 API 엔드포인트 기준 URL에 추가됩니다.
|
properties.protocols
|
Protocol[]
|
이 API의 작업을 호출할 수 있는 프로토콜을 설명합니다.
|
properties.serviceUrl
|
string
|
이 API를 구현하는 백 엔드 서비스의 절대 URL입니다. 2000자를 초과할 수 없습니다.
|
properties.sourceApiId
|
string
|
원본 API의 API 식별자입니다.
|
properties.translateRequiredQueryParameters
|
TranslateRequiredQueryParametersConduct
|
필요한 쿼리 매개 변수를 템플릿 매개 변수로 변환하는 전략입니다. 기본적으로 값은 'template'입니다. 가능한 값: 'template', 'query'
|
properties.value
|
string
|
API를 가져올 때 콘텐츠 값입니다.
|
properties.wsdlSelector
|
WsdlSelector
|
WSDL 가져오기를 문서의 하위 집합으로 제한하는 조건입니다.
|
subscriptionKeyParameterNames
|
SubscriptionKeyParameterNamesContract
|
API를 사용할 수 있는 프로토콜입니다.
|
subscriptionRequired
|
boolean
|
API에 액세스하는 데 API 또는 제품 구독이 필요한지 여부를 지정합니다.
|
termsOfServiceUrl
|
string
|
API에 대한 서비스 약관의 URL입니다. URL 형식이어야 합니다.
|
type
|
ApiType
|
API 유형입니다.
|
API 라이선스 정보
Name |
형식 |
Description |
name
|
string
|
API에 사용되는 라이선스 이름
|
url
|
string
|
API에 사용되는 라이선스의 URL입니다. URL 형식이어야 합니다.
|
ApiType
API의 유형입니다.
Name |
형식 |
Description |
graphql
|
string
|
|
http
|
string
|
|
soap
|
string
|
|
websocket
|
string
|
|
ApiVersionSetContractDetails
API 버전 집합에는 관련된 API 버전 집합에 대한 공통 구성이 포함되어 있습니다.
Name |
형식 |
Description |
description
|
string
|
API 버전 집합에 대한 설명입니다.
|
id
|
string
|
기존 API 버전 집합의 식별자입니다. 이 값을 생략하여 새 버전 집합을 만듭니다.
|
name
|
string
|
API 버전 집합의 표시 이름입니다.
|
versionHeaderName
|
string
|
versioningScheme이 로 설정된 header 경우 API 버전을 나타내는 HTTP 헤더 매개 변수의 이름입니다.
|
versionQueryName
|
string
|
versioningScheme이 로 설정된 query 경우 API 버전을 나타내는 쿼리 매개 변수의 이름입니다.
|
versioningScheme
|
versioningScheme
|
API 버전 식별자를 HTTP 요청에 배치할 위치를 결정하는 값입니다.
|
AuthenticationSettingsContract
API 인증 설정.
bearerTokenSendingMethods
서버에 토큰을 보내는 방법입니다.
Name |
형식 |
Description |
authorizationHeader
|
string
|
액세스 토큰은 전달자 스키마를 사용하여 권한 부여 헤더에 전송됩니다.
|
query
|
string
|
액세스 토큰은 쿼리 매개 변수로 전송됩니다.
|
ContentFormat
API를 가져오는 콘텐츠의 형식입니다.
Name |
형식 |
Description |
graphql-link
|
string
|
공개적으로 액세스할 수 있는 인터넷 주소에서 호스트되는 GraphQL API 엔드포인트입니다.
|
openapi
|
string
|
콘텐츠는 인라인이고 콘텐츠 형식은 OpenAPI 3.0 YAML 문서입니다.
|
openapi+json
|
string
|
콘텐츠는 인라인이고 콘텐츠 형식은 OpenAPI 3.0 JSON 문서입니다.
|
openapi+json-link
|
string
|
OpenAPI 3.0 JSON 문서는 공개적으로 액세스할 수 있는 인터넷 주소에서 호스트됩니다.
|
openapi-link
|
string
|
OpenAPI 3.0 YAML 문서는 공개적으로 액세스할 수 있는 인터넷 주소에서 호스트됩니다.
|
swagger-json
|
string
|
콘텐츠는 인라인이고 콘텐츠 형식은 OpenAPI 2.0 JSON 문서입니다.
|
swagger-link-json
|
string
|
OpenAPI 2.0 JSON 문서는 공개적으로 액세스할 수 있는 인터넷 주소에서 호스트됩니다.
|
wadl-link-json
|
string
|
WADL 문서는 공개적으로 액세스할 수 있는 인터넷 주소에서 호스트됩니다.
|
wadl-xml
|
string
|
콘텐츠는 인라인이고 콘텐츠 형식은 WADL 문서입니다.
|
wsdl
|
string
|
내용은 인라인이며 문서는 WSDL/Soap 문서입니다.
|
wsdl-link
|
string
|
WSDL 문서는 공개적으로 액세스할 수 있는 인터넷 주소에서 호스트됩니다.
|
ErrorFieldContract
오류 필드 계약.
Name |
형식 |
Description |
code
|
string
|
속성 수준 오류 코드입니다.
|
message
|
string
|
사람이 읽을 수 있는 속성 수준 오류 표현입니다.
|
target
|
string
|
속성 이름입니다.
|
ErrorResponse
오류 응답.
Name |
형식 |
Description |
error.code
|
string
|
서비스에서 정의한 오류 코드입니다. 이 코드는 응답에 지정된 HTTP 오류 코드의 하위 상태로 사용됩니다.
|
error.details
|
ErrorFieldContract[]
|
유효성 검사 오류가 발생할 경우 잘못된 필드 목록이 요청에 전송됩니다.
|
error.message
|
string
|
사람이 읽을 수 있는 오류 표현입니다.
|
OAuth2AuthenticationSettingsContract
API OAuth2 인증 설정 세부 정보
Name |
형식 |
Description |
authorizationServerId
|
string
|
OAuth 권한 부여 서버 식별자입니다.
|
scope
|
string
|
작업 scope.
|
OpenIdAuthenticationSettingsContract
API OAuth2 인증 설정 세부 정보
Name |
형식 |
Description |
bearerTokenSendingMethods
|
bearerTokenSendingMethods[]
|
서버에 토큰을 보내는 방법입니다.
|
openidProviderId
|
string
|
OAuth 권한 부여 서버 식별자입니다.
|
Protocol
이 API의 작업을 호출할 수 있는 프로토콜을 설명합니다.
Name |
형식 |
Description |
http
|
string
|
|
https
|
string
|
|
ws
|
string
|
|
wss
|
string
|
|
SoapApiType
만들 API의 유형입니다.
-
http
REST API를 만듭니다.
-
soap
SOAP 통과 API 만들기
-
websocket
websocket API를 만듭니다.
-
graphql
는 GraphQL API를 만듭니다.
Name |
형식 |
Description |
graphql
|
string
|
GraphQL 프런트 엔드가 있는 API를 가져옵니다.
|
http
|
string
|
RESTful 프런트 엔드가 있는 SOAP API를 가져옵니다.
|
soap
|
string
|
SOAP 프런트 엔드가 있는 SOAP API를 가져옵니다.
|
websocket
|
string
|
Websocket 프런트 엔드가 있는 API를 가져옵니다.
|
SubscriptionKeyParameterNamesContract
구독 키 매개 변수 이름 세부 정보입니다.
Name |
형식 |
Description |
header
|
string
|
구독 키 헤더 이름입니다.
|
query
|
string
|
구독 키 쿼리 문자열 매개 변수 이름입니다.
|
TranslateRequiredQueryParametersConduct
필요한 쿼리 매개 변수를 템플릿 매개 변수로 변환하는 전략입니다. 기본적으로 값은 'template'입니다. 가능한 값: 'template', 'query'
Name |
형식 |
Description |
query
|
string
|
필요한 쿼리 매개 변수는 그대로 둡니다(변환이 수행되지 않음).
|
template
|
string
|
필요한 쿼리 매개 변수를 템플릿 매개 변수로 변환합니다. 기본값입니다.
|
versioningScheme
API 버전 식별자가 HTTP 요청에 위치할 위치를 결정하는 값입니다.
Name |
형식 |
Description |
Header
|
string
|
API 버전은 HTTP 헤더로 전달됩니다.
|
Query
|
string
|
API 버전은 쿼리 매개 변수에 전달됩니다.
|
Segment
|
string
|
API 버전은 경로 세그먼트에 전달됩니다.
|
WsdlSelector
WSDL 가져오기를 문서의 하위 집합으로 제한하는 조건입니다.
Name |
형식 |
Description |
wsdlEndpointName
|
string
|
WSDL에서 가져올 엔드포인트(포트)의 이름
|
wsdlServiceName
|
string
|
WSDL에서 가져올 서비스 이름
|