The delivery endpoint requires a YAML configuration or otherwise it cannot deliver content. Version 2.0 of the magnolia-rest-content-delivery module can have only one configuration. Future versions will allow multiple configurations which can be distinguished via a URL parameter. Add the configuration to the restEndpoints folder in a light module or within src/main/resources/<module-name>/restEndpoints in a Magnolia Maven module. Basic configuration Code Pro |
---|
language | yaml |
---|
title | my-lightmodule/restEndpoints /my-endpoint.yaml |
---|
| class: info.magnolia.rest.delivery.jcr.JcrDeliveryEndpointDefinition
implementationClass: info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpoint
params:
website:
depth: 3
includeSystemProperties: false
nodeTypes:
- mgnl:page
- mgnl:area
- mgnl:component
rootPath: /
dam:
depth: 1
includeSystemProperties: false
nodeTypes:
- mgnl:asset
- mgnl:folder
rootPath: /travel-demoe |
Properties: class | required Must be info.magnolia.rest.delivery.jcr.JcrDeliveryEndpointDefinition or a subclass. | implementationClass | required Must be info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpoint or a subclass. | params | required The map defining at least one or more workspaces. | <workspace-name>
| required The name of the JCR workspace to deliver content from. You may define as many workspaces as needed. Configure each workspace with the below properties. The definiton class is Javadoc resource link |
---|
className | info.magnolia.rest.delivery.jcr.WorkspaceParameters |
---|
renderType | asynchronous |
---|
|
. | nodeTypes *
| required A list of allowed node types. | depth *
| optional,default is 0 The depth of subnodes to display in the result. | includeSystemProperties
| optional,default is true Specifies whether the result should show system properties. | rootPath
| required The root path of this endpoint. The path information when requesting the endpoint is added to this path. | bypassWorkspaceAcls
| optional, default is false Note |
---|
If set to true , JCR security is bypassed. Use this with care and for development reasons only! |
| limit *
| optional, default is 10 The number of nodes (of level 0) in the result. Used only in the queryNodes method. | *) These properties can be overridden when calling queryNodes with a request parameter. Anchor |
---|
| reference-resolving-configuration |
---|
| reference-resolving-configuration |
---|
| Reference resolving configurationA node may contain references to other nodes. You can extend the configuration to force it to resolve referenced nodes per workspace with the property references Code Pro |
---|
language | yaml |
---|
linenumbers | true |
---|
| class: info.magnolia.rest.delivery.jcr.JcrDeliveryEndpointDefinition
implementationClass: info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpoint
params:
tours:
depth: 1
includeSystemProperties: false
nodeTypes:
- mgnl:content
- mgnl:folder
rootPath: /
references:
tour-types:
propertyName: tourTypes
referenceResolver:
implementationClass: info.magnolia.rest.reference.jcr.UuidReferenceResolver
targetWorkspace: category |
Properties of references : references | A map which contains at least one reference definition. | <reference-name>
| An arbitrary name for a Javadoc resource link |
---|
className | info.magnolia.rest.reference.ReferenceDefinition |
---|
renderType | asynchronous |
---|
|
. | propertyName
| The name of the JCR property which stores the reference. (Can be a multi-value property). | referenceResolver
| The reference resolver definition for this reference, its definition class is Javadoc resource link |
---|
className | info.magnolia.rest.reference.ReferenceResolverDefinition |
---|
renderType | asynchronous |
---|
|
. | implementationClass
| A class implementing Javadoc resource link |
---|
className | info.magnolia.rest.reference.ReferenceResolverDefinition |
---|
renderType | asynchronous |
---|
|
. Current implementations: Javadoc resource link |
---|
className | info.magnolia.rest.reference.jcr.UuidReferenceResolver |
---|
renderType | asynchronous |
---|
|
| targetWorkspace
| The name of the workspace where the referenced node resides. |
|