Utilisation de REST avec des dossiers

Vous pouvez utiliser le service REST de Web Content Manager pour créer, lire, mettre à jour et supprimer des dossiers. Vous pouvez également utiliser le service REST de Web Content Manager pour rechercher des dossiers prédéfinis dans une bibliothèque.

Recherche de dossiers prédéfinis

Vous pouvez obtenir la liste des dossiers prédéfinis dans une bibliothèque en envoyant une demande GET à l'URI suivant :
/Library/library-id/preset-folders
Par exemple:


HTTP/1.1 /wps/mycontenthandler/wcmrest/Library/
Accept: application/atom+xml

HTTP/1.1 200 OK
Content-Type: application/atom+xml

<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
    <id>wcmrest:Library/790b8ca6-5d89-4f37-9052-783dd580f860/preset-folders</id>
    <title>wcmrest:Library/790b8ca6-5d89-4f37-9052-783dd580f860/preset-folders</title>
    <updated>2014-06-27T02:30:24.312Z</updated>
    <entry>
        <id>wcmrest:fd169c35-f35b-45da-b5cb-6dab73330142</id>
        <title xml:lang="fr-fr">Content</title>
        <wcm:name>Content</wcm:name>
        <wcm:type>PresetFolder</wcm:type>
        <updated>2014-06-13T02:27:49.631Z</updated>
        <link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
        <link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/fd169c35-f35b-45da-b5cb-6dab73330142" label="Read"/>
    </entry>
    <entry>
        <id>wcmrest:f5f8964b-7e47-4427-aca6-46982125f123</id>
        <title xml:lang="fr-fr">Taxonomies</title>
        <wcm:name>Taxonomies</wcm:name>
        <wcm:type>PresetFolder</wcm:type>
        <updated>2014-06-13T02:27:49.629Z</updated>
        <link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
        <link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/f5f8964b-7e47-4427-aca6-46982125f123" label="Read"/>
    </entry>
    <entry>
        <id>wcmrest:b7fd466d-d430-4a72-bb33-e8733f9b47e8</id>
        <title xml:lang="fr-fr">Components</title>
        <wcm:name>Components</wcm:name>
        <wcm:type>PresetFolder</wcm:type>
        <updated>2014-06-13T02:27:49.631Z</updated>
        <link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
        <link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/b7fd466d-d430-4a72-bb33-e8733f9b47e8" label="Read"/>
    </entry>
    ... some entries elided ...
</feed>

Créer

Vous pouvez créer un dossier en envoyant une demande POST à l'URI suivant avec une entrée Atom représentant le dossier :
/Folder
Par exemple:

HTTP/1.1 POST /wps/mycontenthandler/wcmrest/Folder
Content-Type: application/atom+xml

<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
    <wcm:name>Design Components</wcm:name>
    <link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10"/>
</entry>

HTTP/1.1 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/8.0">
    <id>wcmrest:5def4f6f-0dd9-49ca-b954-706f8ceb7373</id>
    <title xml:lang="fr-fr">test create components folder</title>
    <summary xml:lang="fr-fr"></summary>
    <wcm:name>test create components folder</wcm:name>
    <wcm:type>Folder</wcm:type>
    <updated>2014-06-27T02:39:58.735Z</updated>
    <wcm:created>2014-06-27T02:39:58.733Z</wcm:created>
    <wcm:lastModifier>
        <wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
        <uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
        <name>wpsadmin</name>
    </wcm:lastModifier>
    <wcm:creator>
        <wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
        <uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
        <name>wpsadmin</name>
    </wcm:creator>
    <link rel="self" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Read"/>
    <link rel="edit" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Edit"/>
    <link rel="delete" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Delete"/>
    <link rel="access-control" href="/wps/mycontenthandler/ac/access:oid:Z6QReDeL1PA6JH66JDCMM0643PIJMG6PPO2MM8CP9D8JMS6GHDC6SCC5JOEJPS6J1" xml:lang="fr-fr" label="Access Control"/>
    <link rel="library" href="/wps/mycontenthandler/wcmrest/Library/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5" xml:lang="fr-fr" label="Library"/>
    <link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10" xml:lang="fr-fr" label="Parent"/>
    <link rel="versions" href="/wps/mycontenthandler/wcmrest/item/5def4f6f-0dd9-49ca-b954-706f8ceb7373/versions" xml:lang="fr-fr" label="Versions"/>
    <category scheme="wcmrest:favorite" term="false" xml:lang="fr-fr"/>
</entry>

Mettre à jour

Vous pouvez mettre à jour un dossier en envoyant une demande PUT à l'URI suivant avec une entrée Atom incluant les zones de l'objet qui doivent être modifiées:
/Folder/folder-id
Par exemple:

HTTP/1.1 PUT /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373
Content-Type: application/atom+xml

<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
    ... some content elided ...
    <wcm:name>The Folder Name has Chenged</wcm:name>
    <!-- Note that the parent has changed. This will cause the folder to be moved. -->
    <link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/aceaf85a-48a8-45f7-a6cc-343ace84f337" xml:lang="fr-fr" label="Parent"/>
    ... some content elided ...
</entry>

Lire

Vous pouvez lire un dossier en envoyant une demande GET à l'URI suivant :
/Folder/folder-id
Par exemple:

HTTP/1.1 GET /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373
Accept: application/atom+xml

HTTP/1.1 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/8.0">
    <id>wcmrest:5def4f6f-0dd9-49ca-b954-706f8ceb7373</id>
    <title xml:lang="fr-fr">test create components folder</title>
    <summary xml:lang="fr-fr"></summary>
    <wcm:name>test create components folder</wcm:name>
    <wcm:type>Folder</wcm:type>
    <updated>2014-06-27T02:39:58.735Z</updated>
    <wcm:created>2014-06-27T02:39:58.733Z</wcm:created>
    <wcm:lastModifier>
        <wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
        <uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
        <name>wpsadmin</name>
    </wcm:lastModifier>
    <wcm:creator>
        <wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
        <uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
        <name>wpsadmin</name>
    </wcm:creator>
    <link rel="self" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Read"/>
    <link rel="edit" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Edit"/>
    <link rel="delete" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Delete"/>
    <link rel="access-control" href="/wps/mycontenthandler/ac/access:oid:Z6QReDeL1PA6JH66JDCMM0643PIJMG6PPO2MM8CP9D8JMS6GHDC6SCC5JOEJPS6J1" xml:lang="fr-fr" label="Access Control"/>
    <link rel="library" href="/wps/mycontenthandler/wcmrest/Library/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5" xml:lang="fr-fr" label="Library"/>
    <link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10" xml:lang="fr-fr" label="Parent"/>
    <link rel="versions" href="/wps/mycontenthandler/wcmrest/item/5def4f6f-0dd9-49ca-b954-706f8ceb7373/versions" xml:lang="fr-fr" label="Versions"/>
    <category scheme="wcmrest:favorite" term="false" xml:lang="fr-fr"/>
</entry>

Supprimer

Vous pouvez supprimer un dossier en envoyant une demande DELETE à l'URI suivant :
/Folder/folder-id
HTTP/1.1 DELETE /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373

HTTP/1.1 200 OK