PHPackages                             garchicms/garchi-sdk-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. garchicms/garchi-sdk-php

ActiveLibrary[API Development](/categories/api)

garchicms/garchi-sdk-php
========================

A PHP SDK wrapper for the Garchi CMS API

v1.0.4(1mo ago)020MITPHPPHP &gt;=8.0

Since Feb 12Pushed 3w ago1 watchersCompare

[ Source](https://github.com/garchi040319/garchi-php-sdk)[ Packagist](https://packagist.org/packages/garchicms/garchi-sdk-php)[ RSS](/packages/garchicms-garchi-sdk-php/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (6)Versions (6)Used By (0)

GarchiCMS PHP SDK
=================

[](#garchicms-php-sdk)

The **GarchiCMS PHP SDK** is a PHP package for interacting with the **Garchi CMS API**. It provides a simple, modular, and intuitive interface for managing **categories, data items, reviews, reactions, spaces, and headless CMS features**.

📖 **API Documentation**: [Garchi CMS API Docs](https://garchi.co.uk/docs/v2)

---

📖 Table of Contents
-------------------

[](#-table-of-contents)

- [GarchiCMS PHP SDK](#garchicms-php-sdk)
    - [📖 Table of Contents](#-table-of-contents)
    - [**Features**](#features)
    - [**Installation**](#installation)
        - [**Using Composer**](#using-composer)
    - [Usage](#usage)
        - [Initializing the SDK](#initializing-the-sdk)
        - [Module Mapping](#module-mapping)
    - [Example Usages](#example-usages)
        - [Data Item API](#data-item-api)
            - [Create a Data Item](#create-a-data-item)
            - [Get All Items](#get-all-items)
        - [Category API](#category-api)
            - [Create a Category](#create-a-category)
            - [Get All Categories](#get-all-categories)
        - [Review API](#review-api)
            - [Create a Review](#create-a-review)
        - [Reaction API](#reaction-api)
            - [Add or Update Reaction](#add-or-update-reaction)
        - [Space API](#space-api)
            - [Create a Space](#create-a-space)
            - [List Pages in a Space](#list-pages-in-a-space)
            - [List Section Templates in a Space](#list-section-templates-in-a-space)
        - [Compound Query API](#compound-query-api)
            - [Perform a Compound Query](#perform-a-compound-query)
        - [Headless CMS API](#headless-cms-api)
            - [Get a Page](#get-a-page)
    - [Error Handling](#error-handling)
    - [Types and Interfaces](#types-and-interfaces)
    - [Contributing](#contributing)
    - [License](#license)

---

**Features**
------------

[](#features)

- ✅ Manage **Data Items**: Create, update, delete, and fetch data items.
- ✅ Handle **Categories**: Create, update, delete, and list categories.
- ✅ Manage **Spaces**: Create, update, and fetch spaces.
- ✅ Handle **Reviews**: Create, update, delete, and fetch reviews.
- ✅ Manage **Reactions**: Add or remove reactions for items or reviews.
- ✅ Perform **Compound Queries**: Execute complex queries across items, categories, and reviews.
- ✅ Work with **Headless CMS**: Manage assets, pages, and section templates.

---

**Installation**
----------------

[](#installation)

### **Using Composer**

[](#using-composer)

```
composer require garchicms/garchi-php-sdk
```

Usage
-----

[](#usage)

This SDK is a wrapper around the [Garchi CMS API](https://garchi.co.uk/docs/v2), providing easy-to-use modular functions that map directly to API endpoints.

### Initializing the SDK

[](#initializing-the-sdk)

Once installed, you can use the SDK without manually requiring files, thanks to Composer's autoloading.

```
use GarchiCMS\GarchiCMS;

$garchi = new GarchiCMS("YOUR_API_KEY");
```

### Module Mapping

[](#module-mapping)

Each module corresponds to a specific API group:

- `$garchi->dataItem` → Data Item API

    - `$garchi->dataItem->create()` corresponds to [Create data item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-item)
    - `$garchi->dataItem->update()` corresponds to [Update data item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-update-item)
    - `$garchi->dataItem->delete()` corresponds to [Delete data item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-delete-item)
    - `$garchi->dataItem->createMetaInfo()` corresponds to [Create meta info for item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-item_meta)
    - `$garchi->dataItem->deleteMetaInfo()` corresponds to [Delete meta info for item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-delete-item_meta)
    - `$garchi->dataItem->updateMetaInfo()` corresponds to [Update meta info for item API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-update-item_meta)
    - `$garchi->dataItem->getBySpace()` corresponds to [Get items by space API](https://garchi.co.uk/docs/v2#item-GETapi-v2-space--uid--items)
    - `$garchi->dataItem->semanticSearch()` corresponds to [Semantic item search API](https://garchi.co.uk/docs/v2#item-GETapi-v2-items-semantic-search)
    - `$garchi->dataItem->featured()` corresponds to [Get featured items API](https://garchi.co.uk/docs/v2#item-GETapi-v2-items-featured)
    - `$garchi->dataItem->get()` corresponds to [Get data item API](https://garchi.co.uk/docs/v2#item-GETapi-v2-item--item-)
    - `$garchi->dataItem->getAll()` corresponds to [Get all data items API](https://garchi.co.uk/docs/v2#item-GETapi-v2-items)
    - `$garchi->dataItem->filter()` corresponds to [Filter data items API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-items-filter)
    - `$garchi->dataItem->filterByMeta()` corresponds to [Filter data items by meta information API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-items-filter-bymeta)
    - `$garchi->dataItem->getByIds()` corresponds to [Get data items by IDs API](https://garchi.co.uk/docs/v2#item-POSTapi-v2-items-byids)
- `$garchi->category` → Category API

    - `$garchi->category->create()` corresponds to [Create category API](https://garchi.co.uk/docs/v2#category-POSTapi-v2-category)
    - `$garchi->category->update()` corresponds to [Update category API](https://garchi.co.uk/docs/v2#category-POSTapi-v2-update-category--category_id-)
    - `$garchi->category->delete()` corresponds to [Delete category API](https://garchi.co.uk/docs/v2#category-POSTapi-v2-delete-category--space_uid---category_id-)
    - `$garchi->category->getAll()` corresponds to [Get all categories API](https://garchi.co.uk/docs/v2#category-GETapi-v2-categories)
- `$garchi->space` → Space API

    - `$garchi->space->create()` corresponds to [Create a space API](https://garchi.co.uk/docs/v2#spaces-POSTapi-v2-space)
    - `$garchi->space->update()` corresponds to [Update a space API](https://garchi.co.uk/docs/v2#spaces-POSTapi-v2-update-space--uid-)
    - `$garchi->space->delete()` corresponds to [Delete a space API](https://garchi.co.uk/docs/v2#spaces-POSTapi-v2-delete-space--uid-)
    - `$garchi->space->getAll()` corresponds to [Get all spaces API](https://garchi.co.uk/docs/v2#spaces-GETapi-v2-spaces)
    - `$garchi->space->get()` corresponds to [Get space details API](https://garchi.co.uk/docs/v2#spaces-GETapi-v2-space--uid-)
    - `$garchi->space->categories()` corresponds to [Get categories for space API](https://garchi.co.uk/docs/v2#category-GETapi-v2-space--uid--categories)
- `$garchi->review` → Review API

    - `$garchi->review->create()` corresponds to [Create a review API](https://garchi.co.uk/docs/v2#reviews-POSTapi-v2-reviews-item)
    - `$garchi->review->update()` corresponds to [Update review API](https://garchi.co.uk/docs/v2#reviews-POSTapi-v2-reviews-edit)
    - `$garchi->review->delete()` corresponds to [Delete review API](https://garchi.co.uk/docs/v2#reviews-POSTapi-v2-reviews-delete)
    - `$garchi->review->getByItem()` corresponds to [Get reviews for an item API](https://garchi.co.uk/docs/v2#reviews-GETapi-v2-reviews-item--item-)
- `$garchi->headless` → Headless API

    - `$garchi->headless->getAsset()` corresponds to [Get asset file for space API](https://garchi.co.uk/docs/v2#headless-web-GETapi-v2-space-assets--name-)
    - `$garchi->headless->getPage()` corresponds to [Get page content API](https://garchi.co.uk/docs/v2#headless-web-POSTapi-v2-page)
    - `$garchi->headless->createOrUpdateSectionTemplates()` corresponds to [Create or update section templates API](https://garchi.co.uk/docs/v2#headless-web-POSTapi-v2-section_template)
- `$garchi->reaction` → Reaction API

    - `$garchi->reaction->manage()` corresponds to [Reaction API](https://garchi.co.uk/docs/v2#reaction-POSTapi-v2-manage-reaction)
- `$garchi->compoundQuery` → Compound Query API

    - `$garchi->compoundQuery->query()` corresponds to [Compound query API](https://garchi.co.uk/docs/v2#compound-query-POSTapi-v2-compound_query)

Each module’s return values correspond to the return value of the respective API endpoint. The only difference is that for non-paginated API endpoints, each module’s return value can be accessed **without** the `.data` attribute.

Example Usages
--------------

[](#example-usages)

Here are some example usages

### Data Item API

[](#data-item-api)

#### Create a Data Item

[](#create-a-data-item)

```
$newItem = $garchi->dataItem->create([
    'space_uid' => 'your_space_uid',
    'name' => 'New Item',
    'categories' => [1, 2, 3],
]);
```

#### Get All Items

[](#get-all-items)

```
$items = $garchi->dataItem->getAll(['size' => 10]);
```

### Category API

[](#category-api)

#### Create a Category

[](#create-a-category)

```
$newCategory = $garchi->category->create([
    'category' => 'New Category',
    'space_uid' => 'your_space_uid'
]);
```

#### Get All Categories

[](#get-all-categories)

```
$categories = $garchi->category->getAll();
```

### Review API

[](#review-api)

#### Create a Review

[](#create-a-review)

```
$review = $garchi->review->create([
    'item_id' => 1,
    'rating' => 5,
    'review_body' => 'Excellent product!',
    'user_email' => 'user@example.com',
    'user_name' => 'John Doe'
]);
```

### Reaction API

[](#reaction-api)

#### Add or Update Reaction

[](#add-or-update-reaction)

```
$reaction = $garchi->reaction->manage([
    'reaction' => 'like',
    'user_identifier' => 'user@example.com',
    'review_id' => 1,
    'item_id' => 1,
    'reaction_for' => 'review'
]);
```

### Space API

[](#space-api)

#### Create a Space

[](#create-a-space)

```
$newSpace = $garchi->space->create([
    'name' => 'New Space',
    'logo' => $yourLogoFile
]);
```

#### List Pages in a Space

[](#list-pages-in-a-space)

```
$pages = $garchi->space->listPages('your_space_uid');
```

#### List Section Templates in a Space

[](#list-section-templates-in-a-space)

```
$sectionTemplates = $garchi->space->listSectionTemplates('your_space_uid');
```

### Compound Query API

[](#compound-query-api)

#### Perform a Compound Query

[](#perform-a-compound-query)

```
$queryResult = $garchi->compoundQuery->query([
    'dataset' => 'items',
    'fields' => ['name', 'price'],
    'conditions' => ['like', 'gte'],
    'values' => ['%item%', '10'],
    'logic' => ['and']
], ['order_key' => 'name', 'order_by' => 'asc']);
```

### Headless CMS API

[](#headless-cms-api)

#### Get a Page

[](#get-a-page)

```
$page = $garchi->headless->getPage([
    'space_uid' => 'your_space_uid',
    'slug' => '/',
    'lang' => 'en-US',
    'mode' => 'live'
]);
```

Error Handling
--------------

[](#error-handling)

All API calls throw exceptions if the API call fails.

```
try {
    $item = $garchi->dataItem->get(['item' => 1]);
    print_r($item);
} catch (\Exception $error) {
    echo 'Error: ' . $error->getMessage();
}
```

Types and Interfaces
--------------------

[](#types-and-interfaces)

The SDK provides structured PHP classes for better type hinting and autocompletion.

```
use GarchiCMS\Contracts\GarchiItem;
use GarchiCMS\Contracts\GarchiCategory;
use GarchiCMS\Contracts\GarchiReview;
```

Contributing
------------

[](#contributing)

Feel free to submit issues and pull requests to improve the SDK.

License
-------

[](#license)

This project is licensed under the MIT License.

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance93

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~115 days

Total

5

Last Release

45d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/52961921?v=4)[Garchi UK](/maintainers/garchi040319)[@garchi040319](https://github.com/garchi040319)

---

Top Contributors

[![adityar15](https://avatars.githubusercontent.com/u/44507591?v=4)](https://github.com/adityar15 "adityar15 (5 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/garchicms-garchi-sdk-php/health.svg)

```
[![Health](https://phpackages.com/badges/garchicms-garchi-sdk-php/health.svg)](https://phpackages.com/packages/garchicms-garchi-sdk-php)
```

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M985](/packages/statamic-cms)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M47](/packages/tencentcloud-tencentcloud-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[avalara/avataxclient

Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API.

528.5M7](/packages/avalara-avataxclient)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)[files.com/files-php-sdk

Files.com PHP SDK

2481.1k](/packages/filescom-files-php-sdk)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
