API de récupération de données JSON
Demandez des données en émettant une demande HTTPS GET à l’instance.
Par défaut, une demande GET est interprétée comme une fonction get si un sysparm_sys_id paramètre est présent. Sinon, elle est interprétée comme une fonction getRecords. Vous pouvez également spécifier un paramètre sysparm_action=getd’URL. Les réponses aux requêtes sont toujours encapsulées par un hachage d’enregistrements, où les valeurs de chaque enregistrement individuel sont elles-mêmes hachées par nom de champ.
Renvoyer la valeur d’affichage pour les variables de référence
sys_id pour une autre table. Le comportement du système de base consiste à renvoyer la valeur sys_id pour ces champs. Pour que la valeur d’affichage du champ soit renvoyée, utilisez l’une des options suivantes :- Ajoutez la propriété glide.json.return_displayValue aux propriétés système, et chaque requête JSON renvoie une valeur d’affichage pour un champ de référence.
- Ajoutez le paramètre displayvalue=true à l’URL de la requête JSON et les requêtes JSON avec ce paramètre renverront une valeur d’affichage au lieu de la
sys_idd’un champ de référence. L’URL JSON ressemblerait à ceci :https://<instance name>.service-now.com/incident.do?JSON&sysparm_action=getRecords&sysparm_query=active=true^category=hardware&displayvalue=true - Ajoutez le paramètre displayvalue=all à l’URL de la requête JSON et les demandes JSON avec ce paramètre renvoient une valeur d’affichage et
l’sys_idd’un champ de référence. Le nom de l’élément de réponse pour le champ de valeur d’affichage sera précédé dedv_, par exempledv_caller_id.
Obtenir des variables
Utilisez le displayvariables paramètre query pour renvoyer un tableau de variables associées à un Catalogue de services enregistrement d’élément. Pour obtenir des variables, ajoutez le paramètre displayvariables=true à l’URL de la demande JSON. Par exemple, voici une URL permettant de récupérer un enregistrement au format JSON qui inclut Catalogue de services des variables :
https://<your-instance>.servicenow.com/sc_req_item.do?JSONv2&sysparm_action=getRecords&sysparm_query=sys_id=5018da81742bd410f8771974894916fe&displayvariables=true{
"records":[
{
…
"variables":[
{
"display_value":[
{
"quantity":"1",
"color":"Black",
"device_type":"Apple iPhone 8",
"storage":"64GB"
},
{
"quantity":"1",
"color":"Black",
"device_type":"Apple iPhone 8",
"storage":"64GB"
}
],
"columns_meta":[
{
"name":"device_type",
"label":"Device Type",
"id":"da7d3f3241411300964ff05369414eca",
"type":5,
"order":"0"
},
{
"name":"storage",
"label":"Storage",
"id":"691e337241411300964ff05369414e31",
"type":5,
"order":"1"
},
{
"name":"color",
"label":"Color",
"id":"e89fb77241411300964ff05369414e74",
"type":5,
"order":"2"
},
{
"name":"quantity",
"label":"Quantity",
"id":"2d5f737241411300964ff05369414eaf",
"type":5,
"order":"3"
}
],
"max_rows":50,
"name":"mobile_devices_set",
"id":"e84d3f3241411300964ff05369414e3e",
"type":"one_to_many",
"value":[
{
"quantity":"1",
"color":"black",
"device_type":"iphone8",
"storage":"64GB"
},
{
"quantity":"1",
"color":"black",
"device_type":"iphone8",
"storage":"64GB"
}
],
"row_count":2
},
{
"question_text":"Department",
"name":"department",
"type":8,
"value":"Development",
"order":100
},
{
"question_text":"Who is this request for?",
"name":"requested_for",
"type":8,
"value":"System Administrator",
"order":100
},
{
"question_text":"When do you need this?",
"name":"needed_by",
"type":5,
"value":"Today",
"order":200
},
{
"question_text":"Business Justification",
"name":"business_justification",
"type":2,
"value":"Example justification",
"order":200
}
],
…
}
]
}Les clés de la réponse sont définies comme suit :
| Clé | Description |
|---|---|
| display_value | Valeur d’affichage de la question du jeu de variables de plusieurs lignes. Renvoyé uniquement avec des jeux de variables de plusieurs lignes. |
| columns_meta | Tableau de métadonnées des jeux de variables de plusieurs lignes, telles que le sys_id et le nom du champ. Uniquement renvoyée lorsque la variable contient plusieurs champs. |
| max_rows | Nombre maximal de lignes autorisées dans le jeu de variables de plusieurs lignes. Renvoyé uniquement avec des jeux de variables de plusieurs lignes. |
| nom | Nom de la question. |
| ID | Sys_id du jeu de variables de plusieurs lignes. Renvoyé uniquement avec des jeux de variables de plusieurs lignes. |
| type | Type de question. |
| valide | Valeur de la question. |
| row_count | Nombre actuel de lignes dans le jeu de variables de plusieurs lignes. Renvoyé uniquement avec des jeux de variables de plusieurs lignes. |
| question_text | Étiquette de la question. Uniquement renvoyé avec des jeux de variables d’une seule ligne. |
| order | Ordre de la question. |
Contrôler l’ordre des enregistrements
Vous pouvez contrôler l’ordre dans lequel les enregistrements apparaissent dans la réponse JSON. Pour définir un ordre, utilisez les clauses ORDERBY ou ORDERBYDESC dans la requête codée URL. Par exemple :
sysparm_query=active=true^ORDERBYnumber^ORDERBYDESCcategory
Filtre tous les enregistrements actifs et classe les résultats par ordre croissant, par numéro d’abord, puis par ordre décroissant de catégorie. Pour plus d’informations, consultez Chaînes de requêtes codées.
getKeys (en anglais)
sys_id de plusieurs enregistrements en spécifiant une chaîne de requête codée dans le sysparm_query paramètre.https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_action=getKeys&sysparm_query=active=true^category=hardware
get
sys_id dans un sysparm_sys_id paramètre.https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_sys_id=9d385017c611228701d22104cc95c371
https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_action=get&sysparm_sys_id=9d385017c611228701d22104cc95c371
getRecords
https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_action=getRecords&sysparm_query=active=true^category=hardware