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

# New certificate

> How to create a new certificate for an app in the SuperOffice Developer Portal.

The certificates in your application configuration are **RSA encryption keys**. You need the private key to [sign system user tokens][2] in server-to-server applications and database mirroring.

The Developer Portal stores your public key. However, you must store the private key.

<Note>
  There can be only one client secret and only one certificate per environment. To replace a secret or certificate, first click the trashcan to remove the old value and then create a new.
</Note>

## How to

1. In the Developer Portal, go to your app page.

   To see the list of all apps:

   * Select **Apps** from the top menu to see all apps across every partner you have access to, or
   * Go to the **Applications** section of your partner page to see that partner's apps.

2) Select **Configuration** > **Authentication**.

   ![Secrets and Certificates -screenshot][img1]

3) Click **New Certificate**.

   ![New Certificate dialog -screenshot][img2]

4) Enter a description and expiration, and then click **Add**.

   ![Certificates -screenshot][img3]

   <Note>
     Expiration date is not enforced yet.
   </Note>

5) Store the **private key** somewhere safe! You can't look it up in the Developer Portal later.

6) Click **Save Settings**.

   * If the new certificate is for **SOD only:** No further action is needed.
   * If the certificate is for **stage, production, or all environments:** You must request publishing.

When you think it is ready in SOD, you can request to publish to Stage. This starts the [certification][1] or [validation][2] process, so read the guidelines and be prepared to follow up.

The **Request to publish** button will be disabled with a tooltip that explains what needs to be completed before you can start the process.

The SuperOffice app manager or App Store manager will reject or approve.

Remember to pick up application keys for all required environments **before** you request to publish.

For custom applications, when you request publish to Stage, we will automatically publish directly to production when approved.

[1]: ../../standard-app/certification/certify-app

[2]: ../../custom-app/validate

[2]: ../../../api//authentication/online/auth-application/sign-system-user-token

[img1]: /media/loc/en/developer-portal/secrets-and-certificates.png

[img2]: /media/loc/en/developer-portal/add-certificate.png

[img3]: /media/loc/en/developer-portal/certificate.png


## Related topics

- [Application environments](/en/developer-portal/getting-started/app-envir.md)
- [Index](/en/api/authentication/online/certificates/index.md)
