Root resources ¶
/
List of root resources ¶
GET /
Lists the root resources of the Ibexa Platform installation.
Header parameters
Accept
If set, the list is return in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Root+xml
application/vnd.ibexa.api.Root+json
|
Possible responses
Code | Description |
---|---|
200 |
Types
Type | Description |
---|---|
Root | This class represents a root. |
RootWrapper | JSON object with only a Root property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Root media-type="application/vnd.ibexa.api.Root+xml">
<content media-type="" href="/api/ibexa/v2/content/objects"/>
<contentByRemoteId media-type="" href="/api/ibexa/v2/content/objects{?remoteId}"/>
<contentTypes media-type="application/vnd.ibexa.api.ContentTypeInfoList+xml" href="/api/ibexa/v2/content/types"/>
<contentTypeByIdentifier media-type="" href="/api/ibexa/v2/content/types{?identifier}"/>
<contentTypeGroups media-type="application/vnd.ibexa.api.ContentTypeGroupList+xml" href="/api/ibexa/v2/content/typegroups"/>
<contentTypeGroupByIdentifier media-type="" href="/api/ibexa/v2/content/typegroups{?identifier}"/>
<users media-type="application/vnd.ibexa.api.UserRefList+xml" href="/api/ibexa/v2/user/users"/>
<roles media-type="application/vnd.ibexa.api.RoleList+xml" href="/api/ibexa/v2/user/roles"/>
<rootLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2"/
file_copy
{
"Root": {
"_media-type": "application/vnd.ibexa.api.Root+json",
"content": {
"_href": "/api/ibexa/v2/content/objects",
"_media-type": ""
},
"contentByRemoteId": {
"_href": "/api/ibexa/v2/content/objects{?remoteId}",
"_media-type": ""
},
"contentTypeByIdentifier": {
"_href": "/api/ibexa/v2/content/types{?identifier}",
"_media-type": ""
},
"contentTypeGroupByIdentifier": {
"_href": "/api/ibexa/v2/content/typegroups{?identifier}",
"_media-type": ""
},
"contentTypeGroups": {
"_href": "/api/ibexa/v2/content/typegroups",
"_media-type": "application/vnd.ibexa.api.ContentTypeGroupList+json"
},
"contentTypes": {
"_href": "/api/ibexa/v2/content/types",
"_media-type": "application/vnd.ibexa.api.ContentTypeInfoList+json"
},
"createSession":
Managing bookmarks ¶
/bookmark
List of bookmarks ¶
GET /bookmark
Lists bookmarked Locations for the current user.
Header parameters
Accept
If set, the list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.BookmarkList+xml
application/vnd.ibexa.api.BookmarkList+json
|
Query parameters
Property | Type | Value |
---|---|---|
offset | integer |
The offset of the result set. |
limit | integer |
The number of returned bookmarks. |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to list bookmarks. |
Types
Type | Description |
---|---|
BookmarkList | List of bookmarked Locations. |
BookmarkListWrapper | JSON object with only a BookmarkList property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<BookmarkList media-type="application/vnd.ibexa.api.BookmarkList+xml">
<count>3</count>
<Bookmark media-type="application/vnd.ibexa.api.Bookmark+xml" _href="/api/ibexa/v2/bookmark/65">
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/57/65">
<id>65</id>
<priority>0</priority>
<hidden>false</hidden>
<invisible>false</invisible>
<explicitlyHidden>false</explicitlyHidden>
<ParentLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/57"/>
<pathString>/1/2/57/65/</pathString>
<depth>3</depth>
<childCount>0</childCount>
<remoteId>aa538e305aea472eb221ce23d1cc4b50</remoteId>
<Children media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/locations/1/2/57/65/children"/>
file_copy
{
"BookmarkList": {
"_media-type": "application/vnd.ibexa.api.BookmarkList+json",
"count": 3,
"items": [
{
"_media-type": "application/vnd.ibexa.api.Bookmark+json",
"__href": "/api/ibexa/v2/bookmark/65",
"Location": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/57/65",
"id": 65,
"priority": 0,
"hidden": false,
"invisible": false,
"explicitlyHidden": false,
"ParentLocation": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/57"
},
"pathString": "/1/2/57/65/",
"depth": 3,
"childCount": 0,
Create bookmark ¶
POST /bookmark/{locationId}
Add given Location to bookmarks of the current user.
Possible responses
Code | Description |
---|---|
201 |
Created. |
401 |
Error - the user is not authorized to given Location. |
404 |
Error - the given Location does not exist. |
409 |
Error - Location is already bookmarked. |
Check if Location is bookmarked ¶
HEAD /bookmark/{locationId}
Checks if the given Location is bookmarked by the current user.
Possible responses
Code | Description |
---|---|
200 |
OK - bookmarked. |
401 |
Error - the user is not authorized for the given Location. |
404 |
Error - the given Location does not exist / is not bookmarked. |
Delete bookmark ¶
DELETE /bookmark/{locationId}
Deletes the given Location from bookmarks of the current user.
Possible responses
Code | Description |
---|---|
204 |
Deleted - no content. |
401 |
Error - the user is not authorized for the given Location. |
404 |
Error - the given Location does not exist / is not bookmarked. |
Managing content ¶
/content/objects
Create content item ¶
POST /content/objects
Creates a draft assigned to the authenticated user. If a different user ID is given in the input, the draft is assigned to the given user but this action requires special permissions for the authenticated user (this is useful for content staging where the transfer process does not have to authenticate with the user who created the content item in the source server). The user needs to publish the content item if it should be visible.
Header parameters
Accept
Content - If set, all information for the content item including the embedded current version is returned in XML or JSON format. ContentInfo - If set, all information for the content item (excluding the current version) is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Content+xml
application/vnd.ibexa.api.Content+json
application/vnd.ibexa.api.ContentInfo+xml
application/vnd.ibexa.api.ContentInfo+json
|
Content-Type
The ContentCreate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentCreate+xml
application/vnd.ibexa.api.ContentCreate+json
|
Possible responses
Code | Description |
---|---|
201 | |
400 |
Error - the input does not match the input schema definition or the validation on a field fails. |
401 |
Error - the user is not authorized to create this Object in this Location. |
404 |
Error - the parent Location specified in the request body does not exist. |
Types
Type | Description |
---|---|
ContentCreate | This class is used for creating a new content item. |
ContentCreateWrapper | JSON object with only a ContentCreate property. |
Content | Content ID matcher class. |
ContentWrapper | JSON object with only a Content property. |
ContentInfoWrapper | JSON object with only a ContentInfo property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ContentCreate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ContentType href="/api/ibexa/v2/content/types/2"/>
<mainLanguageCode>eng-GB</mainLanguageCode>
<LocationCreate>
<ParentLocation href="/api/ibexa/v2/content/locations/1/2"/>
<priority>0</priority>
<hidden>false</hidden>
<sortField>PATH</sortField>
<sortOrder>ASC</sortOrder>
</LocationCreate>
<Section href="/api/ibexa/v2/content/sections/1"/>
<alwaysAvailable>true</alwaysAvailable>
<remoteId></remoteId>
<fields>
<field>
<fieldDefinitionIdentifier>title</fieldDefinitionIdentifier>
<languageCode>eng-GB</languageCode>
<fieldValue>draft article</fieldValue>
</field>
<field>
<fieldDefinitionIdentifier>intro</fieldDefinitionIdentifier>
<languageCode>eng-GB</languageCode>
<fieldValue>
<value key="xml"><![CDATA[<section xmlns="http://ibexa.co/namespaces/ezpublish5/xhtml5/edit"><p>draft draft</p></
file_copy
{
"ContentCreate": {
"ContentType": {
"_href": "/api/ibexa/v2/content/types/2"
},
"mainLanguageCode": "eng-GB",
"LocationCreate": {
"ParentLocation": {
"_href": "/api/ibexa/v2/content/locations/1/2"
},
"priority": "0",
"hidden": "false",
"sortField": "PATH",
"sortOrder": "ASC"
},
"Section": {
"_href": "/api/ibexa/v2/content/sections/1"
},
"alwaysAvailable": "true",
"fields": {
"field": [
{
"fieldDefinitionIdentifier": "title",
"languageCode": "eng-GB",
"fieldTypeIdentifier": "ezstring",
"fieldValue": "draft article"
},
{
"fieldDefinitionIdentifier": "intro",
"languageCode": "eng-GB",
"fieldTypeIdentifier": "ezrichtext",
"fieldValue":
{
"xml": "<section xmlns=\"http://ibexa.co/namespaces/ezpublish5/xhtml5/edit\"><p>draft draft</p></section>"
}
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/108" remoteId="25c5c35ab9d18e88bd2ee77991b730e2" id="108">
<ContentType media-type="application/vnd.ibexa.api.ContentType+xml" href="/api/ibexa/v2/content/types/2"/>
<Name>draft article</Name>
<TranslatedName>draft article</TranslatedName>
<Versions media-type="application/vnd.ibexa.api.VersionList+xml" href="/api/ibexa/v2/content/objects/108/versions"/>
<CurrentVersion media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/108/currentversion">
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/108/versions/1">
<VersionInfo>
<id>586</id>
<versionNo>1</versionNo>
<status>DRAFT</status>
<modificationDate>2023-05-24T06:24:46+00:00</modificationDate>
<Creator medi
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/110" remoteId="59258c7a8c545db8a641742138d11d82" id="110">
<ContentType media-type="application/vnd.ibexa.api.ContentType+xml" href="/api/ibexa/v2/content/types/2"/>
<Name>draft article</Name>
<TranslatedName>draft article</TranslatedName>
<Versions media-type="application/vnd.ibexa.api.VersionList+xml" href="/api/ibexa/v2/content/objects/110/versions"/>
<CurrentVersion media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/110/currentversion"/>
<Section media-type="application/vnd.ibexa.api.Section+xml" href="/api/ibexa/v2/content/sections/1"/>
<Locations media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/objects/110/locations"/>
<Owner media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<mainLanguageCode>eng-GB</mai
file_copy
{
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/109",
"_remoteId": "8716f007ba15f6f35139acb55e39b811",
"_id": 109,
"ContentType": {
"_media-type": "application/vnd.ibexa.api.ContentType+json",
"_href": "/api/ibexa/v2/content/types/2"
},
"Name": "draft article",
"TranslatedName": "draft article",
"Versions": {
"_media-type": "application/vnd.ibexa.api.VersionList+json",
"_href": "/api/ibexa/v2/content/objects/109/versions"
},
"CurrentVersion": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/109/currentversion",
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/109/versions/1",
"VersionInfo": {
Load content by remote ID ¶
GET /content/objects
Loads content item for a given remote ID.
Query parameters
Property | Type | Value |
---|---|---|
remoteId | string |
The remote ID of the content item. If present, the content item with the given remote ID is returned. |
Possible responses
Code | Description |
---|---|
307 |
Temporary redirect. |
404 |
Error - the content with the given remote ID does not exist. |
Load content ¶
GET /content/objects/{contentId}
Loads the content item for the given ID. Depending on the Accept header the current version is embedded (i.e. the current published version or if it does not exist, the draft of the authenticated user).
Header parameters
Accept
Content - If set, all information for the content item including the embedded current version is returned in XML or JSON format. ContentInfo - If set, all information for the content item (excluding the current version) is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Content+xml
application/vnd.ibexa.api.Content+json
application/vnd.ibexa.api.ContentInfo+xml
application/vnd.ibexa.api.ContentInfo+json
|
If-None-Match
If the provided ETag matches the current ETag then a "304 Not Modified" is returned. The ETag changes if the meta data has changed, this happens also if there is a new published version.
Property | Value |
---|---|
Type | string |
Examples |
ETag
|
Query parameters
Property | Type | Value |
---|---|---|
languages | string |
Restricts the output of translatable fields to the given languages. Comma separated list. |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to read this object. This could also happen if there is no published version yet and another user owns a draft of this content item. |
404 |
Error - the ID is not found. |
Types
Type | Description |
---|---|
Content | Content ID matcher class. |
ContentWrapper | JSON object with only a Content property. |
ContentInfo | This class provides all version independent information of the content item. |
ContentInfoWrapper | JSON object with only a ContentInfo property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/54" remoteId="9e863fbb0fb835ce050032b4f00de61d" id="54">
<ContentType media-type="application/vnd.ibexa.api.ContentType+xml" href="/api/ibexa/v2/content/types/1"/>
<Name>Forms</Name>
<TranslatedName>Forms</TranslatedName>
<Versions media-type="application/vnd.ibexa.api.VersionList+xml" href="/api/ibexa/v2/content/objects/54/versions"/>
<CurrentVersion media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/54/currentversion">
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/54/versions/1">
<VersionInfo>
<id>514</id>
<versionNo>1</versionNo>
<status>PUBLISHED</status>
<modificationDate>2018-09-17T06:48:13+00:00</modificationDate>
<Creator media-type="applicati
file_copy
{
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/54",
"_remoteId": "9e863fbb0fb835ce050032b4f00de61d",
"_id": 54,
"ContentType": {
"_media-type": "application/vnd.ibexa.api.ContentType+json",
"_href": "/api/ibexa/v2/content/types/1"
},
"Name": "Forms",
"TranslatedName": "Forms",
"Versions": {
"_media-type": "application/vnd.ibexa.api.VersionList+json",
"_href": "/api/ibexa/v2/content/objects/54/versions"
},
"CurrentVersion": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/54/currentversion",
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/54/versions/1",
"VersionInfo": {
"i
Update content ¶
PATCH /content/objects/{contentId}
This method updates the content metadata which is independent from a version. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, all information for the content item (excluding the current version) is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentInfo+xml
application/vnd.ibexa.api.ContentInfo+json
|
If-match
Causes to patch only if the specified ETag is the current one. Otherwise a 412 is returned.
Property | Value |
---|---|
Type | string |
Examples |
ETag
|
Content-Type
The ContentUpdate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentUpdate+xml
application/vnd.ibexa.api.ContentUpdate+json
|
Possible responses
Code | Description |
---|---|
200 | |
400 |
Error - the input does not match the input schema definition. |
401 |
Error - the user is not authorized to update this object. |
404 |
Error - the content ID does not exist. |
412 |
Error - the current ETag does not match with the one provided in the If-Match header. |
415 |
Error - the media-type is not one of those specified in headers. |
Types
Type | Description |
---|---|
ContentInfo | This class provides all version independent information of the content item. |
ContentInfoWrapper | JSON object with only a ContentInfo property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ContentUpdate>
<mainLanguageCode>eng-GB</mainLanguageCode>
<Section href="/api/ibexa/v2/content/sections/1"/>
<MainLocation href="/api/ibexa/v2/content/locations/2/63/66"/>
<Owner href="/api/ibexa/v2/user/users/11"/>
<alwaysAvailable>false</alwaysAvailable>
<remoteId>69848aeb86164c35e5c98202eebe9e05</remoteId>
</ContentUpdate>
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/80" remoteId="69848aeb86164c35e5c98202eebe9e05" id="80">
<ContentType media-type="application/vnd.ibexa.api.ContentType+xml" href="/api/ibexa/v2/content/types/2"/>
<Name>article1</Name>
<Versions media-type="application/vnd.ibexa.api.VersionList+xml" href="/api/ibexa/v2/content/objects/80/versions"/>
<CurrentVersion media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/80/currentversion"/>
<Section media-type="application/vnd.ibexa.api.Section+xml" href="/api/ibexa/v2/content/sections/1"/>
<MainLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/63/66"/>
<Locations media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/objects/80/locations"/>
<Owner media-type="application/vnd.ibexa.api.User+xml" href="/api
Delete Content ¶
DELETE /content/objects/{contentId}
Deletes content item. If content item has multiple Locations, all of them will be deleted via delete a subtree.
Possible responses
Code | Description |
---|---|
204 |
The content item is deleted. |
404 |
Error - content item was not found. |
401 |
Error - the user is not authorized to delete this content item. |
Copy content ¶
COPY /content/objects/{contentId}
Creates new content item as a copy, under the given parent Location given in the destination header. COPY or POST with header X-HTTP-Method-Override COPY.
Header parameters
destination
A Location resource to which the content item should be copied.
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
201 |
Copy created. |
401 |
Error - the user is not authorized to copy this content item to the given Location. |
404 |
Error - the source or destination resource does not exist. |
/content/objects/{contentId}/translations/{languageCode}
Delete translation (permanently) ¶
DELETE /content/objects/{contentId}/translations/{languageCode}
Permanently deletes a translation from all versions of a content item.
Possible responses
Code | Description |
---|---|
204 |
No Content |
401 |
Error - the user is not authorized to delete content item (content/remove policy). |
404 |
Error - the content item was not found. |
406 |
Error - the given translation does not exist for the content item. |
409 |
Error - the specified translation is the only one any version has or is the main translation. |
Get current version ¶
GET /content/objects/{contentId}/currentversion
Redirects to the current version of the content item.
Possible responses
Code | Description |
---|---|
200 | |
307 |
Temporary redirect. |
404 |
Error - the resource does not exist. |
Types
Type | Description |
---|---|
Version | Returns the VersionInfo for this version. |
VersionWrapper | JSON object with only a Version property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/107/versions/2">
<VersionInfo>
<id>578</id>
<versionNo>2</versionNo>
<status>PUBLISHED</status>
<modificationDate>2023-05-24T05:59:09+00:00</modificationDate>
<Creator media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<creationDate>2023-05-24T05:59:02+00:00</creationDate>
<initialLanguageCode>eng-GB</initialLanguageCode>
<languageCodes>eng-GB</languageCodes>
<VersionTranslationInfo media-type="application/vnd.ibexa.api.VersionTranslationInfo+xml">
<Language>
<languageCode>eng-GB</languageCode>
</Language>
</VersionTranslationInfo>
<names>
<value languageCode="eng-GB">Features</value>
</names>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="
file_copy
{
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/2",
"VersionInfo": {
"id": 578,
"versionNo": 2,
"status": "PUBLISHED",
"modificationDate": "2023-05-24T05:59:09+00:00",
"Creator": {
"_media-type": "application/vnd.ibexa.api.User+json",
"_href": "/api/ibexa/v2/user/users/14"
},
"creationDate": "2023-05-24T05:59:02+00:00",
"initialLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"VersionTranslationInfo": {
"_media-type": "application/vnd.ibexa.api.VersionTranslationInfo+json",
"Language": [
{
"languageCode": "eng-GB"
}
]
},
"names": {
"value": [
{
Create a draft from current version ¶
COPY /content/objects/{contentId}/currentversion
The system creates a new draft as a copy of the current version. COPY or POST with header X-HTTP-Method-Override COPY.
Header parameters
Accept
If set, the updated version is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Version+xml
application/vnd.ibexa.api.Version+json
|
Possible responses
Code | Description |
---|---|
201 |
Created |
401 |
Error - the user is not authorized to update this content item. |
403 |
Error - the current version is already a draft. |
404 |
Error - the content item was not found. |
Types
Type | Description |
---|---|
Version | Returns the VersionInfo for this version. |
VersionWrapper | JSON object with only a Version property. |
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/107/versions/4">
<VersionInfo>
<id>580</id>
<versionNo>4</versionNo>
<status>DRAFT</status>
<modificationDate>2023-05-24T06:08:47+00:00</modificationDate>
<Creator media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<creationDate>2023-05-24T06:08:47+00:00</creationDate>
<initialLanguageCode>eng-GB</initialLanguageCode>
<languageCodes>eng-GB</languageCodes>
<VersionTranslationInfo media-type="application/vnd.ibexa.api.VersionTranslationInfo+xml">
<Language>
<languageCode>eng-GB</languageCode>
</Language>
</VersionTranslationInfo>
<names>
<value languageCode="eng-GB">Features</value>
</names>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api
file_copy
{
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/5",
"VersionInfo": {
"id": 581,
"versionNo": 5,
"status": "DRAFT",
"modificationDate": "2023-05-24T06:09:49+00:00",
"Creator": {
"_media-type": "application/vnd.ibexa.api.User+json",
"_href": "/api/ibexa/v2/user/users/14"
},
"creationDate": "2023-05-24T06:09:49+00:00",
"initialLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"VersionTranslationInfo": {
"_media-type": "application/vnd.ibexa.api.VersionTranslationInfo+json",
"Language": [
{
"languageCode": "eng-GB"
}
]
},
"names": {
"value": [
{
/content/objects/{contentId}/versions
List versions ¶
GET /content/objects/{contentId}/versions
Returns a list of all versions of the content item. This method does not include fields and relations in the version elements of the response.
Header parameters
Accept
If set, the version list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.VersionList+xml
application/vnd.ibexa.api.VersionList+json
|
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user has no permission to read the versions. |
Types
Type | Description |
---|---|
VersionList | List of all versions of the content. |
VersionListWrapper | JSON object with only a VersionList property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<VersionList media-type="application/vnd.ibexa.api.VersionList+xml" href="/api/ibexa/v2/content/objects/61/versions">
<VersionItem>
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/61/versions/1"/>
<VersionInfo>
<id>521</id>
<versionNo>1</versionNo>
<status>PUBLISHED</status>
<modificationDate>2021-06-28T11:33:49+00:00</modificationDate>
<Creator media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<creationDate>2021-06-28T11:33:31+00:00</creationDate>
<initialLanguageCode>eng-GB</initialLanguageCode>
<languageCodes>eng-GB</languageCodes>
<VersionTranslationInfo media-type="application/vnd.ibexa.api.VersionTranslationInfo+xml">
<Language>
<languageCode>eng-GB</languageCode>
</Language>
file_copy
{
"VersionList": {
"_media-type": "application/vnd.ibexa.api.VersionList+json",
"_href": "/api/ibexa/v2/content/objects/61/versions",
"VersionItem": [
{
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/61/versions/1"
},
"VersionInfo": {
"id": 521,
"versionNo": 1,
"status": "PUBLISHED",
"modificationDate": "2021-06-28T11:33:49+00:00",
"Creator": {
"_media-type": "application/vnd.ibexa.api.User+json",
"_href": "/api/ibexa/v2/user/users/14"
},
"creationDate": "2021-06-28T11:33:31+00:00",
"initialLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"VersionTrans
Load version ¶
GET /content/objects/{contentId}/versions/{versionNo}
Loads a specific version of a content item. This method returns Fields and relations.
Header parameters
If-None-Match
Only return the version if the given ETag is the not current one, otherwise a 304 is returned.
Property | Value |
---|---|
Type | string |
Examples |
ETag
|
Accept
If set, the version list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Version+xml
application/vnd.ibexa.api.Version+json
|
Query parameters
Property | Type | Value |
---|---|---|
fields | string |
Fields which should be returned in the response. Comma separated list. |
responseGroups | string |
Alternative comma separated lists of predefined Field groups. |
languages | string |
Restricts the output of translatable Fields to the given languages. Comma separated list. |
Possible responses
Code | Description |
---|---|
200 | |
304 |
Error - the ETag does not match the current one. |
401 |
Error - the user is not authorized to read this content item. |
404 |
Error - the ID or version is not found. |
Types
Type | Description |
---|---|
Version | Returns the VersionInfo for this version. |
VersionWrapper | JSON object with only a Version property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/107/versions/5">
<VersionInfo>
<id>581</id>
<versionNo>5</versionNo>
<status>ARCHIVED</status>
<modificationDate>2023-05-24T06:11:50+00:00</modificationDate>
<Creator media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<creationDate>2023-05-24T06:09:49+00:00</creationDate>
<initialLanguageCode>eng-GB</initialLanguageCode>
<languageCodes>eng-GB</languageCodes>
<VersionTranslationInfo media-type="application/vnd.ibexa.api.VersionTranslationInfo+xml">
<Language>
<languageCode>eng-GB</languageCode>
</Language>
</VersionTranslationInfo>
<names>
<value languageCode="eng-GB">Features</value>
</names>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/
file_copy
{
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/5",
"VersionInfo": {
"id": 581,
"versionNo": 5,
"status": "ARCHIVED",
"modificationDate": "2023-05-24T06:11:50+00:00",
"Creator": {
"_media-type": "application/vnd.ibexa.api.User+json",
"_href": "/api/ibexa/v2/user/users/14"
},
"creationDate": "2023-05-24T06:09:49+00:00",
"initialLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"VersionTranslationInfo": {
"_media-type": "application/vnd.ibexa.api.VersionTranslationInfo+json",
"Language": [
{
"languageCode": "eng-GB"
}
]
},
"names": {
"value": [
{
Update version ¶
PATCH /content/objects/{contentId}/versions/{versionNo}
A specific draft is updated. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, the updated version is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Version+xml
application/vnd.ibexa.api.Version+json
|
If-match
Performs the patch only if the specified ETag is the current one.
Property | Value |
---|---|
Type | string |
Content-Type
The VersionUpdate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.VersionUpdate+xml
application/vnd.ibexa.api.VersionUpdate+json
|
Query parameters
Property | Type | Value |
---|---|---|
languages | string |
Restricts the output of translatable Fields to the given languages. Comma separated list. |
Possible responses
Code | Description |
---|---|
200 | |
400 |
Error - the input does not match the input schema definition. |
401 |
Error - the user is not authorized to update this version. |
403 |
Error - the version is not allowed to change - i.e. version is not a DRAFT. |
404 |
Error - the content ID or version ID does not exist. |
412 |
Error - the current ETag does not match with the one provided in the If-Match header. |
Types
Type | Description |
---|---|
VersionUpdate | This class is used to update a content version. |
VersionUpdateWrapper | JSON object with only a VersionUpdate property. |
Version | Returns the VersionInfo for this version. |
VersionWrapper | JSON object with only a Version property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<VersionUpdate xmlns:p="http://ibexa.co/API/Values"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibexa.co/API/Values ../VersionUpdate.xsd ">
<modificationDate>2012-02-20T12:00:00</modificationDate>
<initialLanguageCode>ger-DE</initialLanguageCode>
<fields>
<field>
<id>1234</id>
<fieldDefinitionIdentifier>title</fieldDefinitionIdentifier>
<languageCode>ger-DE</languageCode>
<fieldValue>Neuer Titel</fieldValue>
</field>
<field>
<id>1235</id>
<fieldDefinitionIdentifier>summary</fieldDefinitionIdentifier>
<languageCode>ger-DE</languageCode>
<fieldValue>Dies ist eine neuse Zusammenfassungy</fieldValue>
</field>
</fields>
</VersionUpdate>
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Version href="/content/objects/23/versions/4" media-type="application/vnd.ibexa.api.Version+xml">
<VersionInfo>
<id>45</id>
<versionNo>4</versionNo>
<status>DRAFT</status>
<modificationDate>2012-02-20T12:00:00</modificationDate>
<Creator href="/user/users/44" media-type="application/vnd.ibexa.api.User+xml" />
<creationDate>22012-02-20T12:00:00</creationDate>
<initialLanguageCode>ger-DE</initialLanguageCode>
<names>
<value languageCode="ger-DE">Neuer Titel</value>
</names>
<Content href="/content/objects/23" media-type="application/vnd.ibexa.api.ContentInfo+xml" />
</VersionInfo>
<Fields>
<field>
<id>1234</id>
<fieldDefinitionIdentifier>title</fieldDefinitionIdentifier>
<languageCode>ger-DE</languageCode>
<fieldValue>Neuer Titel</fieldValue>
</field>
<field>
<id>1235</id>
<fieldDefinitionIdentifier>summary</fieldDefinitionIdentifier>
<language
Create a draft from a version ¶
COPY /content/objects/{contentId}/versions/{versionNo}
The system creates a new draft as a copy of the given version. COPY or POST with header X-HTTP-Method-Override COPY.
Header parameters
Accept
If set, the updated version is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Version+xml
application/vnd.ibexa.api.Version+json
|
Possible responses
Code | Description |
---|---|
201 |
Created. |
401 |
Error - the user is not authorized to update this content item. |
404 |
Error - the content item was not found. |
Types
Type | Description |
---|---|
Version | Returns the VersionInfo for this version. |
VersionWrapper | JSON object with only a Version property. |
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Version media-type="application/vnd.ibexa.api.Version+xml" href="/api/ibexa/v2/content/objects/107/versions/7">
<VersionInfo>
<id>583</id>
<versionNo>7</versionNo>
<status>DRAFT</status>
<modificationDate>2023-05-24T06:13:50+00:00</modificationDate>
<Creator media-type="application/vnd.ibexa.api.User+xml" href="/api/ibexa/v2/user/users/14"/>
<creationDate>2023-05-24T06:13:50+00:00</creationDate>
<initialLanguageCode>eng-GB</initialLanguageCode>
<languageCodes>eng-GB</languageCodes>
<VersionTranslationInfo media-type="application/vnd.ibexa.api.VersionTranslationInfo+xml">
<Language>
<languageCode>eng-GB</languageCode>
</Language>
</VersionTranslationInfo>
<names>
<value languageCode="eng-GB">Features</value>
</names>
<Content media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api
file_copy
{
"Version": {
"_media-type": "application/vnd.ibexa.api.Version+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/8",
"VersionInfo": {
"id": 584,
"versionNo": 8,
"status": "DRAFT",
"modificationDate": "2023-05-24T06:14:07+00:00",
"Creator": {
"_media-type": "application/vnd.ibexa.api.User+json",
"_href": "/api/ibexa/v2/user/users/14"
},
"creationDate": "2023-05-24T06:14:07+00:00",
"initialLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"VersionTranslationInfo": {
"_media-type": "application/vnd.ibexa.api.VersionTranslationInfo+json",
"Language": [
{
"languageCode": "eng-GB"
}
]
},
"names": {
"value": [
{
Delete content version ¶
DELETE /content/objects/{contentId}/versions/{versionNo}
Deletes the content version.
Possible responses
Code | Description |
---|---|
204 |
No Content - the version is deleted. |
404 |
Error - the content item or version were not found. |
401 |
Error - the user is not authorized to delete this version. |
403 |
Error - the version is in published state. |
Publish a content version ¶
PUBLISH /content/objects/{contentId}/versions/{versionNo}
Publishes the content version. PUBLISH or POST with header X-HTTP-Method-Override PUBLISH
Possible responses
Code | Description |
---|---|
204 |
No Content - the content version is published. |
401 |
Error - the user is not authorized to publish this version. |
403 |
Error - the version is not a draft. |
404 |
Error - the content item or version were not found. |
/content/objects/{contentId}/versions/{versionNo}/translations/{languageCode}
Delete translation from version draft ¶
DELETE /content/objects/{contentId}/versions/{versionNo}/translations/{languageCode}
Removes a translation from a version draft.
Possible responses
Code | Description |
---|---|
204 |
No Content - removes a translation from a version draft. |
401 |
Error - the user is not authorized to delete this translation. |
403 |
Error - the version is not in draft state. |
404 |
Error - the content item or version number were not found. |
406 |
Error - the given translation does not exist for the version. |
409 |
Error - the specified translation is the only one the version has or is the main translation. |
Load Relations of content item version ¶
GET /content/objects/{contentId}/versions/{versionNo}/relations
Loads the Relations of the given version.
Header parameters
Accept
If set, the Relation is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.RelationList+xml
application/vnd.ibexa.api.RelationList+json
|
Query parameters
Property | Type | Value |
---|---|---|
offset | integer |
The offset of the result set. |
limit | integer |
The number of bookmarks returned. |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to read this content item. |
404 |
Error - the content item was not found. |
Types
Type | Description |
---|---|
RelationList | Class representing a list of relations between content. |
RelationListWrapper | JSON object with only a Relations property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Relations media-type="application/vnd.ibexa.api.RelationList+xml" href="/api/ibexa/v2/content/objects/107/versions/9/relations">
<Relation media-type="application/vnd.ibexa.api.Relation+xml" href="/api/ibexa/v2/content/objects/107/versions/9/relations/7">
<SourceContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/107"/>
<DestinationContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/52"/>
<RelationType>LINK</RelationType>
</Relation>
</Relations>
file_copy
{
"Relations": {
"_media-type": "application/vnd.ibexa.api.RelationList+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/9/relations",
"Relation": [
{
"_media-type": "application/vnd.ibexa.api.Relation+json",
"_href": "/api/ibexa/v2/content/objects/107/versions/9/relations/7",
"SourceContent": {
"_media-type": "application/vnd.ibexa.api.ContentInfo+json",
"_href": "/api/ibexa/v2/content/objects/107"
},
"DestinationContent": {
"_media-type": "application/vnd.ibexa.api.ContentInfo+json",
"_href": "/api/ibexa/v2/content/objects/52"
},
"RelationType": "LINK"
}
]
}
}
Create new Relation ¶
POST /content/objects/{contentId}/versions/{versionNo}/relations
Creates a new Relation of type COMMON for the given draft.
Header parameters
Accept
If set, the updated version is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Relation+xml
application/vnd.ibexa.api.Relation+json
|
Content-Type
The RelationCreate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.RelationCreate+xml
application/vnd.ibexa.api.RelationCreate+json
|
Possible responses
Code | Description |
---|---|
201 |
Types
Type | Description |
---|---|
RelationCreate | |
RelationCreateWrapper | JSON object with only a RelationCreate property. |
Relation | Class representing a relation between content. |
RelationWrapper | JSON object with only a Relation property. |
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Relation media-type="application/vnd.ibexa.api.Relation+xml" href="/api/ibexa/v2/content/objects/59/versions/2/relations/40">
<SourceContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/59"/>
<DestinationContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/59"/>
<RelationType>COMMON</RelationType>
</Relation>
file_copy
{
"Relation": {
"_media-type": "application/vnd.ibexa.api.Relation+json",
"_href": "/api/ibexa/v2/content/objects/59/versions/2/relations/38",
"SourceContent": {
"_media-type": "application/vnd.ibexa.api.ContentInfo+json",
"_href": "/api/ibexa/v2/content/objects/59"
},
"DestinationContent": {
"_media-type": "application/vnd.ibexa.api.ContentInfo+json",
"_href": "/api/ibexa/v2/content/objects/59"
},
"RelationType": "COMMON"
}
}
Load Relation ¶
GET /content/objects/{contentId}/versions/{versionNo}/relations/{relationId}
Loads a Relation for the given content item.
Header parameters
Accept
If set, the Relation is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Relation+xml
application/vnd.ibexa.api.Relation+json
|
Possible responses
Code | Description |
---|---|
200 |
OK - loads a Relation for the given content item. |
401 |
Error - the user is not authorized to read this content item. |
404 |
Error - the content item with the given ID or the Relation does not exist. |
Types
Type | Description |
---|---|
Relation | Class representing a relation between content. |
RelationWrapper | JSON object with only a Relation property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Relation media-type="application/vnd.ibexa.api.Relation+xml" href="/api/ibexa/v2/content/objects/86/versions/1/relations/1">
<SourceContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/86"/>
<DestinationContent media-type="application/vnd.ibexa.api.ContentInfo+xml" href="/api/ibexa/v2/content/objects/86"/>
<RelationType>COMMON</RelationType>
</Relation>
Delete Relation ¶
DELETE /content/objects/{contentId}/versions/{versionNo}/relations/{relationId}
Deletes a Relation of the given draft.
Possible responses
Code | Description |
---|---|
204 |
No Content - deleted a Relation of the given draft. |
401 |
Error - the user is not authorized to delete this Relation. |
403 |
Error - the Relation is not of type COMMON or the given version is not a draft. |
404 |
Error - content item or the Relation were not found in the given version. |
/content/objects/{contentId}/relations
Load Relations of content item ¶
GET /content/objects/{contentId}/relations
Redirects to the Relations of the current version.
Possible responses
Code | Description |
---|---|
307 |
Temporary redirect. |
401 |
Error - the user is not authorized to read this content item. |
404 |
Error - the content item was not found. |
Create new Location for content item ¶
POST /content/objects/{contentId}/locations
Creates a new Location for the given content item.
Header parameters
Accept
If set, the new Location is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Location+xml
application/vnd.ibexa.api.Location+json
|
Content-Type
The LocationCreate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.LocationCreate+json
application/vnd.ibexa.api.LocationCreate+xml
|
Possible responses
Code | Description |
---|---|
201 | |
400 |
Error - the input does not match the input schema definition. |
401 |
Error - the user is not authorized to create this Location. |
403 |
Error - a Location under the given parent ID already exists. |
Types
Type | Description |
---|---|
LocationCreate | |
LocationCreateWrapper | JSON object with only a LocationCreate property. |
Location | This class represents a Location in the Repository. |
LocationWrapper | JSON object with only a Location property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<LocationCreate>
<ParentLocation href="/api/ibexa/v2/content/locations/1/42" />
<priority>0</priority>
<hidden>false</hidden>
<sortField>PATH</sortField>
<sortOrder>ASC</sortOrder>
</LocationCreate>
file_copy
{
"LocationCreate": {
"ParentLocation": {
"_href": "/api/ibexa/v2/content/locations/1/59"
},
"priority": "0",
"hidden": false,
"sortField": "PATH",
"sortOrder": "ASC"
}
}
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/42/96">
<id>96</id>
<priority>0</priority>
<hidden>false</hidden>
<invisible>true</invisible>
<explicitlyHidden>false</explicitlyHidden>
<ParentLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/42"/>
<pathString>/1/2/42/96/</pathString>
<depth>3</depth>
<childCount>0</childCount>
<remoteId>58133c8c75230e5debe362a28b92d27a</remoteId>
<Children media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/locations/1/2/42/96/children"/>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/63"/>
<sortField>PATH</sortField>
<sortOrder>ASC</sortOrder>
<UrlAliases media-type="application/vnd.ibexa.api.UrlAliasRefList+xml" href="/api/ibexa/v2/content/locations/1/2/42/96/urlalia
file_copy
{
"Location": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/59/114",
"id": 114,
"priority": 0,
"hidden": false,
"invisible": false,
"explicitlyHidden": false,
"ParentLocation": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/59"
},
"pathString": "/1/2/59/114/",
"depth": 3,
"childCount": 0,
"remoteId": "47a1e4ee082fb64e93a822dcfe3a5614",
"Children": {
"_media-type": "application/vnd.ibexa.api.LocationList+json",
"_href": "/api/ibexa/v2/content/locations/1/2/59/114/children"
},
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/59"
},
"sortField": "PATH",
"sortOrder": "ASC",
"UrlAli
Get Locations for content item ¶
GET /content/objects/{contentId}/locations
Loads all Locations for the given content item.
Header parameters
Accept
If set, the Location list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.LocationList+xml
application/vnd.ibexa.api.LocationList+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to read this content item. |
404 |
Error - the content item with the given ID does not exist. |
Types
Type | Description |
---|---|
LocationList | This class represents a queried Location list holding a totalCount and a partial list of Locations (by offset/limit parameters and permission filters). |
LocationListWrapper | JSON object with only a LocationList property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<LocationList media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/objects/63/locations">
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/57/65"/>
</LocationList>
file_copy
{
"LocationList": {
"_media-type": "application/vnd.ibexa.api.LocationList+json",
"_href": "/api/ibexa/v2/content/objects/63/locations",
"Location": [
{
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/57/65"
}
]
}
}
Get Object states of content item ¶
GET /content/objects/{contentId}/objectstates
Returns the Object states of a content item
Header parameters
Accept
If set, the Object states are returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentObjectStates+xml
application/vnd.ibexa.api.ContentObjectStates+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - returns the Object state. |
404 |
Error - The content item does not exist. |
Types
Type | Description |
---|---|
ContentObjectStates | Represents a list of object states. |
ContentObjectStatesWrapper | JSON object with only a ContentObjectStates property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ContentObjectStates media-type="application/vnd.ibexa.api.ContentObjectStates+xml">
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates/1"/>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/3/objectstates/3"/>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/7/objectstates/7"/>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/8/objectstates/8"/>
</ContentObjectStates>
file_copy
{
"ContentObjectStates": {
"_media-type": "application/vnd.ibexa.api.ContentObjectStates+json",
"ObjectState": [
{
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates/1"
},
{
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/3/objectstates/3"
},
{
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7/objectstates/7"
},
{
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/8/objectstates/8"
}
]
}
}
Set Object states of content item ¶
PATCH /content/objects/{contentId}/objectstates
Updates Object states of a content item. An Object state in the input overrides the state of the Object state group. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, the updated Object state is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentObjectStates+xml
application/vnd.ibexa.api.ContentObjectStates+json
|
Content-Type
The content item Object states input schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ContentObjectStates+xml
application/vnd.ibexa.api.ContentObjectStates+json
|
If-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
204 |
OK - Object state updated. |
400 |
Error - The input does not match the input schema definition. |
401 |
Error - The user is not authorized to set an Object state. |
403 |
Error - The input contains multiple Object states of the same Object state group. |
412 |
Error - The current ETag does not match the one provided in the If-Match header. |
Types
Type | Description |
---|---|
ContentObjectStates | Represents a list of object states. |
ContentObjectStatesWrapper | JSON object with only a ContentObjectStates property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ContentObjectStates>
<ObjectState href="/api/ibexa/v2/content/objectstategroups/2/objectstates/2" />
</ContentObjectStates>
file_copy
{
"ContentObjectStates": {
"ObjectState": [
{
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates/2"
}
]
}
}
Code: 204
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ContentObjectStates media-type="application/vnd.ibexa.api.ContentObjectStates+xml">
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates/2"/>
</ContentObjectStates>
file_copy
{
"ContentObjectStates": {
"_media-type": "application\/vnd.ibexa.api.ContentObjectStates+json",
"ObjectState": [
{
"_media-type": "application\/vnd.ibexa.api.ObjectState+json",
"_href": "\/api\/ibexa\/v2\/content\/objectstategroups\/2\/objectstates\/2"
}
]
}
}
/content/objects/{contentId}/hide
Hide content item ¶
POST /content/objects/{contentId}/hide
Makes or keep the content item invisible
Possible responses
Code | Description |
---|---|
204 |
OK - Object item is hidden. |
401 |
Error - The user has no permission to change Object item visibility. |
404 |
Error - The content item was not found. |
/content/objects/{contentId}/reveal
Reveal content item ¶
POST /content/objects/{contentId}/reveal
Makes or keep the content item visible
Possible responses
Code | Description |
---|---|
204 |
OK - Object item is revealed. |
401 |
Error - The user has no permission to change Object item visibility. |
404 |
Error - The content item was not found. |
/content/objectstategroups
List Object state groups ¶
GET /content/objectstategroups
Returns a list of all Object state groups.
Header parameters
Accept
If set, the Object state group list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroupList+xml
application/vnd.ibexa.api.ObjectStateGroupList+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - returns a list of Object state groups. |
401 |
Error - The user has no permission to read Object state groups. |
Types
Type | Description |
---|---|
ObjectStateGroupList | List of Object state groups. |
ObjectStateGroupListWrapper | JSON object with only a ObjectStateGroupList property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroupList media-type="application/vnd.ibexa.api.ObjectStateGroupList+xml" href="/api/ibexa/v2/content/objectstategroups">
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/2">
<id>2</id>
<identifier>ez_lock</identifier>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<ObjectStates media-type="application/vnd.ibexa.api.ObjectStateList+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates"/>
<names>
<value languageCode="eng-GB">Lock</value>
</names>
<descriptions>
<value languageCode="eng-GB"></value>
</descriptions>
</ObjectStateGroup>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/3">
<id>3</id>
<identifier>accessi
file_copy
{
"ObjectStateGroupList": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroupList+json",
"_href": "/api/ibexa/v2/content/objectstategroups",
"ObjectStateGroup": [
{
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2",
"id": 2,
"identifier": "ez_lock",
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"ObjectStates": {
"_media-type": "application/vnd.ibexa.api.ObjectStateList+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates"
},
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Lock"
}
]
},
Create Object state group ¶
POST /content/objectstategroups
Creates a new Object state group.
Header parameters
Accept
If set, the new Object state group is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroup+xml
application/vnd.ibexa.api.ObjectStateGroup+json
|
Content-Type
The Object state group input schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroupCreate+json
application/vnd.ibexa.api.ObjectStateGroupCreate+xml
|
Possible responses
Code | Description |
---|---|
201 |
Object state group created. |
400 |
Error - The input does not match the input schema definition. |
401 |
Error - The user is not authorized to create an Object state group. |
403 |
Error - An Object state group with the same identifier already exists. |
Types
Type | Description |
---|---|
ObjectStateGroupCreate | This class represents a value for creating Object state groups. |
ObjectStateGroupCreateWrapper | JSON object with only a ObjectStateGroupCreate property. |
ObjectStateGroup | This class represents an Object state group value. |
ObjectStateGroupWrapper | JSON object with only a ObjectStateGroup property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroupCreate>
<identifier>custom</identifier>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<names>
<value languageCode="eng-GB">Custom State</value>
</names>
<descriptions>
<value languageCode="eng-GB">Custom Object state</value>
</descriptions>
</ObjectStateGroupCreate>
file_copy
{
"ObjectStateGroupCreate": {
"identifier": "custom-states",
"defaultLanguageCode": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom State"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom Object state"
}
]
}
}
}
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/5">
<id>5</id>
<identifier>custom-states</identifier>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<ObjectStates media-type="application/vnd.ibexa.api.ObjectStateList+xml" href="/api/ibexa/v2/content/objectstategroups/5/objectstates"/>
<names>
<value languageCode="eng-GB">Custom State</value>
</names>
<descriptions>
<value languageCode="eng-GB">Custom Object state</value>
</descriptions>
</ObjectStateGroup>
file_copy
{
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7",
"id": 7,
"identifier": "custom-states",
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"ObjectStates": {
"_media-type": "application/vnd.ibexa.api.ObjectStateList+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7/objectstates"
},
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom State"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom Object state"
}
]
}
}
}
Get Object state group ¶
GET /content/objectstategroups/{objectStateGroupId}
Returns the Object state group with the provided ID.
Header parameters
Accept
If set, the Object state group is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroup+xml
application/vnd.ibexa.api.ObjectStateGroup+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - returns the Object state group. |
401 |
Error - The user is not authorized to read this Object state group. |
404 |
Error - The Object state group does not exist. |
Types
Type | Description |
---|---|
ObjectStateGroup | This class represents an Object state group value. |
ObjectStateGroupWrapper | JSON object with only a ObjectStateGroup property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/7">
<id>7</id>
<identifier>custom-states</identifier>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<ObjectStates media-type="application/vnd.ibexa.api.ObjectStateList+xml" href="/api/ibexa/v2/content/objectstategroups/7/objectstates"/>
<names>
<value languageCode="eng-GB">Custom State</value>
</names>
<descriptions>
<value languageCode="eng-GB">Custom Object state</value>
</descriptions>
</ObjectStateGroup>
file_copy
{
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7",
"id": 7,
"identifier": "custom-states",
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"ObjectStates": {
"_media-type": "application/vnd.ibexa.api.ObjectStateList+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7/objectstates"
},
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom State"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom Object state"
}
]
}
}
}
Update Object state group ¶
PATCH /content/objectstategroups/{objectStateGroupId}
Updates an Object state group. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, the updated Object state group is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroup+xml
application/vnd.ibexa.api.ObjectStateGroup+json
|
Content-Type
The Object state group input schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateGroupUpdate+json
application/vnd.ibexa.api.ObjectStateGroupUpdate+xml
|
If-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - Object stated group updated. |
400 |
Error - The input does not match the input schema definition. |
401 |
Error - The user is not authorized to update an Object state group. |
403 |
Error - An Object state group with the provided identifier already exists. |
412 |
Error - The current ETag does not match the one provided in the If-Match header. |
Types
Type | Description |
---|---|
ObjectStateGroupUpdate | This class represents a value for updating Object state groups. |
ObjectStateGroupUpdateWrapper | JSON object with only a ObjectStateGroupUpdate property. |
ObjectStateGroup | This class represents an Object state group value. |
ObjectStateGroupWrapper | JSON object with only a ObjectStateGroup property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroupUpdate>
<names>
<value languageCode="eng-GB">New Custom State name</value>
</names>
</ObjectStateGroupUpdate>
file_copy
{
"ObjectStateGroupUpdate": {
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Custom State name"
}
]
}
}
}
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/7">
<id>7</id>
<identifier>custom-states</identifier>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<ObjectStates media-type="application/vnd.ibexa.api.ObjectStateList+xml" href="/api/ibexa/v2/content/objectstategroups/7/objectstates"/>
<names>
<value languageCode="eng-GB">New Custom State name</value>
</names>
<descriptions>
<value languageCode="eng-GB">Custom Object state</value>
</descriptions>
</ObjectStateGroup>
file_copy
{
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7",
"id": 7,
"identifier": "custom-states",
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"ObjectStates": {
"_media-type": "application/vnd.ibexa.api.ObjectStateList+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7/objectstates"
},
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Custom State name"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Custom Object state"
}
]
}
}
}
Delete Object state group ¶
DELETE /content/objectstategroups/{objectStateGroupId}
Deletes the given Object state group including Object states.
Possible responses
Code | Description |
---|---|
204 |
No Content - Object state group deleted. |
401 |
Error - The user is not authorized to delete an Object state group. |
404 |
Error - The Object state group does not exist. |
List Object states ¶
GET /content/objectstategroups/{objectStateGroupId}/objectstates
Returns a list of all Object states of the given group.
Header parameters
Accept
If set, the Object state list is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateList+xml
application/vnd.ibexa.api.ObjectStateList+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - returns a list of Object states. |
401 |
Error - The user has no permission to read Object states. |
Types
Type | Description |
---|---|
ObjectStateList | List of Object states. |
ObjectStateListWrapper | JSON object with only a ObjectStateList property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateList media-type="application/vnd.ibexa.api.ObjectStateList+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates">
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates/1">
<id>1</id>
<identifier>not_locked</identifier>
<priority>0</priority>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/2"/>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<names>
<value languageCode="eng-GB">Not locked</value>
</names>
<descriptions>
<value languageCode="eng-GB"></value>
</descriptions>
</ObjectState>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates/2">
file_copy
{
"ObjectStateList": {
"_media-type": "application/vnd.ibexa.api.ObjectStateList+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates",
"ObjectState": [
{
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates/1",
"id": 1,
"identifier": "not_locked",
"priority": 0,
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2"
},
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Not locked"
}
Create Object state ¶
POST /content/objectstategroups/{objectStateGroupId}/objectstates
Creates a new Object state.
Header parameters
Accept
If set, the new Object state is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectState+xml application/vnd.ibexa.api.ObjectState+json
|
Content-Type
The Object state input schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateCreate+json
application/vnd.ibexa.api.ObjectStateCreate+xml
|
Possible responses
Code | Description |
---|---|
201 |
Object state created. |
400 |
Error - The input does not match the input schema definition. |
401 |
Error - The user is not authorized to create an Object state. |
403 |
Error - An Object state with the same identifier already exists in the given group. |
Types
Type | Description |
---|---|
ObjectStateCreate | This class represents a value for creating Object states. |
ObjectStateCreateWrapper | JSON object with only a ObjectStateCreate property. |
ObjectState | This class represents a Object state value. |
ObjectStateWrapper | JSON object with only a ObjectState property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateCreate>
<identifier>new-state</identifier>
<priority>1</priority>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<names>
<value languageCode="eng-GB">New State</value>
</names>
<descriptions>
<value languageCode="eng-GB">New Object State</value>
</descriptions>
</ObjectStateCreate>
file_copy
{
"ObjectStateCreate": {
"identifier": "new-state",
"priority": "1",
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New State"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Object State"
}
]
}
}
}
Code: 201
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/7/objectstates/5">
<id>5</id>
<identifier>new-state</identifier>
<priority>0</priority>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/7"/>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<names>
<value languageCode="eng-GB">New State</value>
</names>
<descriptions>
<value languageCode="eng-GB">New Object State</value>
</descriptions>
</ObjectState>
file_copy
{
"ObjectState": {
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7/objectstates/7",
"id": 7,
"identifier": "new-state",
"priority": 0,
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/7"
},
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New State"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Object State"
}
]
}
}
}
Get Object state ¶
GET /content/objectstategroups/{objectStateGroupId}/objectstates/{objectStateId}
Returns the Object state.
Header parameters
Accept
If set, the Object State is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectState+xml
application/vnd.ibexa.api.ObjectState+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - returns the Object state. |
401 |
Error - The user is not authorized to read this Object state. |
404 |
Error - The Object state does not exist. |
Types
Type | Description |
---|---|
ObjectState | This class represents a Object state value. |
ObjectStateWrapper | JSON object with only a ObjectState property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/6/objectstates/2">
<id>2</id>
<identifier>locked</identifier>
<priority>1</priority>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/2"/>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<names>
<value languageCode="eng-GB">Locked</value>
</names>
<descriptions>
<value languageCode="eng-GB"></value>
</descriptions>
</ObjectState>
file_copy
{
"ObjectState": {
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates/2",
"id": 2,
"identifier": "locked",
"priority": 1,
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/2"
},
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "Locked"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": ""
}
]
}
}
}
Update Object state ¶
PATCH /content/objectstategroups/{objectStateGroupId}/objectstates/{objectStateId}
Updates an Object state. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, the updated Object state is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectState+xml
application/vnd.ibexa.api.ObjectState+json
|
Content-Type
The Object state input schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.ObjectStateUpdate+json
application/vnd.ibexa.api.ObjectStateUpdate+xml
|
If-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 |
OK - Object State updated |
400 |
Error - The input does not match the input schema definition. |
401 |
Error - The user is not authorized to update the Object state. |
403 |
Error - An Object state with the provided identifier already exists in this group. |
412 |
Error - The current ETag does not match the one provided in the If-Match header. |
Types
Type | Description |
---|---|
ObjectStateUpdate | This class represents a value for updating Object states. |
ObjectStateUpdateWrapper | JSON object with only a ObjectStateUpdate property. |
ObjectState | This class represents a Object state value. |
ObjectStateWrapper | JSON object with only a ObjectState property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectStateUpdate>
<priority>3</priority>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<names>
<value languageCode="eng-GB">New Object State name</value>
</names>
</ObjectStateUpdate>
file_copy
{
"ObjectStateUpdate": {
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Object State name"
}
]
}
}
}
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<ObjectState media-type="application/vnd.ibexa.api.ObjectState+xml" href="/api/ibexa/v2/content/objectstategroups/2/objectstates/2">
<id>2</id>
<identifier>locked</identifier>
<priority>1</priority>
<ObjectStateGroup media-type="application/vnd.ibexa.api.ObjectStateGroup+xml" href="/api/ibexa/v2/content/objectstategroups/2"/>
<defaultLanguageCode>eng-GB</defaultLanguageCode>
<languageCodes>eng-GB</languageCodes>
<names>
<value languageCode="eng-GB">New Object State name</value>
</names>
<descriptions>
<value languageCode="eng-GB"></value>
</descriptions>
</ObjectState>
file_copy
{
"ObjectState": {
"_media-type": "application/vnd.ibexa.api.ObjectState+json",
"_href": "/api/ibexa/v2/content/objectstategroups/6/objectstates/9",
"id": 9,
"identifier": "closed",
"priority": 1,
"ObjectStateGroup": {
"_media-type": "application/vnd.ibexa.api.ObjectStateGroup+json",
"_href": "/api/ibexa/v2/content/objectstategroups/6"
},
"defaultLanguageCode": "eng-GB",
"languageCodes": "eng-GB",
"names": {
"value": [
{
"_languageCode": "eng-GB",
"#text": "New Object State name"
}
]
},
"descriptions": {
"value": [
{
"_languageCode": "eng-GB",
"#text": ""
}
]
}
}
}
Delete Object state ¶
DELETE /content/objectstategroups/{objectStateGroupId}/objectstates/{objectStateId}
Deletes provided Object state.
Possible responses
Code | Description |
---|---|
204 |
No Content - Object state deleted. |
401 |
Error - The user is not authorized to delete an Object state. |
404 |
Error - The Object state does not exist. |
/content/locations
/content/locations
Load Locations by id/remoteId/urlAlias ¶
GET /content/locations
Loads the Location for a given ID (x), remote ID or URL alias.
Header parameters
Accept
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.LocationList+xml
application/vnd.ibexa.api.LocationList+json
|
Query parameters
Property | Type | Value |
---|---|---|
id | string |
The ID of the Location. If present, the Location with the given ID is returned. |
remoteId | string |
The remote ID of the Location. If present, the Location with the given remote ID is returned. |
urlAlias | string |
One of the URL aliases of the Location. If present, the Location with given URL Alias is returned. |
Possible responses
Code | Description |
---|---|
307 |
Temporary redirect to the main resource URL. |
200 | |
404 |
Error - the Location with the given ID (remote ID or URL Alias) does not exist. |
Types
Type | Description |
---|---|
Location | This class represents a Location in the Repository. |
LocationWrapper | JSON object with only a Location property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/58">
<id>58</id>
<priority>0</priority>
<hidden>false</hidden>
<invisible>false</invisible>
<explicitlyHidden>false</explicitlyHidden>
<ParentLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2"/>
<pathString>/1/2/58/</pathString>
<depth>2</depth>
<childCount>3</childCount>
<remoteId>0cfe62f27753448d79aaa8acd8d01699</remoteId>
<Children media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/locations/1/2/58/children"/>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/57"/>
<sortField>PATH</sortField>
<sortOrder>ASC</sortOrder>
<UrlAliases media-type="application/vnd.ibexa.api.UrlAliasRefList+xml" href="/api/ibexa/v2/content/locations/1/2/58/urlaliases"/>
<Co
file_copy
{
"Location": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/58",
"id": 58,
"priority": 0,
"hidden": false,
"invisible": false,
"explicitlyHidden": false,
"ParentLocation": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2"
},
"pathString": "/1/2/58/",
"depth": 2,
"childCount": 3,
"remoteId": "0cfe62f27753448d79aaa8acd8d01699",
"Children": {
"_media-type": "application/vnd.ibexa.api.LocationList+json",
"_href": "/api/ibexa/v2/content/locations/1/2/58/children"
},
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/57"
},
"sortField": "PATH",
"sortOrder": "ASC",
"UrlAliases": {
Load Location ¶
GET /content/locations/{path}
Loads the Location for the given path e.g. '/content/locations/1/2/61'.
Header parameters
Accept
If set, the new Location is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Location+xml
application/vnd.ibexa.api.Location+json
|
If-None-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to read this Location. |
404 |
Error - the Location with the given path does not exist. |
Types
Type | Description |
---|---|
Location | This class represents a Location in the Repository. |
LocationWrapper | JSON object with only a Location property. |
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/61">
<id>61</id>
<priority>0</priority>
<hidden>false</hidden>
<invisible>false</invisible>
<ParentLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2"/>
<pathString>/1/2/61/</pathString>
<depth>2</depth>
<childCount>0</childCount>
<remoteId>2cfa66027e3806b113d994c9c26d3a66</remoteId>
<Children media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/locations/1/2/61/children"/>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/60"/>
<sortField>NAME</sortField>
<sortOrder>ASC</sortOrder>
<UrlAliases media-type="application/vnd.ibexa.api.UrlAliasRefList+xml" href="/api/ibexa/v2/content/locations/1/2/61/urlaliases"/>
<ContentInfo media-type="application/vnd.ibexa.api
file_copy
{
"Location": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/58",
"id": 58,
"priority": 0,
"hidden": false,
"invisible": false,
"explicitlyHidden": false,
"ParentLocation": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2"
},
"pathString": "/1/2/58/",
"depth": 2,
"childCount": 3,
"remoteId": "0cfe62f27753448d79aaa8acd8d01699",
"Children": {
"_media-type": "application/vnd.ibexa.api.LocationList+json",
"_href": "/api/ibexa/v2/content/locations/1/2/58/children"
},
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/57"
},
"sortField": "PATH",
"sortOrder": "ASC",
"UrlAliases": {
Move subtree ¶
MOVE /content/locations/{path}
Moves Location to a different parent. The destination can also be '/content/trash' where the Location is put into the trash. (NOTE - Be aware that the user might lose access to the item after it has been moved, for example when read access is limited by a subtree). MOVE or POST with header X-HTTP-Method-Override MOVE.
Header parameters
Destination
A parent Location resource to which the Location is moved e.g. '/api/ibexa/v2/content/locations/1/63'.
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
201 |
Created. If destination is '/api/ibexa/v2/content/trash' and content only has one Location (NOTE - Like on normal subtree moves, be aware that the user might lose access to the item after it has been moved to Trash.) |
204 |
No Content. If destination is '/api/ibexa/v2/content/trash' and content still has other Locations (no trash item is created). |
401 |
Error - the user is not authorized to move this Location. |
404 |
Error - the Location with the given ID does not exist. |
Copy subtree ¶
COPY /content/locations/{path}
Copies the subtree to a different parent. COPY or POST with header X-HTTP-Method-Override COPY.
Header parameters
Destination
A parent Location resource to which the Location is moved e.g. '/api/ibexa/v2/content/locations/1/63'.
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
201 |
Created. Copied the subtree to a different parent. |
401 |
Error - the user is not authorized to move this Location. |
404 |
Error - the Location with the given ID does not exist. |
Delete subtree ¶
DELETE /content/locations/{path}
Deletes the complete subtree for the given path. Every content item which does not have any other Location is deleted. Otherwise the deleted Location is removed from the content item. The children are recursively deleted.
Possible responses
Code | Description |
---|---|
204 |
No Content - deleted. |
401 |
Error - the user is not authorized to delete this subtree. |
404 |
Error - the Location with the given ID does not exist. |
Update Location ¶
PATCH /content/locations/{path}
Updates the Location. This method can also be used to hide/reveal a Location via the hidden field in the LocationUpdate. PATCH or POST with header X-HTTP-Method-Override PATCH.
Header parameters
Accept
If set, the Location is returned in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.Location+xml
application/vnd.ibexa.api.Location+json
|
Content-Type
The LocationUpdate schema encoded in XML or JSON format.
Property | Value |
---|---|
Type | string |
Examples |
application/vnd.ibexa.api.LocationUpdate+xml
application/vnd.ibexa.api.LocationUpdate+json
|
If-Match
ETag
Property | Value |
---|---|
Type | string |
Possible responses
Code | Description |
---|---|
200 | |
401 |
Error - the user is not authorized to update this Location. |
404 |
Error - the Location with the given ID does not exist. |
Types
Type | Description |
---|---|
LocationUpdate | This class is used for updating Location meta data. |
LocationUpdateWrapper | JSON object with only a LocationUpdate property. |
Location | This class represents a Location in the Repository. |
LocationWrapper | JSON object with only a Location property. |
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<LocationUpdate>
<priority>3</priority>
<hidden>true</hidden>
<remoteId>remoteId-qwert999</remoteId>
<sortField>CLASS</sortField>
<sortOrder>DESC</sortOrder>
</LocationUpdate>
file_copy
{
"LocationUpdate": {
"priority": "3",
"hidden": true,
"remoteId": "remoteId-qwert999",
"sortField": "NAME",
"sortOrder": "DESC"
}
}
Code: 200
file_copy
<?xml version="1.0" encoding="UTF-8"?>
<Location media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2/58">
<id>58</id>
<priority>0</priority>
<hidden>false</hidden>
<invisible>false</invisible>
<explicitlyHidden>false</explicitlyHidden>
<ParentLocation media-type="application/vnd.ibexa.api.Location+xml" href="/api/ibexa/v2/content/locations/1/2"/>
<pathString>/1/2/58/</pathString>
<depth>2</depth>
<childCount>3</childCount>
<remoteId>0cfe62f27753448d79aaa8acd8d01699</remoteId>
<Children media-type="application/vnd.ibexa.api.LocationList+xml" href="/api/ibexa/v2/content/locations/1/2/58/children"/>
<Content media-type="application/vnd.ibexa.api.Content+xml" href="/api/ibexa/v2/content/objects/57"/>
<sortField>PATH</sortField>
<sortOrder>ASC</sortOrder>
<UrlAliases media-type="application/vnd.ibexa.api.UrlAliasRefList+xml" href="/api/ibexa/v2/content/locations/1/2/58/urlaliases"/>
<Co
file_copy
{
"Location": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2/59",
"id": 59,
"priority": 3,
"hidden": true,
"invisible": true,
"explicitlyHidden": true,
"ParentLocation": {
"_media-type": "application/vnd.ibexa.api.Location+json",
"_href": "/api/ibexa/v2/content/locations/1/2"
},
"pathString": "/1/2/59/",
"depth": 2,
"childCount": 5,
"remoteId": "remoteId-qwert999",
"Children": {
"_media-type": "application/vnd.ibexa.api.LocationList+json",
"_href": "/api/ibexa/v2/content/locations/1/2/59/children"
},
"Content": {
"_media-type": "application/vnd.ibexa.api.Content+json",
"_href": "/api/ibexa/v2/content/objects/58"
},
"sortField": "NAME",
"sortOrder": "DESC",
"UrlAliases": {
"_media-type