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

# 1. Getting started

# Create a multilevel navigation from your CMS

<Info>
  This is a how-to for creating a simple two-level navigation for you website using data from your CMS.

  We are assuming you are familiar with Enterspeed and will focus on transforming your data it using schemas so it fits a web app.
</Info>

**Prerequisites:**

* You have an Enterspeed user and is logged in
* Tenants, data sources etc. is setup
* You have Postman, Insomnia og similar app installed
* You are comfortable getting and posting data

## The data

Our data is a common and straight forward example, that consists of two types: *mainNavigation* and *navigationItem*.

The *mainNavigation* is the parent and can have *navigationItems* as children. We have kept the properties to a minimum of having a title, this can of course be extended with URL and more.

In this example we only have one level, but you could have as many you choose.

The structure in your CMS could look like this:

<img src="https://mintcdn.com/enterspeed/U-p4hKh6hit1rd09/images/docs/examples/multilevel-navigation/cms-structure.png?fit=max&auto=format&n=U-p4hKh6hit1rd09&q=85&s=8e4058df9b01ee93e7873d5d13c854fe" alt="Create source Enterspeed" width="214" height="187" data-path="images/docs/examples/multilevel-navigation/cms-structure.png" />

The output like this:

<img src="https://mintcdn.com/enterspeed/U-p4hKh6hit1rd09/images/docs/examples/multilevel-navigation/output-example.png?fit=max&auto=format&n=U-p4hKh6hit1rd09&q=85&s=efbcdc913a141182b2b951fdbe6229fc" alt="Create source Enterspeed" width="1000" height="328" data-path="images/docs/examples/multilevel-navigation/output-example.png" />

And finally the (simplified) data we are working with:

```json theme={null}
{
  "originId": "1",
  "type": "mainNavigation",
  "properties": {
    "title": "Main navigation"
  },
  "originId": "2",
  "parentId": "1",
  "type": "navigationItem",
  "properties": {
    "title": "Home"
  },
  "originId": "3",
  "originParentId": "1",
  "type": "navigationItem",
  "properties": {
    "title": "Books"
  },
  "originId": "4",
  "originParentId": "3",
  "type": "navigationItem",
  "properties": {
    "title": "Book 1"
  },
  "originId": "5",
  "originParentId": "3",
  "type": "navigationItem",
  "properties": {
    "title": "Book 2"
  }
}
```

This is what a single data entity will look like when ingested into Enterspeed:

```json theme={null}
{
  "sourceId": "gid://Source/0edb780d-e053-46b1-bed9-d8fbb3417d37",
  "id": "gid://Source/0edb780d-e053-46b1-bed9-d8fbb3417d37/Entity/1",
  "type": "mainNavigation",
  "originId": "1",
  "originParentId": null,
  "url": null,
  "redirects": [],
  "properties": {
    "title": "Main navigation"
  }
}
```
