PHPackages                             sevaske/api-response-payload - 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. sevaske/api-response-payload

ActiveLibrary[API Development](/categories/api)

sevaske/api-response-payload
============================

1.0.0(4mo ago)0241MITPHPPHP ^8.0CI passing

Since Jan 2Pushed 4mo agoCompare

[ Source](https://github.com/sevaske/api-response-payload)[ Packagist](https://packagist.org/packages/sevaske/api-response-payload)[ RSS](/packages/sevaske-api-response-payload/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (1)

API Response Payload
====================

[](#api-response-payload)

A small PHP library for building consistent API response payloads.

This package focuses on **payload structure only** and does not include any HTTP, framework, or transport-specific logic.

---

Installation
------------

[](#installation)

```
composer require sevaske/api-response-payload
```

---

Purpose
-------

[](#purpose)

This library solves a single problem:

> **Build predictable and extensible API response payloads**

It intentionally does **not**:

- handle HTTP responses
- depend on any framework (Laravel, Symfony, etc.)
- enforce API semantics like `data`, `errors`, or status codes

Those concerns belong to higher-level layers.

---

Basic Usage
-----------

[](#basic-usage)

```
use Sevaske\ApiResponsePayload\ApiResponsePayload;

$payload = new ApiResponsePayload();

$response = $payload->build(
    success: true,
    message: 'OK',
    extra: [
        'data' => ['id' => 1],
    ]
);
```

Result:

```
{
  "success": true,
  "message": "OK",
  "data": {
    "id": 1
  }
}
```

---

Error Example
-------------

[](#error-example)

```
$response = $payload->build(
    success: false,
    message: 'Validation failed',
    extra: [
        'errors' => [
            'email' => 'Required'
        ]
    ]
);
```

```
{
  "success": false,
  "message": "Validation failed",
  "errors": {
    "email": "Required"
  }
}
```

---

Customizing Keys
----------------

[](#customizing-keys)

You can customize payload keys via the constructor:

```
$payload = new ApiResponsePayload(
    successKey: 'ok',
    messageKey: 'msg'
);
```

```
{
  "ok": true,
  "msg": "Done"
}
```

---

Custom Success Values
---------------------

[](#custom-success-values)

The success indicator can be formatted as any scalar value:

```
$payload = new ApiResponsePayload(
    successValue: 1,
    errorValue: 0
);
```

```
{
  "success": 1
}
```

Or:

```
$payload = new ApiResponsePayload(
    successValue: 'yes',
    errorValue: 'no'
);
```

---

Testing
-------

[](#testing)

```
vendor/bin/phpunit
```

---

License
-------

[](#license)

[MIT](LICENSE)

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance75

Regular maintenance activity

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity39

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

Unknown

Total

1

Last Release

136d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/94643c38672a39a9b675ab6d43f5c1d3c0789300cc052f742a960e0a7d70847e?d=identicon)[sevaske](/maintainers/sevaske)

---

Top Contributors

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

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/sevaske-api-response-payload/health.svg)

```
[![Health](https://phpackages.com/badges/sevaske-api-response-payload/health.svg)](https://phpackages.com/packages/sevaske-api-response-payload)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[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/gax

Google API Core for PHP

265103.1M454](/packages/google-gax)[google/common-protos

Google API Common Protos for PHP

173103.7M50](/packages/google-common-protos)

PHPackages © 2026

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