Studio Developer Manual / Version 2506.0
Table Of Contents
A @coremedia/studio-client.cap-rest-client/content/Content object
represents a content item or folder in the CoreMedia system. It can be obtained through the
methods getChild(...) or getContent(string) of the content
repository. Note that unlike in Unified
API, the string parameter to the latter method is not an ID, but a
URI path. You can get the URI path of a Content with the
Content#getUriPath() method (inherited from
@coremedia/studio-client.client-core/data/RemoteBean).
You can also initiate a search request using the search service returned by
getSearchService() or by navigating to a content from the root folder returned
by getRoot().
Using getProperties(), it is possible to navigate to a secondary bean of type
@coremedia/studio-client.cap-rest-client/content/ContentProperties that contains all schema-defined
properties of a content item. When updating properties, use the inherited, generic
set(property, value) method of @coremedia/studio-client.client-core/data/Bean with
Calendar,
string, or
number objects or
arrays of Content objects
as appropriate for the individual properties. Refrain from setting blob-valued and
XML-valued properties at this time. As for all remote beans, the method
flush(callback) can be called to force properties to be written to the server
immediately.
The Content object itself is only responsible for the meta properties that are
the same for all contents, for example the name property. The class
ContentPropertyNames lists all these property names for your reference. As
usual, these are also the property names for the events that are sent when a content
changes.
The property lifecycleStatus is a special property that does not correspond to
any Unified API feature. It indicates the simplified way
in which Studio represents the approval, deletion, and
publication flags to the user. The class LifecycleStatus contains constants for
the supported states.
Following the Unified API, every content object is
associated to a ContentType object by means of the getType()
method. You can also retrieve types by name from the content repository. Given a type, you
can create new instances of the type by means of the create(Content, string, AnyFunction)
method.
The move() and rename() methods are shortcuts for setting the
parent and name properties. As such, a callback provided with
these calls receives a FlushResult as its single argument. The methods
copy(), checkIn(), checkOut(), revert(),
and doDelete() correspond to the equivalent Unified
API methods. (The unusual name of the doDelete() method is caused by
delete being a reserved word in TypeScript.)
All operations receive result objects indicating whether the operation was successful. The
result of a delete operation is recorded in a DeleteResult, with result codes
being documented in DeleteResultCodes. Similarly, there are
CopyResult and CheckInResult objects. Please see the TSDoc for
details.
Through the method getIssues(), a Content object provides access
to issues detected by the server-side validators. See Section 5.3.3, “Issues” for
details about the issue API.


