HCMS API Guide

Prev Next

The HCMS (Headless Content Management System) provides a comprehensive REST API that allows you to interact with your content and system settings programmatically. This guide explains what each group of API endpoints can help you accomplish, organized by functional area.

Important Note

This guide covers only the endpoints that are documented in the Swagger/OpenAPI documentation.

Getting Started

To use these APIs effectively:

  1. Start with the Swagger documentation: Visit your HCMS instance's /docs endpoint to see interactive API documentation

  2. Get API credentials: Use the Apps section to create API clients with appropriate permissions

  3. Test with simple operations: Try basic operations like viewing content or assets before moving to complex workflows

  4. Use appropriate permissions: Ensure your API client has the right permissions for the operations you want to perform

Common Integration Patterns

  • Content Website: Use Content + Assets + Search for basic website functionality

  • Editorial Workflow: Use Content + Comments + Rules + Users for collaborative publishing

  • Multi-language Site: Integrate Content + Languages + Translations for international presence

  • Mobile App: Focus on Content + Assets + Search with appropriate caching strategies

For technical implementation details and complete endpoint documentation, refer to your HCMS Swagger documentation at /docs or contact your development team.

Content Management

Content

Manage your website's content items. What you can do:

  • Create new content: Add articles, pages, blog posts, or any other content type you've defined

  • Edit existing content: Update text, images, and other fields in your content

  • Publish/unpublish content: Control which content is visible to your website visitors

  • Query content: Search and filter content based on various criteria

  • Error: Response from api/content/owen/ returning empty when content does exist.

  • Bulk operations: Make changes to multiple content items at once

  • Version control: Create drafts and manage different versions of your content

  • Import content: Bring in content from external sources

  • GraphQL support: Use advanced querying capabilities for complex data retrieval

Example use cases:

  • Publishing articles or news updates

  • Updating page content on your website

  • Creating content workflows for approval processes

Content Types (Schemas)

Define the structure and rules for your content. What you can do:

  • Create content types: Define new types of content (such as "Blog Post", "Product", "Event")

  • Add fields: Define what information each content type should contain (text, numbers, or images)

  • Set validation rules: Ensure data quality by setting required fields and validation patterns

  • Configure field behavior: Control how fields appear and behave in the editing interface

  • Manage field visibility: Show or hide fields from the API or editing interface

  • Set up preview URLs: Configure how content appears when previewed

  • Add custom scripts: Automate tasks when content is created or updated

Example use cases:

  • Setting up a public notice with title, content, author, and publication date fields

  • Designing event schemas with date, location, and registration information

Digital Assets

Assets

Manage files, images, and documents. What you can do:

  • Upload files: Add images, documents, videos, and other files to your system

  • Organize files: Create folders and organize your assets logically

  • Edit metadata: Add descriptions, tags, and other information to your files

  • Resize and process images: Automatically create different sizes for responsive design

  • Control access: Set permissions on who can view or download files

  • Bulk operations: Upload or modify multiple files at once

  • Version control: Keep track of different versions of your files

  • Search and filter: Find specific assets quickly using tags and metadata

Example use cases:

  • Managing photo galleries for your website

  • Storing downloadable resources like PDFs or documents

  • Organizing marketing materials and brand assets

  • Handling user-uploaded content like profile pictures

User & Access Management

Users

Find and work with user information. What you can do:

  • Search for users: Find users by email address or other criteria

  • View user profiles: See user information and profile pictures

Example use cases:

  • Looking up user accounts information

  • Integrating user information into your applications

  • Building user directories or team pages

Apps (Application Management)

Manage your applications and their settings. What you can do:

  • Configure app settings: Manage application-wide preferences and configurations

  • Manage contributors: Add or remove team members and set their permissions

  • Set up API clients: Create credentials for applications to access your content

  • Configure roles and permissions: Define what different users can do

  • Manage languages: Set up multilingual content support

  • Handle app workflows: Configure approval processes for content

  • Set validation patterns: Create reusable validation rules for content fields

Example use cases:

  • Adding team members to collaborate on content

  • Create credentials for an external system to access data

  • Setting up automated workflows for content approval

Groups

Organize users into teams. What you can do:

  • Get user groups: Retrieve groups to which users are assigned

  • Sync with Organizations: Sync from your Organization groups in the Staff Portal

Example use cases:

  • Getting a list of groups

  • Syncing groups with the Staff Portal

Permission Sets

Create reusable permission templates. What you can do:

  • Define permission templates: Create sets of permissions that can be reused

  • Assign to users and groups: Apply permission sets to multiple users at once

  • Manage access levels: Control what different roles can do in your system

Example use cases:

  • Creating "Editor" and "Viewer" role templates

  • Setting up project-specific access levels

System Tools & Utilities

Search

Find content and assets across your system. What you can do:

  • Global search: Search across all your content and assets

  • Filtered searches: Find specific types of content or assets

  • Blended results: Get both content and assets in the same search results

Example use cases:

  • Finding specific content items quickly

  • Locating assets for reuse in new content

  • Building search functionality for an external system

Tags

Organize and categorize your content. What you can do:

  • Create tags: Add labels to categorize your content and assets

  • Apply tags: Label content and assets for better organization

  • Search by tags: Find content based on tag assignments

Example use cases:

  • Categorizing news posts by topic

  • Tagging events by category or venue

  • Organizing assets by project or campaign

Categories

Create a structured content organization. What you can do:

  • Define categories: Create categories

  • Assign content to categories: Organize your content systematically

Example use cases:

  • Organizing news articles by department

Analytics & Monitoring

Statistics

Monitor your system usage and performance. What you can do:

  • View usage statistics: See how much content, storage, and API calls you're using

  • Monitor trends: Track usage over time

Example use cases:

  • Monitoring system performance and usage

  • Planning for capacity increases

  • Understanding content creation patterns

History

Track changes and activities. What you can do:

  • View change history: See what changes have been made to content and settings

  • Audit trail: Track who made what changes when

  • Activity monitoring: Monitor system activity for security and compliance

Example use cases:

  • Reviewing content change history

  • Auditing user activities for compliance

  • Troubleshooting issues by examining recent changes

System Health & Diagnostics

Ping

Check system status and connectivity. What you can do:

  • Test connectivity: Verify that the API is responding

  • Check app status: Confirm specific applications are working

  • Get system information: Retrieve basic system details

Example use cases:

  • Monitoring system health

  • Troubleshooting connectivity issues

  • Automated health checks for applications

  • Service status verification