Guillotine API
Contents
Guillotine API
This documentation lists and describes all static GraphQL types
Common arguments
Name | Remark | Default value |
---|---|---|
key |
Designs a content path or content ID |
|
offset |
Start index |
0 |
first |
Number of content to fetch |
10 |
sort |
Sorting expression |
"_score DESC" |
Object Types
Query
Fields
Name(Arguments):Type | Description |
---|---|
guillotine: HeadlessCms |
Type gathering all content retrieval requests |
HeadlessCms
Gathers all content retrieval requests.
Remarks
-
Most requests expect a key as argument. If the key is not specified, then the matched content will be the one corresponding to the current execution context
Fields
Name(Arguments):Type | Description |
---|---|
get(key: ID): Content |
Fetches a content |
getChildren( key: ID, offset: Int, first: Int, sort: String ): [Content] |
Fetches the children of a content |
getChildrenConnection( key: ID, after: String, first: Int, sort: String ): ContentConnection |
Fetches the children of a content and return the result as a connection |
getPermissions(key: ID): Permissions |
Fetches the permissions on a content |
getSite: portal_Site |
Fetches the parent site of the content corresponding to the current execution context |
query( query: String, offset: Int, first: Int, sort: String, contentTypes: [String] ): [Content] |
Queries contents |
queryConnection( query: String!, after: String, first: Int, sort: String, contentTypes: [String] ): ContentConnection |
Queries contents and returns the result as a connection |
getType(name: String!): ContentType |
Retrieves the properties and icon of the specified content type |
getTypes: [ContentType] |
Retrieves the list of all content types available for the current site |
Content
Interface of all contents.
Fields
Name(Arguments):Type | Description |
---|---|
_id: ID! |
Content ID |
_name: String! |
Content name |
_path: String! |
Content path |
creator: PrincipalKey |
Content creator |
modifier: PrincipalKey |
Last content modifier |
createdTime: String |
Content creation time |
modifiedTime: String |
Last content modification time |
owner: PrincipalKey |
Content owner |
type: String |
Content type |
displayName: String |
Content display name |
hasChildren: Boolean |
true if the content has children content |
language: String |
Content language |
valid: Boolean |
true if the content is valid |
x: [ExtraData] |
Content extra data |
pageAsJson: String |
Page specific information |
pageTemplate: Content |
Related page template content |
components: [Component] |
Flattened list of page components |
attachments: [Attachment] |
Content attachments |
publish: PublishInfo |
Publication information |
pageUrl(type: UrlTypeType, params: String): String |
Util field to generate a URL pointing to the content |
site: portal_Site |
Link to the nearest site |
parent: Content |
Link to the content parent |
children( offset: Int, first: Int, sort: String ): [Content] |
Link to the direct child contents |
childrenConnection( after: String, first: Int, sort: String ): ContentConnection |
Connection to the direct child contents |
permissions: Permissions |
Content permissions |
Direct Known Subtypes
Direct Known Subtypes: portal_Site , base_Folder , media_Code , media_Executable , media_Text , media_Vector , media_Spreadsheet , media_Data , base_Structured , base_Shortcut , base_Media , media_Document , media_Video , media_Presentation , media_Archive , media_Audio , portal_PageTemplate , media_Unknown , portal_TemplateFolder , media_Image , base_Unstructured , portal_Fragment
ContentConnection
To ease the pagination of relationship to a content, the type ContentConnection has been created to represent this connection. It allows you to :
-
Paginate through the list of contents.
-
Ask for information about the connection itself, like totalCount or pageInfo.
-
Ask for information about the edge itself, like cursor.
Fields
Name(Arguments):Type | Description |
---|---|
totalCount: Int! |
Total number of related content |
edges: [ContentEdge] |
Edge to the related content |
pageInfo: PageInfo |
Paging information |
PageInfo
Fields
Name(Arguments):Type | Description |
---|---|
startCursor: String! |
Start cursor of the pagination |
endCursor: String! |
End cursor of the pagination |
hasNext: Boolean! |
Has more related contents at end cursor |
Permissions
Fields
Name(Arguments):Type | Description |
---|---|
inheritsPermissions: Boolean |
Inherit permissions from parent content |
permissions: [AccessControlEntry] |
Permissions |
AccessControlEntry
Fields
Name(Arguments):Type | Description |
---|---|
principal: PrincipalKey |
Principal key |
allow: [Permission] |
Allowed permissions |
deny: [Permission] |
Denied permissions |
PrincipalKey
Fields
Name(Arguments):Type | Description |
---|---|
value: String |
Principal key value |
type: PrincipalType |
Principal type |
idProvider: String |
ID Provider name |
principalId: String |
Principal ID inside this user store |
ContentType
Representation of a content type definition
Fields
Name(Arguments):Type | Description |
---|---|
name: String |
Content type name |
displayName: String |
Content type display name |
description: String |
Content type description |
superType: String |
Parent content type |
abstract: Boolean |
true if the content type is abstract |
final: Boolean |
true if the content type cannot be used as super type |
allowChildContent: Boolean |
true if content can be added under a content of this type |
contentDisplayNameScript: String |
|
icon: Icon |
|
form: [FormItem] |
Content type fields schema |
getInstances( offset: Int , first: Int , query: String , sort: String ): [Content] |
Util field returning the contents of this type |
getInstanceConnection( after: String , first: Int , query: String , sort: String ): ContentConnection |
Util field returning the contents of this type as a connection |
FormItem
Fields
Name(Arguments):Type | Description |
---|---|
formItemType: FormItemType |
Form item type |
name: String |
Form item name |
label: String |
Form item label |
Direct Known Subtypes
Direct Known Subtypes: FormInput , FormOptionSet , FormLayout , FormItemSet
Component
Fields
Name(Arguments):Type | Description |
---|---|
path: String |
Component path |
type: ComponentType |
Component type |
page: PageComponentData |
Data for page components |
layout: LayoutComponentData |
Data for layout components |
image: ImageComponentData |
Data for image components |
part: PartComponentData |
Data for part components |
text: TextComponentData |
Data for text components |
fragment: FragmentComponentData |
Data for fragment components |
LayoutComponentData
Fields
Name(Arguments):Type | Description |
---|---|
descriptor: String! |
Controller descriptor |
configAsJson: String |
Component config |
ImageComponentData
Fields
Name(Arguments):Type | Description |
---|---|
id: ID! |
Image key |
caption: String |
Image caption |
image: media_Image |
Related image content |
PartComponentData
Fields
Name(Arguments):Type | Description |
---|---|
descriptor: String! |
Controller descriptor |
configAsJson: String |
Component config |
TextComponentData
Fields
Name(Arguments):Type | Description |
---|---|
value: String! |
Text value |
FragmentComponentData
Fields
Name(Arguments):Type | Description |
---|---|
id: ID! |
Fragment key |
fragment: Content |
Related fragment content |
Attachment
Fields
Name(Arguments):Type | Description |
---|---|
name: String |
Attachment name |
label: String |
Attachment label |
size: Int |
Attachment size |
mimeType: String |
Attachment mime type |
PublishInfo
Fields
Name(Arguments):Type | Description |
---|---|
from: String |
Scheduled publication start time |
to: String |
Scheduled publication end time |
first: String |
First publication time |
Enum Types
PrincipalType
Enum values: user , group , role
Permission
Enum values: READ , CREATE , MODIFY , DELETE , PUBLISH , READ_PERMISSIONS , WRITE_PERMISSIONS
FormItemType
Enum values: ItemSet , Layout , Input , OptionSet
UrlTypeType
Enum values: server , absolute
ComponentType
Enum values: page , layout , image , part , text , fragment