Content Staging REST API
Get packages list.
name | type | description | default | constraints |
---|---|---|---|---|
page | query | Returned page, if paging is used. Paging starts with 1 |
1 | int |
pageSize | query | Page size for paging. If this is set to -1 no paging is used (all matching items are returned).
Setting this to 0 will return no items. |
-1 | int |
q | query | Query string for filtering | ||
sort | query | Comma separated list of sorted attributes.
Each attribute name may be prefixed with + for sorting in ascending order or - for sorting in descending order |
name |
media type | data type | description |
---|---|---|
application/json | ContentPackageListResponse (JSON) | list of packages |
GET /content/package
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"items" : [ { }, { } ],
"hasMoreItems" : true,
"numItems" : 12345,
"perms" : {
"property1" : [ "view", "createform" ],
"property2" : [ "inheritance", "publishpages" ]
},
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Create new package.
media type | data type | description |
---|---|---|
application/json | StagedContentPackage (JSON) | package model |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | created package |
PUT /content/package
Content-Type: application/json
Accept: application/json
{
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
}
HTTP/1.1 204 No Content
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Delete the package with the given name
name | type | description |
---|---|---|
name | path | package name |
media type | data type | description |
---|---|---|
application/json | GenericResponse (JSON) | response |
DELETE /content/package/{name}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 204 No Content
Content-Type: application/json
{
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Get the package by its name
name | type | description |
---|---|---|
name | path | package name |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | response |
GET /content/package/{name}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 200 OK
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Update the package with the given name.
name | type | description |
---|---|---|
name | path | package name |
media type | data type | description |
---|---|---|
application/json | StagedContentPackage (JSON) | model for updating |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | updated package |
POST /content/package/{name}
Content-Type: application/json
Accept: application/json
{
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Export the CMS entities, contained in the package with the given name, into the package, i.e. make a package sync.
name | type | description | default | constraints |
---|---|---|---|---|
name | path | package name | ||
wait | query | wait timeout in ms. When set to 0, response will be sent, when the action completes | 0 | long |
media type | data type | description |
---|---|---|
application/json | GenericResponse (JSON) | response |
POST /content/package/{name}/export
Content-Type: */*
Accept: application/json
...
HTTP/1.1 201 Created
Content-Type: application/json
{
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Import the entities of a package of given name into CMS.
name | type | description | default | constraints |
---|---|---|---|---|
name | path | package name | ||
wait | query | wait timeout in ms. When set to 0, response will be sent, when the action completes | 0 | long |
media type | data type | description |
---|---|---|
application/json | GenericResponse (JSON) | response |
POST /content/package/{name}/import
Content-Type: */*
Accept: application/json
...
HTTP/1.1 201 Created
Content-Type: application/json
{
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Check the staging package inclusion package for the bulk of various types.
media type | data type | description |
---|---|---|
application/json | IdTypeMapRequest (JSON) | request |
media type | data type | description |
---|---|---|
application/json | StagingStatusResponse (JSON) | staging status response |
POST /content/package/{name}/status
Content-Type: application/json
Accept: application/json
{
"languageVariants" : true,
"ids" : {
"property1" : [ "...", "..." ],
"property2" : [ "...", "..." ]
}
}
HTTP/1.1 201 Created
Content-Type: application/json
{
"stagingStatus" : {
"property1" : {
"packageName" : "...",
"included" : true
},
"property2" : {
"packageName" : "...",
"included" : true
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Download the package of the given name as ZIP archive.
name | type | description |
---|---|---|
name | path | package name |
media type | data type | description |
---|---|---|
application/zip | object | download response |
GET /content/package/{name}/zip
Content-Type: */*
Accept: application/zip
...
HTTP/1.1 200 OK
Content-Type: application/zip
...
Upload the package of the given name in the form of ZIP archive.
name | type | description |
---|---|---|
name | path | package name |
media type | data type |
---|---|
multipart/form-data | object |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | package response |
POST /content/package/{name}/zip
Content-Type: multipart/form-data
Accept: application/json
...
HTTP/1.1 201 Created
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Remove an entity from the package of a given name.
name | type | description |
---|---|---|
name | path | package name |
type | path | Type of the object to remove. supported values are: node, file, image, folder, page, form |
uuid | path | Global ID of the object to remove |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | the package status after the removal. |
DELETE /content/package/{name}/{type}/{uuid}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 204 No Content
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}
Add an entity, keeping its folder path, to the package of a given name.
name | type | description | default | constraints |
---|---|---|---|---|
name | path | package name | ||
type | path | Type of the object to add. supported values are: node, file, image, folder, page, form | ||
uuid | path | Global ID of the object to add | ||
recursive | query | Should the contained objects be added recursively. Applicable to the folders only. | false | boolean |
media type | data type | description |
---|---|---|
application/json | ContentPackageLoadResponse (JSON) | the package status after the add. |
PUT /content/package/{name}/{type}/{uuid}
Content-Type: */*
Accept: application/json
...
HTTP/1.1 204 No Content
Content-Type: application/json
{
"contentPackage" : {
"forms" : 12345,
"files" : 12345,
"pages" : 12345,
"folders" : 12345,
"images" : 12345,
"nodes" : 12345,
"channels" : 12345,
"name" : "...",
"description" : "...",
"timestamp" : 12345
},
"import" : {
"running" : true,
"progress" : {
"done" : 12345,
"total" : 12345,
"started" : 12345,
"finished" : 12345
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
},
"messages" : [ { }, { } ],
"responseInfo" : {
"responseCode" : "OK",
"responseMessage" : "...",
"property" : "..."
}
}