---
title: "Update deploy config"
method: PATCH
path: "/servers/{server_id}/deploy_config"
tags: ["Servers"]
---

# Update deploy config

`PATCH /servers/{server_id}/deploy_config`

## Path parameters

- `server_id` string, required

## Request body

- object
  - `data` object, required
    - `id` string
    - `type` 'deploy_config', required
    - `attributes` object
      - `hostname` string, nullable
      - `operating_system` 'centos_7_4_x64' | 'centos_8_x64' | 'debian_10' | 'debian_11' | 'debian_12' | 'ipxe' | 'rhel8' | 'rockylinux_8' | 'ubuntu22_ml_in_a_box' | 'ubuntu24_ml_in_a_box' | 'ubuntu_20_04_x64_lts' | 'ubuntu_22_04_x64_lts' | 'ubuntu_24_04_x64_lts' | 'windows_2022_std' | 'windows_server_2019_std_v1', nullable
      - `raid` 'raid-0' | 'raid-1', nullable — RAID mode for the server. Set to 'raid-0' for RAID 0, 'raid-1' for RAID 1, or omit/null for no RAID configuration
      - `disk_layout` object[], nullable
        - `count` integer, required
        - `role` 'os' | 'storage' | 'raw', required
        - `raid_level` 'raid-0' | 'raid-1', nullable
        - `filesystem` 'ext4', nullable
        - `mount_point` string, nullable
      - `user_data` string, nullable — User data to configure the server
      - `ssh_keys` string[], nullable
      - `ipxe_url` string, nullable — URL where iPXE script is stored on, necessary for custom image deployments. This attribute is required when operating system iPXE is selected.
      - `ipxe` string, nullable — URL where the iPXE script is stored, or the iPXE script encoded in base64. This attribute is required when the iPXE operating system is selected. Replaces the deprecated 'ipxe_url'.
      - `persistent_netboot` boolean — Keep network boot enabled so the server iPXE-boots on every reboot instead of booting from disk. Only supported with the 'ipxe' operating system.
      - `public_network` boolean, nullable — Set to 'true' to attach the server onto a public network. Requires 'public_network_id'. Available only when the public network feature is enabled for the server's location.
      - `public_network_id` string, nullable — ID of a customer public network to attach the server onto. Requires 'public_network' to be 'true'. The public network must belong to the same project and be in the same location as the server, and must have at least one free IP address. This public network configuration is saved to the deploy config and inherited by future reinstalls until changed. Available only when the public network feature is enabled for the server's location.

## Response `200`

Success

## Other responses

- `403` — Forbidden
- `422` — Unprocessable Entity

## Changes

> 29 revisions in range; 20 could not be searched.

- **2026-07-31** `795dfc010f2a` — 3 warning, 3 info
  - removed the request property `attributes/partitions` (media type: application/json)
  - removed the request property `attributes/partitions` (media type: application/vnd.api+json)
  - removed the optional property `data/attributes/partitions` from the response with the `200` status
  - added the new optional request property `attributes/persistent_netboot` (media type: application/json)
  - …2 more

[Change history](https://skmtc.dev/latitude/apis/latitude-sh-api/changes/servers/:server_id/deploy_config/patch.md)

---

[API](https://skmtc.dev/latitude/apis/latitude-sh-api.md) · [All operations](https://skmtc.dev/latitude/apis/latitude-sh-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/latitude/latitude-sh-api/revisions/c80535f26dd7/schema)
