Episodes_AcquireEpisodeLease
const url = 'https://junction-api.qualiastudios.dev/v1/accounts/example/datasets/example/episodes/example:acquireEpisodeLease';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"episode":"example","tab":"example"}'};
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://junction-api.qualiastudios.dev/v1/accounts/example/datasets/example/episodes/example:acquireEpisodeLease \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "episode": "example", "tab": "example" }'Takes the take’s edit lease for the caller and this tab. A
lease is per take: it holds through every dataset that reads it. One
lease per person: when the caller already holds it, the tab joins it and
it is renewed. It lapses 30 s after the last renewal. FAILED_PRECONDITION,
“episode is being edited by
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The account id.
The dataset id.
The episode id.
Request Body required
Section titled “Request Body required ”Request for Episodes.AcquireEpisodeLease.
object
Accounts/{account}/datasets/{dataset}/episodes/{episode}: the take, in any dataset that reads it.
The caller’s tab: a uuid the client makes on load.
Example generated
{ "episode": "example", "tab": "example"}Responses
Section titled “ Responses ”OK
Response for Episodes.AcquireEpisodeLease.
object
The caller’s lease.
object
The holder’s user id (as Actor.user).
The holder’s display name at the time they took it; empty when they have none.
When it lapses unless renewed.
Example generated
{ "lease": {}}default
Section titled “default ”Default error response
A refusal from the API itself.
object
The gRPC code name in upper case, e.g. NOT_FOUND.
Whether the same call may succeed if retried.
Empty, except when a dataset copy or move is refused: then one google.rpc.ErrorInfo with the refusal’s reason code, its domain and, in metadata, the datasets it names.
object
A refusal from the gateway before the call reaches the API, for example 401 bad or missing API key, 403 key lacks the scope or environment closed, 413 body too large.
object
What went wrong.
Example generated
{ "code": "example", "message": "example", "retryable": true, "details": [ {} ]}