API Salesforce Rest

Api Salesforce Rest



Dans ce guide, nous expliquerons comment insérer les enregistrements dans Salesforce avec l'API REST via les méthodes HTTP POST et PUT dans Workbench. Dans le cadre de ce guide, nous expliquerons comment utiliser Workbench et récupérer des enregistrements spécifiques à l'aide de sObject, récupérer plusieurs enregistrements à partir d'un objet à l'aide d'une requête et récupérer les enregistrements en écrivant l'API REST personnalisée Apex.

Méthode POST

POST est une méthode http qui ajoute des enregistrements uniques/multiples à la fois dans Salesforce. Nous pouvons insérer les enregistrements avec URI via l'API REST Apex personnalisée ou directement à partir de l'URI.

Ressource de repos personnalisée dans Apex

Pour écrire REST dans Apex, nous devons utiliser certaines annotations qui accèdent à l'API REST dans votre classe Apex.







@HttpPost Annotation

Cette méthode est appelée lorsque HTTP POST est envoyé, ce qui permet à la méthode Apex d'être exposée en tant que ressource REST. Ensuite, il crée une nouvelle ressource.



Syntaxe : @httpPost

Exemple:



Écrivez la classe Apex 'RestApi_Post_Record.apxc' qui implique la méthode REST 'POST' pour insérer les champs de statut, de priorité et d'objet dans l'objet Salesforce 'Case'.





  1. Créez la Post_Method avec trois paramètres : statut, priorité et sujet de type chaîne.
  2. Créez un objet 'Case' en passant ces paramètres.
  3. Utilisez le DML d'insertion pour insérer l'enregistrement dans l'objet Salesforce « Case ».
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
classe globale RestApi_Post_Record{

// REST - Méthode Post
@httpPoster
global static Case Post_Method(String Priority, String Status,String Subject){
Case case_obj= new Case(Priority=priority,Status = status,Subject=subject);

// Insérer DML
insérer case_obj ;
renvoie case_obj ;
}
}

URI et résultat :

Accédez à Workbench et accédez à l'explorateur REST. Spécifiez l'URI suivant et exécutez-le :



/services/apexrest/v56.0/RestApi_Post_Record/

Spécifiez les données dans le corps de la requête :

{
'Priorité':'Élevée',
'Statut':'Nouveau',
'Subject':'Problème mobile'
}

Ouvrez l'enregistrement dans Salesforce (naviguez jusqu'à l'objet « Cas » depuis le lanceur d'application).

Insérer un seul enregistrement directement à partir de l'URI

Accédez à l'explorateur REST sous l'onglet 'Utilitaires' et spécifiez l'URI suivant et spécifiez cet enregistrement sous le corps de la demande :

/services/data/v56.0/sobjects/Case/

Corps de la requête :

{
'Priorité':'Moyenne',
'Statut':'Nouveau',
'Subject':'Équipes Microsoft - Pas à venir'
}

Accédez à l'onglet 'Requêtes' de Salesforce et affichez l'enregistrement.

Insérer plusieurs enregistrements directement à partir de l'URI

Si vous souhaitez insérer plusieurs enregistrements à la fois, nous devons spécifier l'URI comme suit : /services/data/v56.0/composite/tree/sObject

Le corps de la demande contient les enregistrements au format suivant :

'enregistrements' :[{
'attributs' : {'type' : 'Objet', 'referenceId' : 'reference1'},
champ:valeur,
...
...
},{
'attributs' : {'type' : 'Objet', 'referenceId' : 'reference1'},
champ:valeur,
...
...
}]
}

Insérons deux enregistrements dans l'objet 'Case' de Salesforce.

URI : /services/data/v56.0/composite/tree/Case/

Corps de la requête :

{
'enregistrements' :[{
'attributs' : {'type' : 'Case', 'referenceId' : 'reference1'},
'Priorité':'Élevée',
'Statut':'Nouveau',
'Subject':'Problème de conception avec rotor mécanique',
'Type':'Electrique'
},{
'attributs' : {'type' : 'Case', 'referenceId' : 'reference2'},
'Priorité':'Faible',
'Statut':'Nouveau',
'Subject':'Démarrage du générateur après une panne électrique' ,
'Type':'Electrique'
}]
}

Deux enregistrements sont insérés dans Salesforce avec CaseNumber 00001038 et 00001039.

Méthode PUT

Comme nous l'avons vu précédemment, PUT est une méthode http qui est utilisée pour créer/mettre à jour les enregistrements. Dans ce guide, nous utilisons cette méthode pour créer un nouvel enregistrement Salesforce à l'aide de l'API REST personnalisée.

@httpPut : Cette méthode est appelée lorsque le HTTP PUT est envoyé, ce qui permet à la méthode Apex d'être exposée en tant que ressource REST. Ensuite, il crée une nouvelle ressource ou met à jour la ressource existante.

Syntaxe : @httpPut

Exemple:

Écrivez la classe Apex « RestApi_Put_Record.apxc » qui implique la méthode REST « PUT » pour insérer les champs de statut, de priorité et de description dans l'objet Salesforce « Case ».

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
classe globale RestApi_Put_Record{

// REST - Méthode Put
@httpPut
global static Case Put_Method(String Priority, String Status,String Subject){
Case case_obj= new Case(Priority=priority,Status = status,Subject=subject);

// Insérer DML
insérer case_obj ;
renvoie case_obj ;
}
}

URI et résultat :

Accédez à Workbench et accédez à l'explorateur REST. Spécifiez l'URI suivant et exécutez-le :

/services/apexrest/v56.0/RestApi_Put_Record/

Spécifiez les données dans le corps de la requête :

{
'Priorité':'Élevée',
'Statut':'Fermé',
'Subject':'Guide du broyeur de légumes nécessaire'
}

Ouvrez l'enregistrement dans Salesforce (naviguez jusqu'à l'objet « Cas » depuis le lanceur d'application).

Conclusion

Vous pouvez désormais insérer les enregistrements dans Salesforce à l'aide des méthodes http PUT et POST. Nous avons appris à insérer les enregistrements directement dans le Workbench et à utiliser l'API REST personnalisée via la classe Apex. L'objet 'Case' de Salesforce est utilisé dans ce guide à titre d'exemple. La différence réelle entre PUT et POST est que POST est utilisé pour insérer les données tandis que PUT est utilisé pour insérer/mettre à jour les données. L'annotation @httpPut est utilisée pour la méthode PUT et l'annotation @httpPost est utilisée pour la méthode POST.