diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json index c5074d3c172a..bdedca08bd5a 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json @@ -233,6 +233,9 @@ }, "ApiManagementCreateApiRevision": { "$ref": "./examples/ApiManagementCreateApiRevision.json" + }, + "ApiManagementCreateApiWithOpenIdConnect": { + "$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json" } }, "consumes": [ @@ -3740,7 +3743,7 @@ { "value": "soap", "description": "Imports the Soap API having a SOAP front end.", - "name": "SoapPassThrough" + "name": "SoapPassThrough" } ] } @@ -3905,7 +3908,7 @@ }, "apiRevisionDescription": { "type": "string", - "description": "Description of the Api Revision.", + "description": "Description of the Api Revision.", "maxLength": 256 }, "apiVersionDescription": { @@ -4104,6 +4107,14 @@ "oAuth2": { "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", "description": "OAuth2 Authentication settings" + }, + "openid": { + "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", + "description": "OpenID Connect Authentication Settings" + }, + "subscriptionKeyRequired": { + "type": "boolean", + "description": "Specifies whether subscription key is required during call to this API, true - API is included into closed products only, false - API is included into open products alone, null - there is a mix of products." } }, "description": "API Authentication Settings." @@ -4121,6 +4132,44 @@ }, "description": "API OAuth2 Authentication settings details." }, + "OpenIdAuthenticationSettingsContract": { + "properties": { + "openidProviderId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "bearerTokenSendingMethods": { + "description": "How to send token to the server.", + "type": "array", + "items": { + "$ref": "#/definitions/BearerTokenSendingMethodsContract" + } + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "BearerTokenSendingMethodsContract": { + "type": "string", + "description": "Form of an authorization grant, which the client uses to request the access token.", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "bearerTokenSendingMethods", + "values": [ + { + "value": "authorizationHeader", + "description": "Access token will be transmitted in the Authorization header using Bearer schema" + }, + { + "value": "query", + "description": "Access token will be transmitted as query parameters." + } + ] + } + }, "OperationCollection": { "properties": { "value": { @@ -4511,7 +4560,7 @@ "description": "Text describing the issue." }, "createdDate": { - "type":"string", + "type": "string", "format": "date-time", "description": "Date and time when the issue was created." }, @@ -4608,7 +4657,7 @@ "description": "Comment text." }, "createdDate": { - "type":"string", + "type": "string", "format": "date-time", "description": "Date and time when the comment was created." }, @@ -4663,7 +4712,7 @@ "description": "Filename by which the binary data will be saved." }, "contentFormat": { - "type":"string", + "type": "string", "description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property." }, "content": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json new file mode 100644 index 000000000000..2e18b4aa455a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "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" + } + } + } + }, + "responses": { + "201": { + "body": { + "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 + } + } + }, + "200": { + "body": { + "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 + } + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json index a82ad9455ebe..89326eeb3b1f 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json @@ -233,6 +233,9 @@ }, "ApiManagementCreateApiRevision": { "$ref": "./examples/ApiManagementCreateApiRevision.json" + }, + "ApiManagementCreateApiWithOpenIdConnect": { + "$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json" } }, "consumes": [ @@ -3528,7 +3531,7 @@ { "value": "soap", "description": "Imports the Soap API having a SOAP front end.", - "name": "SoapPassThrough" + "name": "SoapPassThrough" } ] } @@ -3896,6 +3899,14 @@ "oAuth2": { "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", "description": "OAuth2 Authentication settings" + }, + "openid": { + "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", + "description": "OpenID Connect Authentication Settings" + }, + "subscriptionKeyRequired": { + "type": "boolean", + "description": "Specifies whether subscription key is required during call to this API, true - API is included into closed products only, false - API is included into open products alone, null - there is a mix of products." } }, "description": "API Authentication Settings." @@ -3913,6 +3924,44 @@ }, "description": "API OAuth2 Authentication settings details." }, + "OpenIdAuthenticationSettingsContract": { + "properties": { + "openidProviderId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "bearerTokenSendingMethods": { + "description": "How to send token to the server.", + "type": "array", + "items": { + "$ref": "#/definitions/BearerTokenSendingMethodsContract" + } + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "BearerTokenSendingMethodsContract": { + "type": "string", + "description": "Form of an authorization grant, which the client uses to request the access token.", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "bearerTokenSendingMethods", + "values": [ + { + "value": "authorizationHeader", + "description": "Access token will be transmitted in the Authorization header using Bearer schema" + }, + { + "value": "query", + "description": "Access token will be transmitted as query parameters." + } + ] + } + }, "OperationCollection": { "properties": { "value": { @@ -4303,7 +4352,7 @@ "description": "Text describing the issue." }, "createdDate": { - "type":"string", + "type": "string", "format": "date-time", "description": "Date and time when the issue was created." }, @@ -4400,7 +4449,7 @@ "description": "Comment text." }, "createdDate": { - "type":"string", + "type": "string", "format": "date-time", "description": "Date and time when the comment was created." }, @@ -4455,7 +4504,7 @@ "description": "Filename by which the binary data will be saved." }, "contentFormat": { - "type":"string", + "type": "string", "description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property." }, "content": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json new file mode 100644 index 000000000000..5ac2af2116a4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "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" + } + } + } + }, + "responses": { + "201": { + "body": { + "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 + } + } + }, + "200": { + "body": { + "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 + } + } + } + } +} \ No newline at end of file