In August last year, we announced Repl Identity, a signed identity for every Repl that your code can use to authenticate other Repls when communicating with your APIs and services.

For a quick refresher, you can try out the demo that decodes the identity token and outputs it to the shell.

We have a Go package for this already (docs here), but there’s a limited selection of bindings for other languages. To that end, we’re rolling out a command-line tool in every Repl that allows you to use features like Repl Identity in any language that can run a subprocess.

Here’s a quick demo that you can try in our own Repls:

$ TOKEN=$($REPLIT_CLI identity create -audience="the target repl id")
$ $REPLIT_CLI identity verify -audience="the target repl id" -token="${TOKEN}" -json
{
  "replid": "ff2d906a-0a47-482b-9067-1ac0a078c394",
  "user": "mattiselin",
  "slug": "replit-cli",
  "aud": "the target repl id"
}

Check out this example Python Repl that creates and verifies a Repl Identity token:

Embedded Replit project

Media is temporarily unavailable while the engineering blog media pipeline is rebuilt.

Open original

You can wrap this command in your code to do token creation and verification without needing a direct language binding.

Enjoy!