REST API - Terminer une ou plusieurs actions en cours d'un ticket
Sommaire
PUT /actions/{rfc_number}
- Cette méthode permet de terminer une ou plusieurs actions en cours d'un ticket déterminé (un ticket englobe un incident, demande de service / changement / investissement, problème et événement).
exemple /actions/S161123_000034
- Plusieurs actions en cours du ticket peuvent être terminées simultanément.
Remarques
voir Conventions de l'API REST Service Manager
- Vous devez fournir un tableau au format JSON dans le corps de la requête HTTP.
- Pour terminer une action déterminée, vous devez utiliser un objet end_action ayant pour valeur un objet JSON (couple nom/valeur) :
- nom de l'objet : action_id ;
- valeur de l'objet : identifiant de l’action à terminer.
- Pour terminer simultanément toutes les actions en cours, vous devez utiliser le nom d'objet end_action sans valeur.
- Pour renseigner l’intervenant qui a effectivement réalisé l’action (champ doneby_id), vous devez utiliser l'un des champs ci-dessous :
- doneby_identification
- doneby_mail
- doneby_name
Note : Seul un utilisateur appartenant au groupe en charge de l’action est autorisé. Sinon un code de statut HTTP 404 est retourné.
- En cas de succès, un code de statut HTTP 201 est retourné et un lien URL (HREF) vers la ressource modifiée est fourni.
Liste des paramètres / champs
Paramètres obligatoires
- Dans l’URL, vous devez utiliser le paramètre ci-dessous.
- Dans le corps de la requête HTTP, vous devez utiliser au moins l'un des champs optionnels. Sinon une erreur est retournée.
Paramètre | Type | Description / Exemple |
---|---|---|
rfc_number | string | Identifiant du ticket |
Paramètres optionnels
Aucun
Champs optionnels
- Dans la chaîne de requête HTTP, vous pouvez utiliser tous les champs de la table SD_REQUEST sauf ceux indiqués ci-dessous.
- automatic_action
- delete_action
- old_value ; new_value
- wizard_guid
- to_trunc
- table_name ; field_name
- is_locked_progress_point
- net_charge_cur_id
- previous_sibling_id
- process_step_id
- Vous pouvez spécifier le champ action_id pour terminer une action précise. Sinon, toutes les actions en cours du ticket sont terminées.
- Vous pouvez spécifier un nom de groupe / e-mail pour terminer les actions d'un groupe / e-mail particulier. Si vous spécifiez une action avec un groupe ne correspondant pas, une erreur 404 est retournée.
Description des actions effectuées
Les actions en cours du ticket sont terminées.
- Si action_id est renseigné, seule cette action est terminée.
- Si action_id n'est pas renseigné, toutes les actions en cours associées à rfc_number sont terminées.
Codes de statut HTTP de la méthode
StatusHeader
Note : Un code erreur Timeout est renvoyé et la méthode échoue si le serveur ne répond pas à la requête du web service REST au bout d'un certain temps (par défaut, 60 secondes).
Code | Erreur | Description |
---|
Status201
201 | Created (Créé) | Requête traitée avec succès et création d’un élément. |
Status401
401 | Unauthorized (Non autorisé) | Processus d'authentification pour accéder à la ressource incorrect : Login/Mot de passe incorrect, Session non valide, Compte Service Manager incorrect.
exemple { "error": "Invalid Login / Password" } |
Status404
404 | Not found (Non trouvée) | Ressource non trouvée : URI incorrecte, Ressource inexistante, Communication avec le serveur incorrecte, rfc_number non trouvé.
exemple { "error": "Resource not found" } |
Status405
405 | Method not allowed (Méthode non autorisée) | Méthode de requête non autorisée : non supportée ou pas appropriée pour la ressource.
exemple { "error": "Invalid input parameter" } |
Exemples
Exemple de corps de requête HTTP
- Terminer une action déterminée
{
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call"
}
}
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call"
}
}
- Terminer simultanément toutes les actions en cours
{
"end_action": {
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call"
}
}
"end_action": {
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call"
}
}
- Accepter une action de validation
{
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call",
"choice":"1"
}
}
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call",
"choice":"1"
}
}
- Refuser une action de validation
{
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call",
"choice":"0"
}
}
"end_action": {
"action_id": "12345",
"doneby_mail": "morley@itassetservices.com",
"start_date": "12/10/2018",
"end_date": "12/11/2018",
"elapsed_time": "1234",
"available_field_1": "Closed via REST API call",
"choice":"0"
}
}
Résultat avec un code de statut retourné 201
{
"HREF": "https://{your_server}/api/v1/{your_account}/actions/I161019_000003"
}
"HREF": "https://{your_server}/api/v1/{your_account}/actions/I161019_000003"
}
ConventionsAPI
Conventions de l'API REST
Convention | Signification | |
---|---|---|
Orange | Paramètres utilisés dans la chaîne d’une requête HTTP et qui ne correspondent pas à des champs de la base Service Manager.
exemple Méthode Voir une liste de biens https://{your_server}/api/v1/{your_account}/assets?max_rows=3&fields=asset_tag |
|
Noir et Gras | Paramètres utilisés dans l’URL d’une requête HTTP et qui correspondent à des champs de la base Service Manager.
exemple Méthode Voir un bien https://{your_server}/api/v1/{your_account}/assets/{asset_id} |
|
Vert | Paramètres utilisés dans le corps d’une requête HTTP et qui représentent des noms d’objets JSON correspondant à des champs de la base Service Manager ; ils permettent d’affecter ou de modifier une valeur de champ dans la base.
exemple Méthode Terminer un ticket { "closed": { "end_date": "11/20/2016 12:12:12", } } |
|
Paramètres utilisés dans le corps d’une requête HTTP et qui représentent des noms d’objets JSON ne correspondant pas à des champs de la base Service Manager.
exemple Méthode Reprendre un ticket { "restarted": { "comment": "string (required)" } } |