Create the Config Type

The first step in defining a config is creating its config type. Navigate to the Config Types page.
Click + New Config Type and name the config type Mobility with slug mobility.
Config Type slugs are permanent and cannot be changed after creation.
The config type slug is a unique identifier for a config type. The CLI uses it to link a config schema to its corresponding config type when pushing a schema. All config schemas must include the $miru_config_type_slug field at the root level. We’ve already included this field in mobility.schema.yaml and empty-mobility.schema.yaml.
mobility.schema.yaml
$miru_config_type_slug: "mobility"
...

CLI Install

Schemas are created via the Miru command-line interface (CLI). To push a schema, you’ll need to install the CLI on your development machine. Run the installation command in your local machine’s terminal.
curl -fsSL https://raw.githubusercontent.com/miruml/cli/main/install.sh | sh
The script requires curl, tar, grep, and cut to be installed. Review the contents of the installation script here.
The Miru CLI supports macOS and Linux. Windows is not supported.

CLI Login

Run the login command.
miru login
Retrieve your authentication token here.
Paste the token into the CLI.
Please retrieve your authentication token from the following URL:
🔗 https://configs.miruml.com/secrets/cli-token

🔑 Paste your authentication token: **********

Validating authentication token...
✅ Successfully logged in as Benjamin

Push the Schema

Navigate back to the root of the getting-started repository and push the schema to Miru.
miru schema push ./schemas/mobility.schema.yaml
If you’re following along with the schemaless approach, replace mobility.schema.yaml with empty-mobility.schema.yaml.
You’ll see a confirmation message that your schema was successfully pushed.
📦 Attempting to push 1 config schemas...

🏁 Successfully pushed schema for mobility config type
    commit: a8340d496013f4e33bb5d59fbebf057a80c44dbf
    branch: main
    origin: https://github.com/miruml/getting-started.git
    git file path: schemas/mobility.schema.yaml


 Successfully uploaded 1 config schemas
Visit the Config Types page and click into the Mobility config type to verify the schema was uploaded successfully.
Git information is pulled from the local git repository. If you don’t have access to view the remote repository (specified locally) or the commit hasn’t yet been pushed to the remote repository, git related links in Miru will be invalid.