ApplicationClient icon

ApplicationClient

ARM applications

COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "ARM applications",
    "title": "ApplicationClient",
    "version": "2018-06-01",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/managedapplications.json",
        "version": "2.0"
      }
    ],
    "x-preferred": true,
    "x-providerName": "azure.com",
    "x-serviceName": "resources-managedapplications",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "ApiVersionParameter": {
      "description": "The API version to use for this operation.",
      "in": "query",
      "name": "api-version",
      "required": true,
      "type": "string"
    },
    "SubscriptionIdParameter": {
      "description": "The ID of the target subscription.",
      "in": "path",
      "name": "subscriptionId",
      "required": true,
      "type": "string"
    }
  },
  "paths": {
    "/subscriptions/{subscriptionId}/providers/Microsoft.Solutions/applications": {
      "get": {
        "description": "Gets all the applications within a subscription.",
        "operationId": "Applications_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns an array of applications.",
            "schema": {
              "$ref": "#/definitions/ApplicationListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions": {
      "get": {
        "description": "Lists the managed application definitions in a resource group.",
        "operationId": "ApplicationDefinitions_ListByResourceGroup",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns an array of managed application definitions.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinitionListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-examples": {
          "List managed application definitions": {
            "parameters": {
              "api-version": "2018-06-01",
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myManagedApplicationDef",
                      "identity": null,
                      "location": "East US 2",
                      "managedBy": null,
                      "name": "myManagedApplicationDef",
                      "properties": {
                        "artifacts": [
                          {
                            "name": "CreateUiDefinition",
                            "type": "Custom",
                            "uri": "https://path/to/managedApplicationCreateUiDefinition.json"
                          },
                          {
                            "name": "ManagedApplicationResourceTemplate",
                            "type": "Template",
                            "uri": "https://path/to/mainTemplate.json"
                          }
                        ],
                        "authorizations": [
                          {
                            "principalId": "validprincipalguid",
                            "roleDefinitionId": "validroleguid"
                          }
                        ],
                        "description": "myManagedApplicationDef description",
                        "displayName": "myManagedApplicationDef",
                        "lockLevel": null,
                        "packageFileUri": "https://path/to/packagezipfile"
                      },
                      "resourceGroup": "rg",
                      "sku": null,
                      "tags": null,
                      "type": "Microsoft.Solutions/applicationDefinitions"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myManagedApplicationDef2",
                      "identity": null,
                      "location": "West US",
                      "managedBy": null,
                      "name": "myManagedApplicationDef2",
                      "properties": {
                        "artifacts": [
                          {
                            "name": "CreateUiDefinition",
                            "type": "Custom",
                            "uri": "https://path/to/managedApplicationCreateUiDefinition.json"
                          },
                          {
                            "name": "ManagedApplicationResourceTemplate",
                            "type": "Template",
                            "uri": "https://path/to/mainTemplate.json"
                          }
                        ],
                        "authorizations": [
                          {
                            "principalId": "validprincipalguid",
                            "roleDefinitionId": "validroleguid"
                          }
                        ],
                        "description": "myManagedApplicationDef2 description",
                        "displayName": "myManagedApplicationDef2",
                        "lockLevel": null,
                        "packageFileUri": "https://path/to/packagezipfile"
                      },
                      "resourceGroup": "rg",
                      "sku": null,
                      "tags": null,
                      "type": "Microsoft.Solutions/applicationDefinitions"
                    }
                  ]
                },
                "headers": {}
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}": {
      "delete": {
        "description": "Deletes the managed application definition.",
        "operationId": "ApplicationDefinitions_Delete",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application definition to delete.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationDefinitionName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted - Returns this status until the asynchronous operation has completed."
          },
          "204": {
            "description": "NoContent"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the managed application definition.",
        "operationId": "ApplicationDefinitions_Get",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application definition.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationDefinitionName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns the managed application definition.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "404": {
            "description": "Not Found"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-examples": {
          "Get managed application definition": {
            "parameters": {
              "api-version": "2018-06-01",
              "managedApplicationName": "myManagedApplicationDef",
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myManagedApplicationDef",
                  "identity": null,
                  "location": "East US 2",
                  "managedBy": null,
                  "name": "myManagedApplicationDef",
                  "properties": {
                    "artifacts": [
                      {
                        "name": "CreateUiDefinition",
                        "type": "Custom",
                        "uri": "https://path/to/managedApplicationCreateUiDefinition.json"
                      },
                      {
                        "name": "ManagedApplicationResourceTemplate",
                        "type": "Template",
                        "uri": "https://path/to/mainTemplate.json"
                      }
                    ],
                    "authorizations": [
                      {
                        "principalId": "validprincipalguid",
                        "roleDefinitionId": "validroleguid"
                      }
                    ],
                    "description": "myManagedApplicationDef description",
                    "displayName": "myManagedApplicationDef",
                    "lockLevel": null,
                    "packageFileUri": "https://path/to/packagezipfile"
                  },
                  "resourceGroup": "rg",
                  "sku": null,
                  "tags": null,
                  "type": "Microsoft.Solutions/applicationDefinitions"
                },
                "headers": {}
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a new managed application definition.",
        "operationId": "ApplicationDefinitions_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application definition.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationDefinitionName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the create or update an managed application definition.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns information about the managed application definition, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "201": {
            "description": "Created - Returns information about the managed application definition, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-examples": {
          "Create or update managed application definition": {
            "parameters": {
              "api-version": "2018-06-01",
              "managedApplicationDefinitionName": "myManagedApplicationDef",
              "parameters": {
                "location": "East US 2",
                "properties": {
                  "authorizations": [
                    {
                      "principalId": "validprincipalguid",
                      "roleDefinitionId": "validroleguid"
                    }
                  ],
                  "description": "myManagedApplicationDef description",
                  "displayName": "myManagedApplicationDef",
                  "lockLevel": "None",
                  "packageFileUri": "https://path/to/packagezipfile"
                }
              },
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myManagedApplicationDef",
                  "identity": null,
                  "location": "East US 2",
                  "managedBy": null,
                  "name": "myManagedApplicationDef",
                  "properties": {
                    "artifacts": [
                      {
                        "name": "CreateUiDefinition",
                        "type": "Custom",
                        "uri": "https://path/to/managedApplicationCreateUiDefinition.json"
                      },
                      {
                        "name": "ManagedApplicationResourceTemplate",
                        "type": "Template",
                        "uri": "https://path/to/mainTemplate.json"
                      }
                    ],
                    "authorizations": [
                      {
                        "principalId": "validprincipalguid",
                        "roleDefinitionId": "validroleguid"
                      }
                    ],
                    "description": "myManagedApplicationDef description",
                    "displayName": "myManagedApplicationDef",
                    "lockLevel": null,
                    "packageFileUri": "https://path/to/packagezipfile"
                  },
                  "resourceGroup": "rg",
                  "sku": null,
                  "tags": null,
                  "type": "Microsoft.Solutions/applicationDefinitions"
                },
                "headers": {}
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applications": {
      "get": {
        "description": "Gets all the applications within a resource group.",
        "operationId": "Applications_ListByResourceGroup",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns an array of applications.",
            "schema": {
              "$ref": "#/definitions/ApplicationListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "Lists applications": {
            "parameters": {
              "api-version": "2018-06-01",
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/myManagedApplication",
                      "identity": null,
                      "kind": "ServiceCatalog",
                      "location": "East US 2",
                      "managedBy": null,
                      "name": "myManagedApplication",
                      "plan": null,
                      "properties": {
                        "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef",
                        "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
                        "outputs": null,
                        "parameters": null,
                        "provisioningState": "Created"
                      },
                      "resourceGroup": "rg",
                      "sku": null,
                      "tags": null,
                      "type": "Microsoft.Solutions/applications"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/myManagedApplication2",
                      "identity": null,
                      "kind": "ServiceCatalog",
                      "location": "West US",
                      "managedBy": null,
                      "name": "myManagedApplication2",
                      "plan": null,
                      "properties": {
                        "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef2",
                        "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
                        "outputs": null,
                        "parameters": null,
                        "provisioningState": "Created"
                      },
                      "resourceGroup": "rg",
                      "sku": null,
                      "tags": null,
                      "type": "Microsoft.Solutions/applications"
                    }
                  ]
                },
                "headers": {}
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applications/{applicationName}": {
      "delete": {
        "description": "Deletes the managed application.",
        "operationId": "Applications_Delete",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted - Returns this status until the asynchronous operation has completed."
          },
          "204": {
            "description": "NoContent"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the managed application.",
        "operationId": "Applications_Get",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns the managed application.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "404": {
            "description": "Not Found"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "Get a managed application": {
            "parameters": {
              "api-version": "2018-06-01",
              "managedApplicationName": "myManagedApplication",
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/myManagedApplication",
                  "identity": null,
                  "kind": "ServiceCatalog",
                  "location": "East US 2",
                  "managedBy": null,
                  "name": "myManagedApplication",
                  "plan": null,
                  "properties": {
                    "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef",
                    "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
                    "outputs": null,
                    "parameters": null,
                    "provisioningState": "Created"
                  },
                  "resourceGroup": "rg",
                  "sku": null,
                  "tags": null,
                  "type": "Microsoft.Solutions/applications"
                },
                "headers": {}
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates an existing managed application. The only value that can be updated via PATCH currently is the tags.",
        "operationId": "Applications_Update",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to update an existing managed application.",
            "in": "body",
            "name": "parameters",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ]
      },
      "put": {
        "description": "Creates a new managed application.",
        "operationId": "Applications_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group. The name is case insensitive.",
            "in": "path",
            "maxLength": 90,
            "minLength": 1,
            "name": "resourceGroupName",
            "pattern": "^[-\\w\\._\\(\\)]+$",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed application.",
            "in": "path",
            "maxLength": 64,
            "minLength": 3,
            "name": "applicationName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the create or update a managed application.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "201": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "Create or update managed application": {
            "parameters": {
              "api-version": "2018-06-01",
              "managedApplicationName": "myManagedApplication",
              "parameters": {
                "kind": "ServiceCatalog",
                "location": "East US 2",
                "name": "myManagedApplication",
                "properties": {
                  "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myAppDef",
                  "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG"
                }
              },
              "resourceGroupName": "rg",
              "subscriptionId": "subid"
            },
            "responses": {
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/myManagedApplication",
                  "identity": null,
                  "kind": "ServiceCatalog",
                  "location": "East US 2",
                  "managedBy": null,
                  "name": "myManagedApplication",
                  "plan": null,
                  "properties": {
                    "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myAppDef",
                    "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG",
                    "outputs": null,
                    "parameters": null,
                    "provisioningState": "Created"
                  },
                  "resourceGroup": "rg",
                  "sku": null,
                  "tags": null,
                  "type": "Microsoft.Solutions/applications"
                },
                "headers": {}
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/{applicationId}": {
      "delete": {
        "description": "Deletes the managed application.",
        "operationId": "Applications_DeleteById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application, including the managed application name and the managed application resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applications/{application-name}",
            "in": "path",
            "name": "applicationId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted - Returns this status until the asynchronous operation has completed."
          },
          "204": {
            "description": "NoContent"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the managed application.",
        "operationId": "Applications_GetById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application, including the managed application name and the managed application resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applications/{application-name}",
            "in": "path",
            "name": "applicationId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns the managed application.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "404": {
            "description": "Not Found"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ]
      },
      "patch": {
        "description": "Updates an existing managed application. The only value that can be updated via PATCH currently is the tags.",
        "operationId": "Applications_UpdateById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application, including the managed application name and the managed application resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applications/{application-name}",
            "in": "path",
            "name": "applicationId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "description": "Parameters supplied to update an existing managed application.",
            "in": "body",
            "name": "parameters",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ]
      },
      "put": {
        "description": "Creates a new managed application.",
        "operationId": "Applications_CreateOrUpdateById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application, including the managed application name and the managed application resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applications/{application-name}",
            "in": "path",
            "name": "applicationId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "description": "Parameters supplied to the create or update a managed application.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "201": {
            "description": "Created - Returns information about the managed application, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/Application"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "Applications"
        ],
        "x-ms-long-running-operation": true
      }
    }
  },
  "definitions": {
    "Application": {
      "allOf": [
        {
          "$ref": "#/definitions/GenericResource"
        }
      ],
      "description": "Information about managed application.",
      "properties": {
        "kind": {
          "description": "The kind of the managed application. Allowed values are MarketPlace and ServiceCatalog.",
          "pattern": "^[-\\w\\._,\\(\\)]+$",
          "type": "string"
        },
        "plan": {
          "$ref": "#/definitions/Plan",
          "description": "The plan information."
        },
        "properties": {
          "$ref": "#/definitions/ApplicationProperties",
          "description": "The managed application properties.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties",
        "kind"
      ]
    },
    "ApplicationArtifact": {
      "description": "Managed application artifact.",
      "properties": {
        "name": {
          "description": "The managed application artifact name.",
          "type": "string"
        },
        "type": {
          "$ref": "#/definitions/ApplicationArtifactType",
          "description": "The managed application artifact type."
        },
        "uri": {
          "description": "The managed application artifact blob uri.",
          "type": "string"
        }
      }
    },
    "ApplicationArtifactType": {
      "description": "The managed application artifact type.",
      "enum": [
        "Template",
        "Custom"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": false,
        "name": "ApplicationArtifactType"
      }
    },
    "ApplicationDefinition": {
      "allOf": [
        {
          "$ref": "#/definitions/GenericResource"
        }
      ],
      "description": "Information about managed application definition.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ApplicationDefinitionProperties",
          "description": "The managed application definition properties.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "ApplicationDefinitionListResult": {
      "description": "List of managed application definitions.",
      "properties": {
        "nextLink": {
          "description": "The URL to use for getting the next set of results.",
          "type": "string"
        },
        "value": {
          "description": "The array of managed application definitions.",
          "items": {
            "$ref": "#/definitions/ApplicationDefinition"
          },
          "type": "array"
        }
      }
    },
    "ApplicationDefinitionProperties": {
      "description": "The managed application definition properties.",
      "properties": {
        "artifacts": {
          "description": "The collection of managed application artifacts. The portal will use the files specified as artifacts to construct the user experience of creating a managed application from a managed application definition.",
          "items": {
            "$ref": "#/definitions/ApplicationArtifact"
          },
          "type": "array"
        },
        "authorizations": {
          "description": "The managed application provider authorizations.",
          "items": {
            "$ref": "#/definitions/ApplicationProviderAuthorization"
          },
          "type": "array"
        },
        "createUiDefinition": {
          "description": "The createUiDefinition json for the backing template with Microsoft.Solutions/applications resource. It can be a JObject or well-formed JSON string.",
          "type": "object"
        },
        "description": {
          "description": "The managed application definition description.",
          "type": "string"
        },
        "displayName": {
          "description": "The managed application definition display name.",
          "type": "string"
        },
        "isEnabled": {
          "description": "A value indicating whether the package is enabled or not.",
          "type": "string"
        },
        "lockLevel": {
          "$ref": "#/definitions/ApplicationLockLevel",
          "description": "The managed application lock level."
        },
        "mainTemplate": {
          "description": "The inline main template json which has resources to be provisioned. It can be a JObject or well-formed JSON string.",
          "type": "object"
        },
        "packageFileUri": {
          "description": "The managed application definition package file Uri. Use this element",
          "type": "string"
        }
      },
      "required": [
        "lockLevel",
        "authorizations"
      ]
    },
    "ApplicationListResult": {
      "description": "List of managed applications.",
      "properties": {
        "nextLink": {
          "description": "The URL to use for getting the next set of results.",
          "type": "string"
        },
        "value": {
          "description": "The array of managed applications.",
          "items": {
            "$ref": "#/definitions/Application"
          },
          "type": "array"
        }
      }
    },
    "ApplicationLockLevel": {
      "description": "The managed application lock level.",
      "enum": [
        "CanNotDelete",
        "ReadOnly",
        "None"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": false,
        "name": "ApplicationLockLevel"
      }
    },
    "ApplicationPatchable": {
      "allOf": [
        {
          "$ref": "#/definitions/GenericResource"
        }
      ],
      "description": "Information about managed application.",
      "properties": {
        "kind": {
          "description": "The kind of the managed application. Allowed values are MarketPlace and ServiceCatalog.",
          "pattern": "^[-\\w\\._,\\(\\)]+$",
          "type": "string"
        },
        "plan": {
          "$ref": "#/definitions/PlanPatchable",
          "description": "The plan information."
        },
        "properties": {
          "$ref": "#/definitions/ApplicationPropertiesPatchable",
          "description": "The managed application properties.",
          "x-ms-client-flatten": true
        }
      }
    },
    "ApplicationProperties": {
      "description": "The managed application properties.",
      "properties": {
        "applicationDefinitionId": {
          "description": "The fully qualified path of managed application definition Id.",
          "type": "string"
        },
        "managedResourceGroupId": {
          "description": "The managed resource group Id.",
          "type": "string"
        },
        "outputs": {
          "description": "Name and value pairs that define the managed application outputs.",
          "readOnly": true,
          "type": "object"
        },
        "parameters": {
          "description": "Name and value pairs that define the managed application parameters. It can be a JObject or a well formed JSON string.",
          "type": "object"
        },
        "provisioningState": {
          "$ref": "#/definitions/ProvisioningState",
          "description": "The managed application provisioning state.",
          "readOnly": true
        }
      },
      "required": [
        "managedResourceGroupId"
      ]
    },
    "ApplicationPropertiesPatchable": {
      "description": "The managed application properties.",
      "properties": {
        "applicationDefinitionId": {
          "description": "The fully qualified path of managed application definition Id.",
          "type": "string"
        },
        "managedResourceGroupId": {
          "description": "The managed resource group Id.",
          "type": "string"
        },
        "outputs": {
          "description": "Name and value pairs that define the managed application outputs.",
          "readOnly": true,
          "type": "object"
        },
        "parameters": {
          "description": "Name and value pairs that define the managed application parameters. It can be a JObject or a well formed JSON string.",
          "type": "object"
        },
        "provisioningState": {
          "$ref": "#/definitions/ProvisioningState",
          "description": "The managed application provisioning state.",
          "readOnly": true
        }
      }
    },
    "ApplicationProviderAuthorization": {
      "description": "The managed application provider authorization.",
      "properties": {
        "principalId": {
          "description": "The provider's principal identifier. This is the identity that the provider will use to call ARM to manage the managed application resources.",
          "type": "string"
        },
        "roleDefinitionId": {
          "description": "The provider's role definition identifier. This role will define all the permissions that the provider must have on the managed application's container resource group. This role definition cannot have permission to delete the resource group.",
          "type": "string"
        }
      },
      "required": [
        "principalId",
        "roleDefinitionId"
      ]
    },
    "ErrorResponse": {
      "description": "Error response indicates managed application is not able to process the incoming request. The reason is provided in the error message.",
      "properties": {
        "errorCode": {
          "description": "Error code.",
          "type": "string"
        },
        "errorMessage": {
          "description": "Error message indicating why the operation failed.",
          "type": "string"
        },
        "httpStatus": {
          "description": "Http status code.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GenericResource": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        }
      ],
      "description": "Resource information.",
      "properties": {
        "identity": {
          "$ref": "#/definitions/Identity",
          "description": "The identity of the resource."
        },
        "managedBy": {
          "description": "ID of the resource that manages this resource.",
          "type": "string"
        },
        "sku": {
          "$ref": "#/definitions/Sku",
          "description": "The SKU of the resource."
        }
      }
    },
    "Identity": {
      "description": "Identity for the resource.",
      "properties": {
        "principalId": {
          "description": "The principal ID of resource identity.",
          "readOnly": true,
          "type": "string"
        },
        "tenantId": {
          "description": "The tenant ID of resource.",
          "readOnly": true,
          "type": "string"
        },
        "type": {
          "description": "The identity type.",
          "enum": [
            "SystemAssigned"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": false,
            "name": "ResourceIdentityType"
          }
        }
      }
    },
    "Plan": {
      "description": "Plan for the managed application.",
      "properties": {
        "name": {
          "description": "The plan name.",
          "type": "string"
        },
        "product": {
          "description": "The product code.",
          "type": "string"
        },
        "promotionCode": {
          "description": "The promotion code.",
          "type": "string"
        },
        "publisher": {
          "description": "The publisher ID.",
          "type": "string"
        },
        "version": {
          "description": "The plan's version.",
          "type": "string"
        }
      },
      "required": [
        "name",
        "publisher",
        "product",
        "version"
      ]
    },
    "PlanPatchable": {
      "description": "Plan for the managed application.",
      "properties": {
        "name": {
          "description": "The plan name.",
          "type": "string"
        },
        "product": {
          "description": "The product code.",
          "type": "string"
        },
        "promotionCode": {
          "description": "The promotion code.",
          "type": "string"
        },
        "publisher": {
          "description": "The publisher ID.",
          "type": "string"
        },
        "version": {
          "description": "The plan's version.",
          "type": "string"
        }
      }
    },
    "ProvisioningState": {
      "description": "Provisioning status of the managed application.",
      "enum": [
        "Accepted",
        "Running",
        "Ready",
        "Creating",
        "Created",
        "Deleting",
        "Deleted",
        "Canceled",
        "Failed",
        "Succeeded",
        "Updating"
      ],
      "readOnly": true,
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "ProvisioningState"
      }
    },
    "Resource": {
      "description": "Resource information.",
      "properties": {
        "id": {
          "description": "Resource ID",
          "readOnly": true,
          "type": "string"
        },
        "location": {
          "description": "Resource location",
          "type": "string"
        },
        "name": {
          "description": "Resource name",
          "readOnly": true,
          "type": "string"
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags",
          "type": "object"
        },
        "type": {
          "description": "Resource type",
          "readOnly": true,
          "type": "string"
        }
      },
      "x-ms-azure-resource": true
    },
    "Sku": {
      "description": "SKU for the resource.",
      "properties": {
        "capacity": {
          "description": "The SKU capacity.",
          "format": "int32",
          "type": "integer"
        },
        "family": {
          "description": "The SKU family.",
          "type": "string"
        },
        "model": {
          "description": "The SKU model.",
          "type": "string"
        },
        "name": {
          "description": "The SKU name.",
          "type": "string"
        },
        "size": {
          "description": "The SKU size.",
          "type": "string"
        },
        "tier": {
          "description": "The SKU tier.",
          "type": "string"
        }
      },
      "required": [
        "name"
      ]
    }
  },
  "x-ms-paths": {
    "/{applicationDefinitionId}?disambiguation_dummy": {
      "delete": {
        "description": "Deletes the managed application definition.",
        "operationId": "ApplicationDefinitions_DeleteById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}",
            "in": "path",
            "name": "applicationDefinitionId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted - Returns this status until the asynchronous operation has completed."
          },
          "204": {
            "description": "NoContent"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the managed application definition.",
        "operationId": "ApplicationDefinitions_GetById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}",
            "in": "path",
            "name": "applicationDefinitionId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns the managed application definition.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "404": {
            "description": "Not Found"
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ]
      },
      "put": {
        "description": "Creates a new managed application definition.",
        "operationId": "ApplicationDefinitions_CreateOrUpdateById",
        "parameters": [
          {
            "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}",
            "in": "path",
            "name": "applicationDefinitionId",
            "required": true,
            "type": "string",
            "x-ms-skip-url-encoding": true
          },
          {
            "description": "Parameters supplied to the create or update a managed application definition.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK - Returns information about the managed application definition, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "201": {
            "description": "Created - Returns information about the managed application definition, including provisioning status.",
            "schema": {
              "$ref": "#/definitions/ApplicationDefinition"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "tags": [
          "ApplicationDefinitions"
        ],
        "x-ms-long-running-operation": true
      }
    }
  }
}