Améliorez vos intégrations avec l'API Designer amélioré !

Nous sommes ravis d'annoncer les améliorations significatives que nous avons apportées au module API Designer.

Ces améliorations vous permettront de créer des API personnalisées encore plus efficaces et puissantes. Ils se concentrent sur l’amélioration des opérations en masse, l’extension des fonctionnalités de certaines API et l’amélioration de l’utilisation de plusieurs conditions de terrain.

Examinons en détail ces améliorations :

Amélioration 1 : prise en charge des opérations groupées pour les enregistrements UPDATE/UPSERT

Concepteur d'API : prise en charge des opérations groupées

Avec la dernière mise à jour, vous pouvez effectuer des opérations groupées pour mettre à jour ou insérer des enregistrements. Cette amélioration vous permet de créer ou de mettre à jour plusieurs enregistrements en une seule requête, ce qui rend vos interactions API efficaces et vous font gagner du temps.

Fonctionnalités clés:

  • Créer une API : Créez plusieurs enregistrements en une seule requête en passant le paramètre Bulk="true". Document connexe
  • API de mise à jour : Auparavant, vous ne pouviez mettre à jour qu'un seul enregistrement par demande. Désormais, vous pouvez mettre à jour plusieurs enregistrements en une seule requête en faisant correspondre la condition Where. Document connexe

Limite d'enregistrement en masse : 50

Exemple de cas d'utilisation :

Module Contacts : Mettez à jour plusieurs enregistrements de n’importe quel champ avec une seule demande. Par exemple, vous pouvez mettre à jour plusieurs enregistrements de contacts en faisant correspondre des conditions spécifiques ou en en créant de nouveaux s'ils n'existent pas.


  

<?xml version="1.0"?>   <api method="post" module="Contacts">         <upsert bulk="true">             <where>                 <field name="mobile" condition="eq" value="@mobile"></field>              </where>             <update>               <record>                   <field name="mobile" value="@mobile"></field>                   <field name="email" value="@email" presence="optional"></field>                   <field name="lastname" value="@lastname" presence="optional"></field>               </record>             </update>             <create module="Contacts" bulk="true">                 <record>                   <field name="mobile" value="@mobile"></field>                   <field name="email" value="@email" presence="optional"></field>                   <field name="lastname" value="@lastname" presence="optional"></field>               </record>             </create>             <return>                 <field name="mobile"></field>                 <field name="email"></field>                 <field name="lastname"></field>             </return>         </upsert>     </api>


  

<?xml version="1.0"?>   <api method="post" module="Contacts">         <upsert bulk="true">             <where>                 <field name="mobile" condition="eq" value="@mobile"></field>              </where>             <update>               <record>                   <field name="mobile" value="@mobile"></field>                   <field name="email" value="@email" presence="optional"></field>                   <field name="lastname" value="@lastname" presence="optional"></field>               </record>             </update>             <create module="Contacts" bulk="true">                 <record>                   <field name="mobile" value="@mobile"></field>                   <field name="email" value="@email" presence="optional"></field>                   <field name="lastname" value="@lastname" presence="optional"></field>               </record>             </create>             <return>                 <field name="mobile"></field>                 <field name="email"></field>                 <field name="lastname"></field>             </return>         </upsert>     </api>

 

Cette amélioration rationalise votre flux de travail, réduisant le nombre d'appels d'API requis pour les opérations groupées.

Amélioration 2 : Sélectionnez l'API pour prendre en charge les champs du module parent renvoyés

Concepteur d'API : API de sélection améliorée

Nous avons étendu les fonctionnalités de l'API Select pour inclure les champs des modules de champs de référence. Cette amélioration vous permet de récupérer des données complètes en une seule requête.

Fonctionnalités clés:

  • Auparavant, l'API Select ne pouvait récupérer que les champs du module actuel.
  • Désormais, vous pouvez également sélectionner des champs à partir des modules de champs de référence.

Exemples de cas d'utilisation – Relation entre les cas et les contacts (N : 1) :

  • Récupérez les enregistrements de cas ainsi que les numéros de téléphone des contacts associés.
  • Récupérez les dossiers de cas ainsi que les noms et prénoms des contacts.
  • Obtenez des dossiers de cas avec le numéro de téléphone portable et le nom complet de l'utilisateur « Attribué à ».
 

Cette amélioration rationalise votre flux de travail, réduisant le nombre d'appels d'API requis pour les opérations groupées.

Amélioration 2 : Sélectionnez l'API pour prendre en charge les champs du module parent renvoyés

Concepteur d'API : API de sélection améliorée

Nous avons étendu les fonctionnalités de l'API Select pour inclure les champs des modules de champs de référence. Cette amélioration vous permet de récupérer des données complètes en une seule requête.

Fonctionnalités clés:

  • Auparavant, l'API Select ne pouvait récupérer que les champs du module actuel.
  • Désormais, vous pouvez également sélectionner des champs à partir des modules de champs de référence.

Exemples de cas d'utilisation – Relation entre les cas et les contacts (N : 1) :

  • Récupérez les enregistrements de cas ainsi que les numéros de téléphone des contacts associés.
  • Récupérez les dossiers de cas ainsi que les noms et prénoms des contacts.
  • Obtenez des dossiers de cas avec le numéro de téléphone portable et le nom complet de l'utilisateur « Attribué à ».

  

<?xml version="1.0"?> <api method="get">     <select module="Cases">         <record>             <field name="title"></field>             <field name="casestatus"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>             <field name="case_no"></field>             <field name="assigned_user_id" module="Users">                 <select>                     <field name="first_name"></field>                     <field name="last_name"></field>                     <field name="userlabel"></field>                 </select>             </field>             <field name="contact_id" module="Contacts">                 <select>                     <field name="firstname"></field>                     <field name="lastname"></field>                     <field name="mobile"></field>                 </select>             </field>             <field name="group_id" module="Groups">                 <select>                     <field name="groupname"></field>                 </select>             </field>         </record>         <where>             <field name="contact_id" module="Contacts">                 <select>                     <where>                         <field name="lastname" value="@name"></field>                     </where>                 </select>             </field>         </where>     </select> </api>


  

<?xml version="1.0"?> <api method="get">     <select module="Cases">         <record>             <field name="title"></field>             <field name="casestatus"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>             <field name="case_no"></field>             <field name="assigned_user_id" module="Users">                 <select>                     <field name="first_name"></field>                     <field name="last_name"></field>                     <field name="userlabel"></field>                 </select>             </field>             <field name="contact_id" module="Contacts">                 <select>                     <field name="firstname"></field>                     <field name="lastname"></field>                     <field name="mobile"></field>                 </select>             </field>             <field name="group_id" module="Groups">                 <select>                     <field name="groupname"></field>                 </select>             </field>         </record>         <where>             <field name="contact_id" module="Contacts">                 <select>                     <where>                         <field name="lastname" value="@name"></field>                     </where>                 </select>             </field>         </where>     </select> </api>

 

Cette amélioration vous permet d'accéder à des données détaillées et interconnectées, simplifiant ainsi les processus de récupération des données.

Amélioration 3 : ajout de la prise en charge de plusieurs conditions de champ dans la clause Where

Concepteur d'API : clause Where avancée

Avec cette mise à jour, vous pouvez utiliser plusieurs champs dans la condition Where de vos requêtes Select. Cette amélioration offre une plus grande flexibilité et précision dans le filtrage de vos données.

Fonctionnalités clés:

  • Conditions de champs multiples : ajoutez plusieurs champs du module actuel ou des modules de champs de référence dans la condition Where.
  • Paramètre Glue : utilisez le paramètre Glue (glue="or" ou Glue="and") pour combiner plusieurs conditions.

Exemples de cas d'utilisation - Module simple :

  • Ajoutez des conditions sur « Sales Stage » et « Lead Source » avec Glue="or".
  • Incluez des champs de référence dans la condition Where, tels que contact_id et Related_to.
 

Cette amélioration vous permet d'accéder à des données détaillées et interconnectées, simplifiant ainsi les processus de récupération des données.

Amélioration 3 : ajout de la prise en charge de plusieurs conditions de champ dans la clause Where

Concepteur d'API : clause Where avancée

Avec cette mise à jour, vous pouvez utiliser plusieurs champs dans la condition Where de vos requêtes Select. Cette amélioration offre une plus grande flexibilité et précision dans le filtrage de vos données.

Fonctionnalités clés:

  • Conditions de champs multiples : ajoutez plusieurs champs du module actuel ou des modules de champs de référence dans la condition Where.
  • Paramètre Glue : utilisez le paramètre Glue (glue="or" ou Glue="and") pour combiner plusieurs conditions.

Exemples de cas d'utilisation - Module simple :

  • Ajoutez des conditions sur « Sales Stage » et « Lead Source » avec Glue="or".
  • Incluez des champs de référence dans la condition Where, tels que contact_id et Related_to.

  

<?xml version="1.0"?> <api method="get">     <select module="Potentials">         <record>             <field name="potentialname"></field>             <field name="amount"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>         </record>         <where glue="or">             <field name="sales_stage" value="@sales_stage" presence="optional"></field>             <field name="leadsource" value="@leadsource" presence="optional"></field>         </where>     </select> </api>


  

<?xml version="1.0"?> <api method="get">     <select module="Potentials">         <record>             <field name="potentialname"></field>             <field name="amount"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>         </record>         <where glue="or">             <field name="sales_stage" value="@sales_stage" presence="optional"></field>             <field name="leadsource" value="@leadsource" presence="optional"></field>         </where>     </select> </api>

 

Exemple complexe : Vous pouvez également ajouter des conditions impliquant des champs de référence provenant de modules associés. Par exemple:

  • Relations: Il existe une relation (N : 1) entre les transactions et les contacts, ainsi qu'entre les transactions et les comptes.
  • Conditions combinées : Ajoutez des conditions sur contact_id et Related_to en utilisant Glue="or". Si l'une ou les deux valeurs de paramètre correspondent, la réponse sera renvoyée.

 

Exemple complexe : Vous pouvez également ajouter des conditions impliquant des champs de référence provenant de modules associés. Par exemple:

  • Relations: Il existe une relation (N : 1) entre les transactions et les contacts, ainsi qu'entre les transactions et les comptes.
  • Conditions combinées : Ajoutez des conditions sur contact_id et Related_to en utilisant Glue="or". Si l'une ou les deux valeurs de paramètre correspondent, la réponse sera renvoyée.


  

<?xml version="1.0"?> <api method="get">     <select module="Potentials">         <record>             <field name="potentialname"></field>             <field name="amount"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>         </record>         <where glue="OR">               <field name="contact_id" module="Contacts">                   <select>                       <where>                           <field name="mobile" condition="eq" value="@mobile" presence="optional"></field>                       </where>                     </select>               </field>               <field name="related_to" module="Accounts">                     <select>                         <where>                             <field name="phone" condition="eq" value="@phone" presence="optional"></field>                         </where>                     </select>                 </field>             </where>     </select> </api>


  

<?xml version="1.0"?> <api method="get">     <select module="Potentials">         <record>             <field name="potentialname"></field>             <field name="amount"></field>             <field name="assigned_user_id"></field>             <field name="createdtime"></field>         </record>         <where glue="OR">               <field name="contact_id" module="Contacts">                   <select>                       <where>                           <field name="mobile" condition="eq" value="@mobile" presence="optional"></field>                       </where>                     </select>               </field>               <field name="related_to" module="Accounts">                     <select>                         <where>                             <field name="phone" condition="eq" value="@phone" presence="optional"></field>                         </where>                     </select>                 </field>             </where>     </select> </api>

 

Cette amélioration vous donne la possibilité de créer des requêtes plus complexes et plus raffinées, garantissant que vous récupérez exactement les données dont vous avez besoin.

Nous pensons que ces améliorations amélioreront considérablement votre expérience avec notre module API Designer, le rendant plus polyvalent et plus puissant. Nous vous encourageons à explorer ces nouvelles fonctionnalités et à voir comment elles peuvent bénéficier à vos projets de développement.

Restez connectés pour plus de nouvelles.

Bonne codage!

 

Cette amélioration vous donne la possibilité de créer des requêtes plus complexes et plus raffinées, garantissant que vous récupérez exactement les données dont vous avez besoin.

Nous pensons que ces améliorations amélioreront considérablement votre expérience avec notre module API Designer, le rendant plus polyvalent et plus puissant. Nous vous encourageons à explorer ces nouvelles fonctionnalités et à voir comment elles peuvent bénéficier à vos projets de développement.

Restez connectés pour plus de nouvelles.

Bonne codage!

 
 

Inscrivez-vous pour recevoir les dernières mises à jour!