PHPackages                             tuxudo/autopkg\_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. tuxudo/autopkg\_api

ActiveLibrary[API Development](/categories/api)

tuxudo/autopkg\_api
===================

Module for munkireport.

v1.0(2mo ago)08MITPHP

Since May 7Pushed 2mo agoCompare

[ Source](https://github.com/tuxudo/autopkg_api)[ Packagist](https://packagist.org/packages/tuxudo/autopkg_api)[ RSS](/packages/tuxudo-autopkg-api/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

Autopkg\_api module
===================

[](#autopkg_api-module)

The autopkg\_api module is designed to be used with AutoPKG to allow it to automatically signal AutoPKG to build a new MunkiReport client PKG when a module or MunkiReport is updated.

How It Determines a New Version
-------------------------------

[](#how-it-determines-a-new-version)

The module does three checks to determine if it should signal to AutoPKG to create a new client PKG.

The first is compare the current `MODULES` array in the .env file against the previous AutoPKG run. If it is different, signal to create a new client PKG. This check is for any changes to enabled/disabled modules.

The second is to generate a hash of all client scripts and compare that to the previous AutoPKG run. If it is different, signal to create a new client PKG. This is done to catch any updated client scripts within the modules.

The last is to compare the MunkiReport version with the previous AutoPKG run. If it is different, signal to create a new client PKG.

How It Signals to AutoPKG
-------------------------

[](#how-it-signals-to-autopkg)

The module itself doesn't run anything, instead it generates a JSON file every time an API endpoint is called by AutoPKG that contains information for AutoPKG to ingest and work with.

This API endpoint is `/index.php?/module/autopkg_api/get_autopkg_data_api` and it contains the following information in JSON format:

- `"modules_env":"applications,appusage,ard,bluetooth..."`
    - What modules are in the `MODULES` array in the .env
- `"script_hash":"366b8b7efa3067a9"`
    - The hash of all the client scripts in the modules
- `"last_rebuilt":1687523032`
    - Timestamp of when AutoPKG was last signaled to build a new client PKG
- `"last_polled":1772289712`
    - Timestamp of when AutoPKG last checked for a signal to build a new client PKG
- `"rebuild_pkg":"TRUE"`
    - If AutoPKG should build a new client PKG, `TRUE` or `FALSE`
- `"mr_version":"5.8.0.4284"`
    - Current MunkiReport version
- `"version":"5.8.0.4284.2023062301"`
    - New client PKG version. This version is created by taking the current MunkiReport version, appending YYYYMMDD after that, then adding an incrementing version at the end starting with `01`. This way, the versioning can be fully automated and will always go up.

AutoPKG should look at `"version"` within the JSON to determine if it should create a new client PKG using its version logic and produce a new client PKG with that version.

Admin View
----------

[](#admin-view)

The module contains an admin page for administrators to view status of AutoPKG's most recent run and if there is a pending signal for AutoPKG to create a new client PKG. It also allows for an admin to force AutoPKG to create a new version.

Table Schema
------------

[](#table-schema)

The module stores information about the previous AutoPKG run in a JSON file in the `cache` table. It does not have a table of its own.

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance85

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity34

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

78d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/13306723?v=4)[tuxudo](/maintainers/tuxudo)[@tuxudo](https://github.com/tuxudo)

---

Top Contributors

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

### Embed Badge

![Health badge](/badges/tuxudo-autopkg-api/health.svg)

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

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35916.4M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24016.2M20](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172445.0k18](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

93459.5k6](/packages/botman-driver-telegram)

PHPackages © 2026

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