Php implementation of Firebase API.
This package is built to be simple, scalable and configurable to allow easy integration in other packages or frameworks (ex: laravel-firebase ).
This package uses google/auth
to generate OAuth2.0 tokens from the service account and guzzlehttp/guzzle
as http library.
Install it with composer via
composer require plokko/firebase-php
All the calls on the API are made using a Firebase OAuth2.0 token, this token is generated using your ServiceAccount informations.
To use the API you need to authenticate the requests with your service account:
this is done by the ServiceAccount
class that uses your Firebase ServiceAccount json credential file.
You can download your service account json file from the Firebase console in settings > service accounts, keep in mind to store this file in a secure non-public location.
use Plokko\Firebase\ServiceAccount;
//Use one of those methods:
$sa = new ServiceAccount('/path/to/your/serviceaccount/file.json');
$sa = new ServiceAccount('{"type":"service_account",..............}');
$sa = new ServiceAccount(['type'=>'service_account',/*...*/]);
Accepted methods for the constructor are:
- string: ServiceAccount file content (json string)
- string: path to the serviceAccount json file
- array: php-translated array of the service account content
You can also add a token cache handler via the setCacheHandler
method that accepts an implementation of CacheItemPoolInterface
to allow custom cache integrations.
see google/auth MemoryCacheItemPool for an example implementation:
$handler = new Google\Auth\Cache\MemoryCacheItemPool\MemoryCacheItemPool();
$sa->setCacheHandler($handler);
This package implements FCM Http v1 Api
This package includes the Firebase Real time database API integration