---
title: Developer Portal overview
slug: optimizely-connect-platform/docs/developer-portal-overview
docTags: 
createdAt: 2026-09-24T00:00:00.000Z
---

The **Developer Portal** gives Optimizely Connect Platform (OCP) developers a user interface (UI) to register apps, generate and manage API keys, and view app versions and their installations. Use it to build custom integrations that connect external systems to OCP or Optimizely Data Platform (ODP), or to retrieve the credentials your OCP command-line interface (CLI) needs to publish an app.

## Access the Developer Portal

To access the **Developer Portal**, you need the **Developer** role in the **Admin Center** of your organization. Follow these steps to get access:

1. Contact [Optimizely Support](https://support.optimizely.com/hc/en-us) to request developer access for your organization. Optimizely must enable developer access before the **Developer** role becomes available in the **Admin Center**.
2. After Optimizely Support enables developer access, the **Developer** role displays in the **Admin Center**.
3. Assign the **Developer** role in the **Admin Center**. This role is required to access **Developer Portal**. See [Assign Developer role](docId\:mAHird1ThWGsH0Z0LJyaN).

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/VcvCOOVdicUuKGfGRkzhV_access-the-developer-portal.png" size="100" isUploading="false" width="800" height="412" darkWidth="800" darkHeight="412" showCaption="false" indent="1"}

### Assign Developer role

If you are already an admin in your organization, you can assign the **Developer** role to yourself. Complete the following steps:

1. Go to the top navigation bar and select your organization > **Admin Center** from the drop-down list.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/XLduvbnIWBdxz04B7ww70_assign-developer-role-1.png" size="70" isUploading="false" width="800" height="479" darkWidth="800" darkHeight="479" showCaption="false" indent="1"}

2. Click **Invite User > Invite Users Manually**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/LKuoDaWRxFB3tVC5yYkKe_assign-developer-role-2.png" size="70" isUploading="false" width="800" height="284" darkWidth="800" darkHeight="284" showCaption="false" indent="1"}

3. Enter your **Email** ID. Optimizely automatically populates the **First Name** and **Last Name** based on your email ID. Click **Continue**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/knl1b3VzkjWxTaIWOowDy_assign-developer-role-3.png" size="70" isUploading="false" width="800" height="717" darkWidth="800" darkHeight="717" showCaption="false" indent="1"}

4. Click **Add Product Access**. Under **Access**, select **Connect Platform** and your **Instance** from the drop-down list. Select the **Developer** role from the **Role** drop-down list and click **Continue**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/08mrjaljiUEJixJlz5dtK_assign-developer-role-4.png" size="70" isUploading="false" width="800" height="708" darkWidth="800" darkHeight="708" showCaption="false" indent="1"}

5. Review your invitation and click **Send**. The invitation is sent to your email.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/6iB5SU0SeJUVPwEZdbvQC_assign-developer-role-5.png" size="70" isUploading="false" width="800" height="712" darkWidth="800" darkHeight="712" showCaption="false" indent="1"}

The **Developer Portal** displays in the navigation menu for any OCP account where you hold the **Developer** role.

:::hint{type="info"}
**Note**

If an administrator removes your **Developer** role from all OCP instances in an organization, you lose access to **Developer Portal**, and your API key for that organization stops working.
:::

## Developer accounts and organizations

There are two separate levels of access for an OCP partner organization and their customer organization:

- **For developing and managing apps** – Your organization must have developer access enabled, and an administrator in your organization must give you a **Developer** role. When you have it, you can generate an API key and build, publish, and manage your apps.
- **For installing and managing apps** – Your customer's organization does not need developer access, and they do not need to give you or anyone from their own organization a **Developer** role. They can assign *any* role to you for a Connect Platform instance from their organization's **Admin Center**. After you get access, you can develop apps on your own organization (that has developer access) and install the apps on your customer's organization.

If you have access to multiple instances, switching your instance does not affect your developer role or your API key. Developer roles are assigned per organization, and each developer generates their own personal API keys for that organization. See [Manage your API key](docId\:mAHird1ThWGsH0Z0LJyaN).

## Register an app

To register a new app in the **Developer Portal**, complete the following steps:

1. Log in to OCP and go to **Developer Portal > Apps**. Click **Register app**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/RRS45bW4yLuU6DqvdpDBU_register-an-app-1.png" size="100" isUploading="false" width="800" height="412" darkWidth="800" darkHeight="412" showCaption="false" indent="1"}

2. Enter a unique **App ID**. The app ID must use lowercase letters, numbers, and underscores, start with a letter, and be three to 32 characters long.
3. Enter your **App display name**. The target product determines which Optimizely product your app extends.
4. Select the target product for your app:
   - **For OCP** – Extends Optimizely Connect Platform. Use this option to pull external data into Optimizely products or add tools to Agent Platform.
   - **For ODP** – Extends Optimizely Data Platform. Use this option to sync customer data into ODP or send campaign data out to marketing platforms.
5. Select **Register app** to complete registration. OCP shares a registered app with every developer in your organization by default.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/BxUU-SJ5evroQh2cWZPMD_register-an-app-2.png" size="100" isUploading="false" width="800" height="615" showCaption="false" indent="1"}

## View app versions and installations

To view a registered app's versions and installations, complete the following steps:

1. Click your app in the **Apps** list.
2. Go to the **Versions** tab to view every version of the app with its region and status. Toggle **Show unpublished** on to view unpublished apps.
   - `BUILT` – The version is built but not published.
   - `PUBLISHED` – The version is published and available to install.
   - `UNPUBLISHED` – The version is unpublished.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/-Uo8lCRIkcvQ8EbOoAjUP_view-app-versions-and-installations-1.png" size="100" isUploading="false" width="800" height="404" darkWidth="800" darkHeight="404" showCaption="false" indent="1"}

3. Go to the **Installations** tab to view the list of the OCP instances where the app is installed, along with the installed version, region, installation date, and last-updated date. The tracker ID for an instance displays partially masked when you do not have a role on that instance. The masked ID confirms the app is installed there without revealing the full tracker ID.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/JjpbWti6USnV2aArVv5_V_view-app-versions-and-installations-2.png" size="100" isUploading="false" width="800" height="421" darkWidth="800" darkHeight="421" showCaption="false" indent="1"}

## Manage your API key

You can generate and manage API keys for your developer account through the **Developer Portal**. A developer account is scoped to a single organization, and each developer account has its own API key. If you have **Developer** roles in multiple organizations, you must generate API keys for each organization.

:::hint{type="info"}
**Note**

You do not need multiple API keys to develop, manage, and install apps on a customer organization's OCP instance. You can generate an API key for your own organization and use that key to install apps on your customer's instance, as long as you are assigned *any* role for that instance. See [Developer accounts and organizations](docId\:mAHird1ThWGsH0Z0LJyaN).
:::

### Generate API key

Generate your API key to let the OCP CLI authenticate:

1. Go to **API Key** and click **Generate API key**. A prompt displays your API key. The full key only displays once at generation. Copy it and store it securely.
2. Click **Done**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/Fxh_2HOM1MS24zEorBYfT_generate-api-key-1.png" size="100" isUploading="false" width="800" height="467" darkWidth="800" darkHeight="467" showCaption="false" indent="1"}

3. View your active key status and copy the commands that save it to your OCP credentials file:

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/McAGD1L6f359cfrhYCjsl_generate-api-key-2.png" size="100" isUploading="false" width="800" height="410" darkWidth="800" darkHeight="410" showCaption="false" indent="1"}

### Regenerate your API key

:::hint{type="warning"}
**Important**

Regenerating your API key revokes the current key immediately. Any OCP CLI session or pipeline using the old key fails with a `401 Unauthorized` error until you update it with the new key.
:::

To regenerate your API key, complete the following steps:

1. Go to **API Key** and click **Regenerate API Key**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/pECmhiaAVIT48oQ9y1f8d_regenerate-your-api-key-1.png" size="100" isUploading="false" width="800" height="345" darkWidth="800" darkHeight="345" showCaption="false" indent="1"}

2. Select **Confirm**.

::Image[]{src="https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/p6HwanL_pa1vhMgvl5pfP_regenerate-your-api-key-2.png" size="70" isUploading="false" width="608" height="385" darkWidth="608" darkHeight="385" showCaption="false" indent="1"}

3. Update your OCP credentials file with the new key.
