JSON データ変更 API

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:5分
  • HTTPS POST 要求をインスタンスに送信し、JSON Web サービスを使用してデータを変更します。

    HTTP POST には、実行するアクションのタイプを示す sysparm_action パラメーターと、本文に受信 JSON オブジェクト post が含まれている必要があります。
    注:
    POST の content-type は application/json である必要があります。application/x-www-form-urlencoded または multipart/form-data にすることはできません。

    insert

    ServiceNow で新しいレコードを作成します。JSON オブジェクトは本文として POST する必要があります (content-type は通常 application/json ですが、強制はされません)。レコード作成からの応答は、作成されたインシデントの JSON オブジェクトです。

    次に例を示します。ポストする JSON オブジェクト:
    {"short_description":"this is a test","priority":"1"}
    ポスト先の URL:
    https://your_instance.service-now.com/incident.do?JSONv2&sysparm_action=insert

    これでインシデントが作成されます。

    必要に応じて、JSON オブジェクトで sysparm_action を指定することもできます。JSON オブジェクト内のパラメーターは、URL パラメーターよりも優先されます。例:
    {"sysparm_action":"insert","short_description":"this is a test","priority":"1"}

    insertMultiple

    ServiceNow で複数の新しいレコードを作成するには、挿入関数の入力 JSON オブジェクトがアレイである必要があります。レコード作成からの応答は、作成されたインシデントの JSON オブジェクトです。次に例を示します。JSON オブジェクト:
    { "records" : [ { "short_description" : "this was inserted with python using JSON 1" , "priority" : "1 - Critical" , "impact" : "1" , "caller_id" : "Fred Luddy" } , { "short_description" : "this was inserted with python using JSON 2" , "priority" : "1 - Critical" , "impact" : "1" , "caller_id" : "Fred Luddy" } ] }
    次のいずれかの URL にポスト:
    https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_action=insert
    https://<instance name>.service-now.com/incident.do?JSONv2&sysparm_action=insertMultiple
    

    これで 2 つのインシデントが作成されます。フィールドが records フィールドのアレイ値として記述されていることに注意してください。

    update

    sysparm_query URL パラメーターで指定されたエンコードクエリ文字列でフィルタリングされたレコードまたはレコードリストを更新します。JSON オブジェクトは本文として POST する必要があります (content-type は通常 application/json ですが、強制はされません)。レコード作成からの応答は、更新されたレコードを表す JSON オブジェクトのアレイです。

    次に例を示します。ポストする JSON オブジェクト:
    {"short_description":"this was updated with python", "priority": "3", "impact":"1"}
    ポスト先の URL:
    https://instance_name.service-now.com/incident.do?JSONv2&sysparm_query=priority=3&sysparm_action=update
    

    優先度 3 のすべてのインシデントを更新し、JSON オブジェクトで指定された値を設定します。

    deleteRecord

    sysparm_sys_id パラメーターで識別される単一のレコードをターゲットテーブルから削除します。パラメーターは、入力 JSON オブジェクトでエンコードするか、URL パラメーターとして指定できます。

    次に例を示します。ポストする値:
    {"sysparm_sys_id":"fd4001f80a0a0b380032ffa2b749927b"}
    
    ポスト先の URL:
    http://instance_name.service-now.com/incident.do?JSONv2&sysparm_action=deleteRecord
    

    sys_id fd4001f80a0a0b380032ffa2b749927b で識別されるインシデントレコードを削除します。

    deleteMultiple

    sysparm_query URL パラメーターで指定されたエンコードクエリ文字列でフィルタリングされた複数のレコードを、ターゲットテーブルから削除します。フィルターは、入力 JSON オブジェクトでエンコードすることもできます。

    次に例を示します。ポストする値:
    {"sysparm_query":"short_description=this was updated with python"}
    ポスト先の URL:
    http://instance_name.service-now.com/incident.do?JSONv2&sysparm_action=deleteMultiple

    short_description フィールドに「this was updated with python」という値が含まれているすべてのインシデントレコードを削除します。