Appearance
CMS Proxy API
When developing on-premesis applications, it's common to provide a local cache fallback for content in the event of network connectivity issues.
The CMS Proxy API provides access to the same Content Management System API in the Experience Agent provided by the Experience Manager.
When a Content Collection is specified in Node Template, the Agent will automatically cache all API content and associated media to the local Node.
The advantage of using the CMS Proxy API is that you no longer need to implement content caching or within your own application simplifying application requirements and reducing the software scope.
The CMS Proxy API mirrors the Experience Manager Content Management System API and the API's may be used interchangably within the same application.
INFO
While the Experience Manager provides both Public (/public/cms/) API's for use with websites and Private (/private/cms/) API's for use with the private applications, The Experience Agent only provides /private/ URL's which are not authenticated locally and can include Collections marked Public or Provate.
Enpoints
GET /private/cms/v1/<collection nanoid>/assets/
API providing a paginated list of all media assets used within a CMS's collection. This is not typically used directly, but is provided as a convenience to simplify caching media assets locally.
TIP
Full representations of Media records are included with each Record and often do need need loaded separately.
Parameter
| Parameter | Value |
|---|---|
page | The page number of the paginated Asset records. Next/previous page numbers automatically via the next and previous properties on the API response. |
Example Response
json
{
"count": 5,
"next": null,
"previous": null,
"results": [
{
"url": "https://localhost:8000/api/v2/media/asset/df22ca70-7ae4-4dad-94d4-c067bae578d6/",
"uuid": "df22ca70-7ae4-4dad-94d4-c067bae578d6",
"no": "A-2025-000000",
"no_alt": null,
"file": {
"version": 1,
"file_name": "video.mp4",
"file": "https://localhost:8000/media/asset/2025/A-2025-000000/A-2025-000000.v1.mp4"
},
"image": {
"full": "https://localhost:8000/services/images/v1/df22ca70-7ae4-4dad-94d4-c067bae578d6",
"thumbnail": "https://localhost:8000/services/images/v1/df22ca70-7ae4-4dad-94d4-c067bae578d6?format=jpg&width=150&height=150",
"preview": "https://localhost:8000/services/images/v1/df22ca70-7ae4-4dad-94d4-c067bae578d6?format=jpg&width=400&height=400"
},
"file_type": "video",
"mime_type": "video/mp4",
"file_size_bytes": 223324384,
"file_size_display": "223.32 MB",
"width": 1920,
"height": 1080,
"aspect_ratio": "16:9",
"resolution": "Full HD",
"duration": 144.88,
"duration_display": "00:02:24",
"codec_video": "H264",
"fps": 29,
"orientation": "Landscape",
"md5": "c9a263b86dcd1b6889e96cd3f5af1b8c",
"sha1": "55e64341c5ae432657c24d085945faf4dc32a75f",
"sha256": "d5b986d37a88bc45546d227691cedb02b713061f82f6a06067cc5b03d8c5ef23",
"created_on": "2025-05-12T08:45:37.788170-07:00",
"updated_on": "2025-05-12T08:46:42.686779-07:00"
}
]
}GET /private/cms/v1/{collection:str}/
API providing a paginated list of all content records within a CMS Collection. Records may consist of one or more Content Models. Records are un-ordered, and records may appear on any page of the results.
TIP
The Experience Agent does not provide an endpoint to a specific Record. Front-load both the Asset and Records API endpoints and look-up records within you Store or other persistent state object to retrieve details when needed.
Parameter
| Parameter | Value |
|---|---|
page | The page number of the paginated Asset records. Next/previous page numbers automatically via the next and previous properties on the API response. |
Example Response
json
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"url": "https://localhost:8000/private/cms/v1/QfivelzMNr-z/record/q5If79qX7Wh3/",
"nanoid": "q5If79qX7Wh3",
"uuid": "28a10ced-a6c2-429a-92b8-f011aad7754c",
"title": "Record Title",
"meta": {
"collection": {
"name": "Collection",
"uuid": "b72bb806-35cd-4fc4-b262-17d6a201841e",
"nanoid": "QfivelzMNr-z",
"txtid": "cms-collection-id"
},
"model": {
"name": "Content Model",
"uuid": "6542f84e-ed74-4632-9a0f-d122d1102561",
"nanoid": "_zGndoytxW6a",
"txtid": "cms-content-model-id"
},
"locale": {
"default": "en-US",
"locales": [
"en-US"
]
}
},
"record": {
"title": "Record Title",
...
}
}
]
}