Overview
The API schema definition of types and fields matches Content Engine Java API object model closely, with necessary and desirable extensions for natural GraphQL developer consumption.
- Metadata discovery - ClassDescription, PropertyDescription, ChoiceList, and sub-ClassDescriptions
- Document and Folder operations:
- Create, Read, Update, Delete (CRUD):
- Change class
- Update properties
- Update securities - ACLs and ACEs, delegated permissions, role permissions
- Object type-specific operations:
- Document - content upload and download, check in and check out, versioning, and cancel document checkout
- Folder - document file in and out
- Create, Read, Update, Delete (CRUD):
- Search and query
- Matches the Content Engine object model closely
- Metadata search and full text search
- Browse - folder hierarchy query of contained subfolders and documents:
- Containees can be obtained by selecting fields corresponding to similar Content Engine properties that return the containees of a folder.
- Alternatively the SQL-like search API can be used to obtain containees with control over filter and ordering criteria. The search API also allows the results from multiple queries to be returned in a single contiguous result set, allowing subfolders, documents and even custom objects to be retrieved in one set.
- Implicit support for columns and properties to return in the list based on data shaping.
- Paging, sorting, and so on.
Accessing the Content Services GraphQL API
The Content Services GraphQL API is available in a Docker container environment with a WebSphere® Liberty Application Server. You use configuration files that are provided in the GitHub samples repository to configure your environment. Deploying the container makes the API available.
The Content Services GraphQL API is packaged with the GraphiQL integrated development environment, which you can use to explore and interact with the API.
The schema for Content Services Graphical API is published on GitHub: https://github.com/ibm-ecm/ibm-content-platform-engine-samples/tree/master/CS-GraphQL-Schema
. You can import the schema from this repository into your preferred
development environment.
For details on deploying the Content Services GraphQL API, see Configuring the Content Services GraphQL API.