Skip to main content

Public keys

Use the 'User settings' -> 'Public keys' tab to register public keys with Encord.

Public keys offer a secure way to authenticate with Encord without requiring a user login and password. In particular, this is required when using the Encord SDK or Encord API. Once you have registered your public key, you can use the SDK or API to create, manage and interrogate projects, datasets and labels programmatically.

The 'Public keys' screen is where you create, filter and manage your public keys via a

  • + New key button: click this to register a new public key
  • Search bar: typing in the search bar will filter the keys by name
  • List of keys: delete them using the red bin icon

Set up public key authentication#

A public-private key pair is required for authentication. Register the public key with Encord and use your private key as your credentials.

1. Generate a public-private key pair#

If you do not already have an Ed25519 public-private key pair, you must first generate one using an encryption library. These libraries are part of most major operating systems, so you can generate this key pair using the appropriate terminal for your OS:

  • Linux/MacOS: the default terminal
  • Windows 10 & Server 2019/2022: Powershell

Run the following command in the terminal and follow the on-screen instructions. Important: leave the passphrase empty when prompted!

ssh-keygen -t ed25519

At the end you should have two files. One contains your private key (which you should keep secure), and the other has your public key (usually in a file ending in .pub). You now need to add your public key to your Encord profile.

2. Add the public key to Encord#

Click on the + New key button to register your public key

Choose a name for your key and paste in your public key. It must be in SSH key format and should look something like ssh-ed25519 <lots of characters>

Once you are happy, click Create to register it. You are now ready to authenticate programmatically with your private key.

3. Authenticate with your private key#

You can now authenticate with Encord using your private key. Please check the SDK or API documentation on how to authenticate with each respectively.