PHPackages                             tentapress/headless-api - 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. tentapress/headless-api

ActiveLibrary[API Development](/categories/api)

tentapress/headless-api
=======================

Headless REST API endpoints for TentaPress content delivery.

0.2.0(2mo ago)00MITPHPPHP ^8.2

Since Feb 26Pushed 2mo agoCompare

[ Source](https://github.com/tentaplane/plugin-headless-api)[ Packagist](https://packagist.org/packages/tentapress/headless-api)[ RSS](/packages/tentapress-headless-api/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (14)Versions (4)Used By (0)

Headless API
============

[](#headless-api)

Headless REST API for TentaPress content delivery.

Plugin Details
--------------

[](#plugin-details)

FieldValueID`tentapress/headless-api`Version0.2.0Provider`TentaPress\\HeadlessApi\\HeadlessApiServiceProvider`Features
--------

[](#features)

- Versioned REST API under `/api/v1`
- Public read endpoints for site, pages, posts, menus, and media
- Public taxonomy endpoints for taxonomy/term discovery
- Published-content filtering for public endpoints
- SEO payload inclusion for pages and posts
- Taxonomy term serialization in post payloads

Endpoints (v1)
--------------

[](#endpoints-v1)

- `GET /api/v1/site`
- `GET /api/v1/pages`
- `GET /api/v1/pages/{slug}`
- `GET /api/v1/posts`
- `GET /api/v1/posts/{slug}`
- `GET /api/v1/taxonomies`
- `GET /api/v1/taxonomies/{taxonomy}/terms`
- `GET /api/v1/menus/{location}`
- `GET /api/v1/media/{id}`

### Query Parameters

[](#query-parameters)

- `GET /api/v1/pages`
    - `per_page` (default `12`, min `1`, max `100`)
    - `slug` (exact slug filter)
    - `layout` (exact layout filter)
- `GET /api/v1/posts`
    - `per_page` (default `12`, min `1`, max `100`)
    - `author` (numeric author id)
    - `q` (searches title and slug)
    - `taxonomy` (taxonomy key filter)
    - `term` (term slug filter, optionally combined with `taxonomy`)

### Response Examples

[](#response-examples)

#### Success: `GET /api/v1/posts/{slug}`

[](#success-get-apiv1postsslug)

```
{
    "data": {
        "id": 42,
        "type": "post",
        "title": "Hello API",
        "slug": "hello-api",
        "status": "published",
        "layout": "post",
        "editor_driver": "blocks",
        "published_at": "2026-02-27T10:00:00+00:00",
        "permalink": "/blog/hello-api",
        "author": {
            "id": 1,
            "name": "Headless Author"
        },
        "content_raw": {
            "editor_driver": "blocks",
            "blocks": [],
            "content": null
        },
        "content_html": "",
        "seo": {
            "title": "Post SEO",
            "description": "Post description",
            "canonical_url": null,
            "robots": null,
            "og_title": null,
            "og_description": null,
            "og_image": null,
            "twitter_title": null,
            "twitter_description": null,
            "twitter_image": null
        },
        "updated_at": "2026-02-27T10:05:00+00:00"
    }
}
```

#### Not Found: `GET /api/v1/posts/{slug}`

[](#not-found-get-apiv1postsslug)

```
{
    "error": {
        "code": "not_found",
        "message": "Post not found"
    }
}
```

#### Index Envelope: `GET /api/v1/pages`

[](#index-envelope-get-apiv1pages)

```
{
    "data": [],
    "meta": {
        "current_page": 1,
        "per_page": 12,
        "total": 0,
        "last_page": 1
    }
}
```

Dependencies
------------

[](#dependencies)

- `tentapress/pages`
- `tentapress/posts`
- `tentapress/media`
- `tentapress/menus`
- `tentapress/settings`
- `tentapress/seo`

Development
-----------

[](#development)

```
php artisan tp:plugins sync
php artisan tp:plugins enable tentapress/headless-api
```

**Note:** This is an optional plugin. Not enabled by default.

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance86

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 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 ~3 days

Total

3

Last Release

75d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/11545f8e3c50e6d1466ac2948bd15c952a2dc721ba413cfd9f72334a33715f1a?d=identicon)[csoutham](/maintainers/csoutham)

---

Top Contributors

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

### Embed Badge

![Health badge](/badges/tentapress-headless-api/health.svg)

```
[![Health](https://phpackages.com/badges/tentapress-headless-api/health.svg)](https://phpackages.com/packages/tentapress-headless-api)
```

###  Alternatives

[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[facebook/php-business-sdk

PHP SDK for Facebook Business

90821.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

74513.7M114](/packages/meilisearch-meilisearch-php)[google/common-protos

Google API Common Protos for PHP

173103.7M50](/packages/google-common-protos)[hubspot/api-client

Hubspot API client

23914.2M16](/packages/hubspot-api-client)[lstrojny/fxmlrpc

Fast and tiny XML/RPC client with bridges for various HTTP clients

1425.4M30](/packages/lstrojny-fxmlrpc)

PHPackages © 2026

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