> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Create sandbox

> Create a sandbox.

`createSandbox(input: CreateSandboxInput!): Sandbox!`

Requires project.sandboxes.manage.

## Arguments

| Argument | Type | Required |
| - | - | - |
| `input` | [`CreateSandboxInput!`](https://veryfront.com/docs/cloud/graphql/types/createsandboxinput) | Yes |

## Input fields

### input

[`CreateSandboxInput`](https://veryfront.com/docs/cloud/graphql/types/createsandboxinput)

| Field | Type | Required | Description |
| - | - | - | - |
| `projectReference` | [`String`](https://veryfront.com/docs/cloud/graphql/types/string) | No | Project UUID or slug to bill; when set, the project owner is billed. |
| `environmentId` | [`ID`](https://veryfront.com/docs/cloud/graphql/types/id) | No | Environment whose variables are copied once into the sandbox; it also identifies the billing project. |
| `accessScope` | [`SandboxAccessScope!`](https://veryfront.com/docs/cloud/graphql/types/sandboxaccessscope) | Yes | |
| `ttlMode` | [`SandboxLifetimeMode`](https://veryfront.com/docs/cloud/graphql/types/sandboxlifetimemode) | No | |
| `ttlHours` | [`Int`](https://veryfront.com/docs/cloud/graphql/types/int) | No | |

## Response

Returns [`Sandbox!`](https://veryfront.com/docs/cloud/graphql/types/sandbox). Open the type for its fields and nested types.

| Field | Type |
| - | - |
| `id` | [`ID!`](https://veryfront.com/docs/cloud/graphql/types/id) |
| `accessScope` | [`SandboxAccessScope!`](https://veryfront.com/docs/cloud/graphql/types/sandboxaccessscope) |
| `workspaceStorage` | [`SandboxWorkspaceStorage!`](https://veryfront.com/docs/cloud/graphql/types/sandboxworkspacestorage) |
| `shortId` | [`String!`](https://veryfront.com/docs/cloud/graphql/types/string) |
| `endpoint` | [`String!`](https://veryfront.com/docs/cloud/graphql/types/string) |
| `status` | [`SandboxStatus!`](https://veryfront.com/docs/cloud/graphql/types/sandboxstatus) |
| `ttlMode` | [`SandboxLifetimeMode!`](https://veryfront.com/docs/cloud/graphql/types/sandboxlifetimemode) |
| `ttlHours` | [`Int`](https://veryfront.com/docs/cloud/graphql/types/int) |

[All fields of `Sandbox`](https://veryfront.com/docs/cloud/graphql/types/sandbox).

Types marked with `!` cannot be null. Lists use `[Type]` notation. The [type index](https://veryfront.com/docs/cloud/graphql/schema.md) lists all published input and response types.

## Example

```graphql title="query.graphql" theme={null}
mutation CreateSandbox($input: CreateSandboxInput!) {
  createSandbox(input: $input) {
    id
    projectId
    status
    createdAt
    accessScope
  }
}
```

```json title="variables.json" theme={null}
{
  "input": {
    "projectReference": "00000000-0000-4000-8000-000000000001",
    "accessScope": "project"
  }
}
```

<details>
  <summary>Try this mutation</summary>

  Calls use `https://api.veryfront.com/graphql`. Replace sample values with resources you can access. See [Authentication](https://veryfront.com/docs/cloud/authentication.md) for credentials and permissions.

  Bearer token or API key

  Stored in this tab's session. Clear credential

  Mutation

  Variables (JSON)
</details>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.