Skip to content

Manage environment display

Every product (Flags, Config, Logging) renders environments as columns. The order and visibility of those columns comes from two layers: an account-level default that admins control, and a personal override each user can set for themselves.

Prerequisites: Any user can manage their own personal view. OWNER+ADMIN to change the account default.

The two layers

Account level

account.settings.environment_order — an ordered list of standard environment keys. This is the default column ordering every user sees.

json
{
  "environment_order": ["development", "staging", "production"]
}

Only OWNER and ADMIN can write this. Ad-hoc environments are not in this list — they're hidden from the default by definition.

User level

account_user.settings.environment_order — a per-user override. Can include both standard and ad-hoc environments. Both presence (visibility) and order are controlled here.

json
{
  "environment_order": ["mike-laptop", "staging", "production"]
}

A user with no personal override sees the account default. A user with a personal override sees exactly the environments listed, in the order listed.

Personal column ordering

Drag-to-reorder in any product grid. The reorder writes only to your account_user.settings.environment_order; nobody else sees the change.

Via the API:

bash
curl -X PUT https://app.smplkit.com/api/v1/users/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "environment_order": ["staging", "production", "mike-laptop"]
  }'

This replaces the entire user settings object — fetch first if you have other settings keys to preserve:

bash
curl https://app.smplkit.com/api/v1/users/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY"

Show or hide environments in your view

To add an ad-hoc environment to your view, add it to your personal environment_order. To hide a standard environment that you don't care about, remove it from your personal list.

bash
# Show mike-laptop, hide development
curl -X PUT https://app.smplkit.com/api/v1/users/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "environment_order": ["mike-laptop", "staging", "production"]
  }'

Removing your personal override entirely (setting environment_order to null or removing the key) returns you to the account default.

Account-level default ordering

Setting the account-wide default — the columns every user sees unless they've personalized — is admin-only.

bash
curl -X PUT https://app.smplkit.com/api/v1/accounts/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "environment_order": ["development", "staging", "production"]
  }'

This replaces the entire account settings object. Same caveat: fetch first to preserve other keys.

The environments page in the console (/platform/environments) edits this list when an admin reorders or toggles environment visibility at the default level.

How promotion and demotion interact

When an environment is promoted (AD_HOC → STANDARD):

  • It's appended to account-level environment_order.
  • It's appended to every user's personal environment_order that doesn't already include it.

After promotion, every user sees the new column.

When an environment is demoted (STANDARD → AD_HOC):

  • It's removed from the account-level environment_order.
  • User-level lists are not touched — anyone who had personalized to include it keeps seeing it.

Demotion is non-disruptive on purpose. See Promote an environment.

Verify

After updating personal:

bash
curl https://app.smplkit.com/api/v1/users/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY"

After updating the account default:

bash
curl https://app.smplkit.com/api/v1/accounts/current/settings \
  -H "Authorization: Bearer $SMPLKIT_API_KEY"

Open any product grid in the console — the columns should match the order shown by your personal settings (or the account default if you have none).