From e80dab3bbdfd5b8e9cd296a15b34235386aeef20 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 10:55:19 +0200 Subject: [PATCH 01/31] from local Signed-off-by: Dina Yakobovich --- .../2018-03-01-beta/examples/SaasGet.json | 15 + .../preview/2018-03-01-beta/saas.json | 785 ++++++++++++++++++ 2 files changed, 800 insertions(+) create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/saas.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json new file mode 100644 index 000000000000..399cf8503651 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "saasClient", + "api-version": "2018-03-01-beta", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "sampleProperty": "sampleProperty" + } + } + } +} diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json new file mode 100644 index 000000000000..d471dd3137e7 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -0,0 +1,785 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-03-01-beta", + "title": "SaaS", + "description": "REST APIs for Azure Marketplace SaaS Offers" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "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" + } + } + }, + "paths": { + "/providers/microsoft.saas/operations": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasApp_Get", + "description": "Gets all SaaS app operations.", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" + } + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/SaaSGetOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/microsoft.saas/checkmoderneligibility": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_checkmoderneligibility", + "description": "Check if the Azure Subscription has been converted to modern.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the genetaring access token.", + "schema": { + "$ref": "#/definitions/SaasRpModernEligibility" + } + }, + "404": { + "description": "not found" + }, + "502": { + "description": "Internal Server Error" + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/SaaSGetModerneligibility.json" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SaaS/applications": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_GetAppplications", + "description": "Gets all SaaS resources by subscription id and resource group name.", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasAppResponseWithContinuation" + } + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/SaaSGetApplications.json" + } + } + } + }, + "/providers/Microsoft.SaaS/saasresources/{resourceId}": { + "delete": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_Delete", + "description": "Deletes the specified SaaS.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/deleteOptions" + }, + "description": "Parameters supplied to delete saas operation." + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Delete Subscription Level SaaS resource": { + "$ref": "./examples/SaaSDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_GetResource", + "description": "Gets information about the specified SaaS.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the resulting SaaS resource.", + "schema": { + "$ref": "#/definitions/SaasResource" + } + }, + "404": { + "description": "not found" + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/SaaSGet.json" + } + } + } + }, + "/providers/microsoft.saas/saasresources": { + "put": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_CreateResorce", + "description": "Creates a SaaS resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SaasResourceCreation" + }, + "description": "Parameters supplied to the create saas operation." + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "403": { + "description": "Forbidden" + }, + "400": { + "description": "BadRequest" + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Create Subscription Level SaaS resource": { + "$ref": "./examples/SaasPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasResource-GetAllResources", + "description": "Get All Resources", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasResourceResponseWithContinuation" + } + }, + "404": { + "description": "not found" + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/SaaSGetAllResources.json" + } + } + } + }, + "/providers/Microsoft.SaaS/saasresources/{resourceId}/listAccessToken": { + "post": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasResource-GetAccessToken", + "description": "Gets the ISV access token for a SaaS resource.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the genetaring access token.", + "schema": { + "$ref": "#/definitions/AccessTokenResult" + } + }, + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/ListAccessTokenPost.json" + } + } + } + } + }, + "definitions": { + "Result": { + "description": "Sample result definition", + "properties": { + "sampleProperty": { + "type": "string", + "description": "Sample property of type string" + } + } + }, + "OperationListResult": { + "description": "Operation List Result Response", + "properties": { + "value": { + "description": "List of SaaS operations supported by the SaaS resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "SaaS REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft SaaS.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "SaasResource": { + "description": "SaaS REST API resource definition.", + "type": "object", + "properties": { + "properties": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SaasProperties" + }, + { + "$ref": "#/definitions/SaasCreationProperties" + } + ] + }, + "name": { + "type": "string", + "description": "The name of the resource" + }, + "id": { + "description": "The resource uri", + "type": "string" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + } + }, + "SaasResourceCreation": { + "description": "SaaS REST API resource definition for creation.", + "type": "object", + "properties": { + "id": { + "description": "The resource uri", + "type": "string" + }, + "name": { + "description": "The resource name", + "type": "string" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "properties": { + "$ref": "#/definitions/SaasCreationProperties", + "description": "Properties of the SaaS resource that are relevant for creation." + } + } + }, + "SaasProperties": { + "type": "object", + "properties": { + "Status": { + "type": "string", + "description": "The SaaS Subscription Status.", + "enum": [ + "NotStarted", + "PendingFulfillmentStart", + "Subscribed", + "Unsubscribed", + "Suspended" + ] + }, + "term": { + "type": "object", + "description": "The current Term object.", + "properties": { + "termUnit": { + "type": "string", + "description": "The unit indicating Monthly / Yearly" + }, + "startDate": { + "type": "string", + "description": "The start date of the current term" + }, + "endDate": { + "type": "string", + "description": "The end date of the current term" + } + } + }, + "isFreeTrial": { + "type": "string", + "description": "Whether the current term is a Free Trial term" + }, + "created": { + "type": "string", + "description": "The created date of this resource." + }, + "lastModified": { + "type": "string", + "description": "The last modifier date if this resource." + } + } + }, + "SaasCreationProperties": { + "type": "object", + "properties": { + "OfferId": { + "type": "string", + "description": "The offer id." + }, + "PublisherId": { + "type": "string", + "description": "The publisher id." + }, + "Quantity": { + "type": "number", + "description": "The seat count." + }, + "SKUId": { + "type": "string", + "description": "The plan id." + }, + "paymentChannelType": { + "type": "string", + "description": "The Payment channel for the SaaSsubscription.", + "enum": [ + "SubscriptionDelegated" + ] + }, + "paymentChannelMetadata": { + "type": "object", + "description": "The metadata about the SaaS subscription such as the AzureSubscriptionId and ResourceUri.", + "additionalProperties": { + "type": "string" + } + }, + "SaasResourceName": { + "type": "string", + "description": "The SaaS resource name." + }, + "TermId": { + "type": "string", + "description": "The current Term id." + }, + "autoRenew": { + "type": "boolean", + "description": "Whether the SaaS subscription will auto renew upon term end." + }, + "publisherTestEnvironment": { + "type": "string", + "description": "The environement in the publisher side for this resource." + } + } + }, + "AccessTokenResult": { + "description": "the ISV access token result response.", + "type": "object", + "properties": { + "PublisherOfferBaseUri": { + "description": "The Publisher Offer Base Uri", + "type": "string" + }, + "Token": { + "description": "The generated token", + "type": "string" + } + } + }, + "SaasAppResponseWithContinuation": { + "description": "saas app response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasApp" + } + } + } + }, + "SaasAppOperationsResponseWithContinuation": { + "description": "saas app operation response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasAppOperation" + } + } + } + }, + "SaasResourceResponseWithContinuation": { + "description": "saas resources response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasResource" + } + } + } + }, + "SaasApp": { + "description": "the saasApp resource.", + "type": "object", + "properties": { + "id": { + "description": "the resource Id.", + "type": "string" + }, + "location": { + "description": "tthe resource location.", + "type": "string" + }, + "name": { + "description": "the resource name.", + "type": "string" + }, + "type": { + "description": "the resource type.", + "type": "string" + }, + "properties": { + "description": "the resource properties.", + "$ref": "#/definitions/SaasAppProperties" + }, + "tags": { + "description": "the resource tags.", + "$ref": "#/definitions/Tags" + } + } + }, + "SaasAppProperties": { + "description": "Saas resource properties.", + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "the Saas resource status.", + "enum": [ + "Pending", + "Subscribed", + "Unsubscribed", + "Suspended", + "Deactivated" + ] + }, + "saasAppPlan": { + "description": "the resource plan details.", + "$ref": "#/definitions/SaasAppPlan" + } + } + }, + "SaasAppPlan": { + "description": "Saas resource plan.", + "type": "object", + "properties": { + "publisher": { + "description": "the publisher id.", + "type": "string" + }, + "product": { + "description": "the offer id.", + "type": "string" + }, + "name": { + "description": "the plan id.", + "type": "string" + } + } + }, + "Tags": { + "description": "the resource tags.", + "type": "object", + "additionalProperties": { + "description": "additional properties.", + "type": "string" + } + }, + "SaasAppOperation": { + "description": "", + "type": "object", + "properties": { + "name": { + "description": "the operation name", + "type": "string" + }, + "Display": { + "description": "the operation display", + "$ref": "#/definitions/SaasAppOperationDisplay" + }, + "Origin": { + "description": "the operation origin", + "type": "string" + } + } + }, + "SaasAppOperationDisplay": { + "description": "Saas app operation display", + "type": "object", + "properties": { + "Provider": { + "description": "", + "type": "string" + }, + "Resource": { + "description": "", + "type": "string" + }, + "Operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + } + } + }, + "SaasRpModernEligibility": { + "description": "", + "type": "object", + "properties": { + "Id": { + "description": "the azure subscription id", + "type": "string" + }, + "isModern": { + "description": "whether the azure subscription has been converted to modern.", + "type": "boolean" + } + } + }, + "deleteOptions": { + "UnsubscribeOnly": { + "type": "boolean", + "description": "whether it is unsubscribeOnly" + }, + "ReasonCode": { + "type": "number", + "description": "The reasonCode" + }, + "Feedback": { + "type": "string", + "description": "Feedback" + } + } + }, + "parameters": { + "SaasResourceIdParameter": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The Saas resource ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "the operation Id parameter." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + } + } + } \ No newline at end of file From 8bafa705af4b5b846bea9860a23f84ae03dcfdbb Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 16:20:03 +0200 Subject: [PATCH 02/31] add examples --- .../2018-03-01-beta/examples/SaasGet.json | 15 ---- .../examples/saasV1/SaaSGetApplications.json | 30 ++++++++ .../saasV1/SaaSGetModerneligibility.json | 14 ++++ .../examples/saasV1/SaaSGetOperations.json | 64 ++++++++++++++++ .../examples/saasV2/ListAccessTokenPost.json | 14 ++++ .../examples/saasV2/SaaSGetAllResources.json | 74 +++++++++++++++++++ .../examples/saasV2/SaasDelete.json | 14 ++++ .../examples/saasV2/SaasGet.json | 40 ++++++++++ .../examples/saasV2/SaasPut.json | 21 ++++++ .../preview/2018-03-01-beta/saas.json | 16 ++-- 10 files changed, 279 insertions(+), 23 deletions(-) delete mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json create mode 100644 specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json deleted file mode 100644 index 399cf8503651..000000000000 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/SaasGet.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "accountName": "sampleacct", - "resourceGroupName": "saasClient", - "api-version": "2018-03-01-beta", - "subscriptionId": "subid" - }, - "responses": { - "200": { - "body": { - "sampleProperty": "sampleProperty" - } - } - } -} diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json new file mode 100644 index 000000000000..d64f185ef239 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta", + "subscriptionId": "bc6c2f82-a39d-41b8-a648-71527498a23e", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", + "location": "location", + "name": "myapp", + "type": "Microsoft.SaaS/applications", + "properties": { + "status": "Subscribed", + "saasAppPlan": { + "publisher": "contoso", + "product": "myOffer", + "name": "myPlan" + } + }, + "tags": [ + { + "additionalProperties": "additionalProperties" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json new file mode 100644 index 000000000000..a18474a80bb6 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta", + "subscriptionId": "bc6c2f82-a39d-41b8-a648-71527498a23e" + }, + "responses": { + "200": { + "body": { + "id": "bc6c2f82-a39d-41b8-a648-71527498a23e", + "isModern": true + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json new file mode 100644 index 000000000000..7302453eb962 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.SaaS/register/action", + "display": { + "provider": "Microsoft", + "resource": "SaaS Resources", + "operation": "Register SaaS resource provider", + "description": "Register Saas resource provider in the tenant" + }, + "origin": null + }, + { + "name": "Microsoft.SaaS/saasresources/read", + "display": { + "provider": "Microsoft", + "resource": "SaaS Resources", + "operation": "Get SaaS Resources", + "description": "Get all SaaS resources or one resource" + }, + "origin": null + }, + { + "name": "Microsoft.SaaS/saasresources/write", + "display": { + "provider": "Microsoft", + "resource": "SaaS Resources", + "operation": "Create or Update a SaaS resource", + "description": "Create or Update a SaaS resource" + }, + "origin": null + }, + { + "name": "Microsoft.SaaS/saasresources/delete", + "display": { + "provider": "Microsoft", + "resource": "SaaS Resources", + "operation": "Delete a SaaS Resource", + "description": "Delete a SaaS Resource" + }, + "origin": null + }, + { + "name": "Microsoft.SaaS/saasresources/listaccesstoken/action", + "display": { + "provider": "Microsoft", + "resource": "SaaS Resources", + "operation": "Get the access Token", + "description": "Get the access Token for a SaaS resource" + }, + "origin": null + } + ], + "nextLink": null + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json new file mode 100644 index 000000000000..30ed93682de1 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceId": "c825645b-e31b-9cf4-1cee-2aba9e58bc7c", + "api-version": "2018-03-01-beta" + }, + "responses": { + "200": { + "body": { + "PublisherOfferBaseUri": "https://cloud.elastic.co/api/v1/marketplace/azure/common/auth", + "Token": "jyhAtr3AiFTXO0QsEkYizsNzqIAUJ+E0M1SXhl4E5hwAl7+GJT6t+dEwuWpSizgR0Vn6dMhzpS94JRzkUh2Xuq5L1QDgmDkDUeIikTFNviwtwxtF8CwipcB49rq5d8whmVp0CmWEjd/FzU0vvlikBRuy+asxC1UhXv6XxBkSxkZKj29AAFiGgsgRvXIld47C" + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json new file mode 100644 index 000000000000..cb86a85069b3 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta" + }, + "responses": { + "200": { + "body": { + "nextLink": null, + "value": [ + { + "id": "/providers/Microsoft.SaaS/saasresources/115c3523-1fae-757f-af86-7b27cfd29805", + "name": "diyakobo-transfer", + "type": "Microsoft.SaaS/saasresources", + "properties": { + "status": "Subscribed", + "saasResourceName": "diyakobo-transfer", + "publisherId": "microsoft-hcb", + "skuId": "free", + "offerId": "microsofthealthcarebot", + "quantity": null, + "termId": null, + "paymentChannelType": null, + "paymentChannelMetadata": { + "azureSubscriptionId": "155af98a-3205-47e7-883b-a2ab9db9f88d", + "resourceId": "b25dba9a-1bd7-4600-9447-3d27d11a6477" + }, + "publisherTestEnvironment": null, + "term": { + "termUnit": "P1M", + "startDate": "2020-11-12T00:00:00Z", + "endDate": "2020-12-11T00:00:00Z" + }, + "autoRenew": null, + "isFreeTrial": false, + "created": "2020-10-12T05:08:40.9235607Z", + "lastModified": "2020-11-12T21:25:40.2736665Z" + }, + "tags": null + }, + { + "id": "/providers/Microsoft.SaaS/saasresources/7a4a733c-2204-ee2c-2f51-47c2dfbcb7fd", + "name": "test-transfer", + "type": "Microsoft.SaaS/saasresources", + "properties": { + "status": "Subscribed", + "saasResourceName": "test-transfer", + "publisherId": "microsoft-hcb", + "skuId": "free", + "offerId": "microsofthealthcarebot", + "quantity": null, + "termId": null, + "paymentChannelType": null, + "paymentChannelMetadata": { + "azureSubscriptionId": "155af98a-3205-47e7-883b-a2ab9db9f88d", + "resourceId": "f5816b76-67e3-45e1-b331-91fbb021e068" + }, + "publisherTestEnvironment": null, + "term": { + "termUnit": "P1M", + "startDate": "2020-10-30T00:00:00Z", + "endDate": "2020-11-29T00:00:00Z" + }, + "autoRenew": null, + "isFreeTrial": false, + "created": "2020-09-30T16:45:41.2981172Z", + "lastModified": "2020-10-30T16:22:15.4319475Z" + }, + "tags": null + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json new file mode 100644 index 000000000000..f91b8fa637af --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta", + "resourceId": "115c3523-1fae-757f-af86-7b27cfd29805", + "parameters": { + "UnsubscribeOnly": true, + "ReasonCode": 0, + "Feedback": null + } + }, + "responses": { + "204": {} + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json new file mode 100644 index 000000000000..a98d4f4a5914 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta", + "resourceId": "115c3523-1fae-757f-af86-7b27cfd29805" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.SaaS/saasresources/115c3523-1fae-757f-af86-7b27cfd29805", + "name": "diyakobo-transfer", + "type": "Microsoft.SaaS/saasresources", + "properties": { + "status": "Subscribed", + "saasResourceName": "diyakobo-transfer", + "publisherId": "microsoft-hcb", + "skuId": "free", + "offerId": "microsofthealthcarebot", + "quantity": null, + "termId": null, + "paymentChannelType": null, + "paymentChannelMetadata": { + "azureSubscriptionId": "155af98a-3205-47e7-883b-a2ab9db9f88d", + "resourceId": "b25dba9a-1bd7-4600-9447-3d27d11a6477" + }, + "publisherTestEnvironment": null, + "term": { + "termUnit": "P1M", + "startDate": "2020-11-12T00:00:00Z", + "endDate": "2020-12-11T00:00:00Z" + }, + "autoRenew": null, + "isFreeTrial": false, + "created": "2020-10-12T05:08:40.9235607Z", + "lastModified": "2020-11-12T21:25:40.2736665Z" + }, + "tags": null + } + } + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json new file mode 100644 index 000000000000..7c2ef2e72bd0 --- /dev/null +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2018-03-01-beta", + "parameters": { + "Properties": { + "PublisherId": "microsoft-hcb", + "OfferId": "microsofthealthcarebot", + "SaasResourceName": "testRunnerFromArm", + "SKUId": "free", + "PaymentChannelType": "SubscriptionDelegated", + "TermId": "hjdtn7tfnxcy", + "PaymentChannelMetadata": { + "AzureSubscriptionId": "155af98a-3205-47e7-883b-a2ab9db9f88d" + } + } + } + }, + "responses": { + "202": {} + } +} \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index d471dd3137e7..86a200925bbf 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -59,7 +59,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/SaaSGetOperations.json" + "$ref": "./examples/saasV1/SaaSGetOperations.json" } } } @@ -94,7 +94,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/SaaSGetModerneligibility.json" + "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" } } } @@ -134,7 +134,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/SaaSGetApplications.json" + "$ref": "./examples/saasV1/SaaSGetApplications.json" } } } @@ -176,7 +176,7 @@ }, "x-ms-examples": { "Delete Subscription Level SaaS resource": { - "$ref": "./examples/SaaSDelete.json" + "$ref": ".examples/saasV2/sSaaSDelete.json" } }, "x-ms-long-running-operation": true, @@ -214,7 +214,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/SaaSGet.json" + "$ref": "./examples/saasV2/SaaSGet.json" } } } @@ -256,7 +256,7 @@ }, "x-ms-examples": { "Create Subscription Level SaaS resource": { - "$ref": "./examples/SaasPut.json" + "$ref": "./examples/saasV2/SaasPut.json" } }, "x-ms-long-running-operation": true, @@ -291,7 +291,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/SaaSGetAllResources.json" + "$ref": "./examples/saasV2/SaaSGetAllResources.json" } } } @@ -324,7 +324,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/ListAccessTokenPost.json" + "$ref": "./examples/saasV2/ListAccessTokenPost.json" } } } From e305181a3b9d97b2c220476639cb6abbea01b0d8 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 16:29:24 +0200 Subject: [PATCH 03/31] fix saasDelete --- .../saas/resource-manager/preview/2018-03-01-beta/saas.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index 86a200925bbf..2943f5d5d57a 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -176,7 +176,7 @@ }, "x-ms-examples": { "Delete Subscription Level SaaS resource": { - "$ref": ".examples/saasV2/sSaaSDelete.json" + "$ref": ".examples/saasV2/SaaSDelete.json" } }, "x-ms-long-running-operation": true, From 8fca699c0027ca082a589b2332737ca52e8ae8b1 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 16:35:31 +0200 Subject: [PATCH 04/31] fix again saasDelete --- .../saas/resource-manager/preview/2018-03-01-beta/saas.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index 2943f5d5d57a..ee34a634e73a 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -176,7 +176,7 @@ }, "x-ms-examples": { "Delete Subscription Level SaaS resource": { - "$ref": ".examples/saasV2/SaaSDelete.json" + "$ref": "./examples/saasV2/SaaSDelete.json" } }, "x-ms-long-running-operation": true, From ea92f82fda80e5655f2f50c6ad577c325b31f396 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 16:41:21 +0200 Subject: [PATCH 05/31] change to lowerCase --- .../saas/resource-manager/preview/2018-03-01-beta/saas.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index ee34a634e73a..016cd4179c51 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -176,7 +176,7 @@ }, "x-ms-examples": { "Delete Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaaSDelete.json" + "$ref": "./examples/saasV2/SaasDelete.json" } }, "x-ms-long-running-operation": true, From 3dce1e829bde165da4dbe0e73e4609e1ea27054d Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 16:50:06 +0200 Subject: [PATCH 06/31] second change to lower Case --- .../saas/resource-manager/preview/2018-03-01-beta/saas.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index 016cd4179c51..6f74a7babe58 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -214,7 +214,7 @@ }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaaSGet.json" + "$ref": "./examples/saasV2/SaasGet.json" } } } From 0852264541143b625e77c20e515c28b4702fe8f5 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 17:30:12 +0200 Subject: [PATCH 07/31] fix parameters --- .../examples/saasV1/SaaSGetApplications.json | 34 +++++++++++++++---- .../examples/saasV2/SaasPut.json | 2 +- .../preview/2018-03-01-beta/saas.json | 24 +++++++------ 3 files changed, 42 insertions(+), 18 deletions(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index d64f185ef239..0f2db8532347 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -1,12 +1,13 @@ { "parameters": { - "api-version": "2018-03-01-beta", "subscriptionId": "bc6c2f82-a39d-41b8-a648-71527498a23e", - "resourceGroupName": "myResourceGroup" + "resourceGroupName": "myResourceGroup", + "api-version": "2018-03-01-beta" }, - "responses": { - "200": { - "body": { + "response": { + "nextLink": null, + "value": [ + { "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", "location": "location", "name": "myapp", @@ -16,7 +17,26 @@ "saasAppPlan": { "publisher": "contoso", "product": "myOffer", - "name": "myPlan" + "name": "myPlan1" + } + }, + "tags": [ + { + "additionalProperties": "additionalProperties" + } + ] + }, + { + "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", + "location": "location", + "name": "myapp", + "type": "Microsoft.SaaS/applications", + "properties": { + "status": "Subscribed", + "saasAppPlan": { + "publisher": "contoso", + "product": "myOffer", + "name": "myPlan2" } }, "tags": [ @@ -25,6 +45,6 @@ } ] } - } + ] } } \ No newline at end of file diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json index 7c2ef2e72bd0..dd359360bbbf 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2018-03-01-beta", "parameters": { - "Properties": { + "properties": { "PublisherId": "microsoft-hcb", "OfferId": "microsofthealthcarebot", "SaasResourceName": "testRunnerFromArm", diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index 6f74a7babe58..493a2f898ac1 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -410,6 +410,10 @@ "readOnly": true, "type": "string", "description": "Resource type." + }, + "tags": { + "description": "the resource tags.", + "$ref": "#/definitions/Tags" } } }, @@ -439,7 +443,7 @@ "SaasProperties": { "type": "object", "properties": { - "Status": { + "status": { "type": "string", "description": "The SaaS Subscription Status.", "enum": [ @@ -469,7 +473,7 @@ } }, "isFreeTrial": { - "type": "string", + "type": "boolean", "description": "Whether the current term is a Free Trial term" }, "created": { @@ -485,19 +489,19 @@ "SaasCreationProperties": { "type": "object", "properties": { - "OfferId": { + "offerId": { "type": "string", "description": "The offer id." }, - "PublisherId": { + "publisherId": { "type": "string", "description": "The publisher id." }, - "Quantity": { + "quantity": { "type": "number", "description": "The seat count." }, - "SKUId": { + "skuId": { "type": "string", "description": "The plan id." }, @@ -515,11 +519,11 @@ "type": "string" } }, - "SaasResourceName": { + "saasResourceName": { "type": "string", "description": "The SaaS resource name." }, - "TermId": { + "termId": { "type": "string", "description": "The current Term id." }, @@ -683,11 +687,11 @@ "description": "the operation name", "type": "string" }, - "Display": { + "display": { "description": "the operation display", "$ref": "#/definitions/SaasAppOperationDisplay" }, - "Origin": { + "origin": { "description": "the operation origin", "type": "string" } From 802dd63b2c35e8c245d9e20a1ed52b0bd54004d2 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 17:49:20 +0200 Subject: [PATCH 08/31] update deleteOptions definition --- .../preview/2018-03-01-beta/saas.json | 1400 +++++++++-------- 1 file changed, 702 insertions(+), 698 deletions(-) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json index 493a2f898ac1..fe55a866942d 100644 --- a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json @@ -1,739 +1,742 @@ { - "swagger": "2.0", - "info": { - "version": "2018-03-01-beta", - "title": "SaaS", - "description": "REST APIs for Azure Marketplace SaaS Offers" - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] + "swagger": "2.0", + "info": { + "version": "2018-03-01-beta", + "title": "SaaS", + "description": "REST APIs for Azure Marketplace SaaS Offers" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "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" } - ], - "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" + } + }, + "paths": { + "/providers/microsoft.saas/operations": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasApp_Get", + "description": "Gets all SaaS app operations.", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" + } + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV1/SaaSGetOperations.json" + } } } }, - "paths": { - "/providers/microsoft.saas/operations": { - "get": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaasApp_Get", - "description": "Gets all SaaS app operations.", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" - } + "/subscriptions/{subscriptionId}/providers/microsoft.saas/checkmoderneligibility": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_checkmoderneligibility", + "description": "Check if the Azure Subscription has been converted to modern.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the genetaring access token.", + "schema": { + "$ref": "#/definitions/SaasRpModernEligibility" } }, + "404": { + "description": "not found" + }, + "502": { + "description": "Internal Server Error" + }, "x-ms-examples": { "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV1/SaaSGetOperations.json" + "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" } } } - }, - "/subscriptions/{subscriptionId}/providers/microsoft.saas/checkmoderneligibility": { - "get": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaaS_checkmoderneligibility", - "description": "Check if the Azure Subscription has been converted to modern.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The request returns the genetaring access token.", - "schema": { - "$ref": "#/definitions/SaasRpModernEligibility" - } - }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" - }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" - } - } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SaaS/applications": { + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_GetAppplications", + "description": "Gets all SaaS resources by subscription id and resource group name.", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SaaS/applications": { - "get": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaaS_GetAppplications", - "description": "Gets all SaaS resources by subscription id and resource group name.", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SaasAppResponseWithContinuation" - } - }, - "502": { - "description": "Internal Server Error" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasAppResponseWithContinuation" } }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV1/SaaSGetApplications.json" - } + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV1/SaaSGetApplications.json" } } - }, - "/providers/Microsoft.SaaS/saasresources/{resourceId}": { - "delete": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaaS_Delete", - "description": "Deletes the specified SaaS.", - "parameters": [ - { - "$ref": "#/parameters/SaasResourceIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/deleteOptions" - }, - "description": "Parameters supplied to delete saas operation." - } - ], - "responses": { - "204": { - "description": "Request successful. Resource does not exist." - }, - "202": { - "description": "Accepted and the operation will complete asynchronously." + } + }, + "/providers/Microsoft.SaaS/saasresources/{resourceId}": { + "delete": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_Delete", + "description": "Deletes the specified SaaS.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/deleteOptions" }, - "502": { - "description": "Internal Server Error" - } + "description": "Parameters supplied to delete saas operation." + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." }, - "x-ms-examples": { - "Delete Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaasDelete.json" - } + "202": { + "description": "Accepted and the operation will complete asynchronously." }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "502": { + "description": "Internal Server Error" } }, - "get": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaaS_GetResource", - "description": "Gets information about the specified SaaS.", - "parameters": [ - { - "$ref": "#/parameters/SaasResourceIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The request returns the resulting SaaS resource.", - "schema": { - "$ref": "#/definitions/SaasResource" - } - }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" - } - }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaasGet.json" - } + "x-ms-examples": { + "Delete Subscription Level SaaS resource": { + "$ref": "./examples/saasV2/SaasDelete.json" } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } }, - "/providers/microsoft.saas/saasresources": { - "put": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaaS_CreateResorce", - "description": "Creates a SaaS resource.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SaasResourceCreation" - }, - "description": "Parameters supplied to the create saas operation." - } - ], - "responses": { - "202": { - "description": "Accepted and the operation will complete asynchronously." - }, - "403": { - "description": "Forbidden" - }, - "400": { - "description": "BadRequest" - }, - "502": { - "description": "Internal Server Error" + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_GetResource", + "description": "Gets information about the specified SaaS.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the resulting SaaS resource.", + "schema": { + "$ref": "#/definitions/SaasResource" } }, - "x-ms-examples": { - "Create Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaasPut.json" - } + "404": { + "description": "not found" }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "502": { + "description": "Internal Server Error" } }, - "get": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaasResource-GetAllResources", - "description": "Get All Resources", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/SaasResourceResponseWithContinuation" - } - }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" - } - }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/SaaSGetAllResources.json" - } - } - } - }, - "/providers/Microsoft.SaaS/saasresources/{resourceId}/listAccessToken": { - "post": { - "tags": [ - "SaaSResources" - ], - "operationId": "SaasResource-GetAccessToken", - "description": "Gets the ISV access token for a SaaS resource.", - "parameters": [ - { - "$ref": "#/parameters/SaasResourceIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Request successful. The request returns the genetaring access token.", - "schema": { - "$ref": "#/definitions/AccessTokenResult" - } - }, - "502": { - "description": "Internal Server Error" - } - }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV2/ListAccessTokenPost.json" - } + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV2/SaasGet.json" } } } }, - "definitions": { - "Result": { - "description": "Sample result definition", - "properties": { - "sampleProperty": { - "type": "string", - "description": "Sample property of type string" - } - } - }, - "OperationListResult": { - "description": "Operation List Result Response", - "properties": { - "value": { - "description": "List of SaaS operations supported by the SaaS resource provider.", - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - } + "/providers/microsoft.saas/saasresources": { + "put": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaaS_CreateResorce", + "description": "Creates a SaaS resource.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SaasResourceCreation" + }, + "description": "Parameters supplied to the create saas operation." } - } - }, - "Operation": { - "description": "SaaS REST API operation definition.", - "type": "object", - "properties": { - "name": { - "description": "Operation name: {provider}/{resource}/{operation}", - "type": "string" + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." }, - "display": { - "description": "Display metadata associated with the operation.", - "properties": { - "provider": { - "description": "Service provider: Microsoft SaaS.", - "type": "string" - }, - "resource": { - "description": "Resource on which the operation is performed.", - "type": "string" - }, - "operation": { - "description": "Type of the operation: get, read, delete, etc.", - "type": "string" - }, - "description": { - "description": "Description of the operation.", - "type": "string" - } - } - } - } - }, - "SaasResource": { - "description": "SaaS REST API resource definition.", - "type": "object", - "properties": { - "properties": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/SaasProperties" - }, - { - "$ref": "#/definitions/SaasCreationProperties" - } - ] - }, - "name": { - "type": "string", - "description": "The name of the resource" - }, - "id": { - "description": "The resource uri", - "type": "string" + "403": { + "description": "Forbidden" }, - "type": { - "readOnly": true, - "type": "string", - "description": "Resource type." + "400": { + "description": "BadRequest" }, - "tags": { - "description": "the resource tags.", - "$ref": "#/definitions/Tags" + "502": { + "description": "Internal Server Error" } - } - }, - "SaasResourceCreation": { - "description": "SaaS REST API resource definition for creation.", - "type": "object", - "properties": { - "id": { - "description": "The resource uri", - "type": "string" - }, - "name": { - "description": "The resource name", - "type": "string" - }, - "type": { - "readOnly": true, - "type": "string", - "description": "Resource type." - }, - "properties": { - "$ref": "#/definitions/SaasCreationProperties", - "description": "Properties of the SaaS resource that are relevant for creation." + }, + "x-ms-examples": { + "Create Subscription Level SaaS resource": { + "$ref": "./examples/saasV2/SaasPut.json" } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } }, - "SaasProperties": { - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "The SaaS Subscription Status.", - "enum": [ - "NotStarted", - "PendingFulfillmentStart", - "Subscribed", - "Unsubscribed", - "Suspended" - ] - }, - "term": { - "type": "object", - "description": "The current Term object.", - "properties": { - "termUnit": { - "type": "string", - "description": "The unit indicating Monthly / Yearly" - }, - "startDate": { - "type": "string", - "description": "The start date of the current term" - }, - "endDate": { - "type": "string", - "description": "The end date of the current term" - } + "get": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasResource-GetAllResources", + "description": "Get All Resources", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SaasResourceResponseWithContinuation" } }, - "isFreeTrial": { - "type": "boolean", - "description": "Whether the current term is a Free Trial term" - }, - "created": { - "type": "string", - "description": "The created date of this resource." + "404": { + "description": "not found" }, - "lastModified": { - "type": "string", - "description": "The last modifier date if this resource." + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV2/SaaSGetAllResources.json" } } - }, - "SaasCreationProperties": { - "type": "object", - "properties": { - "offerId": { - "type": "string", - "description": "The offer id." - }, - "publisherId": { - "type": "string", - "description": "The publisher id." - }, - "quantity": { - "type": "number", - "description": "The seat count." - }, - "skuId": { - "type": "string", - "description": "The plan id." - }, - "paymentChannelType": { - "type": "string", - "description": "The Payment channel for the SaaSsubscription.", - "enum": [ - "SubscriptionDelegated" - ] - }, - "paymentChannelMetadata": { - "type": "object", - "description": "The metadata about the SaaS subscription such as the AzureSubscriptionId and ResourceUri.", - "additionalProperties": { - "type": "string" + } + }, + "/providers/Microsoft.SaaS/saasresources/{resourceId}/listAccessToken": { + "post": { + "tags": [ + "SaaSResources" + ], + "operationId": "SaasResource-GetAccessToken", + "description": "Gets the ISV access token for a SaaS resource.", + "parameters": [ + { + "$ref": "#/parameters/SaasResourceIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The request returns the genetaring access token.", + "schema": { + "$ref": "#/definitions/AccessTokenResult" } }, - "saasResourceName": { - "type": "string", - "description": "The SaaS resource name." - }, - "termId": { - "type": "string", - "description": "The current Term id." - }, - "autoRenew": { - "type": "boolean", - "description": "Whether the SaaS subscription will auto renew upon term end." - }, - "publisherTestEnvironment": { - "type": "string", - "description": "The environement in the publisher side for this resource." + "502": { + "description": "Internal Server Error" + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV2/ListAccessTokenPost.json" } } - }, - "AccessTokenResult": { - "description": "the ISV access token result response.", - "type": "object", - "properties": { - "PublisherOfferBaseUri": { - "description": "The Publisher Offer Base Uri", - "type": "string" - }, - "Token": { - "description": "The generated token", - "type": "string" + } + } + }, + "definitions": { + "Result": { + "description": "Sample result definition", + "properties": { + "sampleProperty": { + "type": "string", + "description": "Sample property of type string" + } + } + }, + "OperationListResult": { + "description": "Operation List Result Response", + "properties": { + "value": { + "description": "List of SaaS operations supported by the SaaS resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" } } - }, - "SaasAppResponseWithContinuation": { - "description": "saas app response with continuation.", - "type": "object", - "properties": { - "nextLink": { - "description": "the next link to query to get the remaining results.", - "type": "string" - }, - "value": { - "description": "the value of response.", - "type": "array", - "items": { - "$ref": "#/definitions/SaasApp" + } + }, + "Operation": { + "description": "SaaS REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft SaaS.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" } } } - }, - "SaasAppOperationsResponseWithContinuation": { - "description": "saas app operation response with continuation.", - "type": "object", + } + }, + "SaasResource": { + "description": "SaaS REST API resource definition.", + "type": "object", + "properties": { "properties": { - "nextLink": { - "description": "the next link to query to get the remaining results.", - "type": "string" - }, - "value": { - "description": "the value of response.", - "type": "array", - "items": { - "$ref": "#/definitions/SaasAppOperation" + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SaasProperties" + }, + { + "$ref": "#/definitions/SaasCreationProperties" } - } + ] + }, + "name": { + "type": "string", + "description": "The name of the resource" + }, + "id": { + "description": "The resource uri", + "type": "string" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "description": "the resource tags.", + "$ref": "#/definitions/Tags" } - }, - "SaasResourceResponseWithContinuation": { - "description": "saas resources response with continuation.", - "type": "object", + } + }, + "SaasResourceCreation": { + "description": "SaaS REST API resource definition for creation.", + "type": "object", + "properties": { + "id": { + "description": "The resource uri", + "type": "string" + }, + "name": { + "description": "The resource name", + "type": "string" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, "properties": { - "nextLink": { - "description": "the next link to query to get the remaining results.", - "type": "string" - }, - "value": { - "description": "the value of response.", - "type": "array", - "items": { - "$ref": "#/definitions/SaasResource" + "$ref": "#/definitions/SaasCreationProperties", + "description": "Properties of the SaaS resource that are relevant for creation." + } + } + }, + "SaasProperties": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "The SaaS Subscription Status.", + "enum": [ + "NotStarted", + "PendingFulfillmentStart", + "Subscribed", + "Unsubscribed", + "Suspended" + ] + }, + "term": { + "type": "object", + "description": "The current Term object.", + "properties": { + "termUnit": { + "type": "string", + "description": "The unit indicating Monthly / Yearly" + }, + "startDate": { + "type": "string", + "description": "The start date of the current term" + }, + "endDate": { + "type": "string", + "description": "The end date of the current term" } } + }, + "isFreeTrial": { + "type": "boolean", + "description": "Whether the current term is a Free Trial term" + }, + "created": { + "type": "string", + "description": "The created date of this resource." + }, + "lastModified": { + "type": "string", + "description": "The last modifier date if this resource." } - }, - "SaasApp": { - "description": "the saasApp resource.", - "type": "object", - "properties": { - "id": { - "description": "the resource Id.", - "type": "string" - }, - "location": { - "description": "tthe resource location.", - "type": "string" - }, - "name": { - "description": "the resource name.", - "type": "string" - }, - "type": { - "description": "the resource type.", + } + }, + "SaasCreationProperties": { + "type": "object", + "properties": { + "offerId": { + "type": "string", + "description": "The offer id." + }, + "publisherId": { + "type": "string", + "description": "The publisher id." + }, + "quantity": { + "type": "number", + "description": "The seat count." + }, + "skuId": { + "type": "string", + "description": "The plan id." + }, + "paymentChannelType": { + "type": "string", + "description": "The Payment channel for the SaaSsubscription.", + "enum": [ + "SubscriptionDelegated" + ] + }, + "paymentChannelMetadata": { + "type": "object", + "description": "The metadata about the SaaS subscription such as the AzureSubscriptionId and ResourceUri.", + "additionalProperties": { "type": "string" - }, - "properties": { - "description": "the resource properties.", - "$ref": "#/definitions/SaasAppProperties" - }, - "tags": { - "description": "the resource tags.", - "$ref": "#/definitions/Tags" } + }, + "saasResourceName": { + "type": "string", + "description": "The SaaS resource name." + }, + "termId": { + "type": "string", + "description": "The current Term id." + }, + "autoRenew": { + "type": "boolean", + "description": "Whether the SaaS subscription will auto renew upon term end." + }, + "publisherTestEnvironment": { + "type": "string", + "description": "The environement in the publisher side for this resource." } - }, - "SaasAppProperties": { - "description": "Saas resource properties.", - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "the Saas resource status.", - "enum": [ - "Pending", - "Subscribed", - "Unsubscribed", - "Suspended", - "Deactivated" - ] - }, - "saasAppPlan": { - "description": "the resource plan details.", - "$ref": "#/definitions/SaasAppPlan" - } + } + }, + "AccessTokenResult": { + "description": "the ISV access token result response.", + "type": "object", + "properties": { + "PublisherOfferBaseUri": { + "description": "The Publisher Offer Base Uri", + "type": "string" + }, + "Token": { + "description": "The generated token", + "type": "string" } - }, - "SaasAppPlan": { - "description": "Saas resource plan.", - "type": "object", - "properties": { - "publisher": { - "description": "the publisher id.", - "type": "string" - }, - "product": { - "description": "the offer id.", - "type": "string" - }, - "name": { - "description": "the plan id.", - "type": "string" + } + }, + "SaasAppResponseWithContinuation": { + "description": "saas app response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasApp" } } - }, - "Tags": { - "description": "the resource tags.", - "type": "object", - "additionalProperties": { - "description": "additional properties.", + } + }, + "SaasAppOperationsResponseWithContinuation": { + "description": "saas app operation response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", "type": "string" - } - }, - "SaasAppOperation": { - "description": "", - "type": "object", - "properties": { - "name": { - "description": "the operation name", - "type": "string" - }, - "display": { - "description": "the operation display", - "$ref": "#/definitions/SaasAppOperationDisplay" - }, - "origin": { - "description": "the operation origin", - "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasAppOperation" } } - }, - "SaasAppOperationDisplay": { - "description": "Saas app operation display", - "type": "object", - "properties": { - "Provider": { - "description": "", - "type": "string" - }, - "Resource": { - "description": "", - "type": "string" - }, - "Operation": { - "description": "Type of the operation: get, read, delete, etc.", - "type": "string" - }, - "Description": { - "description": "Type of the operation: get, read, delete, etc.", - "type": "string" + } + }, + "SaasResourceResponseWithContinuation": { + "description": "saas resources response with continuation.", + "type": "object", + "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, + "value": { + "description": "the value of response.", + "type": "array", + "items": { + "$ref": "#/definitions/SaasResource" } } - }, - "SaasRpModernEligibility": { - "description": "", - "type": "object", + } + }, + "SaasApp": { + "description": "the saasApp resource.", + "type": "object", + "properties": { + "id": { + "description": "the resource Id.", + "type": "string" + }, + "location": { + "description": "tthe resource location.", + "type": "string" + }, + "name": { + "description": "the resource name.", + "type": "string" + }, + "type": { + "description": "the resource type.", + "type": "string" + }, "properties": { - "Id": { - "description": "the azure subscription id", - "type": "string" - }, - "isModern": { - "description": "whether the azure subscription has been converted to modern.", - "type": "boolean" - } + "description": "the resource properties.", + "$ref": "#/definitions/SaasAppProperties" + }, + "tags": { + "description": "the resource tags.", + "$ref": "#/definitions/Tags" } - }, - "deleteOptions": { + } + }, + "SaasAppProperties": { + "description": "Saas resource properties.", + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "the Saas resource status.", + "enum": [ + "Pending", + "Subscribed", + "Unsubscribed", + "Suspended", + "Deactivated" + ] + }, + "saasAppPlan": { + "description": "the resource plan details.", + "$ref": "#/definitions/SaasAppPlan" + } + } + }, + "SaasAppPlan": { + "description": "Saas resource plan.", + "type": "object", + "properties": { + "publisher": { + "description": "the publisher id.", + "type": "string" + }, + "product": { + "description": "the offer id.", + "type": "string" + }, + "name": { + "description": "the plan id.", + "type": "string" + } + } + }, + "Tags": { + "description": "the resource tags.", + "type": "object", + "additionalProperties": { + "description": "additional properties.", + "type": "string" + } + }, + "SaasAppOperation": { + "description": "", + "type": "object", + "properties": { + "name": { + "description": "the operation name", + "type": "string" + }, + "display": { + "description": "the operation display", + "$ref": "#/definitions/SaasAppOperationDisplay" + }, + "origin": { + "description": "the operation origin", + "type": "string" + } + } + }, + "SaasAppOperationDisplay": { + "description": "Saas app operation display", + "type": "object", + "properties": { + "Provider": { + "description": "", + "type": "string" + }, + "Resource": { + "description": "", + "type": "string" + }, + "Operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + } + } + }, + "SaasRpModernEligibility": { + "description": "SaasRp Modern Eligibility", + "type": "object", + "properties": { + "Id": { + "description": "the azure subscription id", + "type": "string" + }, + "isModern": { + "description": "whether the azure subscription has been converted to modern.", + "type": "boolean" + } + } + }, + "deleteOptions": { + "description": "delete Options", + "type": "object", + "properties": { "UnsubscribeOnly": { "type": "boolean", "description": "whether it is unsubscribeOnly" @@ -747,43 +750,44 @@ "description": "Feedback" } } + } + }, + "parameters": { + "SaasResourceIdParameter": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The Saas resource ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" }, - "parameters": { - "SaasResourceIdParameter": { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The Saas resource ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to be used with the HTTP request." - }, - "OperationIdParameter": { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "the operation Id parameter." - }, - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - } + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "the operation Id parameter." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" } - } \ No newline at end of file + } +} \ No newline at end of file From 8812991fec40bc29bcaab345f8aff361024c3997 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Sun, 15 Nov 2020 18:32:50 +0200 Subject: [PATCH 09/31] add folder --- .../2018-03-01-beta/examples/saasV1/SaaSGetApplications.json | 0 .../2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json | 0 .../2018-03-01-beta/examples/saasV1/SaaSGetOperations.json | 0 .../2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json | 0 .../2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json | 0 .../preview/2018-03-01-beta/examples/saasV2/SaasDelete.json | 0 .../preview/2018-03-01-beta/examples/saasV2/SaasGet.json | 0 .../preview/2018-03-01-beta/examples/saasV2/SaasPut.json | 0 .../{ => Microsoft.SaaS}/preview/2018-03-01-beta/saas.json | 0 9 files changed, 0 insertions(+), 0 deletions(-) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV2/SaasGet.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/examples/saasV2/SaasPut.json (100%) rename specification/saas/resource-manager/{ => Microsoft.SaaS}/preview/2018-03-01-beta/saas.json (100%) diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasGet.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/examples/saasV2/SaasPut.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json diff --git a/specification/saas/resource-manager/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json similarity index 100% rename from specification/saas/resource-manager/preview/2018-03-01-beta/saas.json rename to specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json From 7230875eec15c8f9d56e7557cc1f62d7251ee6b0 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 16:43:31 +0200 Subject: [PATCH 10/31] add new line and cSpell --- cSpell.json | 6 ++++++ .../examples/saasV1/SaaSGetApplications.json | 2 +- .../examples/saasV1/SaaSGetModerneligibility.json | 2 +- .../2018-03-01-beta/examples/saasV1/SaaSGetOperations.json | 2 +- .../examples/saasV2/ListAccessTokenPost.json | 2 +- .../examples/saasV2/SaaSGetAllResources.json | 2 +- .../preview/2018-03-01-beta/examples/saasV2/SaasDelete.json | 2 +- .../preview/2018-03-01-beta/examples/saasV2/SaasGet.json | 2 +- .../preview/2018-03-01-beta/examples/saasV2/SaasPut.json | 2 +- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 2 +- 10 files changed, 15 insertions(+), 9 deletions(-) diff --git a/cSpell.json b/cSpell.json index 6d8c0045d327..ab6ee6495b9c 100644 --- a/cSpell.json +++ b/cSpell.json @@ -748,6 +748,12 @@ "pstn", "unconfiguring" ] + }, + { + "filename": "**/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json", + "words": [ + "checkmoderneligibility" + ] } ] } \ No newline at end of file diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index 0f2db8532347..8f0385ba724d 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -47,4 +47,4 @@ } ] } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json index a18474a80bb6..a38d36253bfa 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json @@ -11,4 +11,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json index 7302453eb962..3ab5aebaa12c 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetOperations.json @@ -61,4 +61,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json index 30ed93682de1..b4477d124ac7 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json @@ -11,4 +11,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json index cb86a85069b3..bd1522b2795c 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json @@ -71,4 +71,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json index f91b8fa637af..24181fc08c00 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json @@ -11,4 +11,4 @@ "responses": { "204": {} } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json index a98d4f4a5914..2e446b8be87e 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json @@ -37,4 +37,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json index dd359360bbbf..a33170665f7d 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -18,4 +18,4 @@ "responses": { "202": {} } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index fe55a866942d..68f04a9acdce 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -790,4 +790,4 @@ "x-ms-parameter-location": "method" } } -} \ No newline at end of file +} From 3d65205deb97996f44dde1152e75d43d04c76ba2 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 17:04:41 +0200 Subject: [PATCH 11/31] typing errors --- cSpell.json | 3 ++- .../preview/2018-03-01-beta/saas.json | 14 +++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/cSpell.json b/cSpell.json index ab6ee6495b9c..da14d31d7b99 100644 --- a/cSpell.json +++ b/cSpell.json @@ -752,7 +752,8 @@ { "filename": "**/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json", "words": [ - "checkmoderneligibility" + "checkmoderneligibility", + "saasresources" ] } ] diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 68f04a9acdce..88a6c170b559 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -81,7 +81,7 @@ ], "responses": { "200": { - "description": "Request successful. The request returns the genetaring access token.", + "description": "Request successful. The request returns the generated access token.", "schema": { "$ref": "#/definitions/SaasRpModernEligibility" } @@ -105,7 +105,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaaS_GetAppplications", + "operationId": "SaaS_GetApplications", "description": "Gets all SaaS resources by subscription id and resource group name.", "produces": [ "application/json" @@ -224,7 +224,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaaS_CreateResorce", + "operationId": "SaaS_CreateResource", "description": "Creates a SaaS resource.", "parameters": [ { @@ -313,7 +313,7 @@ ], "responses": { "200": { - "description": "Request successful. The request returns the genetaring access token.", + "description": "Request successful. The request returns the generated access token.", "schema": { "$ref": "#/definitions/AccessTokenResult" } @@ -507,7 +507,7 @@ }, "paymentChannelType": { "type": "string", - "description": "The Payment channel for the SaaSsubscription.", + "description": "The Payment channel for the SaasSubscription.", "enum": [ "SubscriptionDelegated" ] @@ -533,7 +533,7 @@ }, "publisherTestEnvironment": { "type": "string", - "description": "The environement in the publisher side for this resource." + "description": "The environment in the publisher side for this resource." } } }, @@ -611,7 +611,7 @@ "type": "string" }, "location": { - "description": "tthe resource location.", + "description": "the resource location.", "type": "string" }, "name": { From d61e1ae5fc851f55986c7016ae335ddca3be9b2f Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 19:04:57 +0200 Subject: [PATCH 12/31] change example rsponse --- .../examples/saasV1/SaaSGetApplications.json | 78 ++++++++++--------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index 8f0385ba724d..3b8dc162e352 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -5,46 +5,50 @@ "api-version": "2018-03-01-beta" }, "response": { - "nextLink": null, - "value": [ - { - "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", - "location": "location", - "name": "myapp", - "type": "Microsoft.SaaS/applications", - "properties": { - "status": "Subscribed", - "saasAppPlan": { - "publisher": "contoso", - "product": "myOffer", - "name": "myPlan1" - } - }, - "tags": [ + "200": { + "body": { + "nextLink": null, + "value": [ { - "additionalProperties": "additionalProperties" - } - ] - }, - { - "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", - "location": "location", - "name": "myapp", - "type": "Microsoft.SaaS/applications", - "properties": { - "status": "Subscribed", - "saasAppPlan": { - "publisher": "contoso", - "product": "myOffer", - "name": "myPlan2" - } - }, - "tags": [ + "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", + "location": "location", + "name": "myapp", + "type": "Microsoft.SaaS/applications", + "properties": { + "status": "Subscribed", + "saasAppPlan": { + "publisher": "contoso", + "product": "myOffer", + "name": "myPlan1" + } + }, + "tags": [ + { + "additionalProperties": "additionalProperties" + } + ] + }, { - "additionalProperties": "additionalProperties" + "id": "/subscriptions/bc6c2f82-a39d-41b8-a648-71527498a23e/resourceGroups/myResourceGroup/providers/Microsoft.SaaS/applications/myapp", + "location": "location", + "name": "myapp", + "type": "Microsoft.SaaS/applications", + "properties": { + "status": "Subscribed", + "saasAppPlan": { + "publisher": "contoso", + "product": "myOffer", + "name": "myPlan2" + } + }, + "tags": [ + { + "additionalProperties": "additionalProperties" + } + ] } ] } - ] + } } -} +} \ No newline at end of file From 0271ae1a97f664d7ed8b98b542fac1b3e23f6f64 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 19:16:42 +0200 Subject: [PATCH 13/31] change response of application example --- .../2018-03-01-beta/examples/saasV1/SaaSGetApplications.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index 3b8dc162e352..43d3827ea25f 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -4,7 +4,7 @@ "resourceGroupName": "myResourceGroup", "api-version": "2018-03-01-beta" }, - "response": { + "responses": { "200": { "body": { "nextLink": null, From d8f2a4e6e072c707e993a99ce1f653eb825b56e0 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 20:03:18 +0200 Subject: [PATCH 14/31] add statuses to responses --- .../examples/saasV1/SaaSGetApplications.json | 5 +++-- .../examples/saasV1/SaaSGetModerneligibility.json | 4 +++- .../examples/saasV2/ListAccessTokenPost.json | 3 ++- .../examples/saasV2/SaaSGetAllResources.json | 4 +++- .../2018-03-01-beta/examples/saasV2/SaasDelete.json | 4 +++- .../2018-03-01-beta/examples/saasV2/SaasGet.json | 4 +++- .../2018-03-01-beta/examples/saasV2/SaasPut.json | 5 ++++- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 10 +++++----- 8 files changed, 26 insertions(+), 13 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index 43d3827ea25f..9841a40f9ea3 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -49,6 +49,7 @@ } ] } - } + }, + "502": {} } -} \ No newline at end of file +} diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json index a38d36253bfa..5aa7cd545ea6 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json @@ -9,6 +9,8 @@ "id": "bc6c2f82-a39d-41b8-a648-71527498a23e", "isModern": true } - } + }, + "404": {}, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json index b4477d124ac7..7fd959b52c10 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json @@ -9,6 +9,7 @@ "PublisherOfferBaseUri": "https://cloud.elastic.co/api/v1/marketplace/azure/common/auth", "Token": "jyhAtr3AiFTXO0QsEkYizsNzqIAUJ+E0M1SXhl4E5hwAl7+GJT6t+dEwuWpSizgR0Vn6dMhzpS94JRzkUh2Xuq5L1QDgmDkDUeIikTFNviwtwxtF8CwipcB49rq5d8whmVp0CmWEjd/FzU0vvlikBRuy+asxC1UhXv6XxBkSxkZKj29AAFiGgsgRvXIld47C" } - } + }, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json index bd1522b2795c..384bba1337be 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json @@ -69,6 +69,8 @@ } ] } - } + }, + "404": {}, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json index 24181fc08c00..a52107c599ac 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json @@ -9,6 +9,8 @@ } }, "responses": { - "204": {} + "204": {}, + "202": {}, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json index 2e446b8be87e..5ba17203660d 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json @@ -35,6 +35,8 @@ }, "tags": null } - } + }, + "404": {}, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json index a33170665f7d..53d270388aaf 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -16,6 +16,9 @@ } }, "responses": { - "202": {} + "202": {}, + "403": {}, + "400": {}, + "502": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 88a6c170b559..24a32825613b 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -673,7 +673,7 @@ }, "Tags": { "description": "the resource tags.", - "type": "object", + "type": "array", "additionalProperties": { "description": "additional properties.", "type": "string" @@ -701,19 +701,19 @@ "description": "Saas app operation display", "type": "object", "properties": { - "Provider": { + "provider": { "description": "", "type": "string" }, - "Resource": { + "resource": { "description": "", "type": "string" }, - "Operation": { + "operation": { "description": "Type of the operation: get, read, delete, etc.", "type": "string" }, - "Description": { + "description": { "description": "Type of the operation: get, read, delete, etc.", "type": "string" } From 54d61f7934f4d8b4e721950d71ac0cfa61b57f3a Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Mon, 16 Nov 2020 20:09:18 +0200 Subject: [PATCH 15/31] change put payload parameters name --- .../2018-03-01-beta/examples/saasV2/SaasPut.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json index 53d270388aaf..d5b547c18aff 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -3,13 +3,13 @@ "api-version": "2018-03-01-beta", "parameters": { "properties": { - "PublisherId": "microsoft-hcb", - "OfferId": "microsofthealthcarebot", - "SaasResourceName": "testRunnerFromArm", - "SKUId": "free", - "PaymentChannelType": "SubscriptionDelegated", - "TermId": "hjdtn7tfnxcy", - "PaymentChannelMetadata": { + "publisherId": "microsoft-hcb", + "offerId": "microsofthealthcarebot", + "saasResourceName": "testRunnerFromArm", + "skuId": "free", + "paymentChannelType": "SubscriptionDelegated", + "termId": "hjdtn7tfnxcy", + "paymentChannelMetadata": { "AzureSubscriptionId": "155af98a-3205-47e7-883b-a2ab9db9f88d" } } From dbc8903a40c457db360b1e94658324587514bd66 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 07:57:58 +0200 Subject: [PATCH 16/31] change tag properties --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 24a32825613b..06c24cc9d048 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -674,9 +674,11 @@ "Tags": { "description": "the resource tags.", "type": "array", - "additionalProperties": { - "description": "additional properties.", - "type": "string" + "items": { + "additionalProperties": { + "description": "additional properties.", + "type": "string" + } } }, "SaasAppOperation": { From 2f1999ddb5d921cd9f13309078dc9692513f56a6 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 08:07:28 +0200 Subject: [PATCH 17/31] add readme files --- .../saas/resource-manager/readme.csharp.md | 15 ++++ .../saas/resource-manager/readme.go.md | 19 +++++ specification/saas/resource-manager/readme.md | 79 +++++++++++++++++++ .../saas/resource-manager/readme.python.md | 21 +++++ .../saas/resource-manager/readme.ruby.md | 19 +++++ .../resource-manager/readme.typescript.md | 13 +++ 6 files changed, 166 insertions(+) create mode 100644 specification/saas/resource-manager/readme.csharp.md create mode 100644 specification/saas/resource-manager/readme.go.md create mode 100644 specification/saas/resource-manager/readme.md create mode 100644 specification/saas/resource-manager/readme.python.md create mode 100644 specification/saas/resource-manager/readme.ruby.md create mode 100644 specification/saas/resource-manager/readme.typescript.md diff --git a/specification/saas/resource-manager/readme.csharp.md b/specification/saas/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..4eafcea5424d --- /dev/null +++ b/specification/saas/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.SaaS + output-folder: $(csharp-sdks-folder)/saas/management/Microsoft.SaaS/GeneratedProtocol +``` diff --git a/specification/saas/resource-manager/readme.go.md b/specification/saas/resource-manager/readme.go.md new file mode 100644 index 000000000000..9627aef930f9 --- /dev/null +++ b/specification/saas/resource-manager/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Tag: package-2018-03-01-beta and go + +These settings apply only when `--tag=package-2018-03-01-beta --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2018-03-01-beta' && $(go) +namespace: Microsoft.SaaS +output-folder: $(go-sdks-folder)/saas/Generated +``` diff --git a/specification/saas/resource-manager/readme.md b/specification/saas/resource-manager/readme.md new file mode 100644 index 000000000000..622ea34c9618 --- /dev/null +++ b/specification/saas/resource-manager/readme.md @@ -0,0 +1,79 @@ +# saas + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for saas. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the saas. + +```yaml +openapi-type: arm +tag: package-2018-03-01-beta +``` + +### Tag: package-2018-03-01-beta + +These settings apply only when `--tag=package-2018-03-01-beta` is specified on the command line. + +```yaml $(tag) == 'package-2018-03-01-beta' +input-file: + - Microsoft.SaaS/preview/2018-03-01-beta/saas.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_saas'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/saas/resource-manager/readme.python.md b/specification/saas/resource-manager/readme.python.md new file mode 100644 index 000000000000..eaf9be39aff2 --- /dev/null +++ b/specification/saas/resource-manager/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.SaaS + package-name: saas + package-version: 2018-03-01-beta + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/saas +``` diff --git a/specification/saas/resource-manager/readme.ruby.md b/specification/saas/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..c5a9e8dedef7 --- /dev/null +++ b/specification/saas/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_saas +package-version: 2018-03-01-beta +azure-arm: true +``` + +### Tag: package-2018-03-01-beta and ruby + +These settings apply only when `--tag=package-2018-03-01-beta --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2018-03-01-beta' && $(ruby) +namespace: Microsoft.SaaS +output-folder: $(ruby-sdks-folder)/saas +``` diff --git a/specification/saas/resource-manager/readme.typescript.md b/specification/saas/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..1ca6c364f4a9 --- /dev/null +++ b/specification/saas/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "saas" + output-folder: "$(typescript-sdks-folder)/packages/saas" + payload-flattening-threshold: 1 + generate-metadata: true +``` From 376d3174ab118d8e5611822e9a27eaec188876e9 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 08:18:50 +0200 Subject: [PATCH 18/31] move x-ms-exaples to the right place --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 06c24cc9d048..d694084fd903 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -91,11 +91,11 @@ }, "502": { "description": "Internal Server Error" - }, - "x-ms-examples": { - "Get Subscription Level SaaS resource": { - "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" - } + } + }, + "x-ms-examples": { + "Get Subscription Level SaaS resource": { + "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" } } } From 3db9609545141a65e603832ac78488608f688775 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 09:22:04 +0200 Subject: [PATCH 19/31] add defoult response --- .../preview/2018-03-01-beta/saas.json | 124 ++++++++++++------ 1 file changed, 85 insertions(+), 39 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index d694084fd903..113b70ad23fa 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -34,7 +34,7 @@ } }, "paths": { - "/providers/microsoft.saas/operations": { + "/providers/Microsoft.Saas/operations": { "get": { "tags": [ "SaaSResources" @@ -55,6 +55,12 @@ "schema": { "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" } + }, + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -64,7 +70,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/microsoft.saas/checkmoderneligibility": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Saas/checkmoderneligibility": { "get": { "tags": [ "SaaSResources" @@ -86,11 +92,11 @@ "$ref": "#/definitions/SaasRpModernEligibility" } }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -100,7 +106,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SaaS/applications": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Saas/applications": { "get": { "tags": [ "SaaSResources" @@ -128,8 +134,11 @@ "$ref": "#/definitions/SaasAppResponseWithContinuation" } }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -170,8 +179,11 @@ "202": { "description": "Accepted and the operation will complete asynchronously." }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -205,11 +217,11 @@ "$ref": "#/definitions/SaasResource" } }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -219,7 +231,7 @@ } } }, - "/providers/microsoft.saas/saasresources": { + "/providers/Microsoft.Saas/saasresources": { "put": { "tags": [ "SaaSResources" @@ -244,14 +256,11 @@ "202": { "description": "Accepted and the operation will complete asynchronously." }, - "403": { - "description": "Forbidden" - }, - "400": { - "description": "BadRequest" - }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -282,11 +291,11 @@ "$ref": "#/definitions/SaasResourceResponseWithContinuation" } }, - "404": { - "description": "not found" - }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -296,7 +305,7 @@ } } }, - "/providers/Microsoft.SaaS/saasresources/{resourceId}/listAccessToken": { + "/providers/Microsoft.Saas/saasresources/{resourceId}/listAccessToken": { "post": { "tags": [ "SaaSResources" @@ -318,8 +327,11 @@ "$ref": "#/definitions/AccessTokenResult" } }, - "502": { - "description": "Internal Server Error" + "default": { + "description": "A response indicating an error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } } }, "x-ms-examples": { @@ -452,7 +464,11 @@ "Subscribed", "Unsubscribed", "Suspended" - ] + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } }, "term": { "type": "object", @@ -509,8 +525,13 @@ "type": "string", "description": "The Payment channel for the SaasSubscription.", "enum": [ - "SubscriptionDelegated" - ] + "SubscriptionDelegated", + "CustomerDelegated" + ], + "x-ms-enum": { + "name": "paymentChannelType", + "modelAsString": true + } }, "paymentChannelMetadata": { "type": "object", @@ -645,7 +666,11 @@ "Unsubscribed", "Suspended", "Deactivated" - ] + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } }, "saasAppPlan": { "description": "the resource plan details.", @@ -725,7 +750,7 @@ "description": "SaasRp Modern Eligibility", "type": "object", "properties": { - "Id": { + "id": { "description": "the azure subscription id", "type": "string" }, @@ -752,6 +777,27 @@ "description": "Feedback" } } + }, + "ErrorResponse": { + "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + } + } } }, "parameters": { From defc193e4985b8d594dd55ce3768fc830071600d Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 12:34:58 +0200 Subject: [PATCH 20/31] fix error responses --- .../examples/saasV1/SaaSGetApplications.json | 3 +- .../saasV1/SaaSGetModerneligibility.json | 4 +-- .../examples/saasV2/ListAccessTokenPost.json | 7 ++--- .../examples/saasV2/SaaSGetAllResources.json | 4 +-- .../examples/saasV2/SaasDelete.json | 10 +++---- .../examples/saasV2/SaasGet.json | 4 +-- .../examples/saasV2/SaasPut.json | 5 +--- .../preview/2018-03-01-beta/saas.json | 29 ++++++++----------- 8 files changed, 24 insertions(+), 42 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json index 9841a40f9ea3..58c4ddb7b505 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetApplications.json @@ -49,7 +49,6 @@ } ] } - }, - "502": {} + } } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json index 5aa7cd545ea6..a38d36253bfa 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV1/SaaSGetModerneligibility.json @@ -9,8 +9,6 @@ "id": "bc6c2f82-a39d-41b8-a648-71527498a23e", "isModern": true } - }, - "404": {}, - "502": {} + } } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json index 7fd959b52c10..a33759071995 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/ListAccessTokenPost.json @@ -6,10 +6,9 @@ "responses": { "200": { "body": { - "PublisherOfferBaseUri": "https://cloud.elastic.co/api/v1/marketplace/azure/common/auth", - "Token": "jyhAtr3AiFTXO0QsEkYizsNzqIAUJ+E0M1SXhl4E5hwAl7+GJT6t+dEwuWpSizgR0Vn6dMhzpS94JRzkUh2Xuq5L1QDgmDkDUeIikTFNviwtwxtF8CwipcB49rq5d8whmVp0CmWEjd/FzU0vvlikBRuy+asxC1UhXv6XxBkSxkZKj29AAFiGgsgRvXIld47C" + "publisherOfferBaseUri": "https://cloud.elastic.co/api/v1/marketplace/azure/common/auth", + "token": "jyhAtr3AiFTXO0QsEkYizsNzqIAUJ+E0M1SXhl4E5hwAl7+GJT6t+dEwuWpSizgR0Vn6dMhzpS94JRzkUh2Xuq5L1QDgmDkDUeIikTFNviwtwxtF8CwipcB49rq5d8whmVp0CmWEjd/FzU0vvlikBRuy+asxC1UhXv6XxBkSxkZKj29AAFiGgsgRvXIld47C" } - }, - "502": {} + } } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json index 384bba1337be..bd1522b2795c 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaaSGetAllResources.json @@ -69,8 +69,6 @@ } ] } - }, - "404": {}, - "502": {} + } } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json index a52107c599ac..660761cf65b3 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json @@ -3,14 +3,12 @@ "api-version": "2018-03-01-beta", "resourceId": "115c3523-1fae-757f-af86-7b27cfd29805", "parameters": { - "UnsubscribeOnly": true, - "ReasonCode": 0, - "Feedback": null + "unsubscribeOnly": true, + "reasonCode": 0, + "feedback": null } }, "responses": { - "204": {}, - "202": {}, - "502": {} + "204": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json index 5ba17203660d..2e446b8be87e 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasGet.json @@ -35,8 +35,6 @@ }, "tags": null } - }, - "404": {}, - "502": {} + } } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json index d5b547c18aff..da1d6e182948 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasPut.json @@ -16,9 +16,6 @@ } }, "responses": { - "202": {}, - "403": {}, - "400": {}, - "502": {} + "202": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 113b70ad23fa..d3e9c456b284 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -176,9 +176,6 @@ "204": { "description": "Request successful. Resource does not exist." }, - "202": { - "description": "Accepted and the operation will complete asynchronously." - }, "default": { "description": "A response indicating an error.", "schema": { @@ -267,10 +264,6 @@ "Create Subscription Level SaaS resource": { "$ref": "./examples/saasV2/SaasPut.json" } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" } }, "get": { @@ -466,7 +459,7 @@ "Suspended" ], "x-ms-enum": { - "name": "status", + "name": "SaasResourceStatus", "modelAsString": true } }, @@ -562,11 +555,11 @@ "description": "the ISV access token result response.", "type": "object", "properties": { - "PublisherOfferBaseUri": { + "publisherOfferBaseUri": { "description": "The Publisher Offer Base Uri", "type": "string" }, - "Token": { + "token": { "description": "The generated token", "type": "string" } @@ -668,7 +661,7 @@ "Deactivated" ], "x-ms-enum": { - "name": "status", + "name": "SaasAppStatus", "modelAsString": true } }, @@ -764,17 +757,17 @@ "description": "delete Options", "type": "object", "properties": { - "UnsubscribeOnly": { + "unsubscribeOnly": { "type": "boolean", "description": "whether it is unsubscribeOnly" }, - "ReasonCode": { + "reasonCode": { "type": "number", "description": "The reasonCode" }, - "Feedback": { + "feedback": { "type": "string", - "description": "Feedback" + "description": "the feedback" } } }, @@ -806,7 +799,8 @@ "in": "path", "required": true, "type": "string", - "description": "The Saas resource ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + "description": "The Saas resource ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)", + "x-ms-parameter-location": "method" }, "ApiVersionParameter": { "name": "api-version", @@ -820,7 +814,8 @@ "in": "path", "required": true, "type": "string", - "description": "the operation Id parameter." + "description": "the operation Id parameter.", + "x-ms-parameter-location": "method" }, "SubscriptionIdParameter": { "name": "subscriptionId", From 5c0b1d191d8ba171094b95536a80eb6bc0c569f4 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 13:53:43 +0200 Subject: [PATCH 21/31] change operation schema --- .../preview/2018-03-01-beta/saas.json | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index d3e9c456b284..1e0a31617489 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -34,7 +34,7 @@ } }, "paths": { - "/providers/Microsoft.Saas/operations": { + "/providers/Microsoft.SaaS/operations": { "get": { "tags": [ "SaaSResources" @@ -70,7 +70,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Saas/checkmoderneligibility": { + "/subscriptions/{subscriptionId}/providers/Microsoft.SaaS/checkmoderneligibility": { "get": { "tags": [ "SaaSResources" @@ -106,7 +106,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Saas/applications": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SaaS/applications": { "get": { "tags": [ "SaaSResources" @@ -228,7 +228,7 @@ } } }, - "/providers/Microsoft.Saas/saasresources": { + "/providers/Microsoft.SaaS/saasresources": { "put": { "tags": [ "SaaSResources" @@ -298,7 +298,7 @@ } } }, - "/providers/Microsoft.Saas/saasresources/{resourceId}/listAccessToken": { + "/providers/Microsoft.SaaS/saasresources/{resourceId}/listAccessToken": { "post": { "tags": [ "SaaSResources" @@ -362,7 +362,7 @@ "type": "object", "properties": { "name": { - "description": "Operation name: {provider}/{resource}/{operation}", + "description": "Operation name", "type": "string" }, "display": { @@ -700,7 +700,7 @@ } }, "SaasAppOperation": { - "description": "", + "description": "saas app operations", "type": "object", "properties": { "name": { @@ -714,6 +714,10 @@ "origin": { "description": "the operation origin", "type": "string" + }, + "isDataAction": { + "description": "whether the operation is a data action or not.", + "type": "boolean" } } }, @@ -722,19 +726,19 @@ "type": "object", "properties": { "provider": { - "description": "", + "description": "Name of the provider for display purposes", "type": "string" }, "resource": { - "description": "", + "description": "Name of the resource type for display purposes", "type": "string" }, "operation": { - "description": "Type of the operation: get, read, delete, etc.", + "description": "Name of the operation for display purposes", "type": "string" }, "description": { - "description": "Type of the operation: get, read, delete, etc.", + "description": "Description of the operation for display purposes", "type": "string" } } From 1d1fb70985aa99a29d106027a31585c4233db762 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 17 Nov 2020 14:00:19 +0200 Subject: [PATCH 22/31] add 200 to delete response --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 1e0a31617489..3273d0097afa 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -176,6 +176,9 @@ "204": { "description": "Request successful. Resource does not exist." }, + "200": { + "description": "Request successful." + }, "default": { "description": "A response indicating an error.", "schema": { From 2d056f43b7d86857dec0f632c5ab7d603c19979d Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 18 Nov 2020 10:57:32 +0200 Subject: [PATCH 23/31] fix worning --- .../examples/saasV2/SaasDelete.json | 3 +- .../preview/2018-03-01-beta/saas.json | 56 ++++++++++++++----- 2 files changed, 43 insertions(+), 16 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json index 660761cf65b3..b40386b71ab1 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/examples/saasV2/SaasDelete.json @@ -9,6 +9,7 @@ } }, "responses": { - "204": {} + "204": {}, + "200": {} } } diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 3273d0097afa..2f2f8efcc4d3 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -39,7 +39,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaasApp_Get", + "operationId": "operations_List", "description": "Gets all SaaS app operations.", "produces": [ "application/json" @@ -64,9 +64,12 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "Get saas operations": { "$ref": "./examples/saasV1/SaaSGetOperations.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -75,7 +78,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaaS_checkmoderneligibility", + "operationId": "SaaSAppModerneligibility_Get", "description": "Check if the Azure Subscription has been converted to modern.", "parameters": [ { @@ -100,7 +103,7 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "Get modern eligibility": { "$ref": "./examples/saasV1/SaaSGetModerneligibility.json" } } @@ -111,7 +114,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaaS_GetApplications", + "operationId": "Applications_List", "description": "Gets all SaaS resources by subscription id and resource group name.", "produces": [ "application/json" @@ -142,9 +145,12 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "Get saas application": { "$ref": "./examples/saasV1/SaaSGetApplications.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -187,7 +193,7 @@ } }, "x-ms-examples": { - "Delete Subscription Level SaaS resource": { + "Delete SaaS resource": { "$ref": "./examples/saasV2/SaasDelete.json" } }, @@ -200,7 +206,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaaS_GetResource", + "operationId": "Saa_GetResource", "description": "Gets information about the specified SaaS.", "parameters": [ { @@ -225,7 +231,7 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "Get SaaS resource": { "$ref": "./examples/saasV2/SaasGet.json" } } @@ -254,7 +260,18 @@ ], "responses": { "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "description": "The URL to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "format": "int32", + "type": "integer" + } + } }, "default": { "description": "A response indicating an error.", @@ -264,16 +281,20 @@ } }, "x-ms-examples": { - "Create Subscription Level SaaS resource": { + "Create SaaS resource": { "$ref": "./examples/saasV2/SaasPut.json" } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } }, "get": { "tags": [ "SaaSResources" ], - "operationId": "SaasResource-GetAllResources", + "operationId": "SaasResources_List", "description": "Get All Resources", "parameters": [ { @@ -295,9 +316,12 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "Get get all SaaS resources": { "$ref": "./examples/saasV2/SaaSGetAllResources.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -306,7 +330,7 @@ "tags": [ "SaaSResources" ], - "operationId": "SaasResource-GetAccessToken", + "operationId": "SaasResource-listAccessToken", "description": "Gets the ISV access token for a SaaS resource.", "parameters": [ { @@ -331,7 +355,7 @@ } }, "x-ms-examples": { - "Get Subscription Level SaaS resource": { + "generated SaaS resource token": { "$ref": "./examples/saasV2/ListAccessTokenPost.json" } } @@ -450,6 +474,7 @@ }, "SaasProperties": { "type": "object", + "description":"saas resource properties", "properties": { "status": { "type": "string", @@ -500,6 +525,7 @@ }, "SaasCreationProperties": { "type": "object", + "description": "properties for creatinon saas", "properties": { "offerId": { "type": "string", From be3227ef4386f955348310a52ff974c4adf5efcc Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 18 Nov 2020 11:05:53 +0200 Subject: [PATCH 24/31] readme files --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 1 + specification/saas/resource-manager/readme.csharp.md | 2 +- specification/saas/resource-manager/readme.go.md | 2 +- specification/saas/resource-manager/readme.ruby.md | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 2f2f8efcc4d3..e09bd559d385 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -420,6 +420,7 @@ "type": "object", "properties": { "properties": { + "description": "saas properties", "type": "object", "allOf": [ { diff --git a/specification/saas/resource-manager/readme.csharp.md b/specification/saas/resource-manager/readme.csharp.md index 4eafcea5424d..dc56a9d877a0 100644 --- a/specification/saas/resource-manager/readme.csharp.md +++ b/specification/saas/resource-manager/readme.csharp.md @@ -10,6 +10,6 @@ csharp: payload-flattening-threshold: 1 clear-output-folder: true client-side-validation: false - namespace: Microsoft.SaaS + namespace: microsoft.saas output-folder: $(csharp-sdks-folder)/saas/management/Microsoft.SaaS/GeneratedProtocol ``` diff --git a/specification/saas/resource-manager/readme.go.md b/specification/saas/resource-manager/readme.go.md index 9627aef930f9..304193d8937c 100644 --- a/specification/saas/resource-manager/readme.go.md +++ b/specification/saas/resource-manager/readme.go.md @@ -14,6 +14,6 @@ These settings apply only when `--tag=package-2018-03-01-beta --go` is specified Please also specify `--go-sdks-folder=`. ```yaml $(tag) == 'package-2018-03-01-beta' && $(go) -namespace: Microsoft.SaaS +namespace: microsoft.saas output-folder: $(go-sdks-folder)/saas/Generated ``` diff --git a/specification/saas/resource-manager/readme.ruby.md b/specification/saas/resource-manager/readme.ruby.md index c5a9e8dedef7..8a8df3fb5674 100644 --- a/specification/saas/resource-manager/readme.ruby.md +++ b/specification/saas/resource-manager/readme.ruby.md @@ -14,6 +14,6 @@ These settings apply only when `--tag=package-2018-03-01-beta --ruby` is specifi Please also specify `--ruby-sdks-folder=`. ```yaml $(tag) == 'package-2018-03-01-beta' && $(ruby) -namespace: Microsoft.SaaS +namespace: microsoft.saas output-folder: $(ruby-sdks-folder)/saas ``` From d5fc1b6c95d6c37f75a2a0df29690d711f84d6d6 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 18 Nov 2020 11:07:15 +0200 Subject: [PATCH 25/31] remove long running --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 4 ---- specification/saas/resource-manager/readme.python.md | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index e09bd559d385..318dcaba9a64 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -284,10 +284,6 @@ "Create SaaS resource": { "$ref": "./examples/saasV2/SaasPut.json" } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" } }, "get": { diff --git a/specification/saas/resource-manager/readme.python.md b/specification/saas/resource-manager/readme.python.md index eaf9be39aff2..d91145ef4e97 100644 --- a/specification/saas/resource-manager/readme.python.md +++ b/specification/saas/resource-manager/readme.python.md @@ -8,7 +8,7 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.SaaS + namespace: microsoft.saas package-name: saas package-version: 2018-03-01-beta clear-output-folder: true From 2ccd2ef607813cda7438f42205fc09498e89b126 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 18 Nov 2020 13:24:13 +0200 Subject: [PATCH 26/31] add space --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 318dcaba9a64..af703d66c18f 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -180,7 +180,7 @@ ], "responses": { "204": { - "description": "Request successful. Resource does not exist." + "description": "Request successful." }, "200": { "description": "Request successful." @@ -471,7 +471,7 @@ }, "SaasProperties": { "type": "object", - "description":"saas resource properties", + "description": "saas resource properties", "properties": { "status": { "type": "string", From 89675dc13f75c3255b1d569ce3edf9e1abe9c6bb Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 18 Nov 2020 19:26:07 +0200 Subject: [PATCH 27/31] spelling errors --- cSpell.json | 3 ++- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cSpell.json b/cSpell.json index da14d31d7b99..1eec4e4a1c8b 100644 --- a/cSpell.json +++ b/cSpell.json @@ -753,7 +753,8 @@ "filename": "**/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json", "words": [ "checkmoderneligibility", - "saasresources" + "saasresources", + "Moderneligibility" ] } ] diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index af703d66c18f..e37428351b06 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -522,7 +522,7 @@ }, "SaasCreationProperties": { "type": "object", - "description": "properties for creatinon saas", + "description": "properties for creation saas", "properties": { "offerId": { "type": "string", From 6cc9e9f442b5d98d1f6b11b249af241c9c1f9e28 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 24 Nov 2020 12:00:12 +0200 Subject: [PATCH 28/31] comments fixing --- .../preview/2018-03-01-beta/saas.json | 102 ++---------------- 1 file changed, 10 insertions(+), 92 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index e37428351b06..6a539ad6030f 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -53,13 +53,13 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" } }, "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -73,7 +73,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.SaaS/checkmoderneligibility": { + "/subscriptions/{subscriptionId}/providers/Microsoft.SaaS/checkModernEligibility": { "get": { "tags": [ "SaaSResources" @@ -98,7 +98,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -140,7 +140,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -188,7 +188,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -226,7 +226,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -276,7 +276,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -307,7 +307,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -346,7 +346,7 @@ "default": { "description": "A response indicating an error.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" } } }, @@ -608,23 +608,6 @@ } } }, - "SaasAppOperationsResponseWithContinuation": { - "description": "saas app operation response with continuation.", - "type": "object", - "properties": { - "nextLink": { - "description": "the next link to query to get the remaining results.", - "type": "string" - }, - "value": { - "description": "the value of response.", - "type": "array", - "items": { - "$ref": "#/definitions/SaasAppOperation" - } - } - } - }, "SaasResourceResponseWithContinuation": { "description": "saas resources response with continuation.", "type": "object", @@ -725,50 +708,6 @@ } } }, - "SaasAppOperation": { - "description": "saas app operations", - "type": "object", - "properties": { - "name": { - "description": "the operation name", - "type": "string" - }, - "display": { - "description": "the operation display", - "$ref": "#/definitions/SaasAppOperationDisplay" - }, - "origin": { - "description": "the operation origin", - "type": "string" - }, - "isDataAction": { - "description": "whether the operation is a data action or not.", - "type": "boolean" - } - } - }, - "SaasAppOperationDisplay": { - "description": "Saas app operation display", - "type": "object", - "properties": { - "provider": { - "description": "Name of the provider for display purposes", - "type": "string" - }, - "resource": { - "description": "Name of the resource type for display purposes", - "type": "string" - }, - "operation": { - "description": "Name of the operation for display purposes", - "type": "string" - }, - "description": { - "description": "Description of the operation for display purposes", - "type": "string" - } - } - }, "SaasRpModernEligibility": { "description": "SaasRp Modern Eligibility", "type": "object", @@ -800,27 +739,6 @@ "description": "the feedback" } } - }, - "ErrorResponse": { - "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", - "type": "object", - "properties": { - "error": { - "description": "The details of the error.", - "properties": { - "code": { - "description": "Error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string", - "readOnly": true - } - } - } - } } }, "parameters": { From 56fed14825dc677a2e60d3597bdfee5329a50e65 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 24 Nov 2020 15:11:02 +0200 Subject: [PATCH 29/31] return operation --- .../preview/2018-03-01-beta/saas.json | 75 ++++++++++++------- 1 file changed, 47 insertions(+), 28 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index 6a539ad6030f..fadc8431b690 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -53,7 +53,7 @@ "200": { "description": "OK", "schema": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/OperationListResult" + "$ref": "#/definitions/SaasAppOperationsResponseWithContinuation" } }, "default": { @@ -368,46 +368,64 @@ } } }, - "OperationListResult": { - "description": "Operation List Result Response", + "SaasAppOperationsResponseWithContinuation": { + "description": "saas app operation response with continuation.", + "type": "object", "properties": { + "nextLink": { + "description": "the next link to query to get the remaining results.", + "type": "string" + }, "value": { - "description": "List of SaaS operations supported by the SaaS resource provider.", + "description": "the value of response.", "type": "array", "items": { - "$ref": "#/definitions/Operation" + "$ref": "#/definitions/SaasAppOperation" } } } }, - "Operation": { - "description": "SaaS REST API operation definition.", + "SaasAppOperation": { + "description": "saas app operations", "type": "object", "properties": { "name": { - "description": "Operation name", + "description": "the operation name", "type": "string" }, "display": { - "description": "Display metadata associated with the operation.", - "properties": { - "provider": { - "description": "Service provider: Microsoft SaaS.", - "type": "string" - }, - "resource": { - "description": "Resource on which the operation is performed.", - "type": "string" - }, - "operation": { - "description": "Type of the operation: get, read, delete, etc.", - "type": "string" - }, - "description": { - "description": "Description of the operation.", - "type": "string" - } - } + "description": "the operation display", + "$ref": "#/definitions/SaasAppOperationDisplay" + }, + "origin": { + "description": "the operation origin", + "type": "string" + }, + "isDataAction": { + "description": "whether the operation is a data action or not.", + "type": "boolean" + } + } + }, + "SaasAppOperationDisplay": { + "description": "Saas app operation display", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider for display purposes", + "type": "string" + }, + "resource": { + "description": "Name of the resource type for display purposes", + "type": "string" + }, + "operation": { + "description": "Name of the operation for display purposes", + "type": "string" + }, + "description": { + "description": "Description of the operation for display purposes", + "type": "string" } } }, @@ -512,7 +530,8 @@ }, "created": { "type": "string", - "description": "The created date of this resource." + "description": "The created date of this resource.", + "readOnly": true }, "lastModified": { "type": "string", From b048b2508cb75e648fee4309767b93019633e02b Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Tue, 24 Nov 2020 15:43:12 +0200 Subject: [PATCH 30/31] readonly --- .../Microsoft.SaaS/preview/2018-03-01-beta/saas.json | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json index fadc8431b690..0b9dcb9d3cbc 100644 --- a/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json +++ b/specification/saas/resource-manager/Microsoft.SaaS/preview/2018-03-01-beta/saas.json @@ -451,7 +451,8 @@ }, "id": { "description": "The resource uri", - "type": "string" + "type": "string", + "readOnly": true }, "type": { "readOnly": true, @@ -470,7 +471,8 @@ "properties": { "id": { "description": "The resource uri", - "type": "string" + "type": "string", + "readOnly": true }, "name": { "description": "The resource name", @@ -650,7 +652,8 @@ "properties": { "id": { "description": "the resource Id.", - "type": "string" + "type": "string", + "readOnly": true }, "location": { "description": "the resource location.", @@ -733,7 +736,8 @@ "properties": { "id": { "description": "the azure subscription id", - "type": "string" + "type": "string", + "readOnly": true }, "isModern": { "description": "whether the azure subscription has been converted to modern.", From a312cfd600a181ae7dfae11652495aeb56d26614 Mon Sep 17 00:00:00 2001 From: Dina Yakobovich Date: Wed, 25 Nov 2020 09:13:24 +0200 Subject: [PATCH 31/31] add suppression --- specification/saas/resource-manager/readme.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/specification/saas/resource-manager/readme.md b/specification/saas/resource-manager/readme.md index 622ea34c9618..71dab2d2bd87 100644 --- a/specification/saas/resource-manager/readme.md +++ b/specification/saas/resource-manager/readme.md @@ -58,6 +58,12 @@ swagger-to-sdk: - bundle install && rake arm:regen_all_profiles['azure_mgmt_saas'] ``` +``` yaml +directive: + - suppress: DeleteMustNotHaveRequestBody + reason: saas in a tenant level and its an exsisting API +``` + ## Go See configuration in [readme.go.md](./readme.go.md)