Skip to main content
Sandboxes are running instances of a Simulator. Each sandbox provides live credentials (FHIR endpoints, phone numbers, fax numbers, etc.) and records all interactions as events. Sandboxes can be created standalone or as part of a Playground.
Endpoints not yet in OpenAPI spec.

Endpoints

MethodEndpointDescription
GET/sandboxesList sandboxes
POST/sandboxesCreate a sandbox
GET/sandboxes/{id}Get sandbox details
GET/sandboxes/{id}/eventsList sandbox events
POST/sandboxes/{id}/teardownTear down a sandbox
POST/sandboxes/{id}/datasets/{datasetId}Add a dataset to the sandbox
DELETE/sandboxes/{id}/datasets/{datasetId}Remove a dataset from the sandbox

Sandbox Object

FieldTypeDescription
idstringUnique identifier
simulator_idstringSource Simulator
playground_idstring | nullParent Playground, if part of one
statusstringCurrent status (provisioning, active, teardown, etc.)
credentialsobject | nullProtocol-specific access credentials
organization_idstringParent organization
created_atdatetimeCreation timestamp
updated_atdatetimeLast modification timestamp

SDK Example

// Create a standalone sandbox
const sandbox = await verial.sandboxes.create({
  simulatorId: 'sim_abc123',
})

// List sandboxes (optionally filter by playground)
const sandboxes = await verial.sandboxes.list({ playgroundId: 'pg_abc123' })

// Get sandbox details (includes credentials)
const details = await verial.sandboxes.get({ id: sandbox.id })

// List interaction events
const events = await verial.sandboxes.listEvents({ id: sandbox.id })

// Load a dataset
await verial.sandboxes.addDataset({
  sandboxId: sandbox.id,
  datasetId: 'ds_abc123',
})

// Remove a dataset
await verial.sandboxes.removeDataset({
  sandboxId: sandbox.id,
  datasetId: 'ds_abc123',
})

// Tear down when done
await verial.sandboxes.teardown({ id: sandbox.id })