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

# Versioning

Each time you run `beam deploy`, Beam creates a new version of your app. Deploying a new version doesn't stop the previous one: older versions keep serving their own URLs until you stop them with [`beam deployment stop`](/v2/reference/cli#stop).

Endpoints, ASGI apps, and task queues get URLs in this format:

`https://[APP-NAME]-[APP-ID]-v[VERSION].app.beam.cloud`

`APP-ID` is a short ID that stays the same every time you deploy an app with the same name. `beam deploy` prints the URL of the version it just created, such as `https://multiply-712408b-v1.app.beam.cloud`.

### Accessing the Latest Version

The URL without a version suffix routes to the latest active version, so it's the one to use in clients that should pick up new deploys. A `-latest` suffix does the same:

```
https://multiply-712408b.app.beam.cloud
https://multiply-712408b-latest.app.beam.cloud
```

### Invoking Specific Versions

You can invoke specific versions of your apps by specifying the version in the app URL.

Here are some examples:

* To invoke latest: `https://multiply-712408b.app.beam.cloud`
* To invoke version `3`: `https://multiply-712408b-v3.app.beam.cloud`
* To invoke version `17`: `https://multiply-712408b-v17.app.beam.cloud`

A versioned URL only works while that version is active. A version that doesn't exist returns `404`, and a stopped version returns a `5xx` error.

Use the URLs that the CLI or dashboard returns rather than building these hostnames yourself. An active version may still be starting or have no running containers. See [deployment readiness, rollout, and rollback](/v2/hosting/deployments).

### Calling an App by Name

You can also call an app by name on `app.beam.cloud`:

* Latest version: `https://app.beam.cloud/endpoint/multiply` or `https://app.beam.cloud/endpoint/multiply/latest`
* Version `3`: `https://app.beam.cloud/endpoint/multiply/v3`

Task queues and ASGI apps use the same patterns under `/taskqueue/` and `/asgi/`. These URLs always require an auth token, even for [public endpoints](/v2/topics/public-endpoints). A version that doesn't exist returns `400` with `Invalid deployment`, and a stopped version returns `400` with `Deployment is not active`.

<Note>
  Pods use the same scheme with the port number added at the end. See [Pod
  URLs](/v2/pod/web-service#pod-urls).
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.