Clients

Replace a client's servers

Replaces the client's required and optional saved-server attachments without round-tripping the whole config. Composed server-side from the client's current config, so every other setting is preserved — and expectedConfigId is required so two concurrent server replacements cannot silently lose one.

post/projects/{projectId}/clients/{client}/servers

Path parameters

projectIdstring required

ID of the hosted project that contains the server.

clientstring required

Client name or ID. A name is matched case-insensitively and must be unique in the project; an ambiguous name is refused with 409 CONFLICT listing the candidate ids rather than resolved to one of them.

Request body

serverIdsstring[] required
optionalServerIdsstring[]

Attached but not required to connect.

expectedConfigIdstring required

The configId you last read for this client. ALWAYS required here: this operation rewrites the config, and without the token a write composed from a stale read silently reverts whatever landed in between. A mismatch is 409 CONFLICT carrying details.currentConfigId.

Response

The updated client settings.

versionIdstring

Saved client history entry read together with config. Absent on older clients or deployments.

versionNumberinteger

Client configuration version, numbered from 1 in saved edit order.

idstring required
namestring required
configIdstring

The concurrency token — see Client.configId.

configobject required

Client config v2 DTO. Opaque object; shape mirrors the inspector's client editor.

ownerScopeobject nullable required
hasComputerboolean
createdAtnumber

Unix epoch milliseconds.

updatedAtnumber

Unix epoch milliseconds.

Changes