Skip to content

Commit

Permalink
Add Lease Container API Swagger & example in Jul18.
Browse files Browse the repository at this point in the history
  • Loading branch information
huizlAzure committed Mar 27, 2019
1 parent 6e4418f commit da5ecc8
Show file tree
Hide file tree
Showing 2 changed files with 126 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -684,6 +684,53 @@
}
}
},
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease": {
"post": {
"tags": [
"BlobContainers"
],
"operationId": "BlobContainers_Lease",
"x-ms-examples": {
"ListContainers": {
"$ref": "./examples/BlobContainersLease.json"
}
},
"description": "The Lease Container operation establishes and manages a lock on a container for delete operations. The lock duration can be 15 to 60 seconds, or can be infinite.",
"parameters": [
{
"$ref": "./storage.json#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/AccountName"
},
{
"$ref": "#/parameters/ContainerName"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
},
{
"$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
},
{
"name": "parameters",
"in": "body",
"schema": {
"$ref": "#/definitions/LeaseContainerRequest"
},
"description": "Lease Container request body."
}
],
"responses": {
"200": {
"description": "OK -- Lease Container operation completed successfully.",
"schema": {
"$ref": "#/definitions/LeaseContainerResponse"
}
}
}
}
},
"definitions": {
"ContainerProperties": {
"properties": {
Expand Down Expand Up @@ -1104,6 +1151,54 @@
"allowedHeaders"
],
"description": "Specifies a CORS rule for the Blob service."
},
"LeaseContainerRequest": {
"properties": {
"Action": {
"type": "string",
"enum": [
"Acquire",
"Renew",
"Change",
"Release",
"Break"
],
"description": "Specifies the lease action. Can be one of the available actions."
},
"LeaseId": {
"type": "string",
"description": "Identifies the lease. Can be specified in any valid GUID string format."
},
"BreakPeriod": {
"type": "integer",
"description": "Optional. For a break action, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60."
},
"LeaseDuration": {
"type": "integer",
"description": "Required for acquire. Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires."
},
"ProposedLeaseId": {
"type": "string",
"description": "Optional for acquire, required for change. Proposed lease ID, in a GUID string format."
}
},
"required": [
"Action"
],
"description": "Lease Container request schema."
},
"LeaseContainerResponse": {
"properties": {
"LeaseId": {
"type": "string",
"description": "Returned unique lease ID that must be included with any request to delete the container, or to renew, change, or release the lease."
},
"LeaseTimeSeconds": {
"type": "string",
"description": "Approximate time remaining in the lease period, in seconds."
}
},
"description": "Lease Container response schema."
}
},
"parameters": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "res3376",
"accountName": "sto328",
"containerName": "container6185",
"api-version": "2018-07-01",
"monitor": "true",
"parameters": {
"properties": {
"Action": 0,
"LeaseId": null,
"BreakPeriod": null,
"LeaseDuration": -1,
"ProposedLeaseId": null
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185",
"name": "container6185",
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
"properties": {
"LeaseId": "8698f513-fa75-44a1-b8eb-30ba336af27d"
}
}
}
}
}

0 comments on commit da5ecc8

Please sign in to comment.