formats
Publié le 19 octobre 2012, par dans Producteev.

Producteev est un outil de gestion de « to-do list ». Après avoir testé leur application iPhone et leur plateforme web, j’ai bien apprécié le tout. Nous avons donc décidé de d’intégrer cet outil à notre logiciel de CRM. Bien heureux qu’ils aient prévu une API, bien surpris de n’avoir pas trouvé de librairies pour s’en servir !

J’ai donc dû développer en quelques sortes un début de librairie pour l’utilisation de l’API Producteev avec PHP. Voici donc quelques explications liées à l’installation de cette librairie, puis à son utilisation.

 Téléchargement de la librairie API Producteev PHP

Voici le lien du dépôt sur GitHub pour télécharger l’API :

https://github.com/easydeveloppement/Producteev-API-non-official-PHP-example

Configuration de l’API

Clés de l’API

Ouvrez le fichier producteev.php.

A l’initialisation de la classe producteev_api, vous trouverez les lignes suivantes :

// your API Key
$this->apiKey = ‘xxxxxxx’;
// your API secret
$this->apiSecret = ‘xxxxxxxx’;
// API end point URL
$this->apiUrl = ‘https://api.producteev.com/’;

Pour obtenir votre clé API et la clé secrète, il suffit de faire une demande auprès de l’équipe de producteev. J’ai reçu leur réponse dans les 24h.

Gestion des tokens

Par défaut les tokens sont gérés grâce aux sessions PHP. Vous pouvez cependant modifier ces deux fonctions pour y insérer votre propre système de gestion des tokens (les sauvegarder dans une base de données mysql par exemple).

// Used to store the token
function setToken($token) {…}

// Used to retrieve the token
function getToken() {…}

Gestion des erreurs

Pour configurer la gestion des erreurs, vous pouvez modifier cette fonction :

// Error management
function error($error) {…}

Personnalisation du formulaire de connexion de l’utilisateur

// EDIT this function in order to create your own form to ask for email and password to connect the user
function whoAreYou() {…}

Cette fonction est utilisée pour générer un formulaire pour que l’utilisateur puisse entrer son adresse email et mot de passe pour se connecter à son compte Producteev. La validation est ensuite faite sur une page AJAX, qui se charge d’enregistrer le token retourné par l’API Producteev.

Exemple d’utilisation de la librairie

Connexion d’un utilisateur

// class instantiation
$producteev = new producteev_api();

// user login
$producteev->loginUser(‘email@example.com’, ‘password’);

Récupération de l’ensemble des tâches

Attention, il faut noter que cette fonction renvoie également les tâches supprimées de Producteev.

// getting list of tasks
$tasks = $producteev->tasksList();

Création d’une tâche

// create a task
$task = array();
$task['title'] = « test depuis notre CRM »;
$task['deadline'] = ’2012-10-20 15:30:00′;
$task['status'] = 1;  // 1 = à faire ; 2 = fait
$producteev->createTask($task);

En espérant que ces quelques exemples et cette librairie pourront vous être utiles !