> ## Documentation Index
> Fetch the complete documentation index at: https://docs.westyx.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a config

> Add a typed configuration value to your service.

Configs are key-value settings - database hosts, API base URLs, timeout values, and anything else that should vary per environment without a code change. Unlike secrets, configs are not encrypted and are available to both backend and frontend services.

## Steps

<Steps>
  <Step title="Open your service">
    Navigate to your project, click on your service, and select the **Configs** tab.

    <img className="block dark:hidden" src="https://mintcdn.com/westyx/i0WY6ypGsyxH8YEs/images/how-to/create-config/light-configs.png?fit=max&auto=format&n=i0WY6ypGsyxH8YEs&q=85&s=78749c8c472ffa5a65c1bf342eb24851" alt="Configs list" style={{ borderRadius: '8px', margin: '1rem 0' }} width="1116" height="830" data-path="images/how-to/create-config/light-configs.png" />

    <img className="hidden dark:block" src="https://mintcdn.com/westyx/i0WY6ypGsyxH8YEs/images/how-to/create-config/dark-configs.png?fit=max&auto=format&n=i0WY6ypGsyxH8YEs&q=85&s=12cb746699a1a36ad730b19f0e78e71e" alt="Configs list" style={{ borderRadius: '8px', margin: '1rem 0' }} width="1116" height="830" data-path="images/how-to/create-config/dark-configs.png" />
  </Step>

  <Step title="Create a new config">
    Click **+ New Config**. A form appears at the top of the list.

    <img className="block dark:hidden" src="https://mintcdn.com/westyx/i0WY6ypGsyxH8YEs/images/how-to/create-config/light-new-config.png?fit=max&auto=format&n=i0WY6ypGsyxH8YEs&q=85&s=76604ad9f6d270f1e81ec192f130f4e4" alt="New config form" style={{ borderRadius: '8px', margin: '1rem 0' }} width="1116" height="245" data-path="images/how-to/create-config/light-new-config.png" />

    <img className="hidden dark:block" src="https://mintcdn.com/westyx/i0WY6ypGsyxH8YEs/images/how-to/create-config/dark-new-config.png?fit=max&auto=format&n=i0WY6ypGsyxH8YEs&q=85&s=1416968e7208fd269ad86dbe2ab2dec2" alt="New config form" style={{ borderRadius: '8px', margin: '1rem 0' }} width="1116" height="245" data-path="images/how-to/create-config/dark-new-config.png" />

    Fill in the fields:

    | Field     | Description                                                                                                                       |
    | --------- | --------------------------------------------------------------------------------------------------------------------------------- |
    | **Key**   | Identifier used to read the value in your code (e.g. `database.host`, `api.timeout_ms`)                                           |
    | **Value** | The config value, entered as JSON: `"text"` for strings, `42` for numbers, `true` / `false` for booleans, `{"k":"v"}` for objects |

    Click **Create**.
  </Step>

  <Step title="Config is created">
    The config appears in the list with its key, type, and current value. Click the **edit icon** to update the value at any time - changes propagate to all connected SDK clients within milliseconds, no restart required.
  </Step>
</Steps>

## Template references

Config values can embed secrets and feature flags using `{{...}}` syntax:

| Syntax           | Resolves to                                         |
| ---------------- | --------------------------------------------------- |
| `{{secret:KEY}}` | Current value of the named secret                   |
| `{{flag:KEY}}`   | `true` or `false` - current state of the named flag |

Example:

```
database.url = postgresql://app:{{secret:DB_PASSWORD}}@db.internal:5432/mydb
```

Resolution happens server-side. The SDK receives the resolved string - the raw secret is never exposed.

## Inherited configs

Configs marked **INHERITED** come from a linked [umbrella service](/concepts/glossary#umbrella-service). To override the value for this service only, create a config with the same key - it takes precedence over the inherited one.

## Next steps

<CardGroup cols={2}>
  <Card title="Create a feature flag" icon="toggle-on" href="/how-to/create-flag">
    Roll out features gradually with targeting rules.
  </Card>

  <Card title="Create a secret" icon="lock" href="/how-to/create-secret">
    Store an encrypted value and reference it from configs.
  </Card>

  <Card title="Configs reference" icon="book" href="/features/configs">
    Full reference: types, template syntax, umbrella inheritance, live updates.
  </Card>
</CardGroup>
