API referenceRuntime
Create Sandbox Endpoint
Authorization
bearerAuth AuthorizationBearer <token>
Use a project API key for sandbox and runtime routes, or an OpenMetal user access token for account management routes.
In: header
Path Parameters
sandbox_id*stringMatch
^sbx_[A-Za-z0-9]+$Header Parameters
Idempotency-Key*stringLength
1–512X-Metal-Project-ID*stringPublic project ID used to scope sandbox access.
Match
^prj_[A-Za-z0-9]+$Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
port*integerRange
1–65535protocol*stringDefault
httplease_seconds*integerRange
60–86400Default3600Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/sandboxes/string/endpoints" \ -H "Idempotency-Key: string" \ -H "X-Metal-Project-ID: string" \ -H "Content-Type: application/json" \ -d '{ "port": 1, "protocol": "http", "lease_seconds": 3600 }'{ "id": "string", "type": "sandbox_endpoint", "project_id": "string", "sandbox_id": "string", "port": 1, "protocol": "http", "state": "provisioning", "url": "http://example.com", "lease_expires_at": "2019-08-24T14:15:22Z", "revoked_at": "2019-08-24T14:15:22Z", "error": { "code": "string", "message": "string", "retryable": true, "details": { "property1": null, "property2": null } }, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "provider_capabilities": { "provider": "blaxel", "version": "string", "lifecycle": { "pause": true, "resume": true }, "process": { "execute": true, "cancel": true, "ordered_output": true, "max_timeout_seconds": 1, "max_output_bytes": 1 }, "filesystem": { "read": true, "write": true, "write_modes": [ "create" ], "create_parents": true, "list": true, "delete": true, "max_read_bytes": 1, "max_write_bytes": 1 }, "http_endpoints": { "create": true, "revoke": true, "max_lease_seconds": 1 }, "computer": { "implementation": "native", "actions": [ "mouse_move" ], "screenshot": { "formats": [ "png" ], "max_bytes": 1 }, "recording": { "formats": [ "mp4" ] } } }}