Get a member's sandbox network policy
Returns the network layer for a member's sandbox creates and the bundle's version. A member with no layer returns the version alone. The layer covers sandboxes created by the member's CLI sessions and personal keys. Network policy access must be enabled for the organization. Host egress, DNS and bandwidth enforcement is not yet available. Creates requiring an unsupported restriction return 503 NETWORK_POLICY_UNSUPPORTED. Only the organization layer's preview source restrictions are enforced. Host policy updates are not pushed to running sandboxes. The router applies updated organization preview restrictions on each new request, including previews of existing sandboxes, after receiving the new policy version.
Required permission
Requires the sandboxes.network_read permission. See Permissions for the roles and API key permissions that include it.
Command line
The orl CLI wraps this endpoint:
Guided workflow: orl sandbox network-policy get
orl sandbox network-policy get --user <user>apiKeyAuthorizationBearer <token>OpenRelay API key. Send it as Authorization: Bearer or_… (legacy vl_… keys still work).
userId*stringThe member's layer
application/json- response
version*integerThe policy's version. Send it as expectedVersion on a write.
int64layer?One level's network policy. A missing field restricts nothing. Every level (organization, user, key, sandbox) is a ceiling on the ones below it: a destination is reachable only if every layer admits it.
defaults?The organization's only. The sandbox layer of a create that names neither network nor egress.
updatedAt?stringdate-timeupdatedBy?stringuser: for a session, key: for an API key.
curl -X GET 'https://api.openrelay.inc/v1/sandbox-network-policy/users/string'{ "version": 0, "layer": { "egress": { "mode": "open", "allow": [ { "cidr": "string", "domain": "string", "protocol": "any", "ports": [ 0 ] } ], "deny": [ { "cidr": "string", "domain": "string", "protocol": "any", "ports": [ 0 ] } ] }, "dns": { "blockBypass": true }, "ingress": { "previewSources": [ "string" ] }, "bandwidth": { "egressMbps": 0, "ingressMbps": 0 } }, "defaults": { "egress": { "mode": "open", "allow": [ { "cidr": "string", "domain": "string", "protocol": "any", "ports": [ 0 ] } ], "deny": [ { "cidr": "string", "domain": "string", "protocol": "any", "ports": [ 0 ] } ] }, "dns": { "blockBypass": true }, "ingress": { "previewSources": [ "string" ] }, "bandwidth": { "egressMbps": 0, "ingressMbps": 0 } }, "updatedAt": "2019-08-24T14:15:22Z", "updatedBy": "string"}Replace sandbox network policy PUT
Replaces the organization's sandbox network layer and defaults using expectedVersion. An API key may only narrow the policy. Defaults are the sandbox layer of a create that names neither network nor egress. An API key needs sandboxes.network_admin named in its permissions, and may only narrow the layer and its defaults. Network policy access must be enabled for the organization. Host egress, DNS and bandwidth enforcement is not yet available. Creates requiring an unsupported restriction return 503 NETWORK_POLICY_UNSUPPORTED. Only the organization layer's preview source restrictions are enforced. Host policy updates are not pushed to running sandboxes. The router applies updated organization preview restrictions on each new request, including previews of existing sandboxes, after receiving the new policy version.
Delete a member's sandbox network policy DELETE
Removes a member's sandbox network layer using its read version. An API key may delete the layer only when it restricts nothing. A layer outlives its member until it is deleted. Network policy access must be enabled for the organization. Host egress, DNS and bandwidth enforcement is not yet available. Creates requiring an unsupported restriction return 503 NETWORK_POLICY_UNSUPPORTED. Only the organization layer's preview source restrictions are enforced. Host policy updates are not pushed to running sandboxes. The router applies updated organization preview restrictions on each new request, including previews of existing sandboxes, after receiving the new policy version.