ApiManagementClient icon

ApiManagementClient

Use these REST APIs for performing operations on the ApiVersionSet entity associated with your Azure API Management deployment

COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "Use these REST APIs for performing operations on the ApiVersionSet entity associated with your Azure API Management deployment. Using this entity you create and manage API Version Sets that are used to group APIs for consistent versioning.",
    "title": "ApiManagementClient",
    "version": "2018-06-01-preview",
    "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/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimversionsets.json",
        "version": "2.0"
      }
    ],
    "x-preferred": true,
    "x-providerName": "azure.com",
    "x-serviceName": "apimanagement-apimversionsets",
    "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": {
    "ApiVersionSetIdParameter": {
      "description": "Api Version Set identifier. Must be unique in the current API Management service instance.",
      "in": "path",
      "maxLength": 80,
      "minLength": 1,
      "name": "versionSetId",
      "pattern": "(^[\\w]+$)|(^[\\w][\\w\\-]+[\\w]$)",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    }
  },
  "paths": {
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/api-version-sets": {
      "get": {
        "description": "Lists a collection of API Version Sets in the specified service instance.",
        "operationId": "ApiVersionSet_ListByService",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "| Field            | Supported operators    | Supported functions               |\n|------------------|------------------------|-----------------------------------|\n| id               | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| firstName        | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| lastName         | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| email            | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |\n| state            | eq                     | N/A                               |\n| registrationDate | ge, le, eq, ne, gt, lt | N/A                               |\n| note             | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |",
            "in": "query",
            "name": "$filter",
            "required": false,
            "type": "string"
          },
          {
            "description": "Number of records to return.",
            "format": "int32",
            "in": "query",
            "minimum": 1,
            "name": "$top",
            "required": false,
            "type": "integer",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Number of records to skip.",
            "format": "int32",
            "in": "query",
            "minimum": 0,
            "name": "$skip",
            "required": false,
            "type": "integer",
            "x-ms-parameter-location": "method"
          }
        ],
        "responses": {
          "200": {
            "description": "Lists a collection of Api Version Set entities.",
            "schema": {
              "$ref": "#/definitions/ApiVersionSetCollection"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementListApiVersionSets": {
            "parameters": {
              "api-version": "2018-06-01-preview",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "nextLink": "",
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/vs1",
                      "name": "vs1",
                      "properties": {
                        "description": "Version configuration",
                        "displayName": "api set 1",
                        "versioningScheme": "Segment"
                      },
                      "type": "Microsoft.ApiManagement/service/api-version-sets"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/vs2",
                      "name": "vs2",
                      "properties": {
                        "description": "Version configuration 2",
                        "displayName": "api set 2",
                        "versioningScheme": "Query"
                      },
                      "type": "Microsoft.ApiManagement/service/api-version-sets"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-odata": "#/definitions/ApiVersionSetContract",
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/api-version-sets/{versionSetId}": {
      "delete": {
        "description": "Deletes specific Api Version Set.",
        "operationId": "ApiVersionSet_Delete",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionSetIdParameter"
          },
          {
            "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.",
            "in": "header",
            "name": "If-Match",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          }
        ],
        "responses": {
          "200": {
            "description": "The ApiVersion Set details were successfully deleted."
          },
          "204": {
            "description": "The ApiVersion Set details were successfully deleted."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementDeleteApiVersionSet": {
            "parameters": {
              "If-Match": "*",
              "api-version": "2018-06-01-preview",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid",
              "versionSetId": "a1"
            },
            "responses": {
              "200": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the details of the Api Version Set specified by its identifier.",
        "operationId": "ApiVersionSet_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionSetIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Gets the specified Api Version Set entity.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            },
            "schema": {
              "$ref": "#/definitions/ApiVersionSetContract"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementGetApiVersionSet": {
            "parameters": {
              "api-version": "2018-06-01-preview",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid",
              "versionSetId": "vs1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/vs1",
                  "name": "vs1",
                  "properties": {
                    "description": "Version configuration",
                    "displayName": "Version Set 1",
                    "versioningScheme": "Segment"
                  },
                  "type": "Microsoft.ApiManagement/service/api-version-sets"
                }
              }
            }
          }
        }
      },
      "head": {
        "description": "Gets the entity state (Etag) version of the Api Version Set specified by its identifier.",
        "operationId": "ApiVersionSet_GetEntityTag",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionSetIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Specified Api Version Set entity exists and current entity state version is present in the ETag header.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementHeadApiVersionSet": {
            "parameters": {
              "api-version": "2018-06-01-preview",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid",
              "versionSetId": "vs1"
            },
            "responses": {
              "200": {
                "headers": {
                  "etag": "AAAAAAAAAAa="
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates the details of the Api VersionSet specified by its identifier.",
        "operationId": "ApiVersionSet_Update",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionSetIdParameter"
          },
          {
            "description": "Update parameters.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ApiVersionSetUpdateParameters"
            }
          },
          {
            "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.",
            "in": "header",
            "name": "If-Match",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          }
        ],
        "responses": {
          "204": {
            "description": "The Api Version Set details were successfully updated."
          },
          "default": {
            "description": "*** Error Responses: ***\n\n * 4XX Error response giving details why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementUpdateApiVersionSet": {
            "parameters": {
              "If-Match": "*",
              "api-version": "2018-06-01-preview",
              "parameters": {
                "properties": {
                  "description": "Version configuration",
                  "displayName": "api set 1",
                  "versioningScheme": "Segment"
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid",
              "versionSetId": "api1"
            },
            "responses": {
              "204": {}
            }
          }
        }
      },
      "put": {
        "description": "Creates or Updates a Api Version Set.",
        "operationId": "ApiVersionSet_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionSetIdParameter"
          },
          {
            "description": "Create or update parameters.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ApiVersionSetContract"
            }
          },
          {
            "description": "ETag of the Entity. Not required when creating an entity, but required when updating an entity.",
            "in": "header",
            "name": "If-Match",
            "required": false,
            "type": "string",
            "x-ms-parameter-location": "method"
          }
        ],
        "responses": {
          "200": {
            "description": "Api Version Set was successfully updated.",
            "schema": {
              "$ref": "#/definitions/ApiVersionSetContract"
            }
          },
          "201": {
            "description": "Api Version Set was successfully created.",
            "schema": {
              "$ref": "#/definitions/ApiVersionSetContract"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "ApiVersionSets"
        ],
        "x-ms-examples": {
          "ApiManagementCreateApiVersionSet": {
            "parameters": {
              "api-version": "2018-06-01-preview",
              "parameters": {
                "properties": {
                  "description": "Version configuration",
                  "displayName": "api set 1",
                  "versioningScheme": "Segment"
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid",
              "versionSetId": "api1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/api1",
                  "name": "api1",
                  "properties": {
                    "description": "Version configuration",
                    "displayName": "api set 1",
                    "versioningScheme": "Segment"
                  },
                  "type": "Microsoft.ApiManagement/service/api-version-sets"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/api-version-sets/api1",
                  "name": "api1",
                  "properties": {
                    "description": "Version configuration",
                    "displayName": "api set 1",
                    "versioningScheme": "Segment"
                  },
                  "type": "Microsoft.ApiManagement/service/api-version-sets"
                }
              }
            }
          }
        }
      }
    }
  },
  "definitions": {
    "ApiVersionSetCollection": {
      "description": "Paged Api Version Set list representation.",
      "properties": {
        "nextLink": {
          "description": "Next page link if any.",
          "type": "string"
        },
        "value": {
          "description": "Page values.",
          "items": {
            "$ref": "#/definitions/ApiVersionSetContract"
          },
          "type": "array"
        }
      }
    },
    "ApiVersionSetContract": {
      "allOf": [
        {
          "description": "The Resource definition.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type for API Management resource.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Api Version Set Contract details.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ApiVersionSetContractProperties",
          "description": "Api VersionSet contract properties.",
          "x-ms-client-flatten": true
        }
      }
    },
    "ApiVersionSetContractProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ApiVersionSetEntityBase"
        }
      ],
      "description": "Properties of an API Version Set.",
      "properties": {
        "displayName": {
          "description": "Name of API Version Set",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "versioningScheme": {
          "description": "An value that determines where the API Version identifer will be located in a HTTP request.",
          "enum": [
            "Segment",
            "Query",
            "Header"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "versioningScheme",
            "values": [
              {
                "description": "The API Version is passed in a path segment.",
                "value": "Segment"
              },
              {
                "description": "The API Version is passed in a query parameter.",
                "value": "Query"
              },
              {
                "description": "The API Version is passed in a HTTP header.",
                "value": "Header"
              }
            ]
          }
        }
      },
      "required": [
        "displayName",
        "versioningScheme"
      ]
    },
    "ApiVersionSetEntityBase": {
      "description": "Api Version set base parameters",
      "properties": {
        "description": {
          "description": "Description of API Version Set.",
          "type": "string"
        },
        "versionHeaderName": {
          "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "versionQueryName": {
          "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        }
      }
    },
    "ApiVersionSetUpdateParameters": {
      "description": "Parameters to update or create an Api Version Set Contract.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ApiVersionSetUpdateParametersProperties",
          "description": "Parameters to update or create an Api Version Set Contract.",
          "x-ms-client-flatten": true
        }
      }
    },
    "ApiVersionSetUpdateParametersProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ApiVersionSetEntityBase"
        }
      ],
      "description": "Properties used to create or update an API Version Set.",
      "properties": {
        "displayName": {
          "description": "Name of API Version Set",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "versioningScheme": {
          "description": "An value that determines where the API Version identifer will be located in a HTTP request.",
          "enum": [
            "Segment",
            "Query",
            "Header"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "versioningScheme",
            "values": [
              {
                "description": "The API Version is passed in a path segment.",
                "value": "Segment"
              },
              {
                "description": "The API Version is passed in a query parameter.",
                "value": "Query"
              },
              {
                "description": "The API Version is passed in a HTTP header.",
                "value": "Header"
              }
            ]
          }
        }
      }
    }
  }
}