flarum-api-client by flagrow
This is a generic PHP API client for use in any project. You can simply include this package as a dependency to your project to use it.
composer require flagrow/flarum-api-client
In order to start working with the client you might need a Flarum master key:
- Generate a 40 character random, unguessable string, this is the Token needed for this package.
- Manually add it to the
api_keys
table using phpmyadmin/adminer or another solution.
The master key is required to access non-public discussions and running actions otherwise reserved for Flarum administrators.
A basic example:
<?php
require_once "vendor/autoload.php";
use Flagrow\Flarum\Api\Flarum;
$api = new Flarum('http://example.com');
// A collection of discussions from the first page of your Forum index.
$discussions = $api->discussions()->request();
// Read a specific discussion.
$discussion = $api->discussions()->id(1)->request();
// Read the first page of users.
$users = $api->users()->request();
An authorized example:
$api = Flarum('http://example.com', ['token' => '<insert-master-token>; userId=1']);
The userId refers to a user that has admin permissions or the user you want to run actions for. Appending the userId setting to the token only works for Master keys.
Flagrow is a collaboration of Flarum extension developers to provide quality, maintained extensions.