---
title: "New CLI, New Public API Queries, Network Metrics Improvements"
date: 2023-02-17T15:00:00.000+00:00
number: 0121
url: https://railway.com/changelog/2023-02-17-new-cli-coming-soon
---

# New CLI, New Public API Queries, Network Metrics Improvements

Welcome to this week’s Changelog. Time to pipe some announcements into your head.

## New CLI

There’s a new CLI in town and it’s coming soon to Railway. 

Presenting: CLI v3

It’s the same CLI you know and love, just improved in nearly every way possible. 

It’s written in Rust (for buzzword compliance) and is 10x faster than the existing CLI. As a result, developing with the new CLI is better than ever. We’re talking strongly typed gQL responses, semantic auto-complete … okay, you wanna know what it’s like to actually use it, don’t you?

[Image: Project creation in CLI v3]

For starters, `railway run`  now remembers what service you’re developing in without re-prompting you all the time in a multi-service project.

Next, we made `railway up` much faster with support for ever larger repos. (Thanks for the feedback, ML engineers!)

Additionally, we added flags such as `railway <command> --json` that allow you to pipe your output into json for extensible scripting. 

Finally, we’ve refreshed UI elements in a big way. I hope you like furniture, because we added … tables! **audience groans**

[Image: Tables in CLI v3]

So you must be wondering when you can use this fantastic [crab-filled](https://www.reddit.com/r/rust/comments/jjrwew/dumb_question_exactly_what_is_the_logo_of_rust/) beauty? 

Today! We have a [public repo](https://github.com/railwayapp/cliv3) and [Cargo download](https://crates.io/crates/railwayapp) for everyone who wants to use the new CLI for testing. 

With that said, **We plan to cutover to the Rust based CLI next Friday.** *No intervention on your part is necessary. *Testing shows us that the new version will slot into your existing workloads just fine. 

On the cutover date, we will bump the version to v3.0.0 and merge it into the [**railwayapp/cli**](https://github.com/railwayapp/cli) repo. 

We have big plans for the CLI for the rest of the year, so you should expect much more to come in our effort to make you feel right at home using Railway in the terminal.

## New Public API Queries

New queries! Get your new queries here! 

We’ve added some new treats to the [Public API](https://docs.railway.app/reference/public-api) for you to consume at your leisure:

- `logs` 
- `usage` 
- `estimatedUsage`

To try out the new queries, head over to the [GraphQL Playground](https://railway.app/graphiql) and try a sample command:

```graphql
{
  usage(
    projectId: "3cd99487-93ee-4013-92ec-1fdfb3e5948c"
    measurements: [CPU_USAGE, MEMORY_USAGE_GB]
  ) {
    measurement
    value
  }
  estimatedUsage(
    projectId: "3cd99487-93ee-4013-92ec-1fdfb3e5948c"
    measurements: [CPU_USAGE, MEMORY_USAGE_GB]
  ) {
    measurement
    estimatedValue
  }
}
```

## Network Metrics Improvements

[Image: Network metrics are now displayed over a window of time rather than cumulatively]

We’ve improved the view of network metrics within a Project for [Priority Boarding](https://docs.railway.app/reference/priority-boarding) users. Whereas before we displayed cumulative network use, we now display network use over a time window.

If you haven’t signed up for Priority Boarding yet, here’s your chance! We hope you enjoy the increased fidelity.

## Improvements and Fixes

- Nixpacks [upgraded to v.1.4.0](https://github.com/railwayapp/nixpacks/releases/tag/v1.4.0)
- Added support for language population in templates
- Fixed a bug that prevented using shared variables for `RAILWAY_DOCKERFILE_PATH`
- Fixed a bug that sometimes deleted metadata when updating templates
- Fixed a pagination issue with logs