---
title: "Update Server"
method: PATCH
path: "/api/v1/servers/{id}"
tags: ["Servers"]
---

# Update Server

`PATCH /api/v1/servers/{id}`

Update a server. Uses JSON patch. Note that some fields are not patchable.

## Path parameters

- `id` string, int64, required

## Request body

- ServerJsonPatchDocument
  - `operations` ServerOperation[], nullable
    - `operationType` 0 | 1 | 2 | 3 | 4 | 5 | 6
    - `path` string, nullable
    - `op` string, nullable
    - `from` string, nullable
    - `value` unknown
  - `contractResolver` IContractResolver

## Response `200`

OK

- Server
  - `id` string, int64
  - `name` string, nullable
  - `icon` string, nullable
  - `commandsWhitelist` boolean
  - `xpWhitelist` boolean
  - `commandsChannels` string[], nullable
  - `xpChannels` string[], nullable
  - `messageXp` integer
  - `levelFormula` string, nullable
  - `levelMessageEnabled` boolean, nullable
  - `levelMessage` string, nullable
  - `levelMessageLocation` string, int64
  - `voiceXp` integer
  - `deleteOnLeave` boolean, nullable
  - `economy` boolean
  - `currencySymbol` string, nullable
  - `levelCurrency` integer
  - `startingCurrency` integer
  - `currencyTransfer` boolean, nullable
  - `public` boolean, nullable
  - `crateError` boolean, nullable
  - `shop` boolean
  - `shopLogChannel` string, int64
  - `aboutText` string, nullable
  - `currencyTransferMin` integer
  - `currencyTransferPing` boolean, nullable
  - `economyGames` boolean, nullable
  - `hideCurrency` boolean
  - `hideMessages` boolean
  - `hideVoiceMinutes` boolean
  - `hideRoleInfo` boolean
  - `crates` Crate[], nullable
    - `id` integer
    - `serverId` string, int64
    - `name` string, nullable
    - `criteria` integer
    - `criteriaCount` integer
    - `channels` string[], nullable
    - `xp` integer
    - `duration` integer
    - `criteriaProgress` integer
    - `dropTime` string, date-time
    - `announcementChannel` string, int64
    - `announcementMessage` string, nullable
    - `color` integer
    - `maxRedeemers` integer
    - `pingHere` boolean
    - `redeemers` string[], nullable
    - `cooldown` integer
    - `imageUrl` string, nullable
    - `reaction` boolean
    - `currency` integer
    - `dropMessage` string, int64
    - `dropNow` boolean
    - `showRedeems` boolean
    - `pingRoles` string[], nullable
    - `server` Server — recursive
  - `roles` Role[], nullable
    - `id` string, int64
    - `serverId` string, int64
    - `level` integer
    - `xpMultiplier` number, float
    - `levelMessage` string, nullable
    - `stack` boolean
    - `stackGroup` string, nullable
    - `dependencies` string[], nullable
  - `shops` Shop[], nullable
    - `serverId` string, int64
    - `id` string, uuid
    - `name` string, nullable
    - `price` integer
    - `description` string, nullable
    - `reward` string, nullable
    - `imageUrl` string, nullable
    - `bgUrl` string, nullable

---

[API](https://skmtc.dev/engau/apis/engauge-web.md) · [All operations](https://skmtc.dev/engau/apis/engauge-web/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/engau/engauge-web/revisions/b1389098761a/schema)
