Skip to content
Sebastian Schendel edited this page Dec 29, 2020 · 26 revisions

Connect your apps to ProcessWire CMS!

This module helps you to create an api, to which an app or an external service can connect to.

A special thanks goes to Thomas Aull , whose module RestApi was the starting point to this project.

Credits: go to Benjamin Milde for his code example on how to use FastRoute with ProcessWire and Camilo Castro for this Gist

Current Version Current Version Current Version

Buy Me A Coffee

ProcessWire-Module: https://modules.processwire.com/modules/app-api/
Support-Forum: https://processwire.com/talk/topic/24014-new-module-appapi/
Repository: https://github.com/Sebiworld/AppApi
Wiki: https://github.com/Sebiworld/AppApi/wiki

Features

  • Simple routing definition
  • Authentication - Three different authentication-mechanisms are ready to use.
  • Access-management via UI
  • Multiple different applications with unique access-rights and authentication-mechanisms can be defined

Installation

AppApi can be installed like every other module in ProcessWire. Check the following guide for detailed information: How-To Install or Uninstall Modules

The prerequisites are PHP>=7.2.0 and a ProcessWire version >=3.93.0. However, this is also checked during the installation of the module. No further dependencies.

Changelog

Changes in 1.0.4 (2020-08-17)

  • Usage of ProcessPageView::pageNotFound-hook to allow other modules and functions to initialize before the api renders.
  • The path to Routes.php is now configurable via module's settings (Thanks to @thomasaull and @spoetnik)

Changes in 1.0.3 (2020-08-08)

  • Bugfix in Router.php (Thanks to @thomasaull)

Changes in 1.0.2 (2020-07-25)

  • Documentation improvements

Changes in 1.0.1 (2020-07-11)

  • Changed all auth-routes to the /auth (or /auth/access) endpoints.
  • Updated readme and examples

Changes in 1.0.0 (2019-08-19)

  • Rewritten most of the code
  • Setup application management ui
  • New authentication methods

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the Mozilla Public License Version 2.0 - see the LICENSE.md file for details.