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.

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"/
                            
View more

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":
                            
View more

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.

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"/>
         
                            
View more

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,
                
                            
View more

/bookmark/{locationId}

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

/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></
                            
View more

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>"
            }
 
                            
View more

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
                            
View more

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
                            
View more

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": {
 
                            
View more
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.

/content/objects/{contentId}

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.

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
                            
View more

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
                            
View more
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>

                            
View more
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
                            
View more
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.

/content/objects/{contentId}/currentversion

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.

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="
                            
View more

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": [
                    {
                 
                            
View more
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.

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
                            
View more

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": [
                    {
                     
                            
View more

/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.

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>
       
                            
View more

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
                            
View more

/content/objects/{contentId}/versions/{versionNo}

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.

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="/
                            
View more

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": [
                    {
                  
                            
View more
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>

                            
View more
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
                            
View more
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.

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
                            
View more

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": [
                    {
                     
                            
View more
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.

/content/objects/{contentId}/versions/{versionNo}/relations

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.

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>

                            
View more

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"
            }
        ]
    }
}

                            
View more
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.

file_copy

                                <?xml version="1.0" encoding="UTF-8"?>
<RelationCreate>
  <Destination href="/api/ibexa/v2/content/objects/59"/>
</RelationCreate>

                            
View more

file_copy

                                {
    "RelationCreate": {
        "Destination": {
            "_href": "/api/ibexa/v2/content/objects/59"
        }
    }
}

                            
View more

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>

                            
View more

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"
    }
}

                            
View more

/content/objects/{contentId}/versions/{versionNo}/relations/{relationId}

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>

                            
View more
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.

/content/objects/{contentId}/locations

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>

                            
View more

file_copy

                                {
    "LocationCreate": {
        "ParentLocation": {
            "_href": "/api/ibexa/v2/content/locations/1/59"
        },
        "priority": "0",
        "hidden": false,
        "sortField": "PATH",
        "sortOrder": "ASC"
    }
}

                            
View more

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
                            
View more

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
                            
View more
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.

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>

                            
View more

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"
            }
        ]
    }
}

                            
View more

/content/objects/{contentId}/objectstates

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.

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>

                            
View more

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"
            }
        ]
    }
}

                            
View more
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>

                            
View more

file_copy

                                {
    "ContentObjectStates": {
        "ObjectState": [
            {
                "_href": "/api/ibexa/v2/content/objectstategroups/2/objectstates/2"
            }
        ]
    }
}

                            
View more

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>

                            
View more

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"
            }
        ]
    }
}
                            
View more

/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

/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.

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
                            
View more

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"
                        }
                    ]
                },
  
                            
View more
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>
                            
View more

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"
                }
            ]
        }
    }
}

                            
View more

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>

                            
View more

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"
                }
            ]
        }
    }
}

                            
View more

/content/objectstategroups/{objectStateGroupId}

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.

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>

                            
View more

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"
                }
            ]
        }
    }
}

                            
View more
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>

                            
View more

file_copy

                                {
    "ObjectStateGroupUpdate": {
        "names": {
            "value": [
                {
                    "_languageCode": "eng-GB",
                    "#text": "New Custom State name"
                }
            ]
        }
    }
}
                            
View more

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>

                            
View more

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"
                }
            ]
        }
    }
}

                            
View more
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.

/content/objectstategroups/{objectStateGroupId}/objectstates

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.

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">
    
                            
View more

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"
                        }
 
                            
View more
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>

                            
View more

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"
                }
            ]
        }
    }
}
                            
View more

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>

                            
View more

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"
                }
            ]
        }
    }
}

                            
View more

/content/objectstategroups/{objectStateGroupId}/objectstates/{objectStateId}

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.

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>

                            
View more

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": ""
                }
            ]
        }
    }
}

                            
View more
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>

                            
View more

file_copy

                                {
    "ObjectStateUpdate": {
        "names": {
            "value": [
                {
                    "_languageCode": "eng-GB",
                    "#text": "New Object State name"
                }
            ]
        }
    }
}
                            
View more

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>

                            
View more

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": ""
                }
            ]
        }
    }
}

                            
View more
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.

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
                            
View more

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": {
       
                            
View more
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.

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
                            
View more

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": {
       
                            
View more
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>

                            
View more

file_copy

                                {
    "LocationUpdate": {
        "priority": "3",
        "hidden": true,
        "remoteId": "remoteId-qwert999",
        "sortField": "NAME",
        "sortOrder": "DESC"
    }
}
                            
View more

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
                            
View more

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
                            
View more