# CapsuleProcessStartRequest

Starts a run of a capsule, optionally with different mounts and with commands to run once it is ready.

**Kind:** an object, used in requests.

## Fields

| Field | Type | Required | Description |
|---|---|---|---|
| `virtualFileSystemMounts` | [`CapsuleVirtualFileSystemMountInput`](https://docs.maitento.com/reference/types/capsule-virtual-file-system-mount.md#in-a-request)`[]` |  | Virtual file system mounts for this run. Unless `replaceMounts` is true, a non-empty list replaces the capsule's own mounts and an empty list keeps them. |
| `secretMounts` | [`CapsuleSecretMountInput`](https://docs.maitento.com/reference/types/capsule-secret-mount.md#in-a-request)`[]` |  | Secret mounts for this run. Unless `replaceMounts` is true, a non-empty list replaces the capsule's own secret mounts and an empty list keeps them. |
| `commands` | [`CapsuleProcessCommandInput`](https://docs.maitento.com/reference/types/capsule-process-command.md#in-a-request)`[]` |  | Shell commands to run, in order, after the capsule's startup commands. Only each one's `command`, `arguments`, `runAsUser` and `maximumDuration` are read. |
| `replaceMounts` | `boolean \| null` |  | True: `virtualFileSystemMounts` and `secretMounts` are this run's complete mounts, so an empty list means none of that kind. Null or false: an empty list keeps the capsule's own mounts of that kind. |

## Example

```json
{
  "virtualFileSystemMounts": [
    {
      "vfsId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f",
      "vfsNamespaceId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f",
      "mountName": "..."
    }
  ],
  "secretMounts": [
    {
      "secretName": "...",
      "mountName": "..."
    }
  ],
  "commands": [
    {
      "id": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f",
      "operationType": "Command",
      "command": "...",
      "arguments": [],
      "runAsUser": "...",
      "maximumDuration": "00:05:00",
      "status": "Pending",
      "outputStandard": "...",
      "outputError": "...",
      "exitCode": 0,
      "failureDetails": "...",
      "isAsync": false,
      "dateQueued": "2026-10-26T12:00:00.0000000Z",
      "dateStarted": "2026-10-26T12:00:00.0000000Z",
      "dateEnded": "2026-10-26T12:00:00.0000000Z",
      "outputStandardFullLength": 0,
      "outputErrorFullLength": 0,
      "timedOut": false
    }
  ],
  "replaceMounts": false
}
```

## Where it's used

- [`capsules.start`](https://docs.maitento.com/reference/api/capsules.md) (`PUT /capsules/by-id/{id}/versions/{versionNumber}/start`)
- [`capsules.start`](https://docs.maitento.com/reference/api/capsules.md) (`PUT /namespaces/{namespaceName}/capsules/by-name/{name}/versions/latest/start`)
