diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/CreateOrUpdateTenantConfiguration.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/CreateOrUpdateTenantConfiguration.json new file mode 100644 index 000000000000..804d967b678c --- /dev/null +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/CreateOrUpdateTenantConfiguration.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "configurationName": "default", + "api-version": "2019-01-01-preview", + "tenantConfiguration": { + "properties": { + "enforcePrivateMarkdownStorage": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/providers/Microsoft.Portal/tenantConfigurations/default", + "name": "default", + "type": "Microsoft.Portal/tenantConfiguration", + "properties": { + "enforcePrivateMarkdownStorage": true + } + } + }, + "200": { + "body": { + "id": "/providers/Microsoft.Portal/tenantConfigurations/default", + "name": "default", + "type": "Microsoft.Portal/tenantConfiguration", + "properties": { + "enforcePrivateMarkdownStorage": true + } + } + } + } +} diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/DeleteTenantConfiguration.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/DeleteTenantConfiguration.json new file mode 100644 index 000000000000..640025727bc7 --- /dev/null +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/DeleteTenantConfiguration.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "configurationName": "default", + "api-version": "2019-01-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetListOfTenantConfigurations.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetListOfTenantConfigurations.json new file mode 100644 index 000000000000..bbb7cfefdb1f --- /dev/null +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetListOfTenantConfigurations.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Portal/tenantConfigurations", + "name": "default", + "type": "Microsoft.Portal/tenantConfiguration", + "properties": { + "enforcePrivateMarkdownStorage": true + } + } + ] + } + } + } +} diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetTenantConfiguration.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetTenantConfiguration.json new file mode 100644 index 000000000000..b945a54fcc08 --- /dev/null +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/examples/TenantConfiguration/GetTenantConfiguration.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "configurationName": "default", + "api-version": "2019-01-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Portal/tenantConfigurations/default", + "name": "default", + "type": "Microsoft.Portal/tenantConfiguration", + "properties": { + "enforcePrivateMarkdownStorage": true + } + } + } + } +} diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json new file mode 100644 index 000000000000..a7ff3f47c85a --- /dev/null +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json @@ -0,0 +1,256 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-01-01-preview", + "title": "portal", + "description": "Manage tenant configuration.", + "x-ms-code-generation-settings": { + "name": "portalClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/providers/Microsoft.Portal/tenantConfigurations": { + "get": { + "tags": [ + "tenantConfiguration" + ], + "operationId": "TenantConfigurations_List", + "description": "Gets list of the tenant configurations.", + "parameters": [ + { + "$ref": "portal.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the list of tenant configurations.", + "schema": { + "$ref": "#/definitions/ConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "portal.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get list of Tenant configurations": { + "$ref": "examples/TenantConfiguration/GetListOfTenantConfigurations.json" + } + } + } + }, + "/providers/Microsoft.Portal/tenantConfigurations/{configurationName}": { + "get": { + "tags": [ + "tenantConfiguration" + ], + "operationId": "TenantConfigurations_Get", + "description": "Gets the tenant configuration.", + "parameters": [ + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "$ref": "portal.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the tenant configuration.", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "portal.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Tenant configuration": { + "$ref": "examples/TenantConfiguration/GetTenantConfiguration.json" + } + } + }, + "put": { + "tags": [ + "tenantConfiguration" + ], + "operationId": "TenantConfigurations_Create", + "description": "Create the tenant configuration. If configuration already exists - update it. User has to be a Tenant Admin for this operation.", + "parameters": [ + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "$ref": "portal.json#/parameters/ApiVersionParameter" + }, + { + "name": "tenantConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Configuration" + }, + "description": "The parameters required to create or update tenant configuration." + } + ], + "responses": { + "201": { + "description": "Created. New configuration was created", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "200": { + "description": "OK. Existing configuration updated.", + "schema": { + "$ref": "#/definitions/Configuration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "portal.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update Tenant configuration": { + "$ref": "examples/TenantConfiguration/CreateOrUpdateTenantConfiguration.json" + } + } + }, + "delete": { + "tags": [ + "tenantConfiguration" + ], + "operationId": "TenantConfigurations_Delete", + "description": "Delete the tenant configuration. User has to be a Tenant Admin for this operation.", + "parameters": [ + { + "$ref": "#/parameters/ConfigurationNameParameter" + }, + { + "$ref": "portal.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Configuration was deleted." + }, + "204": { + "description": "No content. Configuration was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "portal.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Tenant configuration": { + "$ref": "examples/TenantConfiguration/DeleteTenantConfiguration.json" + } + } + } + } + }, + "parameters": { + "ConfigurationNameParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The configuration name. Value must be 'default'", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "configurationName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "ConfigurationList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Configuration" + }, + "description": "The array of custom resource provider manifests." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of tenant configurations." + }, + "Configuration": { + "type": "object", + "description": "Tenant configuration.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConfigurationProperties", + "description": "Tenant configuration properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ProxyResource" + } + ] + }, + "ConfigurationProperties": { + "type": "object", + "description": "Tenant configuration properties.", + "x-ms-azure-resource": true, + "properties": { + "enforcePrivateMarkdownStorage": { + "type": "boolean", + "description": "When flag is set to true Markdown tile will require external storage configuration (URI). The inline content configuration will be prohibited." + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/portal/resource-manager/readme.md b/specification/portal/resource-manager/readme.md index ee9417d8fb23..389c00a6bfd6 100644 --- a/specification/portal/resource-manager/readme.md +++ b/specification/portal/resource-manager/readme.md @@ -36,13 +36,14 @@ These settings apply only when `--tag=package-2019-01-01-preview` is specified o ``` yaml $(tag) == 'package-2019-01-01-preview' input-file: - Microsoft.Portal/preview/2019-01-01-preview/portal.json + - Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json ``` ### Tag: package-2018-10-01-preview These settings apply only when `--tag=package-2018-10-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2018-10-01-preview' +``` yaml $(tag) == 'package-2018-10-01-preview' input-file: - Microsoft.Portal/preview/2018-10-01-preview/portal.json ``` @@ -109,7 +110,7 @@ See configuration in [readme.nodejs.md](./readme.nodejs.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -122,16 +123,16 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.Portal/preview/2019-01-01-preview/portal.json + - $(this-folder)/Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json - $(this-folder)/Microsoft.Portal/preview/2018-10-01-preview/portal.json - $(this-folder)/Microsoft.Portal/preview/2015-08-01-preview/portal.json ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` -