Projet

Général

Profil

0004-help-add-card-submit-API-49520.patch

Lauréline Guérin, 26 février 2021 11:00

Télécharger (3,96 ko)

Voir les différences:

Subject: [PATCH 4/4] help: add card submit API (#49520)

 help/fr/api-cards.page | 100 ++++++++++++++++++++++++++++++++++++++---
 1 file changed, 95 insertions(+), 5 deletions(-)
help/fr/api-cards.page
12 12

  
13 13
</info>
14 14

  
15
<title>Récupération des données de fiches</title>
15
<title>Gestion des fiches</title>
16 16

  
17 17
<p>
18
Une application tierce peut récupérer les données des fiches, peut également
19
obtenir la liste des modèles de fiche et les schémas de données associés.
18
Une application tierce peut créer des fiches, récupérer les données des fiches,
19
et peut également obtenir la liste des modèles de fiche et les schémas de
20
données associés.
20 21
</p>
21 22

  
23
<section id="create">
24
  <title>Création d'une fiche</title>
25

  
26
  <p>
27
   La création d'une fiche se fait par une requête <code>POST</code> à
28
   l’adresse <code>/api/cards/<var>slug</var>/submit</code>, le contenu de
29
   la requête doit être un dictionnaire contenant obligatoirement un attribut
30
   <code>data</code>.
31
  </p>
32

  
33
  <p>
34
   L’attribut <code>data</code> est obligatoire et contient un dictionnaire
35
   dont les clés sont les noms de variable (remplacé ici par
36
   <var>varname</var>) des champs de la fiche et les valeurs le contenu de
37
   ces champs.
38
  </p>
39

  
40
  <list>
41
  <item>
42
  <p>
43
   Les champs de type simple tels que « Texte », « Texte long » ou
44
   « Courriel » sont des chaînes de caractères.
45
  </p>
46
  </item>
47

  
48
  <item>
49
  <p>
50
   Les champs de type « Liste » et « Liste à choix multiples » acceptent
51
   différentes valeurs selon leur configuration, ceci est décrit dans
52
   <link xref="api-fill#fill-list"/>.
53
  </p>
54
  </item>
55

  
56
  <item>
57
  <p>
58
   Les champs de type « Date » sont des chaînes de caractères au format
59
   ISO-8601, i.e. <code>YYYY-MM-DD</code>.
60
  </p>
61
  </item>
62

  
63
  <item>
64
  <p>
65
   Les champs de type « Fichier » sont des dictionnaires contenant les clés
66
   <code>filename</code> pour le nom de fichier et <code>content</code> pour le
67
   contenu de celui-ci, encodé en base64.
68
  </p>
69
  </item>
70

  
71
  <item>
72
  <p>
73
   Les champs de type « Carte » sont des dictionnaires contenant les clés
74
   <code>lat</code> pour la latitute en nombre décimal et <code>lon</code>
75
   pour la longitude en nombre décimal.
76
  </p>
77
  </item>
78
  </list>
79

  
80
  <p>
81
   L’exemple suivant crée une fiche « Parking », dont le modèle
82
   de fiche a comme identifiant « parkings », qui demanderait trois champs :
83
   adresse (nom de variable <code>adresse</code>), date d'ouverture
84
   (nom de variable <code>date_ouverture</code>) et nom (nom de variable
85
   <code>nom</code>).
86
  </p>
87

  
88
  <screen>
89
<output style="prompt">$ </output><input>curl -H "Content-type: application/json" \
90
       -H "Accept: application/json" \
91
       -d@donnees.json \
92
       https://www.example.net/api/cards/parkings/submit<var>?signature…</var></input>
93
<output>{"err": 0, "data": {"id": "5"}}</output>
94
  </screen>
95

  
96
  <p>
97
   Le fichier de données utilisé (<file>donnees.json</file>) contient le
98
   dictionnaire JSON suivant :
99
  </p>
100

  
101
  <code mime="application/json">
102
{
103
  "data": {
104
     "adresse": "rue de l’Opéra",
105
     "date_ouverture": "2020-11-12",
106
     "nom": "Parking Opéra-Tolozan"
107
  }
108
}
109
  </code>
110

  
111
</section>
112

  
22 113
<section id="card">
23 114
<title>Récupération des données d’une fiches</title>
24 115

  
......
64 155
</code>
65 156

  
66 157
<p>
67
La structure du contenu correspond à celle de l’API d
68
<link xref="api-get#pull">récupération des données d’un formulaire</link>.
158
La structure du contenu correspond à celle de l’API de <link xref="#create"/>.
69 159
</p>
70 160

  
71 161
</section>
72
-