Skip to main content

Client API Overview

This document provides an overview of the client-facing API endpoints available in v3. These endpoints are designed for public-facing applications and client applications that interact with the platform.

In This Document

Authentication

important

Client API endpoints require authentication using an API key. The API key should be included in the request headers:

Authentication Header
Api-Key: {{api-key}}

API Structure

The Client API follows the same basic structure and conventions as described in the API v3 Basics document. All common query parameters, filtering capabilities, response formats, and error handling mechanisms apply to the Client API as well.

Available Modules

CMS Module

The CMS module provides access to content management features:

Features include:

  • Posts: Retrieve and interact with posts
  • Categories: Retrieve content categories
  • Media: Access media files and galleries

Client-Specific Features

The Client API provides several features tailored for end-user applications:

Content Filtering

Client API provides robust content filtering capabilities:

Filtering Example
GET /api/client/v3/cms/post?filter[]=status:published&filter[]=is_featured:true
Api-Key: {{api-key}}

Client API offers powerful search functionality:

Search Example
GET /api/client/v3/cms/post?search=keyword&searchFields=title;content
Api-Key: {{api-key}}

User Interactions

Client API allows users to interact with content:

User Interaction Example
POST /api/client/v3/cms/post/123/like
Api-Key: {{api-key}}

User Preferences

Client API enables saving and retrieving user preferences:

User Preferences Example
GET /api/client/v3/user/preferences
Api-Key: {{api-key}}

Example Usage

Basic Request

Basic GET Request
GET /api/client/v3/cms/post
Api-Key: {{api-key}}

Response Example

info

Below is an example of a successful response when retrieving a post with related resources:

Response Example
{
"status": true,
"result": {
"id": 123,
"title": "Sample Post Title",
"slug": "sample-post-title",
"excerpt": "This is a sample excerpt...",
"content": "This is the full content of the post...",
"featured_image": "https://example.com/images/sample-post.jpg",
"status": "published",
"created_at": "2025-03-15T10:30:00.000000Z",
"updated_at": "2025-03-15T14:45:00.000000Z",
"published_at": "2025-03-15T15:00:00.000000Z",
"author": {
"id": 5,
"name": "John Doe",
"avatar_url": "https://www.gravatar.com/avatar/abc123.jpg?s=80&d=mp&r=g"
},
"category": {
"id": 3,
"name": "Technology",
"slug": "technology"
},
"tags": [
{
"id": 7,
"name": "API",
"slug": "api"
},
{
"id": 12,
"name": "Documentation",
"slug": "documentation"
}
]
}
}