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

# DeployHQ API reference

> API reference for the DeployHQ plugin in Corsair: every `deployhq.api.*` operation with its input and output types, taken from the plugin's Zod schemas.

> [!NOTE]
>
> **New to Corsair?** See [API access](https://docs.corsair.dev/concepts/api.md), [authentication](https://docs.corsair.dev/concepts/auth.md), and [error handling](https://docs.corsair.dev/concepts/error-handling).

## Account

### billingStatusAccountBillingStatus

`account.billingStatusAccountBillingStatus`

Get billing status

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.account.billingStatusAccountBillingStatus({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `package` | `string \| null` | No | — |
| `frequency` | `number \| null` | No | — |
| `trialling` | `boolean \| null` | No | — |
| `suspended` | `boolean \| null` | No | — |
| `scheduled_change` | `object \| null` | No | — |

> [accordion] scheduled\_change full type
>
> ```ts theme={null}
> {
>   target_package?: string | null,
>   target_frequency?: number | null,
>   effective_at?: string | null
> } | null
> ```

***

### getAccount

`account.getAccount`

View account details

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.account.getAccount({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `package` | `string \| null` | No | — |
| `trialling` | `boolean \| null` | No | — |
| `suspended` | `boolean \| null` | No | — |
| `project_count` | `number \| null` | No | — |
| `project_limit` | `number \| null` | No | — |
| `users_allowed` | `boolean \| null` | No | — |
| `ai_features_disabled` | `boolean \| null` | No | — |

***

### replaceAccount

`account.replaceAccount`

Update account settings

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.account.replaceAccount({
	body: {
		account: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   account: {
>     name?: string,
>     permalink?: string,
>     time_zone?: string,
>     ip_restricted?: boolean,
>     two_factor_auth_required?: boolean,
>     strong_password_required?: boolean,
>     ai_features_disabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `package` | `string \| null` | No | — |
| `trialling` | `boolean \| null` | No | — |
| `suspended` | `boolean \| null` | No | — |
| `project_count` | `number \| null` | No | — |
| `project_limit` | `number \| null` | No | — |
| `users_allowed` | `boolean \| null` | No | — |
| `ai_features_disabled` | `boolean \| null` | No | — |

***

### resetPasswordSubmitReset

`account.resetPasswordSubmitReset`

Reset password

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.account.resetPasswordSubmitReset({
	body: { email_address: 'test' },
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   email_address: string
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |
| `message` | `string \| null` | No | — |

***

### updateAccount

`account.updateAccount`

Update account settings

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.account.updateAccount({
	body: {
		account: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   account: {
>     name?: string,
>     permalink?: string,
>     time_zone?: string,
>     ip_restricted?: boolean,
>     two_factor_auth_required?: boolean,
>     strong_password_required?: boolean,
>     ai_features_disabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `package` | `string \| null` | No | — |
| `trialling` | `boolean \| null` | No | — |
| `suspended` | `boolean \| null` | No | — |
| `project_count` | `number \| null` | No | — |
| `project_limit` | `number \| null` | No | — |
| `users_allowed` | `boolean \| null` | No | — |
| `ai_features_disabled` | `boolean \| null` | No | — |

***

## Automatic Deployments

### createProjectAutoDeployment

`automaticDeployments.createProjectAutoDeployment`

Update automatic deployment settings

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.automaticDeployments.createProjectAutoDeployment({
	project_id: 'test',
	body: {},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   deployables?: {
>     identifier?: string,
>     auto_deploy?: boolean,
>     command_deployable?: boolean
>   }[]
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `deployables` | `object[] \| null` | No | — |
| `skipped` | `string[] \| null` | No | — |

> [accordion] deployables full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   type?: string | null,
>   auto_deploy?: boolean | null,
>   command_deployable?: boolean | null,
>   preferred_branch?: string | null
> }[] | null
> ```

***

### listProjectAutoDeployments

`automaticDeployments.listProjectAutoDeployments`

List automatic deployment configuration

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.automaticDeployments.listProjectAutoDeployments({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `webhook_url` | `string \| null` | No | — |
| `deployables` | `object[] \| null` | No | — |

> [accordion] deployables full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   type?: string | null,
>   auto_deploy?: boolean | null,
>   command_deployable?: boolean | null,
>   preferred_branch?: string | null
> }[] | null
> ```

***

## Beta

### createBetumEnrollment

`beta.createBetumEnrollment`

Enroll in managed-resources beta

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.beta.createBetumEnrollment({
	body: {},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | No | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   protocol?: string
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `enrolled` | `boolean \| null` | No | — |
| `beta_features` | `boolean \| null` | No | — |

***

## Build Cache Files

### createProjectBuildCacheFile

`buildCacheFiles.createProjectBuildCacheFile`

Create a build cache file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCacheFiles.createProjectBuildCacheFile({
	project_id: 'test',
	body: {
		build_cache_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_cache_file: {
>     path: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |

***

### deleteProjectBuildCacheFile

`buildCacheFiles.deleteProjectBuildCacheFile`

Delete a build cache file

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.buildCacheFiles.deleteProjectBuildCacheFile({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### listProjectBuildCacheFiles

`buildCacheFiles.listProjectBuildCacheFiles`

List build cache files

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildCacheFiles.listProjectBuildCacheFiles({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   project_id?: null | number | null,
>   identifier?: string | null,
>   path?: string | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   parent_type?: string | null,
>   parent_id?: number | null
> }[]
> ```

***

### replaceProjectBuildCacheFile

`buildCacheFiles.replaceProjectBuildCacheFile`

Update a build cache file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCacheFiles.replaceProjectBuildCacheFile({
	project_id: 'test',
	id: 'test',
	body: {
		build_cache_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_cache_file: {
>     path: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |

***

### updateProjectBuildCacheFile

`buildCacheFiles.updateProjectBuildCacheFile`

Update a build cache file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCacheFiles.updateProjectBuildCacheFile({
	project_id: 'test',
	id: 'test',
	body: {
		build_cache_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_cache_file: {
>     path: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |

***

## Build Commands

### createProjectBuildCommand

`buildCommands.createProjectBuildCommand`

Create a build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCommands.createProjectBuildCommand({
	project_id: 'test',
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     enabled?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### deleteProjectBuildCommand

`buildCommands.deleteProjectBuildCommand`

Delete a build command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.buildCommands.deleteProjectBuildCommand({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### linkGlobalProjectBuildCommandLinkGlobal

`buildCommands.linkGlobalProjectBuildCommandLinkGlobal`

Link a global build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCommands.linkGlobalProjectBuildCommandLinkGlobal({ project_id: 'test', build_command_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `build_command_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### listProjectBuildCommands

`buildCommands.listProjectBuildCommands`

List build commands

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildCommands.listProjectBuildCommands({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   source?: string | null,
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   enabled?: boolean | null,
>   position?: number | null,
>   watch_files?: string | null
> }[]
> ```

***

### replaceProjectBuildCommand

`buildCommands.replaceProjectBuildCommand`

Update a build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCommands.replaceProjectBuildCommand({
	project_id: 'test',
	id: 'test',
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     enabled?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### unlinkGlobalProjectBuildCommandUnlinkGlobal

`buildCommands.unlinkGlobalProjectBuildCommandUnlinkGlobal`

Unlink a global build command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.buildCommands.unlinkGlobalProjectBuildCommandUnlinkGlobal({ project_id: 'test', build_command_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `build_command_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### updateProjectBuildCommand

`buildCommands.updateProjectBuildCommand`

Update a build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildCommands.updateProjectBuildCommand({
	project_id: 'test',
	id: 'test',
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     enabled?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

## Build Configurations

### createProjectBuildConfiguration

`buildConfigurations.createProjectBuildConfiguration`

Create an empty build configuration override

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.createProjectBuildConfiguration({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### deleteProjectBuildConfiguration

`buildConfigurations.deleteProjectBuildConfiguration`

Delete a build configuration override

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.deleteProjectBuildConfiguration({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectBuildConfiguration

`buildConfigurations.getProjectBuildConfiguration`

Get a build configuration

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.getProjectBuildConfiguration({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

The OpenAPI URL `/projects/{project_id}/build_configuration` contains only the `{project_id}` path token, but its parameter list also declares an id path parameter. The extra parameter is omitted because it is not present in the URL template; confirm with DeployHQ.

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### getProjectBuildConfigurationById

`buildConfigurations.getProjectBuildConfigurationById`

Get a build configuration

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.getProjectBuildConfigurationById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### listProjectBuildConfigurations

`buildConfigurations.listProjectBuildConfigurations`

List build configurations

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.listProjectBuildConfigurations({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   packages?: {
>     ruby?: string | null,
>     php?: string | null,
>     composer?: string | null,
>     java?: string | null,
>     dotnet?: string | null,
>     go?: string | null,
>     python2?: string | null,
>     python3?: string | null,
>     node?: string | null,
>     phantomjs?: string | null
>   } | null,
>   default?: boolean | null,
>   servers?: JsonValue[] | null
> }[]
> ```

***

### replaceProjectBuildConfiguration

`buildConfigurations.replaceProjectBuildConfiguration`

Update a build configuration override's target servers

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.replaceProjectBuildConfiguration({
	project_id: 'test',
	id: 'test',
	body: {
		build_environment: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### updateProjectBuildConfiguration

`buildConfigurations.updateProjectBuildConfiguration`

Update a build configuration override's target servers

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildConfigurations.updateProjectBuildConfiguration({
	project_id: 'test',
	id: 'test',
	body: {
		build_environment: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

## Build Known Hosts

### createProjectBuildKnownHost

`buildKnownHosts.createProjectBuildKnownHost`

Create a build known host

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.buildKnownHosts.createProjectBuildKnownHost({
	project_id: 'test',
	body: {
		build_known_host: { hostname: 'test', public_key: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_known_host: {
>     hostname: string,
>     public_key: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `fingerprint` | `string \| null` | No | — |

***

### deleteProjectBuildKnownHost

`buildKnownHosts.deleteProjectBuildKnownHost`

Delete a build known host

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.buildKnownHosts.deleteProjectBuildKnownHost({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### listProjectBuildKnownHosts

`buildKnownHosts.listProjectBuildKnownHosts`

List build known hosts

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.buildKnownHosts.listProjectBuildKnownHosts({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   hostname?: string | null,
>   fingerprint?: string | null
> }[]
> ```

***

## Config Files

### createProjectConfigFile

`configFiles.createProjectConfigFile`

Create a config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.configFiles.createProjectConfigFile({
	project_id: 'test',
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### deleteProjectConfigFile

`configFiles.deleteProjectConfigFile`

Delete a config file

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.configFiles.deleteProjectConfigFile({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectConfigFileById

`configFiles.getProjectConfigFileById`

Get a config file

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.configFiles.getProjectConfigFileById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### listProjectConfigFiles

`configFiles.listProjectConfigFiles`

List config files

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.configFiles.listProjectConfigFiles({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   description?: null | string | null,
>   path?: string | null,
>   body?: string | null,
>   build?: boolean | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: null | string | null,
>     preferred_branch?: string | null,
>     branch?: null | string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: {
>       id?: number | null,
>       created_at?: string | null,
>       identifier?: string | null,
>       name?: string | null,
>       online?: boolean | null,
>       revoked_at?: null | string | null,
>       updated_at?: string | null
>     } | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: null | string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null,
>     global_key_pair_id?: string | null
>   }[] | null
> }[]
> ```

***

### replaceProjectConfigFile

`configFiles.replaceProjectConfigFile`

Update a config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.configFiles.replaceProjectConfigFile({
	project_id: 'test',
	id: 'test',
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### updateProjectConfigFile

`configFiles.updateProjectConfigFile`

Update a config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.configFiles.updateProjectConfigFile({
	project_id: 'test',
	id: 'test',
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

## Deployment Checks

### createProjectDeploymentCheck

`deploymentChecks.createProjectDeploymentCheck`

Create a deployment check

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.createProjectDeploymentCheck({
	project_id: 'test',
	body: {
		deployment_check: { name: 'test', stage: 'test', check_type: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   deployment_check: {
>     name: string,
>     description?: string,
>     stage: string,
>     check_type: string,
>     enabled?: boolean,
>     timeout_seconds?: number,
>     command?: string,
>     servers?: string[],
>     http_method?: string,
>     http_url?: string,
>     http_expected_status?: number,
>     http_body_match?: string,
>     scanner?: string,
>     scan_target_kind?: string,
>     scan_target?: string,
>     severity_threshold?: string,
>     fail_on_unfixed_only?: boolean,
>     sarif_output_path?: string,
>     integration_identifier?: string,
>     window_minutes?: number,
>     match_by_release?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `stage` | `string \| null` | No | — |
| `check_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `command` | `string \| null` | No | — |
| `servers` | `string[] \| null` | No | — |
| `http_method` | `string \| null` | No | — |
| `http_url` | `string \| null` | No | — |
| `http_expected_status` | `number \| null` | No | — |
| `http_body_match` | `string \| null` | No | — |
| `timeout_seconds` | `number \| null` | No | — |
| `scanner` | `string \| null` | No | — |
| `scan_target_kind` | `string \| null` | No | — |
| `scan_target` | `string \| null` | No | — |
| `severity_threshold` | `string \| null` | No | — |
| `fail_on_unfixed_only` | `boolean \| null` | No | — |
| `sarif_output_path` | `string \| null` | No | — |
| `integration_identifier` | `string \| null` | No | — |
| `window_minutes` | `number \| null` | No | — |
| `match_by_release` | `boolean \| null` | No | — |

***

### deleteProjectDeploymentCheck

`deploymentChecks.deleteProjectDeploymentCheck`

Delete a deployment check

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.deleteProjectDeploymentCheck({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectDeploymentCheckById

`deploymentChecks.getProjectDeploymentCheckById`

Show a deployment check

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.getProjectDeploymentCheckById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `stage` | `string \| null` | No | — |
| `check_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `command` | `string \| null` | No | — |
| `servers` | `string[] \| null` | No | — |
| `http_method` | `string \| null` | No | — |
| `http_url` | `string \| null` | No | — |
| `http_expected_status` | `number \| null` | No | — |
| `http_body_match` | `string \| null` | No | — |
| `timeout_seconds` | `number \| null` | No | — |
| `scanner` | `string \| null` | No | — |
| `scan_target_kind` | `string \| null` | No | — |
| `scan_target` | `string \| null` | No | — |
| `severity_threshold` | `string \| null` | No | — |
| `fail_on_unfixed_only` | `boolean \| null` | No | — |
| `sarif_output_path` | `string \| null` | No | — |
| `integration_identifier` | `string \| null` | No | — |
| `window_minutes` | `number \| null` | No | — |
| `match_by_release` | `boolean \| null` | No | — |

***

### listProjectDeploymentChecks

`deploymentChecks.listProjectDeploymentChecks`

List deployment checks

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.listProjectDeploymentChecks({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   stage?: string | null,
>   check_type?: string | null,
>   enabled?: boolean | null,
>   position?: number | null,
>   command?: string | null,
>   servers?: string[] | null,
>   http_method?: string | null,
>   http_url?: string | null,
>   http_expected_status?: number | null,
>   http_body_match?: string | null,
>   timeout_seconds?: number | null,
>   scanner?: string | null,
>   scan_target_kind?: string | null,
>   scan_target?: string | null,
>   severity_threshold?: string | null,
>   fail_on_unfixed_only?: boolean | null,
>   sarif_output_path?: string | null,
>   integration_identifier?: string | null,
>   window_minutes?: number | null,
>   match_by_release?: boolean | null
> }[]
> ```

***

### replaceProjectDeploymentCheck

`deploymentChecks.replaceProjectDeploymentCheck`

Update a deployment check

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.replaceProjectDeploymentCheck({
	project_id: 'test',
	id: 'test',
	body: {
		deployment_check: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   deployment_check: {
>     name?: string,
>     description?: string,
>     stage?: string,
>     check_type?: string,
>     enabled?: boolean,
>     timeout_seconds?: number,
>     command?: string,
>     servers?: string[],
>     http_method?: string,
>     http_url?: string,
>     http_expected_status?: number,
>     http_body_match?: string,
>     scanner?: string,
>     scan_target_kind?: string,
>     scan_target?: string,
>     severity_threshold?: string,
>     fail_on_unfixed_only?: boolean,
>     sarif_output_path?: string,
>     integration_identifier?: string,
>     window_minutes?: number,
>     match_by_release?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `stage` | `string \| null` | No | — |
| `check_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `command` | `string \| null` | No | — |
| `servers` | `string[] \| null` | No | — |
| `http_method` | `string \| null` | No | — |
| `http_url` | `string \| null` | No | — |
| `http_expected_status` | `number \| null` | No | — |
| `http_body_match` | `string \| null` | No | — |
| `timeout_seconds` | `number \| null` | No | — |
| `scanner` | `string \| null` | No | — |
| `scan_target_kind` | `string \| null` | No | — |
| `scan_target` | `string \| null` | No | — |
| `severity_threshold` | `string \| null` | No | — |
| `fail_on_unfixed_only` | `boolean \| null` | No | — |
| `sarif_output_path` | `string \| null` | No | — |
| `integration_identifier` | `string \| null` | No | — |
| `window_minutes` | `number \| null` | No | — |
| `match_by_release` | `boolean \| null` | No | — |

***

### updateProjectDeploymentCheck

`deploymentChecks.updateProjectDeploymentCheck`

Update a deployment check

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.deploymentChecks.updateProjectDeploymentCheck({
	project_id: 'test',
	id: 'test',
	body: {
		deployment_check: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   deployment_check: {
>     name?: string,
>     description?: string,
>     stage?: string,
>     check_type?: string,
>     enabled?: boolean,
>     timeout_seconds?: number,
>     command?: string,
>     servers?: string[],
>     http_method?: string,
>     http_url?: string,
>     http_expected_status?: number,
>     http_body_match?: string,
>     scanner?: string,
>     scan_target_kind?: string,
>     scan_target?: string,
>     severity_threshold?: string,
>     fail_on_unfixed_only?: boolean,
>     sarif_output_path?: string,
>     integration_identifier?: string,
>     window_minutes?: number,
>     match_by_release?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `stage` | `string \| null` | No | — |
| `check_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `command` | `string \| null` | No | — |
| `servers` | `string[] \| null` | No | — |
| `http_method` | `string \| null` | No | — |
| `http_url` | `string \| null` | No | — |
| `http_expected_status` | `number \| null` | No | — |
| `http_body_match` | `string \| null` | No | — |
| `timeout_seconds` | `number \| null` | No | — |
| `scanner` | `string \| null` | No | — |
| `scan_target_kind` | `string \| null` | No | — |
| `scan_target` | `string \| null` | No | — |
| `severity_threshold` | `string \| null` | No | — |
| `fail_on_unfixed_only` | `boolean \| null` | No | — |
| `sarif_output_path` | `string \| null` | No | — |
| `integration_identifier` | `string \| null` | No | — |
| `window_minutes` | `number \| null` | No | — |
| `match_by_release` | `boolean \| null` | No | — |

***

## Deployments

### abortProjectDeployment

`deployments.abortProjectDeployment`

Abort a running deployment

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.deployments.abortProjectDeployment({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### createProjectDeployment

`deployments.createProjectDeployment`

Queue, preview or schedule a deployment

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.deployments.createProjectDeployment({
	project_id: 'test',
	body: {
		deployment: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   deployment: {
>     start_revision?: string,
>     end_revision?: string,
>     copy_config_files?: boolean,
>     notification_addresses?: string,
>     branch?: string,
>     parent_identifier?: string,
>     server_identifier?: string,
>     run_build_commands?: boolean,
>     use_build_cache?: boolean,
>     config_files_deployment?: boolean,
>     mode?: string,
>     use_latest?: boolean,
>     skip_if_not_changes?: boolean
>   },
>   schedule?: {
>     frequency?: string,
>     future?: {
>       day?: number,
>       month?: number,
>       year?: number,
>       hour?: number,
>       minute?: number
>     },
>     daily?: {
>       hour?: number,
>       minute?: number
>     },
>     weekly?: {
>       weekday?: number,
>       hour?: number,
>       minute?: number
>     },
>     monthly?: {
>       day?: number,
>       hour?: number,
>       minute?: number
>     },
>     custom?: {
>       schedule?: string,
>       hour?: number,
>       minute?: number
>     }
>   },
>   save_server_branch?: string,
>   deployment_overview?: string
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `project` | `object \| null` | No | — |
| `deployer` | `null \| string \| null` | No | — |
| `deployer_avatar` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `start_revision` | `object \| null` | No | — |
| `end_revision` | `object \| null` | No | — |
| `status` | `string \| null` | No | — |
| `timestamps` | `object \| null` | No | — |
| `files` | `object \| null` | No | — |
| `configuration` | `object \| null` | No | — |
| `legacy` | `boolean \| null` | No | — |
| `deferred` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |
| `overview` | `null \| string \| null` | No | — |
| `metadata` | `object \| null` | No | — |
| `archived` | `boolean \| null` | No | — |
| `archived_at` | `null \| string \| null` | No | — |
| `log_summary` | `null \| string \| null` | No | — |
| `steps` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

> [accordion] project full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   identifier?: string | null,
>   public_key?: string | null,
>   repository?: {
>     scm_type?: string | null,
>     url?: string | null,
>     port?: null | number | null,
>     username?: null | string | null,
>     branch?: string | null,
>     cached?: boolean | null,
>     hosting_service?: {
>       name?: string | null,
>       url?: string | null,
>       tree_url?: string | null,
>       commits_url?: string | null
>     } | null
>   } | null,
>   repository_url?: string | null,
>   zone?: string | null,
>   last_deployed_at?: string | null,
>   folder?: null | string | null,
>   auto_deploy_url?: string | null
> } | null
> ```

> [accordion] start\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] end\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] timestamps full type
>
> ```ts theme={null}
> {
>   queued_at?: string | null,
>   started_at?: null | string | null,
>   completed_at?: null | string | null,
>   duration?: null | string | null,
>   runs_at?: string | null
> } | null
> ```

> [accordion] files full type
>
> ```ts theme={null}
> Record<string, {
>   changed?: JsonValue[] | null,
>   removed?: JsonValue[] | null
> }> | null
> ```

> [accordion] configuration full type
>
> ```ts theme={null}
> {
>   copy_config_files?: boolean | null,
>   notification_addresses?: string | null,
>   skip_project_files?: boolean | null
> } | null
> ```

> [accordion] metadata full type
>
> ```ts theme={null}
> {
> } | null
> ```

> [accordion] steps full type
>
> ```ts theme={null}
> {
>   step?: string | null,
>   stage?: string | null,
>   identifier?: string | null,
>   server?: null | string | null,
>   total_items?: null | string | null,
>   completed_items?: null | string | null,
>   description?: string | null,
>   status?: string | null,
>   logs?: boolean | null,
>   explainable?: boolean | null,
>   deployment_started_at?: null | string | null,
>   updated_at?: string | null
> }[] | null
> ```

***

### getProjectDeploymentById

`deployments.getProjectDeploymentById`

View a deployment

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.deployments.getProjectDeploymentById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `project` | `object \| null` | No | — |
| `deployer` | `null \| string \| null` | No | — |
| `deployer_avatar` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `start_revision` | `object \| null` | No | — |
| `end_revision` | `object \| null` | No | — |
| `status` | `string \| null` | No | — |
| `timestamps` | `object \| null` | No | — |
| `files` | `object \| null` | No | — |
| `configuration` | `object \| null` | No | — |
| `legacy` | `boolean \| null` | No | — |
| `deferred` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |
| `overview` | `null \| string \| null` | No | — |
| `metadata` | `object \| null` | No | — |
| `archived` | `boolean \| null` | No | — |
| `archived_at` | `null \| string \| null` | No | — |
| `log_summary` | `null \| string \| null` | No | — |
| `steps` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

> [accordion] project full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   identifier?: string | null,
>   public_key?: string | null,
>   repository?: {
>     scm_type?: string | null,
>     url?: string | null,
>     port?: null | number | null,
>     username?: null | string | null,
>     branch?: string | null,
>     cached?: boolean | null,
>     hosting_service?: {
>       name?: string | null,
>       url?: string | null,
>       tree_url?: string | null,
>       commits_url?: string | null
>     } | null
>   } | null,
>   repository_url?: string | null,
>   zone?: string | null,
>   last_deployed_at?: string | null,
>   folder?: null | string | null,
>   auto_deploy_url?: string | null
> } | null
> ```

> [accordion] start\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] end\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] timestamps full type
>
> ```ts theme={null}
> {
>   queued_at?: string | null,
>   started_at?: null | string | null,
>   completed_at?: null | string | null,
>   duration?: null | string | null,
>   runs_at?: string | null
> } | null
> ```

> [accordion] files full type
>
> ```ts theme={null}
> Record<string, {
>   changed?: JsonValue[] | null,
>   removed?: JsonValue[] | null
> }> | null
> ```

> [accordion] configuration full type
>
> ```ts theme={null}
> {
>   copy_config_files?: boolean | null,
>   notification_addresses?: string | null,
>   skip_project_files?: boolean | null
> } | null
> ```

> [accordion] metadata full type
>
> ```ts theme={null}
> {
> } | null
> ```

> [accordion] steps full type
>
> ```ts theme={null}
> {
>   step?: string | null,
>   stage?: string | null,
>   identifier?: string | null,
>   server?: null | string | null,
>   total_items?: null | string | null,
>   completed_items?: null | string | null,
>   description?: string | null,
>   status?: string | null,
>   logs?: boolean | null,
>   explainable?: boolean | null,
>   deployment_started_at?: null | string | null,
>   updated_at?: string | null
> }[] | null
> ```

***

### listProjectDeployments

`deployments.listProjectDeployments`

List deployments for a project

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.deployments.listProjectDeployments({
	project_id: 'test',
	page: 1,
	per_page: 1,
	to: 'test',
	currently_running: 'test',
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `page` | `number` | No | — |
| `per_page` | `number` | No | — |
| `to` | `string` | No | — |
| `currently_running` | `string` | No | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `pagination` | `object \| null` | No | — |
| `records` | `object[] \| null` | No | — |

> [accordion] pagination full type
>
> ```ts theme={null}
> {
>   current_page?: number | null,
>   total_pages?: number | null,
>   offset?: number | null,
>   total_records?: number | null
> } | null
> ```

> [accordion] records full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: null | string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null
>   }[] | null,
>   project?: {
>     name?: string | null,
>     permalink?: string | null,
>     identifier?: string | null,
>     public_key?: string | null,
>     repository?: {
>       scm_type?: string | null,
>       url?: string | null,
>       port?: null | number | null,
>       username?: null | string | null,
>       branch?: string | null,
>       cached?: boolean | null,
>       hosting_service?: {
>         name?: string | null,
>         url?: string | null,
>         tree_url?: string | null,
>         commits_url?: string | null
>       } | null
>     } | null,
>     repository_url?: string | null,
>     zone?: string | null,
>     last_deployed_at?: string | null,
>     folder?: null | string | null,
>     auto_deploy_url?: string | null
>   } | null,
>   deployer?: null | string | null,
>   deployer_avatar?: null | string | null,
>   branch?: string | null,
>   start_revision?: {
>     ref?: string | null
>   } | null,
>   end_revision?: {
>     ref?: string | null
>   } | null,
>   status?: string | null,
>   timestamps?: {
>     queued_at?: string | null,
>     started_at?: null | string | null,
>     completed_at?: null | string | null,
>     duration?: null | string | null,
>     runs_at?: string | null
>   } | null,
>   files?: Record<string, {
>     changed?: JsonValue[] | null,
>     removed?: JsonValue[] | null
>   }> | null,
>   configuration?: {
>     copy_config_files?: boolean | null,
>     notification_addresses?: string | null,
>     skip_project_files?: boolean | null
>   } | null,
>   legacy?: boolean | null,
>   deferred?: boolean | null,
>   config_files_deployment?: boolean | null,
>   overview?: null | string | null,
>   metadata?: {
>   } | null,
>   archived?: boolean | null,
>   archived_at?: null | string | null,
>   log_summary?: null | string | null
> }[] | null
> ```

***

### listProjectDeploymentStepLogs

`deployments.listProjectDeploymentStepLogs`

List log entries for a deployment step

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.deployments.listProjectDeploymentStepLogs({
	project_id: 'test',
	deployment_id: 'test',
	step_id: 'test',
	before: 1,
	download: false,
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `deployment_id` | `string` | Yes | — |
| `step_id` | `string` | Yes | — |
| `before` | `number` | No | — |
| `download` | `boolean` | No | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   step?: string | null,
>   message?: string | null,
>   detail?: string | null,
>   type?: string | null
> }[]
> ```

***

### retryProjectDeploymentRetry

`deployments.retryProjectDeploymentRetry`

Retry a deployment

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.deployments.retryProjectDeploymentRetry({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `project` | `object \| null` | No | — |
| `deployer` | `null \| string \| null` | No | — |
| `deployer_avatar` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `start_revision` | `object \| null` | No | — |
| `end_revision` | `object \| null` | No | — |
| `status` | `string \| null` | No | — |
| `timestamps` | `object \| null` | No | — |
| `files` | `object \| null` | No | — |
| `configuration` | `object \| null` | No | — |
| `legacy` | `boolean \| null` | No | — |
| `deferred` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |
| `overview` | `null \| string \| null` | No | — |
| `metadata` | `object \| null` | No | — |
| `archived` | `boolean \| null` | No | — |
| `archived_at` | `null \| string \| null` | No | — |
| `log_summary` | `null \| string \| null` | No | — |
| `steps` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

> [accordion] project full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   identifier?: string | null,
>   public_key?: string | null,
>   repository?: {
>     scm_type?: string | null,
>     url?: string | null,
>     port?: null | number | null,
>     username?: null | string | null,
>     branch?: string | null,
>     cached?: boolean | null,
>     hosting_service?: {
>       name?: string | null,
>       url?: string | null,
>       tree_url?: string | null,
>       commits_url?: string | null
>     } | null
>   } | null,
>   repository_url?: string | null,
>   zone?: string | null,
>   last_deployed_at?: string | null,
>   folder?: null | string | null,
>   auto_deploy_url?: string | null
> } | null
> ```

> [accordion] start\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] end\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] timestamps full type
>
> ```ts theme={null}
> {
>   queued_at?: string | null,
>   started_at?: null | string | null,
>   completed_at?: null | string | null,
>   duration?: null | string | null,
>   runs_at?: string | null
> } | null
> ```

> [accordion] files full type
>
> ```ts theme={null}
> Record<string, {
>   changed?: JsonValue[] | null,
>   removed?: JsonValue[] | null
> }> | null
> ```

> [accordion] configuration full type
>
> ```ts theme={null}
> {
>   copy_config_files?: boolean | null,
>   notification_addresses?: string | null,
>   skip_project_files?: boolean | null
> } | null
> ```

> [accordion] metadata full type
>
> ```ts theme={null}
> {
> } | null
> ```

> [accordion] steps full type
>
> ```ts theme={null}
> {
>   step?: string | null,
>   stage?: string | null,
>   identifier?: string | null,
>   server?: null | string | null,
>   total_items?: null | string | null,
>   completed_items?: null | string | null,
>   description?: string | null,
>   status?: string | null,
>   logs?: boolean | null,
>   explainable?: boolean | null,
>   deployment_started_at?: null | string | null,
>   updated_at?: string | null
> }[] | null
> ```

***

### rollbackProjectDeployment

`deployments.rollbackProjectDeployment`

Rollback a deployment

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.deployments.rollbackProjectDeployment({
	project_id: 'test',
	id: 'test',
	mode: 'test',
	copy_config_files: false,
	run_build_commands: false,
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `mode` | `string` | No | — |
| `copy_config_files` | `boolean` | No | — |
| `run_build_commands` | `boolean` | No | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `project` | `object \| null` | No | — |
| `deployer` | `null \| string \| null` | No | — |
| `deployer_avatar` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `start_revision` | `object \| null` | No | — |
| `end_revision` | `object \| null` | No | — |
| `status` | `string \| null` | No | — |
| `timestamps` | `object \| null` | No | — |
| `files` | `object \| null` | No | — |
| `configuration` | `object \| null` | No | — |
| `legacy` | `boolean \| null` | No | — |
| `deferred` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |
| `overview` | `null \| string \| null` | No | — |
| `metadata` | `object \| null` | No | — |
| `archived` | `boolean \| null` | No | — |
| `archived_at` | `null \| string \| null` | No | — |
| `log_summary` | `null \| string \| null` | No | — |
| `steps` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

> [accordion] project full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   identifier?: string | null,
>   public_key?: string | null,
>   repository?: {
>     scm_type?: string | null,
>     url?: string | null,
>     port?: null | number | null,
>     username?: null | string | null,
>     branch?: string | null,
>     cached?: boolean | null,
>     hosting_service?: {
>       name?: string | null,
>       url?: string | null,
>       tree_url?: string | null,
>       commits_url?: string | null
>     } | null
>   } | null,
>   repository_url?: string | null,
>   zone?: string | null,
>   last_deployed_at?: string | null,
>   folder?: null | string | null,
>   auto_deploy_url?: string | null
> } | null
> ```

> [accordion] start\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] end\_revision full type
>
> ```ts theme={null}
> {
>   ref?: string | null
> } | null
> ```

> [accordion] timestamps full type
>
> ```ts theme={null}
> {
>   queued_at?: string | null,
>   started_at?: null | string | null,
>   completed_at?: null | string | null,
>   duration?: null | string | null,
>   runs_at?: string | null
> } | null
> ```

> [accordion] files full type
>
> ```ts theme={null}
> Record<string, {
>   changed?: JsonValue[] | null,
>   removed?: JsonValue[] | null
> }> | null
> ```

> [accordion] configuration full type
>
> ```ts theme={null}
> {
>   copy_config_files?: boolean | null,
>   notification_addresses?: string | null,
>   skip_project_files?: boolean | null
> } | null
> ```

> [accordion] metadata full type
>
> ```ts theme={null}
> {
> } | null
> ```

> [accordion] steps full type
>
> ```ts theme={null}
> {
>   step?: string | null,
>   stage?: string | null,
>   identifier?: string | null,
>   server?: null | string | null,
>   total_items?: null | string | null,
>   completed_items?: null | string | null,
>   description?: string | null,
>   status?: string | null,
>   logs?: boolean | null,
>   explainable?: boolean | null,
>   deployment_started_at?: null | string | null,
>   updated_at?: string | null
> }[] | null
> ```

***

## Detection

### createDetection

`detection.createDetection`

Detect framework from a file manifest

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.detection.createDetection({
	body: {
		detection: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   detection: {
>     filenames?: string[],
>     files?: Record<string, JsonValue>,
>     repository_url?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `stack` | `string \| null` | No | — |
| `version` | `string \| null` | No | — |
| `evidence` | `string[] \| null` | No | — |
| `description` | `string \| null` | No | — |
| `suggested_protocol` | `string \| null` | No | — |
| `static_hosting` | `object \| null` | No | — |
| `build_commands` | `object[] \| null` | No | — |
| `excluded_files` | `object[] \| null` | No | — |
| `build_cache_files` | `object[] \| null` | No | — |
| `ai_assisted` | `boolean \| null` | No | — |

> [accordion] static\_hosting full type
>
> ```ts theme={null}
> {
>   eligibility?: string | null,
>   root_path?: string | null,
>   spa_mode?: boolean | null,
>   confidence?: string | null
> } | null
> ```

> [accordion] build\_commands full type
>
> ```ts theme={null}
> {
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   template_name?: string | null
> }[] | null
> ```

> [accordion] excluded\_files full type
>
> ```ts theme={null}
> {
>   path?: string | null
> }[] | null
> ```

> [accordion] build\_cache\_files full type
>
> ```ts theme={null}
> {
>   path?: string | null
> }[] | null
> ```

***

## Environment Variables

### createProjectEnvironmentVariable

`environmentVariables.createProjectEnvironmentVariable`

Create an environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.createProjectEnvironmentVariable({
	project_id: 'test',
	body: {
		environment_variable: { name: 'test', value: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name: string,
>     value: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### deleteProjectEnvironmentVariable

`environmentVariables.deleteProjectEnvironmentVariable`

Delete an environment variable

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.deleteProjectEnvironmentVariable({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

DeployHQ answers with 204 No Content, so the operation returns undefined on success.

**Output:** `string`

***

### getProjectEnvironmentVariableById

`environmentVariables.getProjectEnvironmentVariableById`

Get an environment variable

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.getProjectEnvironmentVariableById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### listProjectEnvironmentVariables

`environmentVariables.listProjectEnvironmentVariables`

List environment variables

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.listProjectEnvironmentVariables({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: number | null,
>   name?: string | null,
>   masked_value?: string | null,
>   locked?: boolean | null,
>   build_pipeline?: boolean | null,
>   created_at?: string | null,
>   updated_at?: string | null
> }[]
> ```

***

### replaceProjectEnvironmentVariable

`environmentVariables.replaceProjectEnvironmentVariable`

Update an environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.replaceProjectEnvironmentVariable({
	project_id: 'test',
	id: 'test',
	body: {
		environment_variable: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name?: string,
>     value?: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### updateProjectEnvironmentVariable

`environmentVariables.updateProjectEnvironmentVariable`

Update an environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.environmentVariables.updateProjectEnvironmentVariable({
	project_id: 'test',
	id: 'test',
	body: {
		environment_variable: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name?: string,
>     value?: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

## Excluded Files

### createProjectExcludedFile

`excludedFiles.createProjectExcludedFile`

Create an excluded file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.createProjectExcludedFile({
	project_id: 'test',
	body: {
		excluded_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   excluded_file: {
>     path: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: null | string | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   static_hosting?: {
>     hosted_website_identifier?: string | null,
>     subdomain?: string | null,
>     url?: string | null,
>     spa_mode?: boolean | null,
>     status?: string | null,
>     active_deployment_uuid?: string | null
>   } | null
> }[] | null
> ```

***

### deleteProjectExcludedFile

`excludedFiles.deleteProjectExcludedFile`

Delete an excluded file

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.deleteProjectExcludedFile({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectExcludedFileById

`excludedFiles.getProjectExcludedFileById`

Get an excluded file

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.getProjectExcludedFileById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: null | string | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   static_hosting?: {
>     hosted_website_identifier?: string | null,
>     subdomain?: string | null,
>     url?: string | null,
>     spa_mode?: boolean | null,
>     status?: string | null,
>     active_deployment_uuid?: string | null
>   } | null
> }[] | null
> ```

***

### listProjectExcludedFiles

`excludedFiles.listProjectExcludedFiles`

List excluded files

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.listProjectExcludedFiles({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   path?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: null | string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: null | string | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     static_hosting?: {
>       hosted_website_identifier?: string | null,
>       subdomain?: string | null,
>       url?: string | null,
>       spa_mode?: boolean | null,
>       status?: string | null,
>       active_deployment_uuid?: string | null
>     } | null
>   }[] | null
> }[]
> ```

***

### replaceProjectExcludedFile

`excludedFiles.replaceProjectExcludedFile`

Update an excluded file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.replaceProjectExcludedFile({
	project_id: 'test',
	id: 'test',
	body: {
		excluded_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   excluded_file: {
>     path: string,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: null | string | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   static_hosting?: {
>     hosted_website_identifier?: string | null,
>     subdomain?: string | null,
>     url?: string | null,
>     spa_mode?: boolean | null,
>     status?: string | null,
>     active_deployment_uuid?: string | null
>   } | null
> }[] | null
> ```

***

### updateProjectExcludedFile

`excludedFiles.updateProjectExcludedFile`

Update an excluded file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.excludedFiles.updateProjectExcludedFile({
	project_id: 'test',
	id: 'test',
	body: {
		excluded_file: { path: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   excluded_file: {
>     path: string,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: null | string | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   static_hosting?: {
>     hosted_website_identifier?: string | null,
>     subdomain?: string | null,
>     url?: string | null,
>     spa_mode?: boolean | null,
>     status?: string | null,
>     active_deployment_uuid?: string | null
>   } | null
> }[] | null
> ```

***

## Folders

### createFolder

`folders.createFolder`

Create a folder

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.folders.createFolder({
	body: {
		folder: { name: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   folder: {
>     name: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `projects_count` | `number \| null` | No | — |

***

### deleteFolder

`folders.deleteFolder`

Delete a folder

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.folders.deleteFolder({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### listFolders

`folders.listFolders`

List all folders

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.folders.listFolders({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   position?: number | null,
>   projects_count?: number | null
> }[]
> ```

***

### replaceFolder

`folders.replaceFolder`

Update a folder

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.folders.replaceFolder({
	id: 'test',
	body: {
		folder: { name: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   folder: {
>     name: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `projects_count` | `number \| null` | No | — |

***

### updateFolder

`folders.updateFolder`

Update a folder

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.folders.updateFolder({
	id: 'test',
	body: {
		folder: { name: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   folder: {
>     name: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `projects_count` | `number \| null` | No | — |

***

## Global Build Commands

### createGlobalBuildCommand

`globalBuildCommands.createGlobalBuildCommand`

Create new global build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.createGlobalBuildCommand({
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### deleteGlobalBuildCommand

`globalBuildCommands.deleteGlobalBuildCommand`

Delete global build command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.deleteGlobalBuildCommand({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getGlobalBuildCommand

`globalBuildCommands.getGlobalBuildCommand`

View global build command

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.getGlobalBuildCommand({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### listGlobalBuildCommands

`globalBuildCommands.listGlobalBuildCommands`

List global build commands

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.listGlobalBuildCommands({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   project_id?: null | number | null,
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   identifier?: string | null,
>   parent_type?: string | null,
>   parent_id?: number | null,
>   template_name?: string | null,
>   enabled?: boolean | null,
>   watch_files?: string | null,
>   source?: string | null
> }[]
> ```

***

### replaceGlobalBuildCommand

`globalBuildCommands.replaceGlobalBuildCommand`

Update global build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.replaceGlobalBuildCommand({
	id: 'test',
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

### updateGlobalBuildCommand

`globalBuildCommands.updateGlobalBuildCommand`

Update global build command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalBuildCommands.updateGlobalBuildCommand({
	id: 'test',
	body: {
		build_command: { command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_command: {
>     description?: string,
>     command: string,
>     template_name?: string,
>     halt_on_error?: boolean,
>     watch_files?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `project_id` | `null \| number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `parent_type` | `string \| null` | No | — |
| `parent_id` | `number \| null` | No | — |
| `template_name` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `watch_files` | `string \| null` | No | — |
| `source` | `string \| null` | No | — |

***

## Global Config Files

### createGlobalConfigFile

`globalConfigFiles.createGlobalConfigFile`

Create new global config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.createGlobalConfigFile({
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### deleteGlobalConfigFile

`globalConfigFiles.deleteGlobalConfigFile`

Delete global config file

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.deleteGlobalConfigFile({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getGlobalConfigFile

`globalConfigFiles.getGlobalConfigFile`

View global config file

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.getGlobalConfigFile({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### listGlobalConfigFiles

`globalConfigFiles.listGlobalConfigFiles`

List global config files

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.listGlobalConfigFiles({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   description?: null | string | null,
>   path?: string | null,
>   body?: string | null,
>   build?: boolean | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: null | string | null,
>     preferred_branch?: string | null,
>     branch?: null | string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: {
>       id?: number | null,
>       created_at?: string | null,
>       identifier?: string | null,
>       name?: string | null,
>       online?: boolean | null,
>       revoked_at?: null | string | null,
>       updated_at?: string | null
>     } | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: null | string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null,
>     global_key_pair_id?: string | null
>   }[] | null
> }[]
> ```

***

### replaceGlobalConfigFile

`globalConfigFiles.replaceGlobalConfigFile`

Update global config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.replaceGlobalConfigFile({
	id: 'test',
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### updateGlobalConfigFile

`globalConfigFiles.updateGlobalConfigFile`

Update global config file

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalConfigFiles.updateGlobalConfigFile({
	id: 'test',
	body: {
		config_file: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   config_file: {
>     path?: string,
>     body?: string,
>     build?: boolean,
>     language?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `description` | `null \| string \| null` | No | — |
| `path` | `string \| null` | No | — |
| `body` | `string \| null` | No | — |
| `build` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: null | string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: {
>     id?: number | null,
>     created_at?: string | null,
>     identifier?: string | null,
>     name?: string | null,
>     online?: boolean | null,
>     revoked_at?: null | string | null,
>     updated_at?: string | null
>   } | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: null | string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

## Global Environment Variables

### createGlobalEnvironmentVariable

`globalEnvironmentVariables.createGlobalEnvironmentVariable`

Create a global environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.createGlobalEnvironmentVariable({
	body: {
		environment_variable: { name: 'test', value: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name: string,
>     value: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### deleteGlobalEnvironmentVariable

`globalEnvironmentVariables.deleteGlobalEnvironmentVariable`

Delete a global environment variable

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.deleteGlobalEnvironmentVariable({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getGlobalEnvironmentVariable

`globalEnvironmentVariables.getGlobalEnvironmentVariable`

Get a global environment variable

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.getGlobalEnvironmentVariable({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### listGlobalEnvironmentVariables

`globalEnvironmentVariables.listGlobalEnvironmentVariables`

List global environment variables

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.listGlobalEnvironmentVariables({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: number | null,
>   name?: string | null,
>   masked_value?: string | null,
>   locked?: boolean | null,
>   build_pipeline?: boolean | null,
>   created_at?: string | null,
>   updated_at?: string | null
> }[]
> ```

***

### replaceGlobalEnvironmentVariable

`globalEnvironmentVariables.replaceGlobalEnvironmentVariable`

Update a global environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.replaceGlobalEnvironmentVariable({
	id: 'test',
	body: {
		environment_variable: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name?: string,
>     value?: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### updateGlobalEnvironmentVariable

`globalEnvironmentVariables.updateGlobalEnvironmentVariable`

Update a global environment variable

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalEnvironmentVariables.updateGlobalEnvironmentVariable({
	id: 'test',
	body: {
		environment_variable: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   environment_variable: {
>     name?: string,
>     value?: string,
>     locked?: boolean,
>     build_pipeline?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `number \| null` | No | — |
| `name` | `string \| null` | No | — |
| `masked_value` | `string \| null` | No | — |
| `locked` | `boolean \| null` | No | — |
| `build_pipeline` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

## Global Servers

### copyToProjectGlobalServer

`globalServers.copyToProjectGlobalServer`

Copy a global server to a project

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalServers.copyToProjectGlobalServer({ id: 'test', project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `project_id` | `string` | Yes | — |

Pass the target project's `identifier` (a UUID) as project\_id. The project permalink returns 404 on this route (checked 11-13).

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### createGlobalServer

`globalServers.createGlobalServer`

Create a global server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalServers.createGlobalServer({
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     protocol_type?: string,
>     server_path?: string,
>     environment?: string,
>     root_path?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number
>   },
>   region?: string,
>   size?: string,
>   os_image?: string,
>   key_pair_identifier?: string
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### deleteGlobalServer

`globalServers.deleteGlobalServer`

Delete a global server

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.globalServers.deleteGlobalServer({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getGlobalServer

`globalServers.getGlobalServer`

View a global server

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalServers.getGlobalServer({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `managed_vps` | `object \| null` | No | — |

> [accordion] managed\_vps full type
>
> ```ts theme={null}
> {
>   hosted_resource_identifier?: string | null,
>   status?: string | null,
>   ip_address?: string | null,
>   region?: string | null,
>   size?: string | null,
>   ssh_key?: {
>     identifier?: string | null,
>     title?: string | null,
>     fingerprint?: string | null
>   } | null
> } | null
> ```

***

### listGlobalServers

`globalServers.listGlobalServers`

List global servers

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalServers.listGlobalServers({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[]
> ```

***

### replaceGlobalServer

`globalServers.replaceGlobalServer`

Update a global server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalServers.replaceGlobalServer({
	id: 'test',
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     protocol_type?: string,
>     server_path?: string,
>     environment?: string,
>     root_path?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### updateGlobalServer

`globalServers.updateGlobalServer`

Update a global server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalServers.updateGlobalServer({
	id: 'test',
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     protocol_type?: string,
>     server_path?: string,
>     environment?: string,
>     root_path?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

## Global Ssh Commands

### createGlobalSshCommand

`globalSshCommands.createGlobalSshCommand`

Create new global ssh command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.createGlobalSshCommand({
	body: {
		command: { description: 'test', command: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     description: string,
>     command: string,
>     halt_on_error?: boolean,
>     timeout?: number
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### deleteGlobalSshCommand

`globalSshCommands.deleteGlobalSshCommand`

Delete global ssh command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.deleteGlobalSshCommand({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getGlobalSshCommand

`globalSshCommands.getGlobalSshCommand`

View global ssh command

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.getGlobalSshCommand({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### listGlobalSshCommands

`globalSshCommands.listGlobalSshCommands`

List global ssh commands

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.listGlobalSshCommands({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   cback?: string | null,
>   position?: number | null,
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: null | string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null
>   }[] | null,
>   timing?: string | null,
>   timeout?: number | null,
>   enabled?: boolean | null
> }[]
> ```

***

### replaceGlobalSshCommand

`globalSshCommands.replaceGlobalSshCommand`

Update global ssh command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.replaceGlobalSshCommand({
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timeout?: number
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### updateGlobalSshCommand

`globalSshCommands.updateGlobalSshCommand`

Update global ssh command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.globalSshCommands.updateGlobalSshCommand({
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timeout?: number
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

## Hosted Resources

### getHostedResource

`hostedResources.getHostedResource`

Show a hosted resource or hosted website

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.hostedResources.getHostedResource({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `kind` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `status` | `string \| null` | No | — |
| `monthly_cost` | `JsonValue \| null` | No | — |
| `region` | `string \| null` | No | — |
| `size` | `string \| null` | No | — |
| `ip_address` | `string \| null` | No | — |
| `ssh_key` | `object \| null` | No | — |
| `subdomain` | `string \| null` | No | — |
| `spa_mode` | `boolean \| null` | No | — |
| `storage_bytes_total` | `number \| null` | No | — |
| `active_deployment_uuid` | `string \| null` | No | — |
| `deployment_count` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

> [accordion] ssh\_key full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   title?: string | null,
>   public_key?: string | null,
>   key_type?: string | null,
>   fingerprint?: string | null,
>   account?: string | null
> } | null
> ```

***

### listHostedResources

`hostedResources.listHostedResources`

List all hosted resources and hosted websites

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.hostedResources.listHostedResources({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   kind?: string | null,
>   identifier?: string | null,
>   name?: string | null,
>   status?: string | null,
>   monthly_cost?: JsonValue | null,
>   region?: string | null,
>   size?: string | null,
>   ip_address?: string | null,
>   ssh_key?: {
>     identifier?: string | null,
>     title?: string | null,
>     public_key?: string | null,
>     key_type?: string | null,
>     fingerprint?: string | null,
>     account?: string | null
>   } | null,
>   subdomain?: string | null,
>   spa_mode?: boolean | null,
>   storage_bytes_total?: number | null,
>   active_deployment_uuid?: string | null,
>   deployment_count?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null
> }[]
> ```

***

### retryProvisionHostedResourceRetryProvision

`hostedResources.retryProvisionHostedResourceRetryProvision`

Retry provisioning a hosted resource

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.hostedResources.retryProvisionHostedResourceRetryProvision({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### syncHostedResourceSync

`hostedResources.syncHostedResourceSync`

Sync a hosted resource

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.hostedResources.syncHostedResourceSync({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

## Integrations

### createProjectIntegration

`integrations.createProjectIntegration`

Create an integration

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.integrations.createProjectIntegration({
	project_id: 'test',
	body: {
		integration: { hook_type: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   integration: {
>     hook_type: string,
>     send_on_completion?: boolean,
>     send_on_failure?: boolean,
>     send_on_check_failed?: boolean,
>     send_on_start?: boolean,
>     name?: string,
>     properties?: Record<string, JsonValue>
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `hook_type` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `send_on_start` | `boolean \| null` | No | — |
| `send_on_completion` | `boolean \| null` | No | — |
| `send_on_failure` | `boolean \| null` | No | — |
| `send_on_check_failed` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### deleteProjectIntegration

`integrations.deleteProjectIntegration`

Delete an integration

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.integrations.deleteProjectIntegration({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectIntegrationById

`integrations.getProjectIntegrationById`

Get an integration

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.integrations.getProjectIntegrationById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `hook_type` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `send_on_start` | `boolean \| null` | No | — |
| `send_on_completion` | `boolean \| null` | No | — |
| `send_on_failure` | `boolean \| null` | No | — |
| `send_on_check_failed` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### listProjectIntegrations

`integrations.listProjectIntegrations`

List integrations

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.integrations.listProjectIntegrations({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   hook_type?: string | null,
>   name?: string | null,
>   send_on_start?: boolean | null,
>   send_on_completion?: boolean | null,
>   send_on_failure?: boolean | null,
>   send_on_check_failed?: boolean | null,
>   created_at?: string | null,
>   updated_at?: string | null
> }[]
> ```

***

### replaceProjectIntegration

`integrations.replaceProjectIntegration`

Update an integration

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.integrations.replaceProjectIntegration({
	project_id: 'test',
	id: 'test',
	body: {
		integration: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   integration: {
>     send_on_completion?: boolean,
>     send_on_failure?: boolean,
>     send_on_check_failed?: boolean,
>     send_on_start?: boolean,
>     name?: string,
>     properties?: Record<string, JsonValue>,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `hook_type` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `send_on_start` | `boolean \| null` | No | — |
| `send_on_completion` | `boolean \| null` | No | — |
| `send_on_failure` | `boolean \| null` | No | — |
| `send_on_check_failed` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### updateProjectIntegration

`integrations.updateProjectIntegration`

Update an integration

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.integrations.updateProjectIntegration({
	project_id: 'test',
	id: 'test',
	body: {
		integration: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   integration: {
>     send_on_completion?: boolean,
>     send_on_failure?: boolean,
>     send_on_check_failed?: boolean,
>     send_on_start?: boolean,
>     name?: string,
>     properties?: Record<string, JsonValue>,
>     all_servers?: boolean,
>     server_identifiers?: string[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `hook_type` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `send_on_start` | `boolean \| null` | No | — |
| `send_on_completion` | `boolean \| null` | No | — |
| `send_on_failure` | `boolean \| null` | No | — |
| `send_on_check_failed` | `boolean \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

## Invoices

### getAccountInvoice

`invoices.getAccountInvoice`

Download an invoice PDF

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.invoices.getAccountInvoice({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

The route summary says this downloads an invoice PDF, while the OpenAPI response schema declares a JSON string. JSON responses are returned as strings; non-JSON PDF bytes are preserved in a `kind: 'binary'` base64 envelope. The `kind` discriminator is the string literal `'binary'`. Binary responses are capped at 10 MiB by this plugin as a local memory-safety limit, not as a DeployHQ limit.

**Output:** `string \| object`

> [accordion] Output full type
>
> ```ts theme={null}
> string | {
>   kind: binary,
>   contentType: string,
>   base64: string,
>   sizeBytes: number
> }
> ```

***

### listAccountInvoices

`invoices.listAccountInvoices`

List invoices

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.invoices.listAccountInvoices({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   number?: number | null,
>   kind?: string | null,
>   currency?: string | null,
>   total?: string | null,
>   vat?: string | null,
>   paid?: boolean | null,
>   paid_at?: string | null,
>   created_at?: string | null,
>   download_url?: string | null
> }[]
> ```

***

## Ip Ranges

### listIpRanges

`ipRanges.listIpRanges`

List DeployHQ deployment IP ranges

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.ipRanges.listIpRanges({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `shared` | `object \| null` | No | — |
| `zones` | `object \| null` | No | — |
| `network_agent` | `object \| null` | No | — |
| `all_ipv4` | `string[] \| null` | No | — |
| `all_ipv6` | `string[] \| null` | No | — |
| `ports` | `object[] \| null` | No | — |

> [accordion] shared full type
>
> ```ts theme={null}
> {
>   ipv4?: string[] | null,
>   ipv6?: string[] | null
> } | null
> ```

> [accordion] zones full type
>
> ```ts theme={null}
> {
>   uk?: {
>     name?: string | null,
>     ipv4?: string[] | null,
>     ipv6?: string[] | null
>   } | null
> } | null
> ```

> [accordion] network\_agent full type
>
> ```ts theme={null}
> {
>   ipv4?: string[] | null,
>   ipv6?: string[] | null
> } | null
> ```

> [accordion] ports full type
>
> ```ts theme={null}
> {
>   protocol?: string | null,
>   description?: string | null
> }[] | null
> ```

***

## Language Versions

### listLanguageVersions

`languageVersions.listLanguageVersions`

List available language versions

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.languageVersions.listLanguageVersions({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `node` | `string[] \| null` | No | — |
| `ruby` | `string[] \| null` | No | — |
| `php` | `string[] \| null` | No | — |

***

### listProjectLanguageVersions

`languageVersions.listProjectLanguageVersions`

Get project language versions

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.languageVersions.listProjectLanguageVersions({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `node` | `string \| null` | No | — |
| `ruby` | `string \| null` | No | — |
| `php` | `string \| null` | No | — |

***

### replaceProjectBuildConfigurationBuildLanguage

`languageVersions.replaceProjectBuildConfigurationBuildLanguage`

Update language version

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.languageVersions.replaceProjectBuildConfigurationBuildLanguage({
	project_id: 'test',
	override_build_configuration_id: 'test',
	id: 'test',
	body: {
		build_environment: { version: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `override_build_configuration_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

The OpenAPI path requires override\_build\_configuration\_id in the URL, but the parameter list describes the same field as an optional query parameter. This plugin follows the explicit route template and requires the path value; verify this discrepancy with DeployHQ before use.

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     version: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### replaceProjectBuildLanguage

`languageVersions.replaceProjectBuildLanguage`

Update language version

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.languageVersions.replaceProjectBuildLanguage({
	project_id: 'test',
	id: 'test',
	override_build_configuration_id: 'test',
	body: {
		build_environment: { version: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `override_build_configuration_id` | `string` | No | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     version: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### updateProjectBuildConfigurationBuildLanguage

`languageVersions.updateProjectBuildConfigurationBuildLanguage`

Update language version

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.languageVersions.updateProjectBuildConfigurationBuildLanguage({
	project_id: 'test',
	override_build_configuration_id: 'test',
	id: 'test',
	body: {
		build_environment: { version: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `override_build_configuration_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

The OpenAPI path requires override\_build\_configuration\_id in the URL, but the parameter list describes the same field as an optional query parameter. This plugin follows the explicit route template and requires the path value; verify this discrepancy with DeployHQ before use.

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     version: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

### updateProjectBuildLanguage

`languageVersions.updateProjectBuildLanguage`

Update language version

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.languageVersions.updateProjectBuildLanguage({
	project_id: 'test',
	id: 'test',
	override_build_configuration_id: 'test',
	body: {
		build_environment: { version: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `override_build_configuration_id` | `string` | No | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   build_environment: {
>     version: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `packages` | `object \| null` | No | — |
| `default` | `boolean \| null` | No | — |
| `servers` | `JsonValue[] \| null` | No | — |

> [accordion] packages full type
>
> ```ts theme={null}
> {
>   ruby?: string | null,
>   php?: string | null,
>   composer?: string | null,
>   java?: string | null,
>   dotnet?: string | null,
>   go?: string | null,
>   python2?: string | null,
>   python3?: string | null,
>   node?: string | null,
>   phantomjs?: string | null
> } | null
> ```

***

## Managed Hosting

### listManagedHostingRegions

`managedHosting.listManagedHostingRegions`

List available regions

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.managedHosting.listManagedHostingRegions({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `grouped_regions` | `Record<string, JsonValue> \| null` | No | — |

***

### listManagedHostingSizes

`managedHosting.listManagedHostingSizes`

List available sizes

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.managedHosting.listManagedHostingSizes({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `sizes` | `object[] \| null` | No | — |

> [accordion] sizes full type
>
> ```ts theme={null}
> {
>   slug?: string | null,
>   label?: string | null,
>   monthly_cost?: JsonValue | null,
>   currency?: string | null
> }[] | null
> ```

***

## Network Agents

### createAgent

`networkAgents.createAgent`

Claim a network agent

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.networkAgents.createAgent({
	body: {
		agent: { claim_code: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   agent: {
>     claim_code: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `online` | `boolean \| null` | No | — |
| `revoked_at` | `null \| string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### deleteAgent

`networkAgents.deleteAgent`

Delete a network agent

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.networkAgents.deleteAgent({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### listAgents

`networkAgents.listAgents`

List network agents

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.networkAgents.listAgents({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   created_at?: string | null,
>   identifier?: string | null,
>   name?: string | null,
>   online?: boolean | null,
>   revoked_at?: null | string | null,
>   updated_at?: string | null
> }[]
> ```

***

### replaceAgent

`networkAgents.replaceAgent`

Update a network agent

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.networkAgents.replaceAgent({
	id: 'test',
	body: {
		agent: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   agent: {
>     name?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `online` | `boolean \| null` | No | — |
| `revoked_at` | `null \| string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

### revokeAgent

`networkAgents.revokeAgent`

Revoke a network agent

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.networkAgents.revokeAgent({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### updateAgent

`networkAgents.updateAgent`

Update a network agent

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.networkAgents.updateAgent({
	id: 'test',
	body: {
		agent: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   agent: {
>     name?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `online` | `boolean \| null` | No | — |
| `revoked_at` | `null \| string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |

***

## Packages

### listPackages

`packages.listPackages`

List DeployHQ plans and prices

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.packages.listPackages({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   permalink?: string | null,
>   name?: string | null,
>   currency?: string | null,
>   price?: JsonValue | null,
>   price_billed_annually?: JsonValue | null,
>   features?: string[] | null
> }[]
> ```

***

## Profile

### getProfile

`profile.getProfile`

View your profile

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.profile.getProfile({});
```

**Input:** *empty object*

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `first_name` | `string \| null` | No | — |
| `last_name` | `string \| null` | No | — |
| `email_address` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `account` | `object \| null` | No | — |

> [accordion] account full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   time_zone?: string | null,
>   package?: string | null,
>   trialling?: boolean | null,
>   suspended?: boolean | null,
>   project_count?: number | null,
>   project_limit?: number | null,
>   users_allowed?: boolean | null,
>   beta_features?: boolean | null,
>   static_hosting_eligible?: boolean | null,
>   managed_vps_eligible?: boolean | null
> } | null
> ```

***

### replaceProfile

`profile.replaceProfile`

Update your profile

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.profile.replaceProfile({
	body: {
		user: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   user: {
>     first_name?: string,
>     last_name?: string,
>     email_address?: string,
>     time_zone?: string,
>     alphabetic_sort?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### updateProfile

`profile.updateProfile`

Update your profile

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.profile.updateProfile({
	body: {
		user: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   user: {
>     first_name?: string,
>     last_name?: string,
>     email_address?: string,
>     time_zone?: string,
>     alphabetic_sort?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

## Projects

### aiDeploymentOverviewProject

`projects.aiDeploymentOverviewProject`

AI Deployment Overview

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.aiDeploymentOverviewProject({
	id: 'test',
	body: { end_ref: 'test' },
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   start_ref?: string,
>   end_ref: string
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `success` | `boolean` | Yes | — |
| `overview` | `string` | Yes | — |

***

### createProject

`projects.createProject`

Create a project

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.createProject({
	body: {
		project: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   project: {
>     name?: string,
>     keypair_identifier?: string,
>     zone_id?: string,
>     template_id?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `public_key` | `string \| null` | No | — |
| `repository` | `object \| null` | No | — |
| `repository_url` | `string \| null` | No | — |
| `zone` | `string \| null` | No | — |
| `last_deployed_at` | `null \| string \| null` | No | — |
| `folder` | `null \| string \| null` | No | — |
| `auto_deploy_url` | `string \| null` | No | — |

> [accordion] repository full type
>
> ```ts theme={null}
> {
>   scm_type?: string | null,
>   url?: string | null,
>   port?: null | number | null,
>   username?: null | string | null,
>   branch?: string | null,
>   cached?: boolean | null,
>   hosting_service?: {
>     name?: string | null,
>     url?: string | null,
>     tree_url?: string | null,
>     commits_url?: string | null
>   } | null
> } | null
> ```

***

### deleteProject

`projects.deleteProject`

Delete a project

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.projects.deleteProject({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProject

`projects.getProject`

View a project

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.getProject({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `public_key` | `string \| null` | No | — |
| `repository` | `Record<string, JsonValue> \| null` | No | — |
| `repository_url` | `string \| null` | No | — |
| `zone` | `string \| null` | No | — |
| `last_deployed_at` | `string \| null` | No | — |
| `folder` | `object \| null` | No | — |
| `auto_deploy_url` | `string \| null` | No | — |
| `url` | `string \| null` | No | — |
| `app_url` | `string \| null` | No | — |
| `servers_url` | `string \| null` | No | — |
| `deployments_url` | `string \| null` | No | — |
| `config_files_url` | `string \| null` | No | — |
| `environment_variables_url` | `string \| null` | No | — |
| `build_commands_url` | `string \| null` | No | — |
| `capabilities` | `object[] \| null` | No | — |
| `starred` | `boolean \| null` | No | — |

> [accordion] folder full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null
> } | null
> ```

> [accordion] capabilities full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   enabled?: boolean | null,
>   url?: string | null
> }[] | null
> ```

***

### listProjectInsights

`projects.listProjectInsights`

Get project deployment insights

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.listProjectInsights({ id: 'test', period: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `period` | `string` | No | — |

The OpenAPI URL `/projects/{id}/insights` contains the path token `{id}`, while its parameter list includes both project\_id and id. This implementation follows the URL template and uses its id field; confirm the intended identifier with DeployHQ.

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `period` | `number \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `summary` | `object \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   group?: boolean | null,
>   latest_status?: string | null,
>   recent_deploys?: {
>     status?: string | null,
>     duration?: number | null
>   }[] | null,
>   speed?: number | null,
>   reliability?: JsonValue | null,
>   deploys_per_week?: JsonValue | null,
>   total?: number | null
> }[] | null
> ```

> [accordion] summary full type
>
> ```ts theme={null}
> {
>   total_deploys?: {
>     value?: number | null,
>     delta?: JsonValue | null
>   } | null,
>   success_rate?: {
>     value?: JsonValue | null,
>     delta?: JsonValue | null
>   } | null,
>   avg_duration?: {
>     value?: number | null,
>     delta?: JsonValue | null
>   } | null,
>   active_servers?: {
>     value?: number | null,
>     delta?: string | null
>   } | null
> } | null
> ```

***

### listProjects

`projects.listProjects`

List all projects

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.listProjects({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   identifier?: string | null,
>   public_key?: string | null,
>   repository?: Record<string, JsonValue> | null,
>   repository_url?: string | null,
>   zone?: string | null,
>   last_deployed_at?: string | null,
>   folder?: {
>     identifier?: string | null,
>     name?: string | null
>   } | null,
>   auto_deploy_url?: string | null,
>   url?: string | null,
>   app_url?: string | null,
>   servers_url?: string | null,
>   deployments_url?: string | null,
>   config_files_url?: string | null,
>   environment_variables_url?: string | null,
>   build_commands_url?: string | null,
>   starred?: boolean | null
> }[]
> ```

***

### regenerateKeyProjectRegenerateKey

`projects.regenerateKeyProjectRegenerateKey`

Regenerate project SSH key

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.projects.regenerateKeyProjectRegenerateKey({
	id: 'test',
	body: {},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | No | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   project?: {
>     key_type?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `public_key` | `string` | Yes | — |

***

### replaceProject

`projects.replaceProject`

Update a project

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.replaceProject({
	id: 'test',
	body: {
		project: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   project: {
>     name?: string,
>     email_notify_on?: string,
>     notification_email?: string,
>     notify_committer?: boolean,
>     zone_id?: string,
>     permalink?: string,
>     custom_private_key?: string,
>     check_undeployed_changes?: string,
>     store_artifacts_enabled?: string,
>     ai_overview_custom_instructions?: string,
>     folder?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `public_key` | `string \| null` | No | — |
| `repository` | `object \| null` | No | — |
| `repository_url` | `string \| null` | No | — |
| `zone` | `string \| null` | No | — |
| `last_deployed_at` | `null \| string \| null` | No | — |
| `folder` | `null \| string \| null` | No | — |
| `auto_deploy_url` | `string \| null` | No | — |

> [accordion] repository full type
>
> ```ts theme={null}
> {
>   scm_type?: string | null,
>   url?: string | null,
>   port?: null | number | null,
>   username?: null | string | null,
>   branch?: string | null,
>   cached?: boolean | null,
>   hosting_service?: {
>     name?: string | null,
>     url?: string | null,
>     tree_url?: string | null,
>     commits_url?: string | null
>   } | null
> } | null
> ```

***

### starProject

`projects.starProject`

Toggle star/unstar on a project

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.starProject({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `message` | `string \| null` | No | — |
| `starred` | `boolean \| null` | No | — |

***

### statusBadgeStatusBadge

`projects.statusBadgeStatusBadge`

Get deployment status badge

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.statusBadgeStatusBadge({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

The parameter list describes an optional identifier that is not present in this route. Use statusBadgeStatusBadgeByIdentifier for the documented URL that includes an identifier.

**Output:** `string`

***

### statusBadgeStatusBadgeByIdentifier

`projects.statusBadgeStatusBadgeByIdentifier`

Get deployment status badge

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.statusBadgeStatusBadgeByIdentifier({ id: 'test', identifier: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `identifier` | `string` | Yes | — |

**Output:** `string`

***

### undeployedChangesProjectUndeployedChange

`projects.undeployedChangesProjectUndeployedChange`

List undeployed commits for a project

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.projects.undeployedChangesProjectUndeployedChange({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `count` | `number` | Yes | — |
| `truncated` | `boolean` | Yes | — |
| `latest_deployed_revision` | `string \| null` | No | — |
| `current_revision` | `string \| null` | No | — |
| `last_checked_at` | `string \| null` | No | — |
| `check_in_progress` | `boolean` | Yes | — |
| `check_fail_message` | `string \| null` | No | — |
| `commits` | `object[] \| null` | No | — |

> [accordion] commits full type
>
> ```ts theme={null}
> {
>   ref?: string | null,
>   author?: string | null,
>   email?: string | null,
>   timestamp?: string | null,
>   message?: string | null,
>   short_message?: string | null,
>   url?: string | null
> }[] | null
> ```

***

### updateProject

`projects.updateProject`

Update a project

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.updateProject({
	id: 'test',
	body: {
		project: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   project: {
>     name?: string,
>     email_notify_on?: string,
>     notification_email?: string,
>     notify_committer?: boolean,
>     zone_id?: string,
>     permalink?: string,
>     custom_private_key?: string,
>     check_undeployed_changes?: string,
>     store_artifacts_enabled?: string,
>     ai_overview_custom_instructions?: string,
>     folder?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `public_key` | `string \| null` | No | — |
| `repository` | `object \| null` | No | — |
| `repository_url` | `string \| null` | No | — |
| `zone` | `string \| null` | No | — |
| `last_deployed_at` | `null \| string \| null` | No | — |
| `folder` | `null \| string \| null` | No | — |
| `auto_deploy_url` | `string \| null` | No | — |

> [accordion] repository full type
>
> ```ts theme={null}
> {
>   scm_type?: string | null,
>   url?: string | null,
>   port?: null | number | null,
>   username?: null | string | null,
>   branch?: string | null,
>   cached?: boolean | null,
>   hosting_service?: {
>     name?: string | null,
>     url?: string | null,
>     tree_url?: string | null,
>     commits_url?: string | null
>   } | null
> } | null
> ```

***

### uploadKeyProject

`projects.uploadKeyProject`

Upload custom key

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.projects.uploadKeyProject({
	id: 'test',
	body: {
		project: { custom_private_key: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   project: {
>     custom_private_key: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `public_key` | `string` | Yes | — |

***

## Repositories

### branchesProjectRepository

`repositories.branchesProjectRepository`

Branches

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.repositories.branchesProjectRepository({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `Record<string, JsonValue>`

***

### commitInfoProjectRepository

`repositories.commitInfoProjectRepository`

Commit Info

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.repositories.commitInfoProjectRepository({ project_id: 'test', commit: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `commit` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `ref` | `string` | Yes | — |
| `author` | `string` | Yes | — |
| `email` | `string` | Yes | — |
| `timestamp` | `string \| null` | No | — |
| `message` | `string \| null` | No | — |
| `short_message` | `string \| null` | No | — |
| `tags` | `string[] \| null` | No | — |
| `avatar_url` | `string \| null` | No | — |

***

### createProjectRepository

`repositories.createProjectRepository`

Create or replace the repository

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.repositories.createProjectRepository({
	project_id: 'test',
	body: {
		repository: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   repository: {
>     url?: string,
>     scm_type?: string,
>     username?: string,
>     password?: string,
>     branch?: string,
>     port?: number,
>     root_path?: string,
>     hosting_service_type?: string,
>     manual_config?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `scm_type` | `string \| null` | No | — |
| `url` | `string \| null` | No | — |
| `port` | `null \| number \| null` | No | — |
| `username` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `cached` | `boolean \| null` | No | — |
| `hosting_service` | `object \| null` | No | — |

> [accordion] hosting\_service full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   url?: string | null,
>   tree_url?: string | null,
>   commits_url?: string | null
> } | null
> ```

***

### getProjectRepository

`repositories.getProjectRepository`

View the repository

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.repositories.getProjectRepository({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `scm_type` | `string \| null` | No | — |
| `url` | `string \| null` | No | — |
| `port` | `null \| number \| null` | No | — |
| `username` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `cached` | `boolean \| null` | No | — |
| `hosting_service` | `object \| null` | No | — |

> [accordion] hosting\_service full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   url?: string | null,
>   tree_url?: string | null,
>   commits_url?: string | null
> } | null
> ```

***

### latestRevisionProjectRepository

`repositories.latestRevisionProjectRepository`

Latest Revision

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.repositories.latestRevisionProjectRepository({ project_id: 'test', branch: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `branch` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `ref` | `string \| null` | No | — |

***

### recentCommitsProjectRepository

`repositories.recentCommitsProjectRepository`

Recent Commits

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.repositories.recentCommitsProjectRepository({ project_id: 'test', branch: 'test', update: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `branch` | `string` | Yes | — |
| `update` | `string` | No | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `commits` | `object[] \| null` | No | — |
| `tags` | `object[] \| null` | No | — |
| `releases` | `object[] \| null` | No | — |

> [accordion] commits full type
>
> ```ts theme={null}
> {
>   ref: string,
>   author: string,
>   email: string,
>   timestamp?: string | null,
>   message?: string | null,
>   short_message?: string | null,
>   tags?: string[] | null,
>   avatar_url?: string | null
> }[] | null
> ```

> [accordion] tags full type
>
> ```ts theme={null}
> {
>   name: string,
>   ref: string,
>   message: string
> }[] | null
> ```

> [accordion] releases full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   ref?: string | null
> }[] | null
> ```

***

### replaceProjectRepository

`repositories.replaceProjectRepository`

Update the repository

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.repositories.replaceProjectRepository({
	project_id: 'test',
	body: {
		repository: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   repository: {
>     branch?: string,
>     root_path?: string,
>     hosting_service_type?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `scm_type` | `string \| null` | No | — |
| `url` | `string \| null` | No | — |
| `port` | `null \| number \| null` | No | — |
| `username` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `cached` | `boolean \| null` | No | — |
| `hosting_service` | `object \| null` | No | — |

> [accordion] hosting\_service full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   url?: string | null,
>   tree_url?: string | null,
>   commits_url?: string | null
> } | null
> ```

***

### updateProjectRepository

`repositories.updateProjectRepository`

Update the repository

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.repositories.updateProjectRepository({
	project_id: 'test',
	body: {
		repository: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   repository: {
>     branch?: string,
>     root_path?: string,
>     hosting_service_type?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `scm_type` | `string \| null` | No | — |
| `url` | `string \| null` | No | — |
| `port` | `null \| number \| null` | No | — |
| `username` | `null \| string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `cached` | `boolean \| null` | No | — |
| `hosting_service` | `object \| null` | No | — |

> [accordion] hosting\_service full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   url?: string | null,
>   tree_url?: string | null,
>   commits_url?: string | null
> } | null
> ```

***

## Scheduled Deployments

### createProjectScheduledDeployment

`scheduledDeployments.createProjectScheduledDeployment`

Create a scheduled deployment

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.createProjectScheduledDeployment({
	project_id: 'test',
	body: {
		scheduled_deployment: { server_identifier: 'test', frequency: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   scheduled_deployment: {
>     server_identifier: string,
>     frequency: string,
>     at?: string,
>     weekday?: string,
>     day?: number,
>     month?: number,
>     year?: number,
>     schedule?: string,
>     copy_config_files?: boolean,
>     run_build_commands?: boolean,
>     use_build_cache?: boolean,
>     skip_if_not_changes?: boolean,
>     start_revision?: string,
>     end_revision?: string,
>     use_latest?: boolean,
>     deploy_entire_repository?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `server` | `object \| null` | No | — |
| `start_revision` | `string \| null` | No | — |
| `end_revision` | `string \| null` | No | — |
| `frequency` | `string \| null` | No | — |
| `at` | `object \| null` | No | — |
| `next_deployment_at` | `string \| null` | No | — |
| `copy_config_files` | `boolean \| null` | No | — |
| `run_build_commands` | `boolean \| null` | No | — |
| `use_build_cache` | `boolean \| null` | No | — |
| `skip_project_files` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |

> [accordion] server full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: null | string | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     passive?: boolean | null,
>     force_hidden_files?: boolean | null,
>     implicit?: boolean | null,
>     ignore_certificate_errors?: boolean | null,
>     tls_version?: string | null
>   }[] | null,
>   preferred_branch?: string | null,
>   last_revision?: string | null,
>   environment?: string | null,
>   transfer_order?: string | null
> } | null
> ```

> [accordion] at full type
>
> ```ts theme={null}
> {
>   day?: number | null,
>   month?: number | null,
>   year?: number | null,
>   hour?: number | null,
>   minute?: number | null
> } | null
> ```

***

### deleteProjectScheduledDeployment

`scheduledDeployments.deleteProjectScheduledDeployment`

Cancel a scheduled deployment

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.deleteProjectScheduledDeployment({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectScheduledDeploymentById

`scheduledDeployments.getProjectScheduledDeploymentById`

Get a scheduled deployment

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.getProjectScheduledDeploymentById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `server` | `object \| null` | No | — |
| `start_revision` | `string \| null` | No | — |
| `end_revision` | `string \| null` | No | — |
| `frequency` | `string \| null` | No | — |
| `at` | `object \| null` | No | — |
| `next_deployment_at` | `string \| null` | No | — |
| `copy_config_files` | `boolean \| null` | No | — |
| `run_build_commands` | `boolean \| null` | No | — |
| `use_build_cache` | `boolean \| null` | No | — |
| `skip_project_files` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |

> [accordion] server full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: null | string | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     passive?: boolean | null,
>     force_hidden_files?: boolean | null,
>     implicit?: boolean | null,
>     ignore_certificate_errors?: boolean | null,
>     tls_version?: string | null
>   }[] | null,
>   preferred_branch?: string | null,
>   last_revision?: string | null,
>   environment?: string | null,
>   transfer_order?: string | null
> } | null
> ```

> [accordion] at full type
>
> ```ts theme={null}
> {
>   day?: number | null,
>   month?: number | null,
>   year?: number | null,
>   hour?: number | null,
>   minute?: number | null
> } | null
> ```

***

### listProjectScheduledDeployments

`scheduledDeployments.listProjectScheduledDeployments`

List scheduled deployments

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.listProjectScheduledDeployments({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   server?: {
>     identifier?: string | null,
>     name?: string | null,
>     servers?: {
>       id?: number | null,
>       identifier?: string | null,
>       name?: string | null,
>       protocol_type?: string | null,
>       server_path?: string | null,
>       last_revision?: string | null,
>       preferred_branch?: string | null,
>       branch?: string | null,
>       notify_email?: string | null,
>       server_group_identifier?: string | null,
>       auto_deploy?: boolean | null,
>       environment?: string | null,
>       enabled?: boolean | null,
>       agent?: null | string | null,
>       atomic?: null | string | null,
>       atomic_strategy?: string | null,
>       atomic_retention?: number | null,
>       use_compression?: boolean | null,
>       use_accelerated_transfer?: boolean | null,
>       use_parallel_upload?: boolean | null,
>       root_path?: string | null,
>       position?: number | null,
>       created_at?: string | null,
>       updated_at?: string | null,
>       connection_checked_at?: null | string | null,
>       connection_error_message?: null | string | null,
>       hostname?: string | null,
>       username?: string | null,
>       port?: string | number | null,
>       passive?: boolean | null,
>       force_hidden_files?: boolean | null,
>       implicit?: boolean | null,
>       ignore_certificate_errors?: boolean | null,
>       tls_version?: string | null
>     }[] | null,
>     preferred_branch?: string | null,
>     last_revision?: string | null,
>     environment?: string | null,
>     transfer_order?: string | null
>   } | null,
>   start_revision?: string | null,
>   end_revision?: string | null,
>   frequency?: string | null,
>   at?: {
>     day?: number | null,
>     month?: number | null,
>     year?: number | null,
>     hour?: number | null,
>     minute?: number | null
>   } | null,
>   next_deployment_at?: string | null,
>   copy_config_files?: boolean | null,
>   run_build_commands?: boolean | null,
>   use_build_cache?: boolean | null,
>   skip_project_files?: boolean | null,
>   config_files_deployment?: boolean | null
> }[]
> ```

***

### replaceProjectScheduledDeployment

`scheduledDeployments.replaceProjectScheduledDeployment`

Update a scheduled deployment

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.replaceProjectScheduledDeployment({
	project_id: 'test',
	id: 'test',
	body: {
		scheduled_deployment: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   scheduled_deployment: {
>     frequency?: string,
>     at?: string,
>     weekday?: string,
>     day?: number,
>     month?: number,
>     year?: number,
>     schedule?: string,
>     copy_config_files?: boolean,
>     run_build_commands?: boolean,
>     use_build_cache?: boolean,
>     skip_if_not_changes?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `server` | `object \| null` | No | — |
| `start_revision` | `string \| null` | No | — |
| `end_revision` | `string \| null` | No | — |
| `frequency` | `string \| null` | No | — |
| `at` | `object \| null` | No | — |
| `next_deployment_at` | `string \| null` | No | — |
| `copy_config_files` | `boolean \| null` | No | — |
| `run_build_commands` | `boolean \| null` | No | — |
| `use_build_cache` | `boolean \| null` | No | — |
| `skip_project_files` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |

> [accordion] server full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: null | string | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     passive?: boolean | null,
>     force_hidden_files?: boolean | null,
>     implicit?: boolean | null,
>     ignore_certificate_errors?: boolean | null,
>     tls_version?: string | null
>   }[] | null,
>   preferred_branch?: string | null,
>   last_revision?: string | null,
>   environment?: string | null,
>   transfer_order?: string | null
> } | null
> ```

> [accordion] at full type
>
> ```ts theme={null}
> {
>   day?: number | null,
>   month?: number | null,
>   year?: number | null,
>   hour?: number | null,
>   minute?: number | null
> } | null
> ```

***

### updateProjectScheduledDeployment

`scheduledDeployments.updateProjectScheduledDeployment`

Update a scheduled deployment

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.scheduledDeployments.updateProjectScheduledDeployment({
	project_id: 'test',
	id: 'test',
	body: {
		scheduled_deployment: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   scheduled_deployment: {
>     frequency?: string,
>     at?: string,
>     weekday?: string,
>     day?: number,
>     month?: number,
>     year?: number,
>     schedule?: string,
>     copy_config_files?: boolean,
>     run_build_commands?: boolean,
>     use_build_cache?: boolean,
>     skip_if_not_changes?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `server` | `object \| null` | No | — |
| `start_revision` | `string \| null` | No | — |
| `end_revision` | `string \| null` | No | — |
| `frequency` | `string \| null` | No | — |
| `at` | `object \| null` | No | — |
| `next_deployment_at` | `string \| null` | No | — |
| `copy_config_files` | `boolean \| null` | No | — |
| `run_build_commands` | `boolean \| null` | No | — |
| `use_build_cache` | `boolean \| null` | No | — |
| `skip_project_files` | `boolean \| null` | No | — |
| `config_files_deployment` | `boolean \| null` | No | — |

> [accordion] server full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: null | string | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     passive?: boolean | null,
>     force_hidden_files?: boolean | null,
>     implicit?: boolean | null,
>     ignore_certificate_errors?: boolean | null,
>     tls_version?: string | null
>   }[] | null,
>   preferred_branch?: string | null,
>   last_revision?: string | null,
>   environment?: string | null,
>   transfer_order?: string | null
> } | null
> ```

> [accordion] at full type
>
> ```ts theme={null}
> {
>   day?: number | null,
>   month?: number | null,
>   year?: number | null,
>   hour?: number | null,
>   minute?: number | null
> } | null
> ```

***

## Security

### createSecurityApiKey

`security.createSecurityApiKey`

Create an API key

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.security.createSecurityApiKey({
	body: {
		api_key: { description: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   api_key: {
>     description: string,
>     read_only?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `api_key` | `string \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `description` | `string \| null` | No | — |
| `user_id` | `number \| null` | No | — |
| `device` | `string \| null` | No | — |
| `read_only` | `boolean \| null` | No | — |
| `html` | `string \| null` | No | — |

***

### deleteSecurityApiKey

`security.deleteSecurityApiKey`

Revoke an API key

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.security.deleteSecurityApiKey({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

The OpenAPI URL `/security/api_keys/{id}` contains the `{id}` path token, but its parameter list declares both identifier and id as path parameters. This implementation uses the URL's id field; confirm the intended identifier with DeployHQ.

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

## Server Groups

### createProjectServerGroup

`serverGroups.createProjectServerGroup`

Create a server group

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.serverGroups.createProjectServerGroup({
	project_id: 'test',
	body: {
		server_group: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server_group: {
>     name?: string,
>     branch?: string,
>     auto_deploy?: boolean,
>     email_notify_on?: string,
>     notification_email?: string,
>     transfer_order?: string,
>     environment?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `transfer_order` | `string \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   use_single_connection?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### deleteProjectServerGroup

`serverGroups.deleteProjectServerGroup`

Delete a server group

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.serverGroups.deleteProjectServerGroup({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectServerGroupById

`serverGroups.getProjectServerGroupById`

Get a server group

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.serverGroups.getProjectServerGroupById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `transfer_order` | `string \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   use_single_connection?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### listProjectServerGroups

`serverGroups.listProjectServerGroups`

List server groups

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.serverGroups.listProjectServerGroups({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: null | string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null,
>     use_single_connection?: boolean | null,
>     global_key_pair_id?: string | null
>   }[] | null,
>   preferred_branch?: string | null,
>   last_revision?: null | string | null,
>   environment?: string | null,
>   transfer_order?: string | null
> }[]
> ```

***

### replaceProjectServerGroup

`serverGroups.replaceProjectServerGroup`

Update a server group

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.serverGroups.replaceProjectServerGroup({
	project_id: 'test',
	id: 'test',
	body: {
		server_group: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server_group: {
>     name?: string,
>     branch?: string,
>     auto_deploy?: boolean,
>     email_notify_on?: string,
>     notification_email?: string,
>     transfer_order?: string,
>     environment?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `transfer_order` | `string \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   use_single_connection?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

### updateProjectServerGroup

`serverGroups.updateProjectServerGroup`

Update a server group

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.serverGroups.updateProjectServerGroup({
	project_id: 'test',
	id: 'test',
	body: {
		server_group: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server_group: {
>     name?: string,
>     branch?: string,
>     auto_deploy?: boolean,
>     email_notify_on?: string,
>     notification_email?: string,
>     transfer_order?: string,
>     environment?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `transfer_order` | `string \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null,
>   use_single_connection?: boolean | null,
>   global_key_pair_id?: string | null
> }[] | null
> ```

***

## Servers

### createProjectServer

`servers.createProjectServer`

Create a server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.servers.createProjectServer({
	project_id: 'test',
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

Send the connection fields for the chosen protocol\_type inside `server` (for SSH: hostname, username, port, use\_ssh\_keys or password), as listed in DeployHQ's [create a server guide](https://www.deployhq.com/support/api/servers/create-a-new-server). DeployHQ checks that the host is reachable and answers 422 when it is not.

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     protocol_type?: string,
>     server_path?: string,
>     email_notify_on?: string,
>     root_path?: string,
>     auto_deploy?: boolean,
>     notification_email?: string,
>     branch?: string,
>     environment?: string,
>     server_group_identifier?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number,
>     docker_image?: string,
>     docker_image_source?: string,
>     curated_template_id?: string,
>     commands?: string,
>     halt_on_error?: boolean
>   },
>   region?: string,
>   size?: string,
>   os_image?: string,
>   key_pair_identifier?: string,
>   hosted_website_attributes?: {
>     subdomain?: string,
>     spa_mode?: boolean,
>     subdirectory?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### deleteProjectServer

`servers.deleteProjectServer`

Delete a server

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.servers.deleteProjectServer({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectServerById

`servers.getProjectServerById`

View a server

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.servers.getProjectServerById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `static_hosting` | `object \| null` | No | — |
| `managed_vps` | `object \| null` | No | — |

> [accordion] static\_hosting full type
>
> ```ts theme={null}
> {
>   hosted_website_identifier?: string | null,
>   subdomain?: string | null,
>   url?: string | null,
>   spa_mode?: boolean | null,
>   status?: string | null,
>   active_deployment_uuid?: string | null
> } | null
> ```

> [accordion] managed\_vps full type
>
> ```ts theme={null}
> {
>   hosted_resource_identifier?: string | null,
>   status?: string | null,
>   ip_address?: string | null,
>   region?: string | null,
>   size?: string | null,
>   ssh_key?: {
>     identifier?: string | null,
>     title?: string | null,
>     fingerprint?: string | null
>   } | null
> } | null
> ```

***

### listProjectServers

`servers.listProjectServers`

List all servers

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.servers.listProjectServers({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: null | string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[]
> ```

***

### replaceProjectServer

`servers.replaceProjectServer`

Update a server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.servers.replaceProjectServer({
	project_id: 'test',
	id: 'test',
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     server_path?: string,
>     email_notify_on?: string,
>     root_path?: string,
>     auto_deploy?: boolean,
>     notification_email?: string,
>     branch?: string,
>     environment?: string,
>     server_group_identifier?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number,
>     docker_image?: string,
>     docker_image_source?: string,
>     curated_template_id?: string,
>     commands?: string,
>     halt_on_error?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### resetHostKeyProjectServer

`servers.resetHostKeyProjectServer`

Reset Host Key

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.servers.resetHostKeyProjectServer({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

### serverMetricsProjectServerServerMetric

`servers.serverMetricsProjectServerServerMetric`

Get server metrics

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.servers.serverMetricsProjectServerServerMetric({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `cpu` | `Record<string, JsonValue> \| null` | No | — |
| `memory` | `Record<string, JsonValue> \| null` | No | — |
| `disk` | `Record<string, JsonValue> \| null` | No | — |
| `uptime` | `string \| null` | No | — |
| `profile` | `Record<string, JsonValue> \| null` | No | — |

***

### updateProjectServer

`servers.updateProjectServer`

Update a server

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.servers.updateProjectServer({
	project_id: 'test',
	id: 'test',
	body: {
		server: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   server: {
>     hostname?: string,
>     username?: string,
>     password?: string,
>     port?: number,
>     passive?: boolean,
>     force_hidden_files?: boolean,
>     use_parallel_upload?: boolean,
>     implicit?: boolean,
>     ignore_certificate_errors?: boolean,
>     use_ssh_keys?: boolean,
>     unlink_before_upload?: boolean,
>     use_accelerated_transfer?: boolean,
>     bucket_name?: string,
>     access_key_id?: string,
>     secret_access_key?: string,
>     custom_endpoint?: string,
>     api_key?: string,
>     region?: string,
>     container_name?: string,
>     personal_access_token?: string,
>     droplet_id?: string,
>     droplet_name?: string,
>     command?: string,
>     timeout?: number,
>     store_url?: string,
>     access_token?: string,
>     theme_name?: string,
>     site_id?: string,
>     app_name?: string,
>     api_key_heroku?: string,
>     application_name?: string,
>     environment_name?: string,
>     name?: string,
>     server_path?: string,
>     email_notify_on?: string,
>     root_path?: string,
>     auto_deploy?: boolean,
>     notification_email?: string,
>     branch?: string,
>     environment?: string,
>     server_group_identifier?: string,
>     agent_id?: string,
>     enabled?: boolean,
>     global_key_pair_id?: string,
>     atomic?: boolean,
>     atomic_strategy?: string,
>     atomic_retention?: number,
>     docker_image?: string,
>     docker_image_source?: string,
>     curated_template_id?: string,
>     commands?: string,
>     halt_on_error?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `protocol_type` | `string \| null` | No | — |
| `server_path` | `string \| null` | No | — |
| `last_revision` | `null \| string \| null` | No | — |
| `preferred_branch` | `string \| null` | No | — |
| `branch` | `string \| null` | No | — |
| `notify_email` | `string \| null` | No | — |
| `server_group_identifier` | `null \| string \| null` | No | — |
| `auto_deploy` | `boolean \| null` | No | — |
| `environment` | `string \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |
| `agent` | `null \| string \| null` | No | — |
| `atomic` | `boolean \| null` | No | — |
| `atomic_strategy` | `string \| null` | No | — |
| `atomic_retention` | `number \| null` | No | — |
| `use_compression` | `boolean \| null` | No | — |
| `use_accelerated_transfer` | `boolean \| null` | No | — |
| `use_parallel_upload` | `boolean \| null` | No | — |
| `root_path` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `created_at` | `string \| null` | No | — |
| `updated_at` | `string \| null` | No | — |
| `connection_checked_at` | `null \| string \| null` | No | — |
| `connection_error_message` | `null \| string \| null` | No | — |
| `hostname` | `string \| null` | No | — |
| `username` | `string \| null` | No | — |
| `port` | `string \| number \| null` | No | — |
| `use_ssh_keys` | `boolean \| null` | No | — |
| `host_key` | `string \| null` | No | — |
| `unlink_before_upload` | `boolean \| null` | No | — |

***

## Signup

### createSignup

`signup.createSignup`

Create a new DeployHQ account

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.signup.createSignup({
	body: { email: 'test', password: 'test', terms_accepted: false },
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

This public operation posts to `https://api.deployhq.com/api/v1/signup`, not an account subdomain. The [signup guide](https://www.deployhq.com/support/api/signup) shows `https://deployhq.com`, which redirects to a 404. The API key works only after the new account's email address is verified.

> [accordion] body full type
>
> ```ts theme={null}
> {
>   email: string,
>   password: string,
>   terms_accepted: boolean,
>   account_name?: string,
>   full_name?: string,
>   package?: string,
>   coupon?: string,
>   newsletter_opt_in?: boolean,
>   signup_source?: string,
>   client?: string,
>   utm_params?: Record<string, JsonValue>
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `account` | `Record<string, JsonValue> \| null` | No | — |
| `api_key` | `string \| null` | No | — |
| `ssh_public_key` | `Record<string, JsonValue> \| null` | No | — |
| `oauth_urls` | `Record<string, JsonValue> \| null` | No | — |
| `mcp_config` | `Record<string, JsonValue> \| null` | No | — |
| `email_verified` | `boolean \| null` | No | — |
| `client` | `string \| null` | No | — |

***

## Ssh Commands

### createProjectCommand

`sshCommands.createProjectCommand`

Create an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.createProjectCommand({
	project_id: 'test',
	body: {
		command: {
			description: 'test',
			command: 'test',
			timing: 'test',
			timeout: 1,
		},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description: string,
>     command: string,
>     halt_on_error?: boolean,
>     timing: string,
>     timeout: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### createProjectSshCommand

`sshCommands.createProjectSshCommand`

Create an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.createProjectSshCommand({
	project_id: 'test',
	body: {
		command: {
			description: 'test',
			command: 'test',
			timing: 'test',
			timeout: 1,
		},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description: string,
>     command: string,
>     halt_on_error?: boolean,
>     timing: string,
>     timeout: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### deleteProjectCommand

`sshCommands.deleteProjectCommand`

Delete an SSH command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.sshCommands.deleteProjectCommand({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### deleteProjectSshCommand

`sshCommands.deleteProjectSshCommand`

Delete an SSH command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.sshCommands.deleteProjectSshCommand({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getProjectCommandById

`sshCommands.getProjectCommandById`

Get an SSH command

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshCommands.getProjectCommandById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### getProjectSshCommandById

`sshCommands.getProjectSshCommandById`

Get an SSH command

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshCommands.getProjectSshCommandById({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### linkGlobalProjectCommandLinkGlobal

`sshCommands.linkGlobalProjectCommandLinkGlobal`

Link a global SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.linkGlobalProjectCommandLinkGlobal({ project_id: 'test', command_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `command_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### listProjectCommands

`sshCommands.listProjectCommands`

List SSH commands

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshCommands.listProjectCommands({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   cback?: string | null,
>   position?: number | null,
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: null | string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null
>   }[] | null,
>   timing?: string | null,
>   timeout?: number | null,
>   enabled?: boolean | null
> }[]
> ```

***

### listProjectSshCommands

`sshCommands.listProjectSshCommands`

List SSH commands

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshCommands.listProjectSshCommands({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   cback?: string | null,
>   position?: number | null,
>   description?: string | null,
>   command?: string | null,
>   halt_on_error?: boolean | null,
>   servers?: {
>     id?: number | null,
>     identifier?: string | null,
>     name?: string | null,
>     protocol_type?: string | null,
>     server_path?: string | null,
>     last_revision?: string | null,
>     preferred_branch?: string | null,
>     branch?: string | null,
>     notify_email?: string | null,
>     server_group_identifier?: null | string | null,
>     auto_deploy?: boolean | null,
>     environment?: string | null,
>     enabled?: boolean | null,
>     agent?: null | string | null,
>     atomic?: boolean | null,
>     atomic_strategy?: string | null,
>     atomic_retention?: number | null,
>     use_compression?: boolean | null,
>     use_accelerated_transfer?: boolean | null,
>     use_parallel_upload?: boolean | null,
>     root_path?: string | null,
>     position?: number | null,
>     created_at?: string | null,
>     updated_at?: string | null,
>     connection_checked_at?: null | string | null,
>     connection_error_message?: null | string | null,
>     hostname?: string | null,
>     username?: string | null,
>     port?: string | number | null,
>     use_ssh_keys?: boolean | null,
>     host_key?: string | null,
>     unlink_before_upload?: boolean | null
>   }[] | null,
>   timing?: string | null,
>   timeout?: number | null,
>   enabled?: boolean | null
> }[]
> ```

***

### replaceProjectCommand

`sshCommands.replaceProjectCommand`

Update an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.replaceProjectCommand({
	project_id: 'test',
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timing?: string,
>     timeout?: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### replaceProjectSshCommand

`sshCommands.replaceProjectSshCommand`

Update an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.replaceProjectSshCommand({
	project_id: 'test',
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timing?: string,
>     timeout?: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### unlinkGlobalProjectCommandUnlinkGlobal

`sshCommands.unlinkGlobalProjectCommandUnlinkGlobal`

Unlink a global SSH command

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.sshCommands.unlinkGlobalProjectCommandUnlinkGlobal({ project_id: 'test', command_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `command_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### updateProjectCommand

`sshCommands.updateProjectCommand`

Update an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.updateProjectCommand({
	project_id: 'test',
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timing?: string,
>     timeout?: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

### updateProjectSshCommand

`sshCommands.updateProjectSshCommand`

Update an SSH command

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshCommands.updateProjectSshCommand({
	project_id: 'test',
	id: 'test',
	body: {
		command: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   command: {
>     cback?: string,
>     position?: number,
>     description?: string,
>     command?: string,
>     halt_on_error?: boolean,
>     timing?: string,
>     timeout?: number,
>     enabled?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `cback` | `string \| null` | No | — |
| `position` | `number \| null` | No | — |
| `description` | `string \| null` | No | — |
| `command` | `string \| null` | No | — |
| `halt_on_error` | `boolean \| null` | No | — |
| `servers` | `object[] \| null` | No | — |
| `timing` | `string \| null` | No | — |
| `timeout` | `number \| null` | No | — |
| `enabled` | `boolean \| null` | No | — |

> [accordion] servers full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   name?: string | null,
>   protocol_type?: string | null,
>   server_path?: string | null,
>   last_revision?: string | null,
>   preferred_branch?: string | null,
>   branch?: string | null,
>   notify_email?: string | null,
>   server_group_identifier?: null | string | null,
>   auto_deploy?: boolean | null,
>   environment?: string | null,
>   enabled?: boolean | null,
>   agent?: null | string | null,
>   atomic?: boolean | null,
>   atomic_strategy?: string | null,
>   atomic_retention?: number | null,
>   use_compression?: boolean | null,
>   use_accelerated_transfer?: boolean | null,
>   use_parallel_upload?: boolean | null,
>   root_path?: string | null,
>   position?: number | null,
>   created_at?: string | null,
>   updated_at?: string | null,
>   connection_checked_at?: null | string | null,
>   connection_error_message?: null | string | null,
>   hostname?: string | null,
>   username?: string | null,
>   port?: string | number | null,
>   use_ssh_keys?: boolean | null,
>   host_key?: string | null,
>   unlink_before_upload?: boolean | null
> }[] | null
> ```

***

## Ssh Keys

### createSshKey

`sshKeys.createSshKey`

Create an SSH key

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.sshKeys.createSshKey({
	body: {
		key_pair: { title: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   key_pair: {
>     title: string,
>     key_type?: string,
>     use_custom_key?: boolean,
>     custom_private_key?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `title` | `string \| null` | No | — |
| `public_key` | `string \| null` | No | — |
| `key_type` | `string \| null` | No | — |
| `fingerprint` | `string \| null` | No | — |
| `account` | `string \| null` | No | — |

***

### deleteSshKey

`sshKeys.deleteSshKey`

Delete an SSH key

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.sshKeys.deleteSshKey({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### downloadPrivateKeySshKeyDownloadPrivateKey

`sshKeys.downloadPrivateKeySshKeyDownloadPrivateKey`

Download private key

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshKeys.downloadPrivateKeySshKeyDownloadPrivateKey({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output:** `string`

***

### listSshKeys

`sshKeys.listSshKeys`

List all SSH keys

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.sshKeys.listSshKeys({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   title?: string | null,
>   public_key?: string | null,
>   key_type?: string | null,
>   fingerprint?: string | null,
>   account?: string | null
> }[]
> ```

***

## Teams

### createTeam

`teams.createTeam`

Create a team

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.teams.createTeam({
	body: {
		team: { name: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   team: {
>     name: string,
>     is_admin?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean,
>     user_ids?: number[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `is_admin` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |
| `members` | `object[] \| null` | No | — |
| `project_assignments` | `object[] \| null` | No | — |

> [accordion] members full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   first_name?: string | null,
>   last_name?: string | null,
>   email_address?: string | null
> }[] | null
> ```

> [accordion] project\_assignments full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   identifier?: string | null,
>   can_deploy_all?: boolean | null,
>   can_update_config?: boolean | null,
>   can_manage_config_files?: boolean | null
> }[] | null
> ```

***

### deleteTeam

`teams.deleteTeam`

Delete a team

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.teams.deleteTeam({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getTeam

`teams.getTeam`

View a team

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.teams.getTeam({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `is_admin` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |
| `members` | `object[] \| null` | No | — |
| `project_assignments` | `object[] \| null` | No | — |

> [accordion] members full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   first_name?: string | null,
>   last_name?: string | null,
>   email_address?: string | null
> }[] | null
> ```

> [accordion] project\_assignments full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   identifier?: string | null,
>   can_deploy_all?: boolean | null,
>   can_update_config?: boolean | null,
>   can_manage_config_files?: boolean | null
> }[] | null
> ```

***

### listTeams

`teams.listTeams`

List teams

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.teams.listTeams({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   name?: string | null,
>   is_admin?: boolean | null,
>   can_manage_users?: boolean | null,
>   can_manage_billing?: boolean | null,
>   can_manage_agents?: boolean | null,
>   can_create_projects?: boolean | null,
>   all_projects_allowed?: boolean | null,
>   members?: {
>     id?: number | null,
>     identifier?: string | null,
>     first_name?: string | null,
>     last_name?: string | null,
>     email_address?: string | null
>   }[] | null,
>   project_assignments?: {
>     name?: string | null,
>     identifier?: string | null,
>     can_deploy_all?: boolean | null,
>     can_update_config?: boolean | null,
>     can_manage_config_files?: boolean | null
>   }[] | null
> }[]
> ```

***

### replaceTeam

`teams.replaceTeam`

Update a team

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.teams.replaceTeam({
	id: 'test',
	body: {
		team: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   team: {
>     name?: string,
>     is_admin?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean,
>     user_ids?: number[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `is_admin` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |
| `members` | `object[] \| null` | No | — |
| `project_assignments` | `object[] \| null` | No | — |

> [accordion] members full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   first_name?: string | null,
>   last_name?: string | null,
>   email_address?: string | null
> }[] | null
> ```

> [accordion] project\_assignments full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   identifier?: string | null,
>   can_deploy_all?: boolean | null,
>   can_update_config?: boolean | null,
>   can_manage_config_files?: boolean | null
> }[] | null
> ```

***

### updateTeam

`teams.updateTeam`

Update a team

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.teams.updateTeam({
	id: 'test',
	body: {
		team: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   team: {
>     name?: string,
>     is_admin?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean,
>     user_ids?: number[]
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `is_admin` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |
| `members` | `object[] \| null` | No | — |
| `project_assignments` | `object[] \| null` | No | — |

> [accordion] members full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   identifier?: string | null,
>   first_name?: string | null,
>   last_name?: string | null,
>   email_address?: string | null
> }[] | null
> ```

> [accordion] project\_assignments full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   identifier?: string | null,
>   can_deploy_all?: boolean | null,
>   can_update_config?: boolean | null,
>   can_manage_config_files?: boolean | null
> }[] | null
> ```

***

## Templates

### createTemplate

`templates.createTemplate`

Create a template

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.templates.createTemplate({
	body: {
		template: { name: 'sample', project_id: '00000000-0000-0000-0000-000000000000' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

Pass the source project's `identifier` (a UUID) as template.project\_id. Without a project\_id DeployHQ answers 500 (checked 11-13).

> [accordion] body full type
>
> ```ts theme={null}
> {
>   template: {
>     name?: string,
>     notification_email?: string,
>     email_notify?: boolean,
>     project_id?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `description` | `string \| null` | No | — |

***

### deleteTemplate

`templates.deleteTemplate`

Delete a template

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.templates.deleteTemplate({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### listTemplates

`templates.listTemplates`

List templates

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.templates.listTemplates({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   name?: string | null,
>   permalink?: string | null,
>   description?: string | null
> }[]
> ```

***

### publicTemplatesTemplate

`templates.publicTemplatesTemplate`

List public templates

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.templates.publicTemplatesTemplate({ framework_type: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `framework_type` | `string` | No | — |

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   id?: number | null,
>   permalink?: string | null,
>   name?: string | null,
>   description?: string | null,
>   framework_type?: string | null,
>   version?: string | null,
>   public?: boolean | null
> }[]
> ```

***

### replaceTemplate

`templates.replaceTemplate`

Update a template

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.templates.replaceTemplate({
	id: 'test',
	body: {
		template: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   template: {
>     name?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `description` | `string \| null` | No | — |

***

### showPublicTemplateTemplatePublic

`templates.showPublicTemplateTemplatePublic`

Get a public template

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.templates.showPublicTemplateTemplatePublic({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

The OpenAPI URL `/templates/{id}/public/{id}` repeats the `{id}` path token but defines a single id parameter. The same value is used for both URL occurrences; confirm with DeployHQ whether distinct identifiers are intended.

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `name` | `string \| null` | No | — |
| `description` | `string \| null` | No | — |
| `framework_type` | `string \| null` | No | — |
| `version` | `string \| null` | No | — |
| `features` | `string[] \| null` | No | — |
| `build_commands` | `object[] \| null` | No | — |
| `ssh_commands` | `object[] \| null` | No | — |
| `excluded_files` | `string[] \| null` | No | — |
| `config_files` | `object[] \| null` | No | — |

> [accordion] build\_commands full type
>
> ```ts theme={null}
> {
>   command?: string | null,
>   description?: string | null
> }[] | null
> ```

> [accordion] ssh\_commands full type
>
> ```ts theme={null}
> {
>   command?: string | null,
>   description?: string | null
> }[] | null
> ```

> [accordion] config\_files full type
>
> ```ts theme={null}
> {
>   path?: string | null,
>   body?: string | null
> }[] | null
> ```

***

### updateTemplate

`templates.updateTemplate`

Update a template

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.templates.updateTemplate({
	id: 'test',
	body: {
		template: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   template: {
>     name?: string,
>     description?: string
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `name` | `string \| null` | No | — |
| `permalink` | `string \| null` | No | — |
| `description` | `string \| null` | No | — |

***

## Test Access

### createProjectServerTestAccess

`testAccess.createProjectServerTestAccess`

Run test access

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.testAccess.createProjectServerTestAccess({ project_id: 'test', server_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `server_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string` | Yes | — |
| `status` | `string` | Yes | — |
| `created_at` | `string` | Yes | — |

***

### createProjectTestAccess

`testAccess.createProjectTestAccess`

Run test access

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.testAccess.createProjectTestAccess({ project_id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string` | Yes | — |
| `status` | `string` | Yes | — |
| `created_at` | `string` | Yes | — |

***

### getProjectTestAccess

`testAccess.getProjectTestAccess`

Get test access results

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.testAccess.getProjectTestAccess({ project_id: 'test', id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `string` | Yes | — |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `identifier` | `string` | Yes | — |
| `status` | `string` | Yes | — |
| `created_at` | `string` | Yes | — |
| `completed_at` | `string \| null` | No | — |
| `results` | `object \| null` | No | — |

> [accordion] results full type
>
> ```ts theme={null}
> {
>   repository?: {
>     status: string,
>     message?: string | null
>   } | null,
>   servers?: {
>     name: string,
>     identifier: string,
>     status: string,
>     message?: string | null
>   }[] | null
> } | null
> ```

***

## Users

### createUser

`users.createUser`

Invite a user

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.users.createUser({
	body: {
		user: { first_name: 'test', email_address: 'test' },
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   user: {
>     first_name: string,
>     last_name?: string,
>     email_address: string,
>     time_zone?: string,
>     account_administrator?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `first_name` | `string \| null` | No | — |
| `last_name` | `string \| null` | No | — |
| `email_address` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `account_administrator` | `boolean \| null` | No | — |
| `activated` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |

***

### deleteUser

`users.deleteUser`

Remove a user

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.users.deleteUser({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### getUser

`users.getUser`

View a user

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.users.getUser({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `first_name` | `string \| null` | No | — |
| `last_name` | `string \| null` | No | — |
| `email_address` | `string \| null` | No | — |
| `time_zone` | `null \| string \| null` | No | — |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `account_administrator` | `boolean \| null` | No | — |
| `activated` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |

***

### listUsers

`users.listUsers`

List users

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.users.listUsers({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   first_name?: string | null,
>   last_name?: string | null,
>   email_address?: string | null,
>   time_zone?: null | string | null,
>   id?: number | null,
>   identifier?: string | null,
>   account_administrator?: boolean | null,
>   activated?: boolean | null,
>   can_manage_users?: boolean | null,
>   can_manage_billing?: boolean | null,
>   can_create_projects?: boolean | null,
>   can_manage_agents?: boolean | null,
>   all_projects_allowed?: boolean | null
> }[]
> ```

***

### replaceUser

`users.replaceUser`

Update a user

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.users.replaceUser({
	id: 'test',
	body: {
		user: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   user: {
>     first_name?: string,
>     last_name?: string,
>     email_address?: string,
>     time_zone?: string,
>     account_administrator?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `first_name` | `string \| null` | No | — |
| `last_name` | `string \| null` | No | — |
| `email_address` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `account_administrator` | `boolean \| null` | No | — |
| `activated` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |

***

### resendInvitationUserResendInvitation

`users.resendInvitationUserResendInvitation`

Resend invitation

**Risk:** `destructive`

```ts theme={null}
await corsair.deployhq.api.users.resendInvitationUserResendInvitation({ id: 'test' });
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `status` | `string \| null` | No | — |

***

### updateUser

`users.updateUser`

Update a user

**Risk:** `write`

```ts theme={null}
await corsair.deployhq.api.users.updateUser({
	id: 'test',
	body: {
		user: {},
	},
});
```

**Input**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `string` | Yes | — |
| `body` | `object` | Yes | — |

> [accordion] body full type
>
> ```ts theme={null}
> {
>   user: {
>     first_name?: string,
>     last_name?: string,
>     email_address?: string,
>     time_zone?: string,
>     account_administrator?: boolean,
>     can_manage_users?: boolean,
>     can_manage_billing?: boolean,
>     can_manage_agents?: boolean,
>     can_create_projects?: boolean,
>     all_projects_allowed?: boolean
>   }
> }
> ```

**Output**

| Name | Type | Required | Description |
| - | - | - | - |
| `id` | `number \| null` | No | — |
| `identifier` | `string \| null` | No | — |
| `first_name` | `string \| null` | No | — |
| `last_name` | `string \| null` | No | — |
| `email_address` | `string \| null` | No | — |
| `time_zone` | `string \| null` | No | — |
| `account_administrator` | `boolean \| null` | No | — |
| `activated` | `boolean \| null` | No | — |
| `can_manage_users` | `boolean \| null` | No | — |
| `can_manage_billing` | `boolean \| null` | No | — |
| `can_create_projects` | `boolean \| null` | No | — |
| `can_manage_agents` | `boolean \| null` | No | — |
| `all_projects_allowed` | `boolean \| null` | No | — |

***

## Zones

### listZones

`zones.listZones`

List available deployment zones

**Risk:** `read`

```ts theme={null}
await corsair.deployhq.api.zones.listZones({});
```

**Input:** *empty object*

**Output:** `object[]`

> [accordion] Output full type
>
> ```ts theme={null}
> {
>   identifier?: string | null,
>   description?: string | null
> }[]
> ```

***


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