API de récupération de données JSON
Interrogez les 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, il est interprété comme une fonction getRecords. Vous pouvez également spécifier un paramètre sysparm_action=getd’URL . Les réponses à la requête sont toujours encapsulées par un hachage d’enregistrements, où les valeurs de chaque enregistrement 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 de base du système 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 demande JSON renvoie une valeur d’affichage pour un champ de référence.
- Ajoutez le paramètre displayvalue=true à l’URL de la demande JSON et les demandes JSON avec ce paramètre renvoient 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 demande 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éd’un dv_, par exempledv_caller_id.
Obtenir les variables
Utilisez le displayvariables paramètre de requête 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 pour récupérer un enregistrement au format JSON qui inclut des Catalogue de services 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. Uniquement renvoyé avec des jeux de variables à plusieurs lignes. |
| columns_meta | Tableau de métadonnées de jeu de variables de plusieurs lignes, telles que le sys_id et le nom du champ. Uniquement renvoyé lorsque la variable contient plusieurs champs. |
| max_rows | Nombre maximal de lignes autorisées dans le jeu de variables à plusieurs lignes. Uniquement renvoyé avec des jeux de variables à plusieurs lignes. |
| nom | Nom de la question. |
| id | Sys_id du jeu de variables de plusieurs lignes. Uniquement renvoyé avec des jeux de variables à plusieurs lignes. |
| type | Type de question. |
| valide | Valeur de la question. |
| row_count | Nombre actuel de lignes dans le jeu de variables à plusieurs lignes. Uniquement renvoyé avec des jeux de variables à plusieurs lignes. |
| question_text | Étiquette des questions. 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 par catégorie. Pour plus d’informations, consultez Chaînes de requête codées.
getKeys
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
obtenir
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