New-AzApiManagementApi
建立 API。
語法
New-AzApiManagementApi
-Context <PsApiManagementContext>
[-ApiId <String>]
-Name <String>
[-Description <String>]
-ServiceUrl <String>
-Path <String>
-Protocols <PsApiManagementSchema[]>
[-AuthorizationServerId <String>]
[-AuthorizationScope <String>]
[-OpenIdProviderId <String>]
[-BearerTokenSendingMethod <String[]>]
[-SubscriptionKeyHeaderName <String>]
[-SubscriptionKeyQueryParamName <String>]
[-ProductIds <String[]>]
[-SubscriptionRequired]
[-ApiVersionDescription <String>]
[-ApiVersionSetId <String>]
[-ApiVersion <String>]
[-SourceApiId <String>]
[-SourceApiRevision <String>]
[-ApiType <PsApiManagementApiType>]
[-TermsOfServiceUrl <String>]
[-ContactName <String>]
[-ContactUrl <String>]
[-ContactEmail <String>]
[-LicenseName <String>]
[-LicenseUrl <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
New-AzApiManagementApi Cmdlet 會建立 Azure API 管理 API。
範例
範例 1:建立 API
$ApiMgmtContext = New-AzApiManagementContext -ResourceGroupName "Api-Default-WestUS" -ServiceName "contoso"
New-AzApiManagementApi -Context $ApiMgmtContext -Name "Echo api" -ServiceUrl "https://contoso.com/apis/echo" -Protocols @("http", "https") -Path "testapi"
此命令會使用指定的 URL 建立名為 EchoApi 的 API。
範例 2:藉由將所有作業、標記、產品和原則從 echo-api 複製到 ApiVersionSet,以建立 API
$context = New-AzApiManagementContext -ResourceId /subscriptions/subid/resourceGroups/Api-Default-West-US/providers/Microsoft.ApiManagement/service/contoso
$versionSet = Get-AzApiManagementApiVersionSet -Context $context -ApiVersionSetId "xmsVersionSet"
New-AzApiManagementApi -Context $context -Name "echoapiv4" -Description "Create Echo Api V4" -SubscriptionRequired -ServiceUrl "https://echoapi.cloudapp.net/v4" -Path "echov3" -Protocols @("http", "https") -ApiVersionSetId $versionSet.ApiVersionSetId -SourceApiId "echo-api" -ApiVersion "v4"
ApiId : 691b7d410125414a929c108541c60e06
Name : echoapiv4
Description : Create Echo Api V4
ServiceUrl : https://echoapi.cloudapp.net/v4
Path : echov3
ApiType : http
Protocols : {Http, Https}
AuthorizationServerId :
AuthorizationScope :
OpenidProviderId :
BearerTokenSendingMethod : {}
SubscriptionKeyHeaderName : Ocp-Apim-Subscription-Key
SubscriptionKeyQueryParamName : subscription-key
ApiRevision : 1
ApiVersion : v4
IsCurrent : True
IsOnline : False
SubscriptionRequired : True
ApiRevisionDescription :
ApiVersionSetDescription :
ApiVersionSetId : /subscriptions/subid/resourceGroups/Api-Default-West-US/providers/Microsoft.ApiManagement/service/contoso/apiVersionSets/xmsVersionSet
Id : /subscriptions/subid/resourceGroups/Api-Default-West-US/providers/Microsoft.ApiManagement/service/contoso/apis/691b7d410125414a929c108541c60e06
ResourceGroupName : Api-Default-West-US
ServiceName : contoso
此命令會在 ApiVersionSet xmsVersionSet
中建立 APIechoapiv3
,並從來源 Api echo-api
複製所有作業、標記和原則。 它會覆寫 SubscriptionRequired、ServiceUrl、Path、Protocols
範例 3
建立 API。 ( 自動產生 )
New-AzApiManagementApi -ApiId '0001' -Context <PsApiManagementContext> -Name 'Echo api' -Path 'echov3' -Protocols Http -ServiceUrl 'https://contoso.com/apis/echo'
參數
-ApiId
指定要建立的 API 識別碼。 如果您未指定此參數,此 Cmdlet 會為您產生識別碼。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ApiType
要建立的 API 類型(HTTP、soap、websocket、graphql)。 這是選擇性參數。
類型: | Nullable<T>[PsApiManagementApiType] |
接受的值: | Http, Soap, WebSocket, GraphQL |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ApiVersion
要建立的 Api 版本。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ApiVersionDescription
Api 版本描述。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ApiVersionSetId
相關 Api 版本集的資源識別碼。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-AuthorizationScope
指定 OAuth 作業範圍。 預設值為 $Null。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-AuthorizationServerId
指定 OAuth 授權伺服器識別碼。 預設值為 $Null。 如果 指定 AuthorizationScope ,您必須指定此參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-BearerTokenSendingMethod
OpenId 授權伺服器機制,可透過此機制將存取令牌傳遞至 API。 請參閱 https://datatracker.ietf.org/doc/html/rfc6749#section-4。 這是選擇性參數。 預設值為 $null。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ContactEmail
連絡人/組織的電子郵件位址。 必須是電子郵件位址的格式。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ContactName
聯繫人/組織的識別名稱。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ContactUrl
指向連絡資訊的 URL。 必須是 URL 的格式。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Context
指定 PsApiManagementContext 物件。
類型: | PsApiManagementContext |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-DefaultProfile
用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶。
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Description
指定 Web API 的描述。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-LicenseName
用於 API 的授權名稱。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-LicenseUrl
API 服務條款的 URL。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Name
指定 Web API 的名稱。 這是 API 的公用名稱,因為它出現在開發人員和系統管理入口網站上。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-OpenIdProviderId
OpenId 授權伺服器識別碼。 這是選擇性參數。 預設值為 $null。 如果指定 BearerTokenSendingMethods,則必須指定 。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Path
指定 Web API 路徑,這是 API 公用 URL 的最後一個部分,並對應至管理入口網站中的 [Web API URL 後綴] 字段。 API 取用者會使用此 URL 將要求傳送至 Web 服務,且長度必須一到 400 個字元。 預設值為 $Null。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ProductIds
指定要新增 API 的產品識別子陣列。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Protocols
指定 Web API 通訊協定的陣列。 有效值為 HTTP、HTTPs。 這些是 API 可供使用所在的 Web 通訊協定。 預設值為 $Null。
類型: | PsApiManagementSchema[] |
接受的值: | Http, Https, Ws, Wss |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ServiceUrl
指定公開 API 之 Web 服務的 URL。 此 URL 僅供 Azure API 管理 使用,且不會公開。 URL 長度必須為 2000 個字元。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-SourceApiId
來源 API 的 API 識別碼。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-SourceApiRevision
來源 API 的 API 修訂。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-SubscriptionKeyHeaderName
指定訂用帳戶金鑰標頭名稱。 預設值為 $Null。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-SubscriptionKeyQueryParamName
指定訂用帳戶金鑰查詢字串參數名稱。 預設值為 $Null。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-SubscriptionRequired
針對對 Api 的要求強制執行 SubscriptionRequired 的旗標。 這是選擇性參數。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-TermsOfServiceUrl
API 服務條款的 URL。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
輸入
String[]