Brightspot CMS Developer Guide

Custom Content Management API development


Overview of custom CMA development
For stable production functionality, it typically makes more sense to build a custom Content Management endpoint via code, rather than entirely through editorial configuration. An endpoint class can ensure that a fixed set of APIs are exposed with configuration that should not change between different environments.

Implementing custom CMAs
Create a new Java class extending ContentManagementApiEndpoint.Implement required methods:

  • getPathSuffix—appended to /graphql/management/ to create the path where the API endpoint is available.
  • getEntryFields—objects wrapping Dari record types used to generate the schema and expose APIs.

Example:

public class FooContentManagementApiEndpoint extends ContentManagementApiEndpoint {

    @Override
    protected String getPathSuffix() {
        return "foo"; // API endpoint is available at path '/graphql/management/foo'
    }

    @Override
    public List<ContentManagementEntryPointField> getEntryFields() {
        return Arrays.asList(
               new ContentManagementEntryPointField(Foo.class, true),
               new ContentManagementEntryPointField(Bar.class, true));
    }
}

Previous Topic
Uploading files in Brightspot Content Management API
Next Topic
Content Delivery API
Was this topic helpful?
Thanks for your feedback.
The elements that get you up and running in a matter of days, from pre-built content types, to modules, to landing pages.

Content types
Modules
Landing pages
Everything you need to manage and administer content within Brightspot CMS, including plug-and-play integrations.

Dashboards
Publishing
Workflows
Admin configurations
A guide for installing, supporting and administering code on the Brightspot platform, including integrations requiring developer support to use.

Field types
Content modeling
Rich-text elements
Images