In Cloud CMS, you may choose to associate nodes with folders. This allows the content to be worked with by editorial teams such that they can navigate to content within folders, move content between folders and generally organize their content as they wish.
It also allows for content to be retrieved by path via the API, if you wish.
Technically speaking, Cloud CMS does not require folders or paths. In fact, plenty of customers use Cloud CMS in such a way that they don't require folders at all. Content can be retrieved using query, full-text search, classifier lookups and a variety of other means that are often far preferable to the use of explicit folders.
That said, Cloud CMS offers pretty good folder support with automatic path-based indexing. This is often very advantageous for your editorial team or for teams that work with files quite a lot. It can really go a long way to making things easier.
The Cloud CMS user interface provides out-of-the-box support for folders and paths.
API
For any content nodes that you create within Cloud CMS, you can retrieve the paths using the ?paths=true argument on the request. It doesn't matter whether this content comprises a content definition or a content instance. In Cloud CMS, everything is a node and all nodes may have paths.
Thus, you can make an API call like this:
GET /repositories/{repositoryId}/branches/{branchId}/nodes/{nodeId}?paths=true
The JSON response you get back will have a map of paths. Nodes are allowed to exist at multiple paths depending on how you model your relationships in the content graph. Typically, nodes will exist at one or zero paths.
{
...,
"_paths": {
"821c40ab613d9b5bcbbc656b62229301": "/System/Theme/logo.png"
}
}
Where 821c40ab613d9b5bcbbc656b62229301 is the ID of the root node of the branch and /System/Theme/logo.png is the path of the node relative to that root node.
All branches have at least 1 root node. However, not all nodes are required to exist in paths.
In Cloud CMS, folder associations and path allocation is an optional feature. Cloud CMS permits you to create content that doesn't sit in the folder tree and instead is retrieved via non-path means, such as query, category selection, classifiers, full-text search and more.
If you're using one of our drivers, the paths information should come back automatically. The JSON response should have the _paths property on it as per above.