Contexts preserve encrypted browser profile state between sessions when the deployment has Credential Broker and private R2 storage configured. Without that configuration, the API returns 503 context_storage_unavailable. The Cloudflare Containers transport currently refuses contexts.
curl -X POST "https://api.tooluse.net/v1/browsers/contexts" \
-H "Authorization: Bearer $TOOLUSE_API_KEY" \
-H "Idempotency-Key: tooluse-example-001" \
-H "Content-Type: application/json" \
-d '{"name":"checkout-profile"}'
Keep the returned context ID and supply it as the top-level contextId in a later session creation request. A context is exclusively leased while in use; a concurrent session cannot reuse it. Read and delete it through GET /v1/browsers/contexts/{id} and DELETE /v1/browsers/contexts/{id}. The service owns encryption keys; no plaintext profile or client-side key is returned.