Promote an unnamed environment
Give an UNNAMED (ad-hoc) environment a name, promoting it IN PLACE — the same environment, now a permanent entry in the project’s list, with the same id every existing run still points at.
The ONLY promotion path. PATCH /environments/{environmentId} renames an already-named environment and is admin-gated; this is member-gated and refuses a row that already has a name (409). The platform keeps them apart on purpose: routing promotion through the rename would either open it to members or leave ad-hoc rows unnameable.
Promotion also drops the content fingerprint, because a named environment is mutable: keeping it would let a later identical composition deduplicate onto a row that has since been edited into something else.
Authorizations
MCPJam API key (sk_…). Create one at Settings → API keys. Guest sessions cannot use the API, and API keys cannot manage other API keys.
Path Parameters
ID of the hosted project that contains the server.
Project environment ID, as returned by the project's environment list.
Body
Response
The promoted environment.
A project environment: a named, live-editable execution bundle that eval suites and journeys run against.
Unique among the project's live (non-archived) environments.
The host this environment runs against.
Optimistic-concurrency counter. Pass this back as expectedRevision on the next write; if it no longer matches, the write is rejected with 409 instead of overwriting a concurrent edit.
Archived environments cannot be edited or launched until restored.
Unix epoch milliseconds.
Unix epoch milliseconds.
Present only when the environment pins a standalone server group; otherwise the host config's own servers apply.
The environment's model override. ABSENT means the environment INHERITS the model pinned on its host — not that it has no model. Resolve the environment and read effectiveModelId to learn what will actually run.
An explicit pinned skill selection. Cannot be empty — clear the field instead (send null on update) to mean "no pinned skills".
Pinned plugin VERSION IDs. Narrow by design: the plugin must be installed and enabled, the version must be ready, at most one version per plugin may be pinned, and none of its skills may carry supporting files. Not a general-purpose plugin list.
Sandbox-image pin: a project-shared image (see the images endpoints) that eval runs in this environment boot a fresh sandbox from. Absent when unpinned.
1.*\S.*Unix epoch milliseconds. Present only when archived.

