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

# Development quickstart

> Get your first API response in 5 minutes using Postman. Try with Open Industrial Data (no admin setup) or connect to your CDF project.

We recommend downloading, installing, and using **[Postman](https://www.getpostman.com)** to test API requests and verify responses.

<Tabs>
  <Tab title="Try with sample data">
    <Info>
      No admin setup required. Sign up at [Cognite Hub](https://hub.cognite.com) and get credentials from [OpenID Connect on Open Industrial Data](https://hub.cognite.com/open-industrial-data-211/openid-connect-on-open-industrial-data-993). Use cluster `api`, project `publicdatacdm`.
    </Info>

    <Steps>
      <Step title="Import your Postman collection">
        1. Download the [Cognite OpenAPI specification](/api-reference/concepts/20230101/api-description).
        2. In Postman, select **Import** and drag the file to the import modal.
        3. In **View Import Settings**: set **Folder organization** to **Tags**, turn **off** **Enable optional parameters**, turn **on** **Always inherit authentication**.
        4. Select **Continue** > **Import**.
      </Step>

      <Step title="Set up environment variables">
        1. Navigate to **Environments** on the left sidebar. Click **+ Create new Environment** and give it a name.

        2. Add these variables using values from the [Open Industrial Data credentials](https://hub.cognite.com/open-industrial-data-211/openid-connect-on-open-industrial-data-993):

           * **tenant-id**: From the Hub article
           * **token**: Leave blank. OAuth 2.0 will populate it automatically.
           * **baseUrl**: `https://api.cognitedata.com/api/v1/projects/publicdatacdm`
           * **project**: `publicdatacdm`

        3. Click **Save** and select your environment in the dropdown in the top right corner.
      </Step>

      <Step title="Configure OAuth 2.0 authorization">
        1. Navigate to the **Authorization** tab in the collection overview.
        2. Set **Type** to **OAuth 2.0** and **Add authorization data to** to **Request Headers**.
        3. Select **Configure New Token** and specify:
           * **Grant Type**: **Implicit**
           * **Callback URL**: `https://postman.cogniteapp.com/loggedin`
           * **Auth URL**: `https://login.microsoftonline.com/{{tenant-id}}/oauth2/v2.0/authorize`
           * **Client ID**: Use the Postman Client ID from the [Open Industrial Data credentials](https://hub.cognite.com/open-industrial-data-211/openid-connect-on-open-industrial-data-993) (OID-Api app)
           * **Scope**: `https://api.cognitedata.com/user_impersonation` or `https://api.cognitedata.com/DATA.VIEW`
           * **Client Authentication**: **Send as Basic Auth header**
        4. Select **Get New Access Token** > **Proceed** > **Use Token**.
      </Step>

      <Step title="Send your API request">
        1. Make a test API request to check that your integration is working correctly:

           * Click the **Cognite API** collection in the left-hand menu, and select **Assets** > **List assets**.

                     <Frame>
                       <img src="https://apps-cdn.cogniteapp.com/@cognite/docs-portal-images/1.0.0/images/cdf/dev/quickstart/cogniteapi-collection.png" alt="List assets" width="350px" />
                     </Frame>

           * Click **Send**.

        Cognite Data Fusion returns a list of all [asset objects](/api-reference/concepts/20230101/assets) in response to your API request. For the [Open Industrial Data Project](https://www.youtube.com/watch?v=g4DAAo55IS8) the JSON results look similar to this:

        ```json wrap theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
        {
            "nextCursor": "8ZiApWzGe5RnTAE1N5SABLDNv7GKkUGiVUyUjzNsDvM",
            "items": [
                {
                    "name": "23-TE-96116-04",
                    "parentId": 3117826349444493,
                    "description": "VRD - PH 1STSTGGEAR THRUST BRG OUT",
                    "metadata": {
                        "ELC_STATUS_ID": "1211",
                        "RES_ID": "525283",
                        "SOURCE_DB": "workmate",
                        "SOURCE_TABLE": "wmate_dba.wmt_tag",
                        "WMT_AREA_ID": "1600",
                        "WMT_CATEGORY_ID": "1116",
                        "WMT_CONTRACTOR_ID": "1686",
                        "WMT_FUNC_CODE_ID": "4564",
                        "WMT_LOCATION_ID": "1004",
                        "WMT_PO_ID": "8309",
                        "WMT_SAFETYCRITICALELEMENT_ID": "1060",
                        "WMT_SYSTEM_ID": "4440",
                        "WMT_TAG_CREATED_DATE": "2009-06-26 15:36:37",
                        "WMT_TAG_CRITICALLINE": "N",
                        "WMT_TAG_DESC": "VRD - PH 1STSTGGEAR THRUST BRG OUT",
                        "WMT_TAG_GLOBALID": "1000000000681024",
                        "WMT_TAG_HISTORYREQUIRED": "Y",
                        "WMT_TAG_ID": "346434",
                        "WMT_TAG_ID_ANCESTOR": "345637",
                        "WMT_TAG_ISACTIVE": "1",
                        "WMT_TAG_ISOWNEDBYPROJECT": "0",
                        "WMT_TAG_LOOP": "96116",
                        "WMT_TAG_MAINID": "681760",
                        "WMT_TAG_NAME": "23-TE-96116-04",
                        "WMT_TAG_UPDATED_BY": "8137",
                        "WMT_TAG_UPDATED_DATE": "2014-07-11 09:25:15"
                    },
                    "id": 702630644612,
                    "createdTime": 0,
                    "lastUpdatedTime": 0,
                    "rootId": 6687602007296940
                },
        ...
        ```

        Once you have successfully made an API request, you're ready to begin interacting with the Cognite Data Fusion API through the Software Development Kits (SDKs).
      </Step>

      <Step title="Install a Software Development Kit (SDK)">
        We provide official Software Development Kits (SDKs) for [Python](/dev/sdks/python) and [JavaScript](/dev/sdks/js) with libraries that interact with the Cognite Data Fusion API.

        ### The Python Software Development Kit (SDK)

        The Cognite Python SDK requires Python 3.5+ and provides access to the Cognite Data Fusion API from applications written in the Python language. See the [Cognite Python SDK Documentation](/dev/sdks/python) for more details.

        <Info>
          To download and install Python, visit [Python.org](https://python.org).
        </Info>

        To install the Cognite Python library:

        ```sh theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
        pip install cognite-sdk
        ```

        ### The JavaScript Software Development Kit (SDK)

        The JavaScript SDK provides access to the Cognite Data Fusion API from applications written in client-side or server-side JavaScript. The library supports authentication through API keys (for server-side applications) and bearer tokens (for web applications). See the [Cognite JavaScript documentation](/dev/sdks/js) for more details.

        Install the Cognite JavaScript library:

        ```sh theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
        npm install @cognite/sdk --save
        ```
      </Step>
    </Steps>
  </Tab>

  <Tab title="Connect to your CDF project">
    To use Postman with your own CDF project, you need Entra ID tenant administrator access. Follow the [Set up Postman](/dev/guides/postman) guide to:

    1. Register the Cognite API app in Entra ID
    2. Import the Cognite OpenAPI specification
    3. Set up environment variables (tenant-id, baseUrl, project)
    4. Configure OAuth 2.0 (Implicit or Authorization Code with PKCE)

    When you have completed the Postman setup, return here to send your first API request.

    <Steps>
      <Step title="Send your API request">
        1. In Postman, click the **Cognite API** collection in the left-hand menu, and select **Assets** > **List assets**.
        2. Click **Send**.

        Cognite Data Fusion returns a list of [asset objects](/api-reference/concepts/20230101/assets) in response. You're ready to interact with the API through the SDKs.
      </Step>

      <Step title="Install a Software Development Kit (SDK)">
        We provide official SDKs for [Python](/dev/sdks/python) and [JavaScript](/dev/sdks/js).

        **Python:**

        ```sh theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
        pip install cognite-sdk
        ```

        **JavaScript:**

        ```sh theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
        npm install @cognite/sdk --save
        ```
      </Step>
    </Steps>
  </Tab>
</Tabs>

## Next steps

* [Quickstart tutorial with Python SDK](/dev/sdks/python)
* [Quickstart tutorial with JavaScript SDK](/dev/sdks/js)
