Bienvenue, Invité
Nom d'utilisateur : Mot de passe : Se souvenir de moi

SUJET : Documentation API REST

Documentation API REST il y a 1 an 1 semaine #100274

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
Bonjour,

En effet, je reproduis ce comportement en v8.0
A priori le champ fin_validite est ignoré et la durée par défaut indiquée dans les paramètres du module semble toujours appliquée.

Solution de contournement, faire un update après coup mais en effet ce n'est pas très "propre" (et cela nécessite deux requêtes au lieu d'une).

Je vous conseille d'ouvrir un ticket d'anomalie sur github.com/dolibarr/dolibarr/issues/new car ce n'est en effet pas un comportement normal.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 1 an 1 semaine #100276

  • yves57
  • Portrait de yves57
  • Hors ligne
  • Gold Boarder
  • Messages : 666
  • Remerciements reçus 138
  • Karma: 11
Bonjour,
J'ai un exemple qui fonctionne avec un champ "duree_validite", et en donnant une valeur en jours par rapport à la date du jour.
Je suis en v7.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 1 an 1 semaine #100277

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
Bonjour yves57,

Merci pour l'info. En effet, avec duree_validite, cela fonctionne également en v8.0 en passant un nombre de jours.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 1 an 1 semaine #100315

  • marine17
  • Portrait de marine17
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
Si j'envoie:

{
"date": "2018-10-12",
"socid": "1",
"statut": "0",
"duree_validite": 30
}

J'obtiens comme date de validité le 31/01/1970
Dernière édition: il y a 1 an 1 semaine par marine17.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 1 an 1 semaine #100316

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
Bonjour,

La date doit être au format timestamp UNIX.
L'administrateur a désactivé l'accès en écriture pour le public.
Cet utilisateur a été remercié pour son message par: marine17

Documentation API REST il y a 1 an 1 semaine #100318

  • marine17
  • Portrait de marine17
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
Merci, c'était donc ca !
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 1 an 4 heures #100773

  • Jerome_m
  • Portrait de Jerome_m
  • Hors ligne
  • Fresh Boarder
  • Messages : 11
  • Karma: 0
je vous propose une synhèse des bugs de l'API REST, avec les contournements,
j'y ai mis ce que j'ai expérimenté :
cloud.paquerette.eu/index.php/s/rzftoYD6XszCiMB
le document est accessible à tout le monde en lecture / écriture
Dernière édition: il y a 1 an 3 heures par Jerome_m.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100814

  • bdegoy
  • Portrait de bdegoy
  • Hors ligne
  • Fresh Boarder
  • Messages : 1
  • Karma: 0
Bonjour,
Je suis totalement nouveau sur Dolibarr, aussi merci d'excuser ma naïveté.
Je ne comprends pas "$fk_product = $newProductResult".
D'après la documentation, le retour de la requête Create est un array au format JSON avec error et debug etc.
D'où vient l'id de l'enregistrement qui a été créé?
Merci pour votre aide.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100815

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
Bonjour,

Les requêtes POST de création de nouvelles entitées renvoient l'id de l'enregistrement nouvellement créée en cas de succès (code HTTP 200) ou dans tous les autres cas le tableau JSON que vous évoquez ;)
L'administrateur a désactivé l'accès en écriture pour le public.
Cet utilisateur a été remercié pour son message par: bdegoy

Documentation API REST il y a 11 mois 4 semaines #100822

  • godloff
  • Portrait de godloff
  • Hors ligne
  • Fresh Boarder
  • Messages : 3
  • Karma: 0
Bonjour,
je découvre les API REST de dolibarr. J'essaie de développer des API supplémentaires pour un besoin métier, mais je me galère un peu.
Sur le wiki (wiki.dolibarr.org/index.php/Module_Web_S...T_(d%C3%A9veloppeur)) il est indiqué
Ajouter un nouveau service est aussi facile qu'ajouter un fichier nommé api_monmoduleobject.class.php dans le dossier htdocs/module/class.
J'ai donc ajouté mon propre fichier, il est reconnu dans l'explorer, mais l'API ne fonctionne pas ("API not found (failed to include API file)").
pour faire simple, j'ai juste copié / collé / renommé une API existante (users => customers) donc le code ne devrait pas poser de problème...


Merci

Nicolas
Pièces jointes :
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100826

  • dolibarr95
  • Portrait de dolibarr95
  • Hors ligne
  • Admin
  • Messages : 1270
  • Remerciements reçus 188
  • Karma: 25
@chag :laugh: :laugh: :laugh: :laugh: :laugh:
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100858

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
@godloff Bonjour,

Que souhaitez vous faire exactement avec l'API REST ?
En savoir un peu plus sur votre besoin permettra certainement de mieux vous orienter.

Bonne journée à vous ;)
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100861

  • godloff
  • Portrait de godloff
  • Hors ligne
  • Fresh Boarder
  • Messages : 3
  • Karma: 0
Bonjour,
je souhaite gérer des réservations de service par des clients via mobile, pour un POC.
Mon idée est d'utiliser la base client standard dolibarr pour créer (thirdparties POST) ou gérer (thirdparties PUT, GET) les comptes client.
Ca, j'ai réussi à le faire à peu près, mon API modifié répond à mon besoin pour l'instant.
Je voudrais maintenant gérer manuellement mes réservations en créant une table à la main dans la BDD et en accèdant à cette table via une nouvelle API.
J'aimerais donc créer une API Booking. Pour l'instant, j'ai juste copié / collé l'API users en la renommant, mais ma nouvelle API n'est pas reconnue. Je suppose donc qu'il y a plus d'actions à faire que juste mettre un fichier api_toto.class.php, qui contient une classe toto avec des methodes get, put, post etc.
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100862

  • jtraulle
  • Portrait de jtraulle
  • Hors ligne
  • Admin
  • Messages : 226
  • Remerciements reçus 83
  • Karma: 15
@godloff Je suis un peu inquiet quand je lis que vous avez modifié l'API des Thirdparty. C'est assez dangereux de modifier directement le coeur de Dolibarr car cela posera problème lors des mises à jour (je vous déconseille donc de faire cela directement). Je ne sais pas ce que vous avez modifié et pourquoi mais on peut éventuellement en discuter ici également.

Ensuite, je vous déconseille également de créer une table "à la main" pour les mêmes raisons qu'évoquées ci-dessus. Voyez cette page du wiki wiki.dolibarr.org/index.php/D%C3%A9veloppement_module qui vous permettra d'adopter une approche plus propre pour étendre le coeur de Dolibarr et créer vos propres classes PHP DAO wiki.dolibarr.org/index.php/D%C3%A9velop..._DAO_.28optionnel.29.

Pour l'API, du coup, votre fichier sera dans votre propre répertoire class/ de votre module (évitez de copier/coller et commencez avec un fichier minimal et juste une méthode GET par exemple).
L'administrateur a désactivé l'accès en écriture pour le public.

Documentation API REST il y a 11 mois 4 semaines #100877

  • godloff
  • Portrait de godloff
  • Hors ligne
  • Fresh Boarder
  • Messages : 3
  • Karma: 0
Bonjour, merci pour votre réponse. J'ai modifié les API existantes juste pour comprendre comment ça fonctionne, mon intention est plutôt d'en créer de nouvelles.
Et le contexte est un POC plutôt qu'un développement opérationnel, La base sur laquelle je travaille n'est pas utilisée de façon professionnelle, elle me sert juste à faire des essais.
Mais je comprends de la réponse que je n'ai pas approché le sujet du bon côté, je voulais juste créer une API, alors qu'il faudrait d'abord créer un module et ensuite lui associer une API. Je vais m'atteler à ça, je reviendrai si je ne m'en sors pas ;)
L'administrateur a désactivé l'accès en écriture pour le public.