> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/feature-flags/use-feature-flags/use-ff/ff-creating-flag/create-a-project.md).

# Complete the Prerequisites

This topic contains instructions for completing the prerequisites, if you haven't done so already, for creating Feature Flags:

* Create a project
* Create an environment
* Create an SDK key

Before you can create a Feature Flag, you need to create a project in the Harness platform. A Feature Flag is available only for the project the flag is created in, so you need to create any flags in each project you want to use them for.

This topic describes how to create a project in the Harness Platform. For more information, go to [Harness Platform documentation](https://app.gitbook.com/s/3F2TpHXhur2QtQnORSM9/README).

{% hint style="info" %}
**NOTE**

Before you create a Feature Flag, you need to [create an Organization](/harness-ai/new-to-harness-platform/get-started.md). It's also useful to know about how Access Control works in Harness, to learn more about this, go to [Manage Access Control](/feature-flags/use-feature-flags/secure-ff/rbac-at-ff/manage-access-control.md).
{% endhint %}

### Create a project <a href="#create-a-project" id="create-a-project"></a>

1. In **Harness**, click **Feature Flags** and click **Create Project**.

   <figure><img src="/files/dgwKmXCo6Q69fHT8ktgu" alt="A screenshot of the Harness Platform that highlights the Create Project button in the Feature Flag module."><figcaption></figcaption></figure>
2. In **About the Project**, in **Name**, enter the name for your project and select a color for it.
3. In the **Organization** drop-down menu, select the Organization for your project. If you need to create a new Organization, go to [Create a Harness Organization](/harness-ai/new-to-harness-platform/get-started.md#create-a-harness-org) and [Organizations and Projects](/harness-ai/new-to-harness-platform/overview.md#organizations-and-projects).
4. Click **Save and Continue**.

   <figure><img src="/files/yLU9NDbJyQmYGfGF8eVy" alt="A screenshot of the About the Project form."><figcaption></figcaption></figure>
5. (Optional) In **Invite Collaborators**, in **Invite People to Collaborate**, add team members to the project.
6. (Optional) Assign a role to the collaborators and click **Add**. The roles you can select are:

   * Project Viewer
   * Project Admin
   * Pipeline Executer
   * Gitops Admin Role
   * Feature Flag Manage Role

   For more information about the permissions for each role, go to [Manage Access Control](/feature-flags/use-feature-flags/secure-ff/rbac-at-ff/manage-access-control.md) and [Permissions Reference](/harness-ai/use-harness-platform/platform-access-control/permissions-reference.md).
7. Click **Save and Continue**. Your project is created.

   <figure><img src="/files/oSbj9DKLPHcgvitxVOXI" alt="A screenshot of the Invite Collaborators form when creating a project."><figcaption></figcaption></figure>
8. In your project, click **Feature Flags**.

### Create an environment <a href="#create-an-environment" id="create-an-environment"></a>

Once you've created a project, you need to create an environment before you create a Feature Flag. Feature Flags can be used independently across multiple environments within a single project, for example:

* In Project X you have two environments, `Environment_A` and `Environment_B`.
* You create `Flag_1`.
* In `Environment_A` you could have `Flag_1` toggled `on`, but in `Environment_B`, `Flag_1` is toggled `off`.

![A side by side screenshot that shows the same flag in two environments. One is toggled on and one is toggled off.](/files/JkRxHDuhD90ns61iq4iJ)

This topic describes how to create an environment in the Harness platform.

To read more about the Harness Platform, see [Harness Platform](https://app.gitbook.com/s/3F2TpHXhur2QtQnORSM9/README).

#### Before you begin <a href="#before-you-begin" id="before-you-begin"></a>

Before you create a Feature Flag, you must have:

1. [Created an Organization](/harness-ai/new-to-harness-platform/get-started.md)
2. [Created a project](#create-a-project)

#### Create an environment <a href="#create-an-environment" id="create-an-environment"></a>

1. In your project, in **Environments**, click **Create an Environment**.
2. Enter a **Name** for your environment.

   Harness generates a unique identifier for names. For details and restrictions, go to [Entity Identifier Reference](/harness-ai/use-harness-platform/references/entity-identifier-reference.md).
3. Select the **Environment type** and click **Create**.

   ![Create an environment form](/files/RGVL57Tlieekdtbh5rBz)
4. Your environment is created and you can find it listed in **Environments**.

### Create an SDK Key <a href="#create-an-sdk-key" id="create-an-sdk-key"></a>

After you’ve created your environment, you need to create an SDK key for it. You need to use this SDK key in your application’s code to authenticate your connection to the Harness Feature Flag client.

{% hint style="info" %}
**NOTE**

You can view and copy the SDK key only immediately after it is created. For security, after you leave the page, the key is redacted and you can’t view it. Make sure you make a copy of the key to use in your application.
{% endhint %}

To create an SDK key:

1. In the environment you created, in **Settings**, click **Create SDK Key**.
2. In **Create SDK Key**, in **Name**, enter a name for your SDK key.
3. In **Key Type**, select either **Client** or **Server** depending on the type of SDK you want to use. For more information about the SDK types Harness supports, go to [Chose a Client-side or Server-side SDK](/feature-flags/use-feature-flags/use-ff/ff-sdks/sdk-overview/client-side-and-server-side-sdks.md). If your organization needs to rotate the keys, you can choose to add more than one key for the same environment.
4. Click **Create**.
5. Copy and store your Secret.

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p><strong>NOTE</strong></p><p>You can only view and copy the SDK key immediately after it is created. For security, after you leave the page, the key is redacted and you can’t view it. Make sure you make a copy of the key to use in your application.</p></div>
