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

# Morph Cloud sandboxes

> Run CostGraph workflows and CI jobs in Morph Cloud sandboxes: the key to create, its permissions, and its limits

Morph Cloud runs snapshot-able, branchable VM instances (Infinibranch) booted from images or snapshots, with a command exec API.

The following table shows what CostGraph runs on this provider.

| Workflows | CI runners | Connect with |
| - | - | - |
| Yes | Yes | Integrations or your own dispatcher |

## Connect

Connect Morph Cloud on Integrations, and CostGraph starts sandboxes in your Morph Cloud account. You don't run anything yourself.

1. In CostGraph, go to **Integrations > Sandbox > Morph Cloud**.

2. Enter these fields:

   * **API key** (`MORPH_API_KEY`, required): A Morph Cloud API key from the Morph Cloud dashboard.
   * **API URL** (`MORPH_BASE_URL`, optional): A different Morph Cloud API address, if you do not use the default.

3. Click **Connect**.

### Your own dispatcher

To keep the key out of CostGraph or reach a private network, run your own dispatcher instead.
Set `provider` to `morph` and the preceding fields as environment variables, as described in [Run your own dispatcher](https://docs.costgraph.ai/costgraph/workflows/managed-sandboxes.md#run-your-own-dispatcher).

## Key and permissions

MORPH\_API\_KEY is a Morph Cloud API key, created in the Morph Cloud dashboard (cloud.morph.so/web/keys).

Morph lets you set key permissions in its dashboard but doesn't document them. Use a key that can create, run commands in and delete sandboxes.

Sources: [cloud.morph.so: api keys](https://cloud.morph.so/docs/documentation/setup/api-keys), [cloud.morph.so: ttl](https://cloud.morph.so/docs/documentation/instances/ttl), [cloud.morph.so: cli](https://cloud.morph.so/docs/documentation/cli), [cloud.morph.so: openapi.json](https://cloud.morph.so/api/openapi.json).

## Limits

* Instances do not expire unless ttl\_seconds is set; ttl\_action is stop or pause. No max TTL is documented. ([source](https://cloud.morph.so/docs/documentation/instances/ttl))
* Max vCPU/memory/disk, regions and architecture are not documented; per-user service quotas exist (GET /user/service-quota) without published defaults. ([source](https://cloud.morph.so/api/openapi.json))

## Related

* [Supported sandbox providers](https://docs.costgraph.ai/costgraph/workflows/sandbox-providers.md)
* [Run workflows on a managed sandbox provider](https://docs.costgraph.ai/costgraph/workflows/managed-sandboxes.md)
* [Run CI jobs in sandboxes](https://docs.costgraph.ai/costgraph/autopilot/ci-sandboxes.md)


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