UNPKG

openapi-directory

Version:

Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS

1 lines 60.4 kB
{"openapi":"3.0.0","info":{"description":"Use these REST APIs for managing OAuth2 servers configuration in your Azure API Management deployment. OAuth 2.0 can be used to authorize developer accounts for Azure API Management. For more information refer to [How to OAuth2](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-oauth2).","title":"ApiManagementClient","version":"2019-12-01-preview","x-apisguru-categories":["cloud"],"x-logo":{"url":"https://assets.onestore.ms/cdnfiles/onestorerolling-1606-01000/shell/v3/images/logo/microsoft.png"},"x-origin":[{"format":"swagger","url":"https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json","version":"2.0"}],"x-preferred":true,"x-providerName":"azure.com","x-serviceName":"apimanagement-apimauthorizationservers","x-tags":["Azure","Microsoft"]},"security":[{"azure_auth":["user_impersonation"]}],"paths":{"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers":{"get":{"description":"Lists a collection of authorization servers defined within a service instance.","operationId":"AuthorizationServer_ListByService","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementListAuthorizationServers":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementListAuthorizationServers":{"value":"apimService1"}}},{"description":"| Field | Usage | Supported operators | Supported functions |</br>|-------------|-------------|-------------|-------------|</br>| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | </br>| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | </br>","in":"query","name":"$filter","required":false,"schema":{"type":"string"}},{"description":"Number of records to return.","in":"query","name":"$top","required":false,"x-ms-parameter-location":"method","schema":{"type":"integer","format":"int32","minimum":1}},{"description":"Number of records to skip.","in":"query","name":"$skip","required":false,"x-ms-parameter-location":"method","schema":{"type":"integer","format":"int32","minimum":0}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementListAuthorizationServers":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementListAuthorizationServers":{"value":"subid"}}}],"responses":{"200":{"description":"A Collection of the Authorization Server entities for the specified API Management service instance.","content":{"application/json":{"schema":{"description":"Paged OAuth2 Authorization Servers list representation.","properties":{"count":{"description":"Total record count number across all pages.","format":"int64","type":"integer"},"nextLink":{"description":"Next page link if any.","type":"string"},"value":{"description":"Page values.","items":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"boolean"},"tokenBodyParameters":{"description":"Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}.","items":{"description":"OAuth acquire token request body parameter (www-url-form-encoded).","properties":{"name":{"description":"body parameter name.","type":"string"},"value":{"description":"body parameter value.","type":"string"}},"required":["name","value"]},"type":"array"},"tokenEndpoint":{"description":"OAuth token endpoint. Contains absolute URI to entity being referenced.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"string"}}}],"description":"External OAuth authorization server settings Properties.","properties":{"authorizationEndpoint":{"description":"OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2.","type":"string"},"clientId":{"description":"Client or app id registered with this authorization server.","type":"string"},"clientRegistrationEndpoint":{"description":"Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced.","type":"string"},"clientSecret":{"description":"Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.","type":"string","x-ms-secret":true},"displayName":{"description":"User-friendly authorization server name.","maxLength":50,"minLength":1,"type":"string"},"grantTypes":{"description":"Form of an authorization grant, which the client uses to request the access token.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationCode","implicit","resourceOwnerPassword","clientCredentials"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"GrantType","values":[{"description":"Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1.","value":"authorizationCode"},{"description":"Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2.","value":"implicit"},{"description":"Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3.","value":"resourceOwnerPassword"},{"description":"Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4.","value":"clientCredentials"}]}},"type":"array"}},"required":["displayName","clientRegistrationEndpoint","authorizationEndpoint","clientId","grantTypes"]}}},"type":"array"}}},"examples":{"ApiManagementListAuthorizationServers":{"$ref":"#/components/examples/ApiManagementListAuthorizationServers"}}}}},"default":{"description":"Error response describing why the operation failed.","content":{"application/json":{"schema":{"description":"Error Response.","properties":{"error":{"description":"Error Body contract.","properties":{"code":{"description":"Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.","type":"string"},"details":{"description":"The list of invalid fields send in request, in case of validation error.","items":{"description":"Error Field contract.","properties":{"code":{"description":"Property level error code.","type":"string"},"message":{"description":"Human-readable representation of property-level error.","type":"string"},"target":{"description":"Property name.","type":"string"}}},"type":"array"},"message":{"description":"Human-readable representation of the error.","type":"string"}}}}}}}}},"tags":["AuthorizationServer"],"x-ms-odata":"./definitions.json#/definitions/AuthorizationServerContract","x-ms-pageable":{"nextLinkName":"nextLink"}}},"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}":{"delete":{"description":"Deletes specific authorization server instance.","operationId":"AuthorizationServer_Delete","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"apimService1"}}},{"description":"Identifier of the authorization server.","in":"path","name":"authsid","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^[^*#&+:<>?]+$"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"newauthServer2"}}},{"description":"ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.","in":"header","name":"If-Match","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"*"}}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementDeleteAuthorizationServer":{"value":"subid"}}}],"responses":{"200":{"description":"The authorization server settings were successfully deleted."},"204":{"description":"The authorization server settings were successfully deleted."},"default":{"description":"Error response describing why the operation failed.","content":{"application/json":{"schema":{"description":"Error Response.","properties":{"error":{"description":"Error Body contract.","properties":{"code":{"description":"Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.","type":"string"},"details":{"description":"The list of invalid fields send in request, in case of validation error.","items":{"description":"Error Field contract.","properties":{"code":{"description":"Property level error code.","type":"string"},"message":{"description":"Human-readable representation of property-level error.","type":"string"},"target":{"description":"Property name.","type":"string"}}},"type":"array"},"message":{"description":"Human-readable representation of the error.","type":"string"}}}}}}}}},"tags":["AuthorizationServer"]},"get":{"description":"Gets the details of the authorization server specified by its identifier.","operationId":"AuthorizationServer_Get","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementGetAuthorizationServer":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementGetAuthorizationServer":{"value":"apimService1"}}},{"description":"Identifier of the authorization server.","in":"path","name":"authsid","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^[^*#&+:<>?]+$"},"examples":{"ApiManagementGetAuthorizationServer":{"value":"newauthServer2"}}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementGetAuthorizationServer":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementGetAuthorizationServer":{"value":"subid"}}}],"responses":{"200":{"description":"Gets the details of the specified authorization server.","headers":{"ETag":{"description":"Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"boolean"},"tokenBodyParameters":{"description":"Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}.","items":{"description":"OAuth acquire token request body parameter (www-url-form-encoded).","properties":{"name":{"description":"body parameter name.","type":"string"},"value":{"description":"body parameter value.","type":"string"}},"required":["name","value"]},"type":"array"},"tokenEndpoint":{"description":"OAuth token endpoint. Contains absolute URI to entity being referenced.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"string"}}}],"description":"External OAuth authorization server settings Properties.","properties":{"authorizationEndpoint":{"description":"OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2.","type":"string"},"clientId":{"description":"Client or app id registered with this authorization server.","type":"string"},"clientRegistrationEndpoint":{"description":"Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced.","type":"string"},"clientSecret":{"description":"Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.","type":"string","x-ms-secret":true},"displayName":{"description":"User-friendly authorization server name.","maxLength":50,"minLength":1,"type":"string"},"grantTypes":{"description":"Form of an authorization grant, which the client uses to request the access token.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationCode","implicit","resourceOwnerPassword","clientCredentials"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"GrantType","values":[{"description":"Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1.","value":"authorizationCode"},{"description":"Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2.","value":"implicit"},{"description":"Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3.","value":"resourceOwnerPassword"},{"description":"Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4.","value":"clientCredentials"}]}},"type":"array"}},"required":["displayName","clientRegistrationEndpoint","authorizationEndpoint","clientId","grantTypes"]}}},"examples":{"ApiManagementGetAuthorizationServer":{"$ref":"#/components/examples/ApiManagementGetAuthorizationServer"}}}}},"default":{"description":"Error response describing why the operation failed.","content":{"application/json":{"schema":{"description":"Error Response.","properties":{"error":{"description":"Error Body contract.","properties":{"code":{"description":"Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.","type":"string"},"details":{"description":"The list of invalid fields send in request, in case of validation error.","items":{"description":"Error Field contract.","properties":{"code":{"description":"Property level error code.","type":"string"},"message":{"description":"Human-readable representation of property-level error.","type":"string"},"target":{"description":"Property name.","type":"string"}}},"type":"array"},"message":{"description":"Human-readable representation of the error.","type":"string"}}}}}}}}},"tags":["AuthorizationServer"]},"head":{"description":"Gets the entity state (Etag) version of the authorizationServer specified by its identifier.","operationId":"AuthorizationServer_GetEntityTag","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementHeadAuthorizationServer":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementHeadAuthorizationServer":{"value":"apimService1"}}},{"description":"Identifier of the authorization server.","in":"path","name":"authsid","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^[^*#&+:<>?]+$"},"examples":{"ApiManagementHeadAuthorizationServer":{"value":"newauthServer2"}}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementHeadAuthorizationServer":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementHeadAuthorizationServer":{"value":"subid"}}}],"responses":{"200":{"description":"Specified authorization server entity exists and current entity state version is present in the ETag header.","headers":{"ETag":{"description":"Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.","schema":{"type":"string"}}}},"default":{"description":"Error response describing why the operation failed.","content":{"application/json":{"schema":{"description":"Error Response.","properties":{"error":{"description":"Error Body contract.","properties":{"code":{"description":"Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.","type":"string"},"details":{"description":"The list of invalid fields send in request, in case of validation error.","items":{"description":"Error Field contract.","properties":{"code":{"description":"Property level error code.","type":"string"},"message":{"description":"Human-readable representation of property-level error.","type":"string"},"target":{"description":"Property name.","type":"string"}}},"type":"array"},"message":{"description":"Human-readable representation of the error.","type":"string"}}}}}}}}},"tags":["AuthorizationServer"]},"patch":{"description":"Updates the details of the authorization server specified by its identifier.","operationId":"AuthorizationServer_Update","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"apimService1"}}},{"description":"Identifier of the authorization server.","in":"path","name":"authsid","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^[^*#&+:<>?]+$"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"newauthServer"}}},{"description":"ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.","in":"header","name":"If-Match","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"*"}}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementUpdateAuthorizationServer":{"value":"subid"}}}],"requestBody":{"content":{"application/json":{"schema":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"boolean"},"tokenBodyParameters":{"description":"Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}.","items":{"description":"OAuth acquire token request body parameter (www-url-form-encoded).","properties":{"name":{"description":"body parameter name.","type":"string"},"value":{"description":"body parameter value.","type":"string"}},"required":["name","value"]},"type":"array"},"tokenEndpoint":{"description":"OAuth token endpoint. Contains absolute URI to entity being referenced.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"string"}}}],"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationEndpoint":{"description":"OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2.","type":"string"},"clientId":{"description":"Client or app id registered with this authorization server.","type":"string"},"clientRegistrationEndpoint":{"description":"Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced.","type":"string"},"clientSecret":{"description":"Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.","type":"string","x-ms-secret":true},"displayName":{"description":"User-friendly authorization server name.","maxLength":50,"minLength":1,"type":"string"},"grantTypes":{"description":"Form of an authorization grant, which the client uses to request the access token.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationCode","implicit","resourceOwnerPassword","clientCredentials"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"GrantType","values":[{"description":"Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1.","value":"authorizationCode"},{"description":"Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2.","value":"implicit"},{"description":"Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3.","value":"resourceOwnerPassword"},{"description":"Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4.","value":"clientCredentials"}]}},"type":"array"}}}}}}},"description":"OAuth2 Server settings Update parameters.","required":true},"responses":{"204":{"description":"The authorization server settings were successfully updated."},"default":{"description":"Error response describing why the operation failed.","content":{"application/json":{"schema":{"description":"Error Response.","properties":{"error":{"description":"Error Body contract.","properties":{"code":{"description":"Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.","type":"string"},"details":{"description":"The list of invalid fields send in request, in case of validation error.","items":{"description":"Error Field contract.","properties":{"code":{"description":"Property level error code.","type":"string"},"message":{"description":"Human-readable representation of property-level error.","type":"string"},"target":{"description":"Property name.","type":"string"}}},"type":"array"},"message":{"description":"Human-readable representation of the error.","type":"string"}}}}}}}}},"tags":["AuthorizationServer"]},"put":{"description":"Creates new authorization server or updates an existing authorization server.","operationId":"AuthorizationServer_CreateOrUpdate","parameters":[{"description":"The name of the resource group.","in":"path","name":"resourceGroupName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string"},"examples":{"ApiManagementCreateAuthorizationServer":{"value":"rg1"}}},{"description":"The name of the API Management service.","in":"path","name":"serviceName","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":50,"pattern":"^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"},"examples":{"ApiManagementCreateAuthorizationServer":{"value":"apimService1"}}},{"description":"Identifier of the authorization server.","in":"path","name":"authsid","required":true,"x-ms-parameter-location":"method","schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^[^*#&+:<>?]+$"},"examples":{"ApiManagementCreateAuthorizationServer":{"value":"newauthServer"}}},{"description":"ETag of the Entity. Not required when creating an entity, but required when updating an entity.","in":"header","name":"If-Match","required":false,"x-ms-parameter-location":"method","schema":{"type":"string"}},{"description":"Version of the API to be used with the client request.","in":"query","name":"api-version","required":true,"schema":{"type":"string"},"examples":{"ApiManagementCreateAuthorizationServer":{"value":"2019-12-01-preview"}}},{"description":"Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.","in":"path","name":"subscriptionId","required":true,"schema":{"type":"string"},"examples":{"ApiManagementCreateAuthorizationServer":{"value":"subid"}}}],"requestBody":{"content":{"application/json":{"schema":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"boolean"},"tokenBodyParameters":{"description":"Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}.","items":{"description":"OAuth acquire token request body parameter (www-url-form-encoded).","properties":{"name":{"description":"body parameter name.","type":"string"},"value":{"description":"body parameter value.","type":"string"}},"required":["name","value"]},"type":"array"},"tokenEndpoint":{"description":"OAuth token endpoint. Contains absolute URI to entity being referenced.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"string"}}}],"description":"External OAuth authorization server settings Properties.","properties":{"authorizationEndpoint":{"description":"OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2.","type":"string"},"clientId":{"description":"Client or app id registered with this authorization server.","type":"string"},"clientRegistrationEndpoint":{"description":"Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced.","type":"string"},"clientSecret":{"description":"Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.","type":"string","x-ms-secret":true},"displayName":{"description":"User-friendly authorization server name.","maxLength":50,"minLength":1,"type":"string"},"grantTypes":{"description":"Form of an authorization grant, which the client uses to request the access token.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationCode","implicit","resourceOwnerPassword","clientCredentials"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"GrantType","values":[{"description":"Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1.","value":"authorizationCode"},{"description":"Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2.","value":"implicit"},{"description":"Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3.","value":"resourceOwnerPassword"},{"description":"Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4.","value":"clientCredentials"}]}},"type":"array"}},"required":["displayName","clientRegistrationEndpoint","authorizationEndpoint","clientId","grantTypes"]}}}}},"description":"Create or update parameters.","required":true},"responses":{"200":{"description":"Authorization server is already registered.","headers":{"ETag":{"description":"Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"boolean"},"tokenBodyParameters":{"description":"Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}.","items":{"description":"OAuth acquire token request body parameter (www-url-form-encoded).","properties":{"name":{"description":"body parameter name.","type":"string"},"value":{"description":"body parameter value.","type":"string"}},"required":["name","value"]},"type":"array"},"tokenEndpoint":{"description":"OAuth token endpoint. Contains absolute URI to entity being referenced.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.1"},"type":"string"}}}],"description":"External OAuth authorization server settings Properties.","properties":{"authorizationEndpoint":{"description":"OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2.","type":"string"},"clientId":{"description":"Client or app id registered with this authorization server.","type":"string"},"clientRegistrationEndpoint":{"description":"Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced.","type":"string"},"clientSecret":{"description":"Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.","type":"string","x-ms-secret":true},"displayName":{"description":"User-friendly authorization server name.","maxLength":50,"minLength":1,"type":"string"},"grantTypes":{"description":"Form of an authorization grant, which the client uses to request the access token.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationCode","implicit","resourceOwnerPassword","clientCredentials"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"GrantType","values":[{"description":"Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1.","value":"authorizationCode"},{"description":"Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2.","value":"implicit"},{"description":"Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3.","value":"resourceOwnerPassword"},{"description":"Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4.","value":"clientCredentials"}]}},"type":"array"}},"required":["displayName","clientRegistrationEndpoint","authorizationEndpoint","clientId","grantTypes"]}}},"examples":{"ApiManagementCreateAuthorizationServer":{"$ref":"#/components/examples/ApiManagementCreateAuthorizationServer"}}}}},"201":{"description":"Authorization server was successfully registered.","headers":{"ETag":{"description":"Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"allOf":[{"description":"The Resource definition.","properties":{"id":{"description":"Resource ID.","readOnly":true,"type":"string"},"name":{"description":"Resource name.","readOnly":true,"type":"string"},"type":{"description":"Resource type for API Management resource.","readOnly":true,"type":"string"}},"x-ms-azure-resource":true}],"description":"External OAuth authorization server settings.","properties":{"properties":{"allOf":[{"description":"External OAuth authorization server Update settings contract.","properties":{"authorizationMethods":{"description":"HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional.","items":{"enum":["HEAD","OPTIONS","TRACE","GET","POST","PUT","PATCH","DELETE"],"type":"string","x-ms-enum":{"modelAsString":false,"name":"AuthorizationMethod"}},"type":"array"},"bearerTokenSendingMethods":{"description":"Specifies the mechanism by which access token is passed to the API. ","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-4"},"items":{"enum":["authorizationHeader","query"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"BearerTokenSendingMethod"}},"type":"array"},"clientAuthenticationMethod":{"description":"Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format.","items":{"enum":["Basic","Body"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"ClientAuthenticationMethod","values":[{"description":"Basic Client Authentication method.","value":"Basic"},{"description":"Body based Authentication method.","value":"Body"}]}},"type":"array"},"defaultScope":{"description":"Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.","externalDocs":{"url":"http://tools.ietf.org/html/rfc6749#section-3.3"},"type":"string"},"description":{"description":"Description of the authorization server. Can contain HTML formatting tags.","type":"string"},"resourceOwnerPassword":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password.","type":"string"},"resourceOwnerUsername":{"description":"Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username.","type":"string"},"supportState":{"description":"If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.","externalDocs":{"url":"http://tools.ietf.org/html/rfc674