How to use REST with content items
You can use the Web Content Manager REST service to create, read, update, and delete content items.
Create
A content item can be created by
sending a POST request to the following URI with an Atom entry used
to represent the content item:
/Content
- A library or parent link relation must be used to define the location of the hierarchical item that is being created.
- An authoring template must be specified to set what authoring template to use when the item is created.
For example:
- POST
HTTP/1.1 POST http://host:port/wps/mycontenthandler/wcmrest/Content/ Content-Type: application/atom+xml <atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:wcm="wcm/namespace"> <wcm:name>Content Name</wcm:name> <atom:title>Content Title</atom:title> <atom:link atom:rel="parent" atom:href="/wps/mycontenthandler/wcmrest/item/49f4ed95-a99f-434c-a415-77c341fa4893"/> <atom:link atom:rel="workflow" atom:href="/wps/mycontenthandler/wcmrest/item/abae799b-4cca-47ae-aad8-b3d8204deefb"/> <atom:link atom:rel="content-template" atom:href="/wps/mycontenthandler/wcmrest/item/588127d0-a4f8-44b5-87a4-5fe3f7bd3da7"/> </atom:entry>
- Response:
201 Created
Create from a skeleton
A "skeleton" representation of a content item that is created from a content template can be obtained to aid in the creation of content items. This can be obtained by using a GET request to the following URI. When the skeleton is obtained and completed a POST request can be made by using this data to create the item.
/ContentTemplate/template-uuid/new-content
For
example:
HTTP/1.1 GET http://host:port/wps/mycontenthandler/wcmrest/ContentTemplate/b7b8b3fb-8fa1-4eb3-915e-ce7514f7067f/new-content
Response
200 OK
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm">
<id>wcmrest:6bab48c6-1f24-454e-9bab-ae1be4cf3a0a</id>
<title lang="en"></title>
<summary lang="en"></summary>
<wcm:name></wcm:name>
<wcm:type>Content</wcm:type>
<updated>2012-01-31T03:28:08.118Z</updated>
<author>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/!ut/p/digest!7K1PhYjxBw0jzCDqHCwg2w/um/users/profiles/Z9eAeHPCAJG963RD2MMG6P9O6MMG66BD6MM47IHP4MMS6M1DAJQ4C1BCAMID653</uri>
<name>wpsadmin</name>
</author>
<wcm:owner>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/!ut/p/digest!7K1PhYjxBw0jzCDqHCwg2w/um/users/profiles/Z9eAeHPCAJG963RD2MMG6P9O6MMG66BD6MM47IHP4MMS6M1DAJQ4C1BCAMID653</uri>
<name>wpsadmin</name>
</wcm:owner>
<link label="Library" rel="library" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/item/a423287f-b0ce-4ee3-9c95-aa0939382228" lang="en"/>
<link label="Content Template" rel="content-template" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/Content/b7b8b3fb-8fa1-4eb3-915e-ce7514f7067f" lang="en"/>
<content type="application/vnd.ibm.wcm+xml">
<content xmlns="http://www.ibm.com/xmlns/wcm">
<elements>
<element name="Body">
<title lang="en">Body</title>
<type>RichTextComponent</type>
<data type="text/html"></data>
</element>
</elements>
</content>
</content>
</entry>
Update
A content item can be updated by
sending a PUT request to the following URI with an Atom entry that
specifies the fields on the item that need to be changed.
/Content/item-uuidFor example:
- PUT
HTTP/1.1 PUT http://host:port/wps/mycontenthandler/wcmrest/Content/abae799b-4cca-47ae-aad8-b3d8204deefb Content-Type: application/atom+xml <atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:wcm="wcm/namespace"> <wcm:name>Updated Content Name</wcm:name> <atom:title>Updated Content Title</atom:title> </atom:entry>
- Response:
200 OK
Read
A content item can be read by sending
a GET request to the following URI:
/Content/item-uuid
For
example:
- GET
HTTP/1.1 GET http://host:port/wps/mycontenthandler/wcmrest/Content/fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa <atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:wcm="wcm/namespace"> <atom:id>fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa</atom:id> <wcm:name>content name145805586</wcm:name> <atom:title>content title145805586</atom:title> <wcm:type>Content</wcm:type> <atom:updated>2011-04-27T04:06:32.643Z</atom:updated> <atom:link atom:rel="edit" atom:href="/wps/mycontenthandler/wcmrest/Content/fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa"/> <atom:link atom:rel="library" atom:href="/wps/mycontenthandler/wcmrest/item/957a67f2-9d70-469f-9d43-f63f78508e48"/> <atom:link atom:rel="parent" atom:href="/wps/mycontenthandler/wcmrest/item/49f4ed95-a99f-434c-a415-77c341fa4893"/> <atom:link atom:rel="workflow-stage" atom:href="/wps/mycontenthandler/wcmrest/item/f659d3af-7d45-4fc0-ad37-86e407caf2b6"/> <atom:link atom:rel="workflow" atom:href="/wps/mycontenthandler/wcmrest/item/abae799b-4cca-47ae-aad8-b3d8204deefb"/> <atom:link atom:rel="versions" atom:href="/wps/mycontenthandler/wcmrest/item/fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa/versions"/> <atom:link atom:rel="content-template" atom:href="/wps/mycontenthandler/wcmrest/item/588127d0-a4f8-44b5-87a4-5fe3f7bd3da7"/> <atom:link atom:rel="elements" atom:href="/wps/mycontenthandler/wcmrest/Content/fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa/elements"/> </atom:entry>
- Response:
- 200 OK
Delete
A content item can be deleted by
sending a DELETE request to the following URI:
/Content/item-uuid
For
example:
- DELETE
HTTP/1.1 DELETE http://host:port/wps/mycontenthandler/wcmrest/Content/fa2bfd32-7b2f-4394-a5ab-2e150c5ed8aa/
- Response:
200 OK