version 0.2 (beta)
18.01.2012
Bienvenue sur la documentation de l'API du service de retranscription de liste de fer BaCAD ! Ce service vous offre une interface simple pour extraire les données d'une liste de fer BaCAD, de manière rapide, grâce à la traduction des codes-barres 2D.
BaCAD utilise la norme d'échange de données d'armature BVBS.
…
Le service est sécurisé par un système d'authentification basique HTTP (paire user/password). Cette identification est nécessaire pour utiliser chacune des fonctionnalités présentées dans ce document.
L'API renvoie les données d'une liste de fer BaCAD en détectant/décodant les codes barres à l'intérieur. Vous envoyez la liste de fer sous plusieurs formats possibles:
Ce document décrit le format requis des URLs et les paramètres disponibles.
Un URL de requête au service doit se présenter sous la forme suivante:
http://cloud.bacad.ch/steellist.php?parameters ou https://cloud.bacad.ch/steellist.php?parameters (connexion sécurisée SSL)
Excepté pour le document, chaque paramètre peut être spécifié soit dans l'URL (méthode GET) ou alors comme donnée postée (méthode POST). Les paramètres sont les suivants:
format: formats de sortieuploadedfile: document
Le format de sortie est spécifié grâce à la variable 'format'. L'API supporte actuellement les formats de sortie suivant:
Le document doit être envoyé sur le site selon la méthode POST du protocole HTTP, sous le nom 'uploadedfile'.
Les options de sortie permettent d'activer/désactiver la génération de données supplémentaires dans le résultat:
'posBvbs' à '1' indique que le service doit inclure les données BVBS (pour chaque barre) au résultat'barXml' à '1' indique que le service doit inclure les données XML (pour chaque barre) au résultat
Pour chaque demande valide, le service renvoie une réponse 'SteelListResponse' dans le format indiqué dans l'URL de requête. Chaque réponse contient les éléments suivants:
OK indiquant que la requête a été un succèsAUTH_FAILED indiquant que l'identification de l'utilisateur a échoué (paire user/password)INVALID_REQUEST indiquant que la requête a été mal-forméesINVALID_API_KEY indiquant que la clé d'utilisation de l'API est incorrecteINVALID_FILE_TYPE indiquant que le type du fichier posté n'est supportéFILE_OVER_SIZE_LIMIT indiquant que le fichier posté est trop volumineux (taille excessive)FILE_UPLOAD_ERROR indiquant une erreur de téléchargement du fichierINTERNAL_ERROR indiquant une erreur interne du serviceUNKNOWN_ERROR indiquant une erreur inconnuedocument contenant les éléments décrivant les propriétés du documentproject indiquant le nom du projetdivision indiquant le nom de la divisionnum indiquant le numéro de la pagethumbnail indiquant l'URL (partiel) vers l'aperçu (image) de la pagenum indiquant le numéro de la positionbvbs indiquant le code BVBS de la positionbar contenant les éléments décrivant les caractéristiques de la barretype indiquant le type de la barre 2D, 3D, etc. Les valeurs peuvent être les suivantes:BF2D indiquant une barre en 2 dimensionsBF3D indiquant une barre en 3 dimensionsBFWE indiquant une barre en spiraledimension contenant les éléments décrivant chaque segment de la barre (selon son type)length indiquant la longueur du segmentradius indiquant le rayon du segment arrondi (0 si segment droit)angle indiquant la différence d'angle entre le segment et son prédécesseurx indiquant la première composante du vecteur du segmenty indiquant la deuxième composante du vecteur du segmentz indiquant la troisième composante du vecteur du segmentradius indiquant le rayon du cercle décrit par la spiralenumber indiquant le nombre de rotations décrites par la spiralespacing indiquant l'espace entre chaque rotations décrites par la spiraleVoici un exemple (partiel) du retour au format Xml:
<SteelListResponse> <status>OK</status> <document> <project>MyProject</project> <division>MyDivision</division> <language>FR</language> </document> <page> <num>1</num> <thumbnail>/foo/bar.png</thumbnail> <pos> <bvbs>BF2D@Hj00@r001@ia@p1@l3280@n6@e2.912@d12@gB500B@s72@v@Gl160@w90@l2960@w90@l160@w0@C69@CRLF</bvbs> <project>MyProject</project> <list>MyList</list> <revision>Revision</revision> <num>8</num> <count>42</count> <length>1000</length> <weight>1.2<weight> <steel>B500B</steel> <diameter>12</diameter> <bending>46</bending> <bar> <type>BF2D</type> <dimensions> <dimension> <length>500</length> <radius>250</radius> <angle>45</angle> </dimension> </dimensions> </bar> </pos> </page> </SteelListResponse>
Le format des dimensions de barre varie selon le type de barre. Voici un exemple pour les barres standards (type BF2D):
<dimension> <length>500</length> <radius>250</radius> <angle>45</angle> </dimension>
Un exemple pour les barres en 3 dimensions (type BF3D):
<dimension> <x>0</x> <y>0</y> <z>300</z> </dimension>
Un exemple pour les spirales (type BFWE):
<dimension> <radius>200</radius> <number>6</number> <spacing>200</spacing> </dimension>
Un exemple ABS:
BF2D@Hj00@r001@ia@p1@l3280@n6@e2.912@d12@gB500B@s72@v@Gl160@w90@l2960@w90@l160@w0@C69@ BF2D@Hj00@r001@ia@p2@l5280@n6@e4.688@d12@gB500B@s72@v@Gl160@w90@l4960@w90@l160@w0@C84@ BF2D@Hj00@r001@ia@p3@l2370@n11@e1.461@d10@gB500B@s60@v@Gl140@w90@l2230@w0@C71@ BF2D@Hj00@r001@ia@p4@l1960@n6@e1.208@d10@gB500B@s60@v@Gl1960@w0@C96@
Une page Html est à disposition pour tester le service: cliquez ici.