REST API - Modifier un ticket


PUT  /requests/{rfc_number}

Remarques

     Open url.png  voir Conventions de l'API REST Service Manager

  • Vous devez fournir un tableau au format JSON dans le corps de la requête HTTP.
  • Si un mélange de champs existants et non-existants est fourni comme liste de paramètres, la requête retourne un code de statut HTTP 201 tant qu’au moins un champ est trouvé et sa valeur modifiée. Si aucun champ n’est trouvé, la requête est considérée comme incorrecte et retourne un code de statut 400.
  • 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.
CommonNotes_JSONandFields

Format JSON / Format des champs :

  • Les noms de champs sont ceux du modèle de données Service Manager.

    exemple  available_field_1

  • Pour mettre à jour un champ, respectez le format JSON suivant : "field_name":"value".
  • Les noms d’objets JSON, y compris ceux représentant les champs de la base Service Manager, ne sont pas sensibles à la casse.

    exemple  field_name, Field_Name et FIELD_NAME sont équivalents

Liste des paramètres / champs

Paramètres obligatoires

Dans l’URL, vous devez utiliser le paramètre ci-dessous.

Paramètre Type Description / Exemple
rfc_number integer Identifiant du ticket

Paramètres optionnels

Aucun

Champs optionnels

  • Dans le corps de la requête HTTP, vous pouvez utiliser tous les champs de la table SD_REQUEST sauf ceux indiqués ci-dessous.

    rfc_number ; request_id ; location_id ; request_project_id ; recipient_id ; severity_id ; status_id ; department_id ; parent_request_id ; last_group_id ; last_done_by_id ; submitted_by ; kbase_id ; sla_id ; sd_catalog_id ; initial_sd_catalog_id ; order_id ; news_id ; project_idvert case

  • Version minimum : Oxygène 2.1.2 - Build 2018.1.183.0  En plus des champs fournis par EasyVista, vous pouvez aussi affecter des valeurs aux champs que vous avez ajoutés dans la base de données Service Manager. Il s’agit des champs préfixés par e_.
             exemple   e_field_name_xyz
  • Vous pouvez modifier la valeur des champs ci-dessous référencés dans d’autres tables, associés à un alias spécifique.
Paramètre Type Description / Exemple
analytical_charge_id string ou integer
  • Table : EP_ANALYTICAL_CHARGE
  • Valeur à utiliser : ANALYTICAL_CHARGE_CODE ou ANALYTICAL_CHARGE_ID
exemple {"ANALYTICAL_CHARGE_ID": "0302"} ou {"ANALYTICAL_CHARGE_ID": "1"}
asset_id integer
  • Table : AM_ASSET
  • Valeur à utiliser : Primary Key
exemple {“asset_id": "27618"}
asset_serial string
  • Table : AM_ASSET
  • Valeur à utiliser : SERIAL_NUMBER
exemple {"ASSET_SERIAL": "MGTRDF"}
asset_tag ou asset string
  • Table : AM_ASSET
  • Valeur à utiliser : ASSET_TAG
exemple {"ASSET_TAG": "10164R"} ou {"ASSET": "10164R"}
available_field_x string
  • Table : SD_REQUEST
  • Valeur à utiliser : texte
exemple {"AVAILABLE_FIELD_1": "available_field_1_test"}
ci string
  • Table : AM_ASSET
  • Valeur à utiliser : NETWORK_IDENTIFIER
exemple {"CI": "SQL-RDB_IT*"}
ci_id integer
  • Table : AM_ASSET
  • Valeur à utiliser : ASSET_TAG
exemple {"CI_ID": "1"}
ci_serial string
  • Table : AM_ASSET
  • Valeur à utiliser : SERIAL_NUMBER
exemple {"CI_SERIAL": "KD78QGJYU"}
comment string
  • Table: SD_REQUEST
  • Valeur à utiliser : texte
exemple {"Comment": "Here, your comment"}
continuity_plan_id string ou integer
  • Table : CMDB_CONTINUITY_PLAN
  • Valeur à utiliser : CODE ou CONTINUITY_PLAN_ID
exemple {"CONTINUITY_PLAN_ID": "CP01"} ou {"CONTINUITY_PLAN_ID": "1"}
description string
  • Table : SD_REQUEST
  • Valeur à utiliser : texte
exemple {"Description": "Here, your description"}
external_reference string
  • Table : SD_REQUEST
  • Valeur à utiliser : texte
exemple {"External_reference": "external_ref_test"}
impact_id integer
  • Table : SD_IMPACT
  • Valeur à utiliser : IMPACT_ID
exemple {"IMPACT_ID": "1"}
known_problems_id integer
  • Table : SD_KNOWN_PROBLEMS
  • Valeur à utiliser : Primary Key
exemple {"KNOWN_PROBLEMS_ID": "1"}
net_price_cur_id string ou integer
  • Table : AM_CURRENCY
  • Valeur à utiliser : CURRENCY ou CURRENCY_ID
exemple {"NET_PRICE_CUR_ID": "EUR"} ou {"NET_PRICE_CUR_ID": "3"}
origin_tool_id integer
  • Table : SD_REQUEST
  • Valeur à utiliser : ORIGIN_TOOL_ID
exemple {"ORIGIN_TOOL_ID": "1"} ou {"ORIGIN_TOOL_ID": "2"}
owner_id string ou integer
  • Table : AM_EMPLOYEE
  • Valeur à utiliser : LAST_NAME ou EMPLOYEE_ID
exemple {"OWNER_ID": "Leblanc, Fred"} ou {"OWNER_ID": "10469"}
owning_group_id string ou integer
  • Table : AM_GROUP
  • Valeur à utiliser : GROUP_LNG ou GROUP_ID
exemple {"OWNING_GROUP_ID": "Desktop USA"} ou {"OWNING_GROUP_ID": "139"}
release_id string ou integer
  • Table : CMDB_RELEASE
  • Valeur à utiliser : RELEASE_CODE ou RELEASE_ID
exemple {"RELEASE_ID": "REL01"} ou {"RELEASE_ID": "1"}
rental_net_price_cur_id string ou integer
  • Table : AM_CURRENCY
  • Valeur à utiliser : CURRENCY ou CURRENCY_ID
exemple {"RENTAL_NET_PRICE_CUR_ID": "EUR"} ou {"RENTAL_NET_PRICE_CUR_ID": "3"}
request_origin_id string ou integer
  • Table : SD_REQUEST_ORIGIN
  • Valeur à utiliser : NAME_LNG ou REQUEST_ORIGIN_ID
exemple {"REQUEST_ORIGIN_ID": "Fax"} ou {"REQUEST_ORIGIN_ID": "2"}
requestor_phone string
  • Table : SD_REQUEST
  • Valeur à utiliser : texte
exemple {"REQUESTOR_PHONE" : "93-63-65-23"}
root_cause_id string ou integer
  • Table : AM_REFERENCE
  • Valeur à utiliser : REFERENCE_LNG OU REFERENCE_ID
exemple {"ROOT_CAUSE_ID": "Virus"} ou {"ROOT_CAUSE_ID": "70"}
submit_date_ut string
  • Table : SD_REQUEST
  • Valeur à utiliser : texte
exemple {"SUBMIT_DATE_UT" : "07/22/2017"}
system_id string ou integer
  • Table : AM_REFERENCE
  • Valeur à utiliser : REFERENCE_LNG OU REFERENCE_ID
exemple {"SYSTEM_ID": "Supervisor"} ou {"SYSTEM_ID": "1"}
urgency_id integer
  • Table : SD_URGENCY
  • Valeur à utiliser : URGENCY_ID
exemple {"URGENCY_ID": "1"}

Codes de statut HTTP de la méthode

StatusHeader
Code Erreur Description
Status201
201 Created (Créé) Requête traitée avec succès et création d’un élément.
Status400
400 Bad Request (Mauvaise requête) Requête formulée de façon incorrecte, qui ne peut pas être exécutée correctement.

exemple

{
 "error": "Nothing to update (check fieldnames)"
}
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

{
 "Comment": "REST API Update - This comment has been updated from the REST API",
 "available_field_1": "Patching computers",
 "external_reference": "TEST"
}

Résultat avec un code de statut retourné 201

{
 "HREF": "https://{your_server}/api/v1/{your_account}/requests/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)"  }  }

Tags:
Modifié par Utilisateur inconnu le 2021/12/03 18:49
Créé par Administrator XWiki le 2017/04/07 12:02

Raccourcis

L'actualité mensuelle
•  Newsletter

Tous les changements
•  Service Manager
•  Service Apps
•  Self Help
•  Service Bots

Powered by XWiki ©, EasyVista 2021