---
title: Gets the content structure from the content with the provided content reference or unique identifier.
slug: cms-12/api/gets-the-content-structure-from-the-content-with-the-provided-content-reference-or-unique-identifier
docTags: 
createdAt: 2026-08-28T13:16:06.833Z
---

{
  "id": "UFa_uxH9-vNeVdZCCd96N",
  "type": "api-oas-v2",
  "data": {
    "method": "GET",
    "url": "/api/episerver/v3.0/contentstructure/{root}",
    "servers": [],
    "name": "Gets the content structure from the content with the provided content reference or unique identifier.",
    "description": "",
    "contentType": "application/json",
    "request": {
      "pathParameters": [
        {
          "kind": "required",
          "name": "root",
          "type": "string",
          "description": "The reference or unique identifier of the content item from where the structure should be retrieved."
        }
      ],
      "headerParameters": [
        {
          "name": "accept",
          "type": "string",
          "kind": "optional",
          "description": "Generated from available response content types",
          "enum": [
            "application/json",
            "application/problem+json"
          ],
          "default": "application/json"
        },
        {
          "kind": "optional",
          "name": "Accept-Language",
          "type": "string",
          "description": "<p>Determines in which language the content should be retrieved. Example: 'en' or 'sv'. Does not support fallback.</p>"
        }
      ],
      "queryParameters": [
        {
          "kind": "optional",
          "name": "include",
          "type": "string",
          "description": "A reference or unique identifier of a content item that should be included in the structure."
        }
      ],
      "bodyDataParameters": [],
      "formDataParameters": [],
      "oAuthParameters": [],
      "cookieParameters": []
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Success",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "contentStructureNode",
            "schema": [
              {
                "name": "contentLink",
                "kind": "optional",
                "type": "object",
                "description": "Serializable model class for ContentReference.",
                "modelRef": "#/components/schemas/contentReference",
                "customType": "contentReference",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "nullable": true,
                    "description": "Id number of the content.",
                    "format": "int32"
                  },
                  {
                    "name": "workId",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "nullable": true,
                    "description": "The version id of the content.",
                    "format": "int32"
                  },
                  {
                    "name": "guidValue",
                    "kind": "optional",
                    "type": "string<uuid>",
                    "nullable": true,
                    "description": "The unique identifier of the content.",
                    "format": "uuid"
                  },
                  {
                    "name": "providerName",
                    "kind": "optional",
                    "type": "string",
                    "nullable": true,
                    "description": "The provider name that serves the content."
                  },
                  {
                    "name": "url",
                    "kind": "optional",
                    "type": "string",
                    "readOnly": true,
                    "nullable": true,
                    "description": "Url of the content."
                  },
                  {
                    "name": "language",
                    "kind": "optional",
                    "type": "object",
                    "readOnly": true,
                    "description": "",
                    "complexType": "allOf",
                    "complexItems": [
                      {
                        "name": "language",
                        "description": "",
                        "modelRef": "#/components/schemas/language",
                        "schema": [
                          {
                            "name": "displayName",
                            "kind": "optional",
                            "type": "string",
                            "readOnly": true,
                            "nullable": true,
                            "description": "<p>Display name of language. Ex: English, Svenska</p>"
                          },
                          {
                            "name": "name",
                            "kind": "required",
                            "type": "string",
                            "nullable": true,
                            "description": "<p>Name of language. Ex: en, sv</p>"
                          }
                        ]
                      }
                    ],
                    "schema": []
                  }
                ]
              },
              {
                "name": "name",
                "kind": "optional",
                "type": "string",
                "nullable": true,
                "description": "Name of the content."
              },
              {
                "name": "language",
                "kind": "optional",
                "type": "object",
                "description": "Serializable model class for store language information",
                "modelRef": "#/components/schemas/language",
                "customType": "language",
                "schema": [
                  {
                    "name": "displayName",
                    "kind": "optional",
                    "type": "string",
                    "readOnly": true,
                    "nullable": true,
                    "description": "<p>Display name of language. Ex: English, Svenska</p>"
                  },
                  {
                    "name": "name",
                    "kind": "required",
                    "type": "string",
                    "nullable": true,
                    "description": "<p>Name of language. Ex: en, sv</p>"
                  }
                ]
              },
              {
                "name": "existingLanguages",
                "kind": "optional",
                "type": "array",
                "nullable": true,
                "description": "The existing languages of the content.",
                "modelRef": "#/components/schemas/language",
                "customType": "language[]",
                "schema": [
                  {
                    "name": "displayName",
                    "kind": "optional",
                    "type": "string",
                    "readOnly": true,
                    "nullable": true,
                    "description": "<p>Display name of language. Ex: English, Svenska</p>"
                  },
                  {
                    "name": "name",
                    "kind": "required",
                    "type": "string",
                    "nullable": true,
                    "description": "<p>Name of language. Ex: en, sv</p>"
                  }
                ]
              },
              {
                "name": "hasChildren",
                "kind": "optional",
                "type": "boolean",
                "description": "Indicates if the current node has any children."
              },
              {
                "name": "children",
                "kind": "optional",
                "type": "array",
                "nullable": true,
                "description": "List of children of this content item.\r\nWill not be included unless the node should be expanded.\r\nWill be an empty list if expanded but the content item does not have any children.",
                "modelRef": "#/components/schemas/contentStructureNode",
                "customType": "contentStructureNode[]",
                "schema": [
                  {
                    "name": "",
                    "description": "",
                    "customType": "Circular-Reference"
                  }
                ]
              }
            ],
            "modelRef": "#/components/schemas/contentStructureNode",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Bad Request",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "403",
        "description": "Forbidden",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "404",
        "description": "Not Found",
        "jsonExample": "",
        "isExpanded": true
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "DjU05GPoQ5J7D8W9nCXO2",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request GET \\\n     --url /api/episerver/v3.0/contentstructure/{root} \\\n     --header 'accept: application/json'"
        },
        {
          "id": "BM3nmNar0T7Mm_4Fr-IVu",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\n\nvar requestOptions = {\n   method: 'GET',\n   headers: myHeaders,\n   redirect: 'follow'\n};\n\nfetch(\"/api/episerver/v3.0/contentstructure/{root}\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "5kSXB--b10fWb4NxrdQHn",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"/api/episerver/v3.0/contentstructure/{root}\")\n\nhttp = Net::HTTP.new(url.host, url.port);\nrequest = Net::HTTP::Get.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\n\nresponse = http.request(request)\nputs response.read_body\n"
        },
        {
          "id": "lDIFUD5GxLXDu3uy-TICP",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"/api/episerver/v3.0/contentstructure/{root}\"\n\npayload = {}\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "DjU05GPoQ5J7D8W9nCXO2"
    },
    "results": {
      "languages": [
        {
          "id": "response-0-200",
          "language": "200",
          "code": "// Success\n{\n  \"contentLink\": {\n    \"id\": \"\",\n    \"workId\": \"\",\n    \"guidValue\": \"\",\n    \"providerName\": \"\",\n    \"url\": \"\",\n    \"language\": {}\n  },\n  \"name\": \"\",\n  \"language\": {\n    \"displayName\": \"\",\n    \"name\": \"\"\n  },\n  \"existingLanguages\": [\n    {\n      \"displayName\": \"\",\n      \"name\": \"\"\n    }\n  ],\n  \"hasChildren\": false,\n  \"children\": [\n    {\n      \"\": \"\"\n    }\n  ]\n}"
        },
        {
          "id": "response-1-400",
          "language": "400",
          "code": "// Bad Request\n"
        },
        {
          "id": "response-2-403",
          "language": "403",
          "code": "// Forbidden\n"
        },
        {
          "id": "response-3-404",
          "language": "404",
          "code": "// Not Found\n"
        }
      ],
      "selectedLanguageId": "response-0-200"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}