Replace profile configuration
PUT /api/v1/profiles/{id}
Replaces the profile config JSON for the latest revision and optionally updates raw Nix overrides or schema version.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Profile identifier.
Request Body required
Section titled “Request Body required ”object
Full replacement config JSON object for the latest profile revision.
object
Optional convenience override for the packages config field.
object
object
object
Examples
Replace the full config object
{ "config": { "packages": [ "vim", "curl" ], "kernel": { "attr": "linux_6_19", "source_override": { "enabled": true, "url": "https://github.com/example/linux.git", "ref": "refs/heads/main", "rev": "abcd1234abcd1234abcd1234abcd1234abcd1234" } }, "openclaw_microvm_enabled": true, "custom_banner": "Production profile" }, "raw_nix": "{ pkgs, ... }: { services.openssh.enable = true; }", "config_schema_version": 2}Responses
Section titled “ Responses ”Updated profile configuration.
object
object
Profile identifier.
Primary fleet identifier when one is available.
All fleet identifiers assigned to the profile.
Human-readable name of the primary fleet.
Profile name.
Optional profile description.
Latest known profile revision.
Hash of the latest configuration revision when available.
UTC timestamp string returned by the current API implementation.
Current configuration schema version for the latest revision.
Canonical JSON configuration object for the latest profile revision.
object
Parsed package list from the profile configuration.
object
Selected kernel attribute.
object
object
Whether the OpenClaw MicroVM integration is enabled.
Raw Nix overrides stored with the latest profile revision.
Whether the mutation created a new profile revision.
Examples
Replaced profile config with a new revision
{ "created_new_revision": true, "profile": { "id": "a8ce71df-4c80-4d45-919a-bfd474a4d724", "fleet_id": "fleet-primary", "fleet_ids": [ "fleet-primary", "fleet-secondary" ], "fleet_name": "Primary Fleet, Secondary Fleet", "name": "Production Base", "description": "Base image for production devices.", "latest_revision": 13, "config_hash": "e6fbc4d0a2d18417d77d1815f6d9f466c52fd208dafeb807dcad1e9c8cdf3cf9", "config_schema_version": 2, "created_at": "2026-03-18 12:00:00", "config": { "packages": [ "vim", "curl" ], "kernel": { "attr": "linux_6_19", "source_override": { "enabled": true, "url": "https://github.com/example/linux.git", "ref": "refs/heads/main", "rev": "abcd1234abcd1234abcd1234abcd1234abcd1234" } }, "openclaw_microvm_enabled": true, "custom_banner": "Production profile" }, "packages": [ "vim", "curl" ], "kernel": { "attr": "linux_6_19", "source_override": { "enabled": true, "url": "https://github.com/example/linux.git", "ref": "refs/heads/main", "rev": "abcd1234abcd1234abcd1234abcd1234abcd1234", "patches": [] } }, "openclaw_microvm_enabled": true, "raw_nix": "{ pkgs, ... }: { services.openssh.enable = true; }" }}Invalid profile mutation request.
object
Missing or invalid API key.
object
The authenticated user can view the profile but cannot modify it.
object
Profile not found or not visible to the authenticated user.