Release several locks at once
POST
/drives/{drive}/nodes/unlock/batch
const url = 'https://work.optidata.cloud/api/drives/1/nodes/unlock/batch';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"node_ids":[665198,665199],"origin":"integration"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://work.optidata.cloud/api/drives/1/nodes/unlock/batch \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "node_ids": [ 665198, 665199 ], "origin": "integration" }'Releases the caller’s locks on many nodes — send it when your integration shuts down, or when it recovers and finds locks it no longer needs.
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters”drive
required
integer format: int64
Numeric id of the drive. Read it from GET /drives/config.json.
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
node_ids
required
Array<integer>
note
string | null
origin
string | null
user_hash
string | null
Examples
Exampleshutdown
{ "node_ids": [ 665198, 665199 ], "origin": "integration"}Responses
Section titled “ Responses ”Outcome of the batch unlock.
Media typeapplication/json
object
key
additional properties
any
Examplegenerated
{}Missing, malformed or expired authentication key.
Media typeapplication/json
Authentication failures use an error key rather than message.
object
error
required
string
Examples
Examplemissing
No bearer token sent
{ "error": "JWT passport exception: Missing bearer token in request"}The request body or query string failed validation.
Media typeapplication/json
object
message
required
The first validation message.
string
errors
required
Validation messages keyed by field name.
object
key
additional properties
Array<string>
Examples
Exampleinvalid
{ "message": "The name field is required.", "errors": { "name": [ "The name field is required." ] }}Rate limit exceeded. Retry after the window resets.
Media typeapplication/json
Generic error envelope used by policy, binding and framework failures.
object
message
required
Human-readable description of the failure.
string
Examples
Examplethrottled
{ "message": "Too Many Attempts."}