Documentation

Le vocabulaire Apiloop

Pour bien utiliser la plateforme il est nécessaire de saisir le vocabulaire employé. Bien que très simples, certaines notions peuvent paraître un peu compliquées pour les non initiés.

Application

L’application représente le point de départ de votre aventure sur Apiloop. Tous les éléments suivant tournent autour de cette notion.

Utilisateur

Représente un utilisateur d’une application. Par exemple si vous êtes inscrit sur Apiloop et crééez une application dessus, alors vous êtes un user d’Apiloop. Les personnes qui visitent votre application et s’inscrivent dessus sont des users de votre application et indirectement d’Apiloop.

Un utilisateur peut effectuer diverses actions que nous avons prévues pour vous : s’inscrire, se connecter, regénérer un mot de passe oublié…

Entité

Une entité fait partie du coeur de votre application, elle permet de représenter un objet de la vie réelle. Voici des exemples d’entités pour des services que vous connaissez très certainement :

En somme, imaginez une entité comme un table dans une base de données relationnelle.

Attribut

Un attribut est forcément lié à une entité. Si une entité peut être vue comme une colonne dans une base de données relationnelle, alors l’attribut représente une colonne de cette table. En reprenant des entités des services que vous connaissez certainement :

L’attribut représentant une donnée basique, il est forcément typé. Voir la liste des attributs pour plus de détails.

Modèle

Le modèle représente l’ensemble des entités et attributs de votre application. Si vous développez un réseau social ou un site e-commerce, le modèle sera différent par exemple.

Mission

Une mission vous permet de faire faire par un développeur, designer, testeur une opération que vous ne savez, ne pouvez ou ne voulez tout simplement pas faire. Voici une liste non exhaustive des opérations possibles :

Lorsque vous saisissez une mission, divers éléments vous sont demandés :

  1. Titre - Soyez concis et précis, c’est la première chose que les potentiels réalisateurs de la mission verront
  2. Description - Évitez les grosses tartines indigestes. Préférez une explication concise mais exhaustive
  3. Budget - Vous êtes libres de fixer votre budget mais un montant trop faible repoussera les potentiels réalisateurs
  4. Échéance - À l’instar du budget, un délai trop court repoussera les potentiels réalisateurs
  5. Avancement - Typiquement si vous avez déjà un peu avancé de votre côté sur la mission, vous pouvez l’indiquer avec un pourcentage

Une fois votre mission créée, un fil de discussion sera disponible pour la peaufiner et échanger dessus.

Workflow

Le workflow est un terme générique qui désigne un processus en mouvement. En somme le workflow représente les règles métier associées à votre application. C’est dans le workflow que vous décrivez ce qu’il se passe lorsqu’un utilisateur s’inscrit, lorsqu’une commande d’un produit est passée…

Types d’attributs

Lorsque vous créez un attribut pour une entité, la liste suivante s’affiche :

Liste déroulante des types d'attributs

Le choix du type d’attribut est très important car il indique comment vos données seront validées.

Il peut être parfois difficile de choisir le bon type pour la bonne donnée. Dans le tableau suivant vous retrouvez des exemples précis vous permettant d’orienter vos choix.

Nom Description Exemples de valeurs
Booléen Information qui ne peut prendre que deux valeurs contraires comme Oui/Non, Vrai/Faux Oui
Pays Pays sur cette planète France
Devise Devise utilisée sur cette planète EUR
Date Date de naissance, date d’un événement 26/06/2015
Email Adresse email d’un utilisateur hello@apiloop.io
Objet embarqué Objet n’étant pas forcément une entité {"ht": 10.0, "tva": 0.20, "ttc": "12.0"}
Liste à choix unique Valeur que l’utilisateur doit choisir parmi une liste prédéfinie Bleu ou Blanc ou Rouge
Image Image uploadée par un utilisateur Lien vers l’image
Langue Langue parlée sur cette planète Français
Latitude Latitude pour positionner un lieu géographiquement 3.45
Nombre décimal Nombre à vrigule 64.5
Nombre entier Nombre entier 26
Longitude Longitude pour positionner un lieu géographiquement 7.98
Mot de passe Valeur qui doit être cryptée comme le mot de passe d’un utilisateur ••••••••••
Pourcentage Pourcentage qui doit être une valeur entre 0 et 100% 45%
Reference à une autre entité Lien d’un attribut à une autre entité de l’application Lien article/catégorie
Slug Texte qui ne contient que des minuscules, sans accents, des chiffres et des tirets ‘-‘ titre-article-seo-friendly
Texte Nom, Prénom, Titre, Description Charles Hubert
URL Adresse d’un site web, d’un profil sur un réseau social https://www.apiloop.io
Code unique généré automatiquement (UUID) Référence unique auto-générée 110e8400-e29b-11d4-a716-446655440000
Video Une vidéo uploadée par un utilisateur Lien vers la vidéo

Entité spéciale : User

Étant donné que la plupart des applications interagissent avec des utilisateurs, nous vous avons mâché le travail concernant la gestion de ces derniers et des comptes clients.

Quoi de plus rébarbatif que de développer encore et encore l’inscription, la connexion, le mot de passe oublié ou encore la déconnexion ?

C’est pour cela qu’à la création de votre application vous pouvez choisir si oui ou non vous voulez gérer des utilisateurs. Si vous cochez Oui, voici ce qu’il se passe derrière :

  1. Nous créeons une entité User avec des champs de base tels que email, mot de passe, prénom et nom
  2. Nous générons les formulaires d’inscription, connexion et récupération de mot de passe

Que se passe-t-il si je veux ajouter une donnée à mon entité User ?

Aucun problème, le système le gère très bien. Il vous suffit simplement de modifier l’entité User générée et y ajouter tous les attributs qu’il vous faut.

Le seul pré-requis est de ne pas toucher aux attributs que nous avons générés et cités plus haut. En effet, ceux-ci font partie du core et sont nécessaires pour assurer le bon fonctionnement de votre application.

Checklist pour créer une application

Nous faisons tout pour rendre la création d’une application dans Apiloop la plus simple possible. Si toutefois il vous arrive d’être perdu dans votre processus de création il vous suffit de jeter un oeil à cette checklist.

Créer l’application

Cela semble basique, mais vous devez passer par la création de l’application via le formulaire dédié en cliquant sur Créer une application depuis votre tableau de bord.

Créer les entités et attributs

Une fois votre application créée, vous arrivez sur sa vue détaillée. Vous devez à présent renseigner vos entités et leurs attributs respectifs. Si cette étape est difficile pour vous, n’hésitez pas à demander de l’aide.

Cette étape est vraiment celle où vous allez représenter le type de données que vous souhaitez gérer dans votre application ainsi que les relations entre elles.

Prenez votre temps pour bien modéliser votre application, mais si vous oubliez une entité ou un attribut, ce n’est pas grave. La création d’une application Apiloop se fait de manière itérative.

Générer l’API

Bonne nouvelle : vous n’avez rien à faire ! Tout se fait de manière transparente et automatique pour vous. Les contraintes que vous avez définies au niveau de vos attributs sont utilisées pour valider vos données lorsqu’un utilisateur les renseigne.

Générer le frontend

Autre bonne nouvelle : il suffit d’appuyer sur un bouton. Rendez vous dans l’onglet Déployer dans le tableau de bord de votre application et cliquez sur Générer.

La première fois, cela peut prendre un peu de temps, faites une pause en regardant une vidéo de chaton sur Youtube ou allez chercher un petit café.

Une fois votre application générée, dans ce même onglet Déployer, de nouveaux boutons sont apparus. Vous pouvez à présent visualiser l’application générée grâce au bouton Visualiser.

Comme nous l’avons indiqué dans nos articles, notre philosophie est de vous proposer une application “clean”, comme si on vous proposait une maison avec des fondations parfaites et des murs blancs pour accueillir la décoration de votre choix.

Modifier le frontend

Plusieurs options possibles :

  1. Vous savez faire du HTML/CSS, vous pouvez alors le faire vous même
  2. Vous avez un ami qui peut/veut le faire pour vous
  3. Vous souhaitez demander à un membre de la plateforme via une mission

Rendez vous dans l’onglet Personnaliser et choisissez Design ou Code. Suivez la procédure afin de pouvoir avoir accès au code source.

  1. Modifiez les parties du code de votre choix
  2. Pushez les modifications
  3. Cliquez sur Publier dans l’onglet Déployer de votre application
  4. Cliquez sur Visualiser pour voir vos modifications

Et itérez, modifiez, pushez, testez… jusqu’à ce que le résultat vous satisfasse.

Modifier le fonctionnement

Le workflow d’Apiloop se situe au niveau de chaque entité. Sélectionnez l’entité pour laquelle vous souhaitez modifier le fonctionnement ou passez par l’assistant dans l’onglet Déployer de votre application.

Choisissez les étapes où votre action doit apparaître et laissez vous guider.

Ici encore, les modifications sont appliquées en temps réel donc vous pouvez tester sans même regénérer votre application.

Liez votre application à votre nom de domaine

Enfin, avant d’envoyer vos utilisateurs sur votre application, il vous faut lier votre nom de domaine.

Conclusion

Cette checklist répertorie les lignes directrices de la création d’une application sur Apiloop. Ne vous fiez pas à sa longueur, la plupart des actions se font très rapidement afin que votre Time to Market soit réduit au maximum.

Lier un nom de domaine

Pour lier votre nom de domaine à votre application, la marche à suivre est très simple.

Réservez le nom de domaine

Si vous possédez déjà le domaine, vous pouvez passer à l’étape suivante. Si ce n’est pas le cas, vous pouvez choisir le service de votre choix. Nous recommandons Gandi qui est français et fonctionne très bien.

Créez le CNAME

Rendez-vous dans la section de modification des DNS dans l’interface d’administration du service aurpès duquel vous avez souscrit le nom de domaine. Créez un nouvel enregistrement CNAME ou modifiez l’existant s’il y en a déjà un.

Type CNAME
Nom www
Valeur www.mondomaine.com.s3-website-eu-west-1.amazonaws.com

Si vous souhaitez que votre site soit accessible avec un autre sous-domaine que www, vous avez juste à remplacer ce dernier par le sous-domaine de votre choix au niveau du nom et de la valeur.

Liez le nom de domaine

Créez une mission dans votre console Apiloop pour que nous liions le nom de domaine à votre application.

La propagation des enregistrements DNS peut prendre un certain temps donc il est possible que votre site ne soit pas accessible immédiatement avec votre nom de domaine.

Utiliser l’API sans frontend généré

Si vous êtes un utilisateur avancé, il se peut que vous souhaitiez utiliser Apiloop seulement pour son API et non pour son frontend généré. Ceci est tout à fait possible.

En effet, nous générons une API REST qui respecte les standards, ainsi vous pouvez la requêter comme vous requêtez toute autre API.

Votre application dispose d’une apiKey qui permet de l’authentifier sur nos serveurs. Tous vos appels doivent contenir cette clé dans le header de la requête.