evalandgo/evalandgo-api-client

Api client for Evalandgo

2.3.0 2015-09-17 13:11 UTC

This package is auto-updated.

Last update: 2024-04-15 16:20:07 UTC


README

Client API for Evalandgo

Installation

In composer.json file, add :

{
    "require": {
        "evalandgo/evalandgo-api-client": "2.0.*"
    }
}

OAuth2 Storage

In order to don't generate a token before each request, this library stores the OAuth2 information in native sessions.

Default storage object : EvalandgoApiClient\OAuth2\Storage\SessionStorage

It is possible to use a custom storage. This class must implement EvalandgoApiClient\OAuth2\Storage\StorageInterface.

$storage = new MyApp\OAuth2\Storage\FileStorage();
$client = new EvalandgoApiClient\Client('CLIENT_ID', 'CLIENT_SECRET', $storage);

Usage Example

session_start();

use Doctrine\Common\Annotations\AnnotationRegistry;

$loader = require __DIR__.'/../vendor/autoload.php';
AnnotationRegistry::registerLoader(array($loader, 'loadClass'));

$client = new EvalandgoApiClient\Client('CLIENT_ID', 'CLIENT_SECRET');

$questionnaires = $client->resource('questionnaire')->all();

$questionnaire = $client->resource('questionnaire')->get($questionnaires[0]->getId());

$questionnaire = new \ApiClient\Model\Questionnaire();
$questionnaire->setTitle('questionnaire test');
$questionnaire = $client->resource('questionnaire')->create($questionnaire);

$questionnaire->setTitle('questionnaire test rename');
$questionnaire = $client->resource('questionnaire')->update($questionnaire);

$deleteQuestionnaire = $client->resource('questionnaire')->delete($questionnaire->getId());

How to contribute

To contribute just open a Pull Request with your new code taking into account that if you add new features or modify existing ones you have to document in this README what they do.

License

EvalandgoApiClient is licensed under MIT