Mint a token for one sandbox
A short-lived credential for a browser or a program that should not hold the project's key. It is signed with a key of the sandbox's own, and is good on whichever node holds the sandbox: a move to another node takes the key along. It is not stored and cannot be listed: POST /v1/sandboxes/{id}/tokens/revoke revokes this one alone (by token, or by token_id: the id this call answers with), or every token of the sandbox signed so far. Wakes nothing.
Takes write.
https://api.glac.ai/v1/sandboxes/{id}/tokensAutoryzacja
Parametry ścieżki
Parametry nagłówka
Treść żądaniaJSONopcjonalne
- e2boptionalboolean
True: the sandbox's one token for E2B's SDKs (the control plane's E2B compatibility hands it out as
envdAccessToken), with neitherscopesnorexpires_in_seconds(400invalid_field,parame2b):url, the same token every time it is asked for, as E2B's is one for a sandbox's life, and good until the sandbox's tokens are revoked (itsexpires_atis 2100-01-01). The preview listener checks the addresses of files E2B's SDKs sign with it (download_url,upload_url:x-preview-ingress). A revoke of every token of the sandbox makes it another one from then on.default: false
Returns
201
The token.
400
The request is not one this call takes. invalid_json: the body is not a JSON object; unknown_field: the body has a field this call does not take; unknown_parameter: the query has a parameter this call does not take; invalid_field: a field or query parameter has the wrong type or is out of range; invalid_idempotency_key: Idempotency-Key is empty or over 255 characters.
- exec_idoptionalstring
With
sandbox_movedofPOST …/run: the id of the command the call started and waited for, which goes on where the sandbox went: wait for it there through the control plane withGET …/exec/{exec_id}?wait_seconds=once the move is over. The same call made again starts the command a second time, unless it comes with the same Idempotency-Key.
401
missing_api_key, invalid_api_key, expired_api_key, invalid_token.
403
The credential may not do this. needs_api_key: a sandbox token cannot do this.
- exec_idoptionalstring
With
sandbox_movedofPOST …/run: the id of the command the call started and waited for, which goes on where the sandbox went: wait for it there through the control plane withGET …/exec/{exec_id}?wait_seconds=once the move is over. The same call made again starts the command a second time, unless it comes with the same Idempotency-Key.
404
Something the request names does not exist. sandbox_not_found: no such sandbox.
- exec_idoptionalstring
With
sandbox_movedofPOST …/run: the id of the command the call started and waited for, which goes on where the sandbox went: wait for it there through the control plane withGET …/exec/{exec_id}?wait_seconds=once the move is over. The same call made again starts the command a second time, unless it comes with the same Idempotency-Key.
409
The state of something stands in the way. idempotency_key_reused: the key was used with another body; idempotency_in_progress: the first request with the key is still running.
- exec_idoptionalstring
With
sandbox_movedofPOST …/run: the id of the command the call started and waited for, which goes on where the sandbox went: wait for it there through the control plane withGET …/exec/{exec_id}?wait_seconds=once the move is over. The same call made again starts the command a second time, unless it comes with the same Idempotency-Key.
default
Any other failure, in the same shape. internal (500): the node failed; the message says no more, and the node's log has the reason under the request's id. unavailable (503, retryable): no_capacity, every network slot of the node is in use; memory_full, a machine the call has to start (made, woken, booted from its disk, resumed, rolled back, built) does not fit in the host's memory beside what the machines that run on it are promised, and nothing paused or idle could be put to sleep to make room for it (memory of the node); drive_full, the call would have a template built and the node's data drive has no room for one (drive of the node); unavailable, the node is shutting down, the sandbox was still starting after 10 minutes, or it did not answer, or it is being moved to this node (with Retry-After: 1); fenced, the node's lease fences the sandbox (Node.lease). moved (409): the sandbox was moved to another node, which to names.
- exec_idoptionalstring
With
sandbox_movedofPOST …/run: the id of the command the call started and waited for, which goes on where the sandbox went: wait for it there through the control plane withGET …/exec/{exec_id}?wait_seconds=once the move is over. The same call made again starts the command a second time, unless it comes with the same Idempotency-Key.