ABCDEFGHI
1
RubriqueNiveauLibelléobjectif (VA)Mise en oeuvreevaluation
2
1Les actions provoquées par les verbes utilisés sont cohérentes avec le verbe en question
3
2Toute action utilisant POST correspond à la création d'une ressource
4
3Toute action utilisant PUT correspond à la modification d'une ressourceaussi voir #23
5
4Toute action utilisant DELETE correspond à la suppression d'une ressource
6
5Les actions get ne modifient pas l'état de la ressource
7
6Le format n'est pas spécifié dans l'URL de la ressource
8
7Le service accepte les en-têtes accept
9
8Le service sert les formats en fonction de ce qui est spécifié dans les en-têtes clients
10
9Chaque ressource fait l'objet d'un id unique
11
10Chaque ressource est identifiable avec une URI
12
11Les demandes d'en-têtes incorrectes ou manquantes donnent lieu à une réponse X
13
12Les réponses à une requête de type GET pour une ressource existante ont un statut 200
14
13Les réponses à une requête de type GET pour une ressource inexistante ont un statut 404
15
14Les requêtes avec une méthode non supportée donnent lieu à une réponse 405
16
15Une requête de type OPTIONS donne lieu à l'envoi d'une liste de méthodes acceptées
17
16La création immédiate d'une ressource donne lieu à l'émission d'une réponse de statut 201 ou 303
18
17La création immédiate d'une ressource déclenche l'envoi d'une réponse contenant un en-tête location
19
18Chaque en-tête location correspond soit à la ressource, soit à l'URI permettant de la suivre
20
19L'api est documentée (eg: https://www.dropbox.com/developers/reference/apipeut-être détailler ce qu'un entend par documentée
21
20Eviter d'inclure un paramètre de version dans l'url (don't break it)
22
21Les requêtes nécessitant une authentification alors que le client n'est pas authentifié donnent lieu à une réponse 401
23
22Les requêtes vers une ressource protégée/privée alors que le client est authentifié donnent lieu à une réponse 403
24
23Les requêtes PUT permettent de modifier ou créer une ressource en envoyant une représentation complète
25
24Les requêtes PATCH permettent de modifier une ressource en envoyant une représentation partielle
26
25oAuth1 est supporté pour l'authentification
27
26oAuth2 est supporté pour l'authentification
28
27HTTP Basic est supporté pour l'authentification
29
28Les requêtes authentifiées sont uniquement supportées sur HTTPS
30
29JSON ou XML est supporté comme format
31
30Une politique 'Access Control' est définie
32
31
33
32
34
33
35
34
36
35
37
36
38
37
39
38
40
39
41
40
42
41
43
42
44
43
45
44
46
45
47
46
48
47
49
48
50
49
51
50
52
51
53
52
54
53
55
54
56
55
57
56
58
57
59
58
60
59
61
60
62
61
63
62
64
63
65
64
66
65
67
66
68
67
69
68
70
69
71
70
72
71
73
72
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88