# Preview of the new upload behavior in asciinema CLI 3.0

**URL:** <https://discourse.asciinema.org/t/preview-of-the-new-upload-behavior-in-asciinema-cli-3-0/780>\
**Category:** Development\
**Created:** [December 22, 2023, 8:01pm UTC](https://discourse.asciinema.org/t/preview-of-the-new-upload-behavior-in-asciinema-cli-3-0/780 "2023-12-22T20:01:36Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![ku1ik](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.asciinema.org/ku1ik/32/171_2.png) [@ku1ik](https://discourse.asciinema.org/u/ku1ik)\
**Post date:** [December 22, 2023, 8:01pm UTC](https://discourse.asciinema.org/t/preview-of-the-new-upload-behavior-in-asciinema-cli-3-0/780/1 "2023-12-22T20:01:36Z")

</div>

[![asciicast](https://asciinema.org/a/Ry4cnZr5VHFIBRbmk9XBld5To.svg)](https://asciinema.org/a/Ry4cnZr5VHFIBRbmk9XBld5To)

The change from 2.x is that it now requires opt-in / confirmation to use [asciinema.org](http://asciinema.org) as the default asciinema server.

The server URL configuration step lets you enter your own [self-hosted](https://docs.asciinema.org/manual/server/self-hosting/) asciinema server URL.

Also, it’s now possible to pass a server URL as the 2nd arg to the `asciinema upload`, e.g. `asciinema upload demo.cast https://asciinema.example.com` to override the default target, for each upload.

As before, you’ll be able to set the server URL in the config file as well.

This is still work in progress, I need to clean up the code, then I’ll push it to the `develop` branch.

What do you think?

EDIT: it’s already in the `develop` branch.

---

<div class="post-metadata">

**Author:** ![ku1ik](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.asciinema.org/ku1ik/32/171_2.png) [@ku1ik](https://discourse.asciinema.org/u/ku1ik)\
**Post date:** [December 26, 2023, 7:52pm UTC](https://discourse.asciinema.org/t/preview-of-the-new-upload-behavior-in-asciinema-cli-3-0/780/2 "2023-12-26T19:52:11Z")

</div>

Update: custom asciinema server URL is now a global option instead of a positional argument.

Instead of passing it as shown in the demo above it’s now used like this:

```sh
asciinema --server-url https://asciinema.example.com upload demo.cast

```

```sh
asciinema --server-url https://asciinema.example.com auth

```

---

<div class="post-metadata">

**Author:** ![ku1ik](https://yyz1.discourse-cdn.com/flex027/user_avatar/discourse.asciinema.org/ku1ik/32/171_2.png) [@ku1ik](https://discourse.asciinema.org/u/ku1ik)\
**Post date:** [August 27, 2025, 2:30pm UTC](https://discourse.asciinema.org/t/preview-of-the-new-upload-behavior-in-asciinema-cli-3-0/780/3 "2025-08-27T14:30:42Z")

</div>


