ZEP-39 : Un espace pour les développeurs

a marqué ce sujet comme résolu.
Cartouche
ZEP 39
Titre Un espace pour les développeurs
Révision 2
Date de création 31 décembre 2015
Dernière révision 2 janvier 2016
Type Feature
Statut Rédaction

Contexte

L'API couvre de plus en plus de module à travers les versions de ZdS. Avec cet avancement, les membres de Zeste de Savoir sont de plus en plus intéressés de jouer avec cette API. Jusqu'à présent, un sujet, sur le forum Dev Zone, est destiné à rendre accessible l'API aux membres mais cela nécessite l'intervention d'un administrateur qui va créer une clé API dans l'espace admin, l'attacher au membre et lui fournir les données par conversation privée.

Ce processus peut être nettement amélioré par un portail digne de ce nom accessible depuis l'instance de Zeste de Savoir. C'est l'objet de cette ZEP.

Objet de la proposition

L'objet de cette ZEP est simple : fournir un portail destiné aux développeurs pour retrouver toutes les informations nécessaires à la création d'applications tierces basées sur l'API de Zeste de Savoir ou sur des SDK développés par cette même communauté.

Construisons une liste exhaustive de ce que nous voudrions dans ce portail et que nous ferons évolué à travers les révisions de cette ZEP :

  • Créer ou révoquer des clés pour l'API pour un utilisateur/développeur donné.
  • Documentation API : Un accès à la documentation de l'API de ZdS.
  • Documentation OAuth2 : Un accès à la documentation de l'authentification de ZdS.
  • Les SDK : Lister tous les SDK disponibles dans tous les langages. Selon moi, ces SDK doivent être open-source et le portail doit fournir le lien vers ces sources.
  • Les projets tiers : Lister tous les projets aboutis de nos membres pourraient être une bonne manière de leur donner une visibilité et de les remercier de consacrer de leur temps à l'éco système de la plateforme. Les projets ne doivent pas forcément être open-source (si ?) mais cela serait bien de les rattacher à un sujet du forum "Vos projets".
  • D'autres idées ?

Les moyens mis en œuvre

La réalisation de cette ZEP va nécessiter l'intervention d'un ou plusieurs développeurs front et au moins, un développeur back-end.

C'est une toute petite ZEP mais je pense avoir couvert l'ensemble des besoins.

+25 -0

Je suis pour. Ce serait pratique de réunir en un seul lieu tout ce qui concerne le développement d'applications tierces à Zeste de Savoir. Cependant l'utilisation des clefs d'API est-elle vraiment indispensable ? A-t-on réellement besoin d'identifier les programmes (et leur développeur) qui veulent utiliser l'API ?

+1 -1

Aujourd'hui, tu peux utiliser l'API sans clée mais tu es soumis à des quotas. Il est nécessaire d'identifier les programmes, car certaine ressources exposés par l'API sont sensible. Il est souhaitable d'avoir une trace de qui fait quoi surtout quand il le font dans des grandes quantités.

Une autre façon de voir le souci étant que Zeste de Savoir à des ressources limités en bande passante/charge de serveur pour assurer un accés de qualitée égale à tout le monde, on a besoin de partager les ressources équitablement et donc le besoin de d'identifier.

+3 -0

Vu le nombre de +1 en une heure sur mon message, j'en déduis que l'idée plait. :)

Cependant l'utilisation des clefs d'API est-elle vraiment indispensable ? A-t-on réellement besoin d'identifier les programmes (et leur développeur) qui veulent utiliser l'API ?

Croal

Les clés API sont obligatoires à partir du moment où tu fais des requêtes authentifiés. Par exemple, si tu rentres l'URL /api/membres dans ton navigateur, tu vas directement interrogé l'API qui te renvoi une réponse en JSON et tu n'as pas du renseigner des clés. Mais cette route est publique.

Maintenant, tu veux récupérer l'ensemble de tes conversations privées sur Zeste de Savoir, tu dois d'abord générer tes tokens d'authentification avec les clés d'API pour pouvoir faire la requête. Par exemple, si tu rentres l'URL /api/mps dans une console REST (si tu es connecté avec ton navigateur, il sera assez intelligent pour faire une requête authentifié auprès du serveur), tu obtiens une erreur 401 qui te demande de générer tes tokens d'authentification.

Puis, comme l'explique Hugo, tu es soumis à un quota quand tes requêtes sont non authentifiés de 60/heure et de 2000/heure quand tu es authentifié. Et, en cas d'abus, on peut directement connaitre le fautif s'il utilise une clé d'API.

J'aurais ajouté la possibilité d'avoir ses identifiants (client_secret) et de pouvoir les révoquer au besoins

Hugo

Haha, c'est pour ça que je créais cette ZEP et je l'ai oublié dans la spec. :-° Hum …

+1 (j'ai toujours pas mes credentials et je sais pas trop ni pourquoi ni si je dois les redemander)

Javier

Contact SpaceFox et/ou firm1 directement.

qui peut ajouter un projet à cette liste ? Seulement les staffeux ?

Non parce qu'un projet peut être mené par n'importe qui, pas que par un staff. Par contre, on peut imaginer un nouveau centre de validation rien que pour ça validé par le staff (ou par les membres du groupe technique ? C'est pas bête ça).

+1 -0

Bien sûr, mais si chacun peut ajouter son projet dans cette liste, il faudra de toute façon une modération. Donc pourquoi pas passer par une étape de validation. Je pense que par le staff, se serait le plus simple, mais pas forcément le plus logique. Comment verrais-tu ça si c'est une validation par les membres du groupe technique ?

Comment verrais-tu ça si c'est une validation par les membres du groupe technique ?

Un process tout à fait similaire à celui pour les autres contenus par le staff.

Andr0

Pourquoi, ça me semble même être ce qui est nécessaire. DU coup, je crois que pour moi pour le moment, tout est bon sur cette ZEP. :)

J'ai toujours dans l'idée de développer un SDK (et non pas un framework ^^) pour Java et Android. ZMessenger était là pour me confirmer que je faisais les choses correctement et je dois dire que j'en suis vraiment très satisfait.

Mais donc oui, il y a des projets, des gens font joujou avec nos API comme en témoigne le sujet pour demander ses clés et avoir une page qui regroupe tous les projets ne peut que motiver les gens de développer des petits projets.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte