ServiceNow - PRTGからCIを作成するためのWebサービスインポートセットの作成

#概要
PRTGに登録されたネットワーク機器をCMDBに登録するためのWebサービスインポートセットを作成する手順です。

PRTGからのデータを次のテーブルに登録します。

|No.|CMDBクラス|テーブル名|
|---|---|---|
|1|company|core_company|
|2|IP Address|cmdb_ci_ip_address|
|3|IP Firewall|cmdb_ci_ip_firewall|
|4|IP Router|cmdb_ci_ip_router|
|5|IP Switch|cmdb_ci_ip_switch|
|6|product model|cmdb_model|

#作成手順
Webサービスインポートセットを作成する場合は言語を英語に切り替えた方が便利になります。日本語で作成すると変換マップを作成する場合に日本語列名だとインポートセットとcmdb_ci_ip_xxxxテーブルの列名が一致しないため手動で列を追加することになります。今回は出来る限り楽をするためにServiceNowユーザ言語を英語にして作業を行います。

##既存テーブルにPRTG ID用列を追加
ServiceNowのレコードがどのPRTGデバイスと関連しているのかを識別するためにServiceNowテーブルにPRTG ID列を追加します。
###IP Switchテーブル（cmdb_ci_ip_switch）
1.アプリケーションナビゲータから「tables」を検索して「System Definition」＞「Tables」を選択します。
![prtg_add_column_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/be6ee306-b8e8-184f-7b0b-3d9314b5bb2b.png)
2.レベルが「IP Switch」のテーブルを検索します。結果から「IP Switch」を選択します。
![prtg_add_column_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/c70881a6-75a8-3a3a-5669-64225af8d2d0.png)
3.「New」ボタンを押下します
![prtg_add_column_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/f93254da-fac7-4408-e8e2-80d7a3df6190.png)
4.次のように入力します。Column labelを入力すると自動的にColumn nameに値は入力されますが、名前を変更するので注意してください。
入力した後に「Submit」ボタンを押下します。

|No.|項目|値|
|---|---|---|
|1|Type|String|
|2|Column label|Prtg ID|
|3|Column name|u_infra_prtg_id|
![prtg_add_column_4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/4266ac07-96dd-e9bb-24f4-d8775d207f7e.png)
5.正しく列が追加されたか確認します。
「fot text」（全文検索）で「prtg」を探します。正常に登録された場合は「Prtg ID」列が表示されます。
![prtg_add_column_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/e16695d5-0550-6e9c-1eaa-7dc934b2d122.png)

###IP Routerテーブル（cmdb_ci_ip_router）
同じようにして「IP Router」テーブルにもPrtg ID列を追加します。
![prtg_add_column_router_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/c5d05273-604d-9545-575e-3baf48c810b3.png)

###IP Firewallテーブル（cmdb_ci_ip_firewall）
「IP Firewall」テーブルにもPrtg ID列を追加します。
![prtg_add_column_firewall_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/a3028256-2bc2-a10c-8459-1652d17f3189.png)

##IP Switchテーブル用Webサーボスインポートセット
先ずはWebサービスインポートセットを利用してIP Switchテーブルにデータを挿入します。
###IP SwitchシステムWebサービスの作成
システムWebサービスを作成します。
1.アプリケーションナビゲータから「system web」を検索して「System Web Services」＞「Inbound」＞「Create New」を選択します。
![prtg_ip_switch_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/6bb41054-6f96-b266-38ed-0420b35e7bc3.png)
2.次のように設定した後に「Create」ボタンを押下します。

|No.|項目|値|
|---|---|---|
|1|Label|Import Intra IP Switch data|
|2|Copy fields from target table|チェック|
|3|Target table|cmdb_ci_ip_switch|
|4|Source table|Import Infra IP Switch data (u_import_infra_ip_switch_data)|
![prtg_ip_switch_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/d7b82023-53c8-2792-003d-00659e0f3d5c.png)
3.テーブルが作成したことを確認します。今回は繰り返して使うため作成したインポート用テーブルから不要な列を削除します。
![prtg_ip_switch_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/43578f2e-a1d1-d642-f51b-74c9a8343ce7.png)

###インポートテーブルから不要列の削除

IP Switch用のインポートセットテーブル列

|No.|列ラベル|列名|トランスフォームマップフィールド名|キー|型|参照先|参照先テーブル名|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Category|category|u_infra_category||String|||Resource」で固定|
|2|Department|department|u_infra_department||Reference|Department|cmn_department|ITIにする|
|3|Discovery source|discovery_source|u_infra_discovery_source||String|||「PRTG」で固定|
|4|Prtg ID|u_infra_prtg_id|u_infra_prtg_id|〇|String|||PRTGのオブジェクトIDを設定|
|5|IP Address|ip_address|u_infra_ip_address||String|
|6|Manufacturer|ip_manufacturer|u_infra_manufacturer||Reference|Company	core_company|	
|7|ModelID|model_id|u_infra_model_id||Reference|Product Model|cmdb_model|	
|8|Name	name|u_infra_name|||String|			
|9|Ports|ports|u_infra_ports||Integer|||ポート数|
|10|Serial number|serial_number	u_infra_serial_number|String|			
|11|Description|short_description|u_infra_short_description||String|||			

cmdb_ci_ip_switchテーブルの列一覧
<table>
<tr><th>No.</th><th>削除</th><th>列ラベル</th><th>列名</th></tr>
<tr><td>1</td><td>〇</td><td>Asset</td><td>u_asset</td></tr>
<tr><td>2</td><td>〇</td><td>Asset tag</td><td>u_asset_tag
<tr><td>3</td><td>〇</td><td>Assigned</td><td>u_assigned
<tr><td>4</td><td>〇</td><td>Assigned to</td><td>u_assigned_to
<tr><td>5</td><td>〇</td><td>Assignment group</td><td>u_assignment_group
<tr><td>6</td><td>〇</td><td>Attestation score</td><td>u_attestation_score
<tr><td>7</td><td>〇</td><td>Attested</td><td>u_attested
<tr><td>8</td><td>〇</td><td>Attested by</td><td>u_attested_by
<tr><td>9</td><td>〇</td><td>Attested date</td><td>u_attested_date
<tr><td>10</td><td>〇</td><td>Attributes</td><td>u_attributes
<tr><td>11</td><td>〇</td><td>Bandwidth</td><td>u_bandwidth
<tr><td>12</td><td>〇</td><td>Can hub</td><td>u_can_hub
<tr><td>13</td><td>〇</td><td>Can partitionvlans</td><td>u_can_partitionvlans
<tr><td>14</td><td>〇</td><td>Can print</td><td>u_can_print
<tr><td>15</td><td>〇</td><td>Can route</td><td>u_can_route
<tr><td>16</td><td>〇</td><td>Can switch</td><td>u_can_switch
<tr><td>17</td><td></td><td><font color="red">Category</font></td><td><font color="red">u_category</font>
<tr><td>18</td><td>〇</td><td>Change control</td><td>u_change_control
<tr><td>19</td><td>〇</td><td>Channels</td><td>u_channels
<tr><td>20</td><td>〇</td><td>Checked in</td><td>u_checked_in
<tr><td>21</td><td>〇</td><td>Checked out</td><td>u_checked_out
<tr><td>22</td><td>〇</td><td>Comments</td><td>u_comments
<tr><td>23</td><td>〇</td><td>Company</td><td>u_company
<tr><td>24</td><td>〇</td><td>Correlation ID</td><td>u_correlation_id
<tr><td>25</td><td>〇</td><td>Cost</td><td>u_cost
<tr><td>26</td><td>〇</td><td>Cost cc</td><td>u_cost_cc
<tr><td>27</td><td>〇</td><td>Cost center</td><td>u_cost_center
<tr><td>28</td><td>〇</td><td>CPU count</td><td>u_cpu_count
<tr><td>29</td><td>〇</td><td>CPU manufacturer</td><td>u_cpu_manufacturer
<tr><td>30</td><td>〇</td><td>CPU speed</td><td>u_cpu_speed
<tr><td>31</td><td>〇</td><td>CPU type</td><td>u_cpu_type
<tr><td>32</td><td>〇</td><td>	Default gateway</td><td>u_default_gateway
<tr><td>33</td><td>〇</td><td>Delivery date</td><td>u_delivery_date
<tr><td>34</td><td></td><td><font color="red">Department</font></td><td><font color="red">u_department</font>
<tr><td>35</td><td>〇</td><td>Device type</td><td>u_device_type
<tr><td>36</td><td>〇</td><td>Discovery proto ID</td><td>u_discovery_proto_id
<tr><td>37</td><td>〇</td><td>Discovery proto type</td><td>u_discovery_proto_type
<tr><td>38</td><td></td><td><font color="red">Discovery source</font></td><td><font color="red">u_discovery_source</font>
<tr><td>39</td><td>〇</td><td>Disk space</td><td>u_disk_space
<tr><td>40</td><td>〇</td><td>Dns domain</td><td>u_dns_domain
<tr><td>41</td><td>〇</td><td>Due</td><td>u_due
<tr><td>42</td><td>〇</td><td>Due in</td><td>u_due_in
<tr><td>43</td><td>〇</td><td>Duplicate of</td><td>u_duplicate_of
<tr><td>44</td><td>〇</td><td>Environment</td><td>u_environment
<tr><td>45</td><td>〇</td><td>Fault count</td><td>u_fault_count
<tr><td>46</td><td>〇</td><td>Firmware manufacturer</td><td>u_firmware_manufacturer
<tr><td>47</td><td>〇</td><td>Firmware version</td><td>u_firmware_version
<tr><td>48</td><td>〇</td><td>First discovered</td><td>u_first_discovered
<tr><td>49</td><td>〇</td><td>Fqdn</td><td>u_fqdn
<tr><td>50</td><td>〇</td><td>Gl account</td><td>u_gl_account
<tr><td>51</td><td>〇</td><td>Hardware status</td><td>u_hardware_status
<tr><td>52</td><td>〇</td><td>Hardware substatus</td><td>u_hardware_substatus
<tr><td>53</td><td>〇</td><td>Install date</td><td>u_install_date
<tr><td>54</td><td>〇</td><td>Install status</td><td>u_install_status
<tr><td>55</td><td>〇</td><td>Internet facing</td><td>u_internet_facing
<tr><td>56</td><td></td><td><font color="red">Infra prtg ID</font></td><td><font color="red">u_infra_prtg_id</font>
<tr><td>57</td><td>〇</td><td>Invoice number</td><td>u_invoice_number
<tr><td>58</td><td></td><td>IP address</td><td>u_ip_address
<tr><td>59</td><td>〇</td><td>Justification</td><td>u_justification
<tr><td>60</td><td>〇</td><td>Last discovered</td><td>u_last_discovered
<tr><td>61</td><td>〇</td><td>Lease ID</td><td>u_lease_id
<tr><td>62</td><td>〇</td><td>Life cycle stage</td><td>u_life_cycle_stage
<tr><td>63</td><td>〇</td><td>Life cycle stage status</td><td>u_life_cycle_stage_status
<tr><td>64</td><td>〇</td><td>Location</td><td>u_location
<tr><td>65</td><td>〇</td><td>Mac address</td><td>u_mac_address
<tr><td>66</td><td>〇</td><td>Maintenance schedule</td><td>u_maintenance_schedule
<tr><td>67</td><td>〇</td><td>Managed by</td><td>u_managed_by
<tr><td>68</td><td>〇</td><td>Managed by group</td><td>u_managed_by_group
<tr><td>69</td><td></td><td><font color="red">Manufacturer</font></td><td><font color="red">u_manufacturer</font>
<tr><td>70</td><td></td><td>Model ID</td><td>u_model_id
<tr><td>71</td><td>〇</td><td>Model number</td><td>u_model_number
<tr><td>72</td><td>〇</td><td>Monitor</td><td>u_monitor
<tr><td>73</td><td></td><td><font color="red">Name</font></td><td><font color="red">u_name</font>
<tr><td>74</td><td>〇</td><td>Operational status</td><td>u_operational_status
<tr><td>75</td><td>〇</td><td>Order date</td><td>u_order_date
<tr><td>76</td><td>〇</td><td>Owned by</td><td>u_owned_by
<tr><td>77</td><td>〇</td><td>Physical interface count</td><td>u_physical_interface_count
<tr><td>78</td><td></td><td><font color="red">Ports</font></td><td><font color="red">u_ports</font>
<tr><td>79</td><td>〇</td><td>Po number</td><td>u_po_number
<tr><td>80</td><td>〇</td><td>Purchase date</td><td>u_purchase_date
<tr><td>81</td><td>〇</td><td>Ram</td><td>u_ram
<tr><td>82</td><td>〇</td><td>Range</td><td>u_range
<tr><td>83</td><td>〇</td><td>Schedule</td><td>u_schedule
<tr><td>84</td><td></td><td><font color="red">Serial number</font></td><td><font color="red">u_serial_number</font>
<tr><td>85</td><td></td><td><font color="red">Short description</font></td><td><font color="red">u_short_description</font>
<tr><td>86</td><td>〇</td><td>Skip sync</td><td>u_skip_sync
<tr><td>87</td><td>〇</td><td>Snmp sys location</td><td>u_snmp_sys_location
<tr><td>88</td><td>〇</td><td>Stack</td><td>u_stack
<tr><td>89</td><td>〇</td><td>Stack mode</td><td>u_stack_mode
<tr><td>90</td><td>〇</td><td>Start date</td><td>u_start_date
<tr><td>91</td><td>〇</td><td>Subcategory</td><td>u_subcategory
<tr><td>92</td><td>〇</td><td>Supported by</td><td>u_supported_by
<tr><td>93</td><td>〇</td><td>Support group</td><td>u_support_group
<tr><td>94</td><td>〇</td><td>Unverified</td><td>u_unverified
<tr><td>95</td><td>〇</td><td>Vendor</td><td>u_vendor
<tr><td>96</td><td>〇</td><td>Warranty expiration</td><td>u_warranty_expiration
</table>

1.Webブラウザから別タブでServiceNowを開きます。
アプリケーションナビゲータから「system web」を検索して、「Create New」を選択します。
![prtg_ip_switch_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/d9c652c7-11f9-c390-7655-ecaae40cfd34.png)
2.Labelが「Import infra」のレコードを検索し、「Import Infra IP Switch data」を選択します。
![prtg_ip_switch_11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/352307ac-d360-28db-94e7-90303bd3345e.png)
3.「Column label」をクリックしてラベル名順に列名を表示させます。
![prtg_ip_switch_12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/8fc7ed99-772b-9cc3-2a50-bb63f4d2e3c3.png)
4.不要な列名の左側の赤×印をクリックして灰色に変えます。列名が取り消されます。上の表を参照にして列を削除します。次のページに移動するには▶をクリックします。
![prtg_ip_switch_13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/fb767d9e-73bd-6357-4cd1-26b5db6a19bd.png)
5.ページを移動して他の列も削除します。
![prtg_ip_switch_14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/e36362d0-6aa7-8232-11a4-c46dcb3e9dcc.png)
6.最後のページに移動した後は「Update」ボタンを押下します。
![prtg_ip_switch_17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/f8cd71b8-91ed-ed36-528a-b943aff3820f.png)
7.列が削除されたことを確認するために再び「Import Infra IP Switch data」テーブルを開きます。
![prtg_ip_switch_18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/99705f64-616b-84b8-d7d2-745311061147.png)
8.正しく列を削除された場合は29の列になります。これでインポートテーブル列の編集は終了です。
![prtg_ip_switch_19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/968f1256-e6fd-9eb9-5d74-df6e10310f44.png)

###変換ルールの設定
1.システムWebサービスを作成したWebブラウザのタブに戻ります。
インポートセットテーブル列とServiceNowテーブル列の関連を定義します。
「Auto Map Matching Fields」リンクをクリックします。
![prtg_ip_switch_20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/b3f8ef81-c409-db15-06dd-088559be2b5d.png)
2.自動的に列の対応がされますが10列しか対応されません。一つの列が対応されていないので手動で関連の定義を登録します。
「Mapping Assist」リンクをクリックします。
![prtg_ip_switch_21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/2d8c87c2-3abc-7e15-29e2-0e0334541e9b.png)
3.インポートセットでは説明列名は「Short description」ですがIP Switchでは「description」です。名前が違うので自動マッピングに失敗しました。
手動で関連を最後に追加します。
「Field Map」の最後の行「Discovery source」をクリックします。
![prtg_ip_switch_22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/e77a5b93-0bfb-feb5-75e5-19e9b333bcfb.png)
4.左側の「Import Infra IP Switch data」から「short description」を選択して「＞」ボタンを押下します。
![prtg_ip_switch_23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/b28928a0-666b-1141-8949-c67f8810e229.png)
5.最後の行に「Short description」が追加されます。同じように「Discovery source」をクリックします。
![prtg_ip_switch_24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/e418e9ad-170f-7bab-22a8-cd9a092a9fc0.png)
6.IP Switch列一覧から「Description」を選択して「＜」ボタンを押下します。
![prtg_ip_switch_25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/a0f49599-86f0-2a73-7102-fe53abcea8ec.png)
7.すべての列が正しくマッピングされたか確認します。
「Mapped Fields」を選択します。下にマッピングされた内容が表示されます。正しくすべての列がマッピングされた場合は11項目表示します。
![prtg_ip_switch_26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/0162777b-be71-0bfb-4123-e9b271885a38.png)
8.「Save」ボタンを押下して設定を保存します。
![prtg_ip_switch_27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/8e164bec-a52e-aac0-72d9-eab8183d6718.png)
9.11の列のマッピングが定義されていることを確認します。
![prtg_ip_switch_28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/7657662d-9169-80dc-25f3-68eb12f5aa78.png)
10.u_infra_prtg_idをキーに設定します。
行u_infra_prtg_idのCoalesce列の「false」をクリックして値を「true」に変更した後に右のチェックをクリックします。
![prtg_ip_switch_29a.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/50c67712-2320-75af-af04-9d4395131776.png)
11.u_infra_prtg_idのCoalesceの値が「true」に変更されます。
![prtg_ip_switch_29b.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/415ce752-b72c-4c0c-2081-2d2bf9f638b8.png)

###APIテスト
####準備 (sys_idの取得)
テストデータを挿入するために部門、会社、製品モデルのテストレコードのsys_idを取得する。
#####Department (部門)
テストに利用する部門レコードのsys_idを取得します。
1.アプリケーションナビゲータに「cmn_department.list」を入力して、Departments一覧を表示します。
![department_sys_id_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/f10ab673-1cd5-7b17-257b-b810cfb5fd4c.png)
2.テスト用に使う任意の部門を右クリックして「Copy sys_id」を選択します。内容をテキストエディタに貼り付けます。
![department_sys_id_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/82e002cf-b41a-cfb4-2d8b-a2b9747e1320.png)

#####Company（会社）
テストに利用する会社のsys_idを取得します。
1.アプリケーションナビゲータから「core_company.list」を入力して、Company一覧を表示します。
![company_sys_id_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/97cf629e-227b-e4c7-56a6-71df798dabb0.png)
2.テスト用に使う任意の会社を右クリックして「Copy sys_id」を選択します。内容をテキストエディタに貼り付けます。
![company_sys_id_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/a378fdb4-bf0f-99a2-f6e6-1375d36c055a.png)


#####Product（製品モデル）
テストに利用する商品モデルのsys_idを取得します。
1.アプリケーションナビゲータから「cmdb_model.list」を入力して、Product Models一覧を表示します。
![product_sys_id_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/d77873bd-76a6-539c-f730-1a4b9077480d.png)
2.テスト用に使う任意の商品モデルを右クリックして「Copy sys_id」を選択します。内容をテキストエディタに貼り付けます。
![product_sys_id_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/30f4250d-354a-f643-35cb-ed0370971fef.png)

####APIの呼び出し
REST API Explorerを利用してIP Switchテーブルにデータを挿入します。
1.アプリケーションナビゲータから「rest」を検索して「REST API Explorer」を選択します。
![prtg_ip_switch_30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/a9c8835c-193d-d734-6e77-62c86c3993b7.png)
2.次のように設定して、「Retrieve records from a table (GET)」を選択します。tableNameは作成したインポートセットテーブル「Import Infra IP Switch data」を選択します。

|No.|項目|値|
|---|---|---|
|1|Namespace|now|
|2|API Name|Table API|

![prtg_ip_switch_31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/63adc91c-a592-3ca0-3e82-0dda78cdbba2.png)
3.ページ下の「Send」ボタンを押下します。
![prtg_ip_switch_32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/616049ab-224f-1291-bb9d-49f9a3df0b16.png)
4.正常の場合はStatus code「200 OK」が戻されます。
![prtg_ip_switch_33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/86d35d00-d5d3-5663-9acd-767432611809.png)

5.次のデータをPOSTしてcmdb_ci_ip_switchにデータを登録します。
「Create a record (POST)」リンクを選択して再びtableNameを「Import Infra IP Switch」にします。
![prtg_ip_switch_40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/18197127-df54-54c0-beee-70dab0479c2c.png)
6.ページの少し下のRequest Bodyに次のように項目と値を設定します。入力した後に「Send」ボタンを押下します。

|No.|項目|値|
|---|---|---|
|1|Category|Resource|
|2|Department|前の手順で取得したDepartmentレコードのsys_id|
|3|Discovery source|PRTG|
|4|Infra prtg ID|任意の5文字以下の文字列|
|5|IP address|任意のIPアドレス|
|6|Manufacturer|前の手順で取得してCompanyレコードのsys_id|
|7|Model ID|前の手順で取得したProduct Modelレコードのsys_id|
|8|Name|任意の文字列|
|9|Ports|任意の数字|
|10|Serial number|任意の文字列
|11|Short description|任意の文字列|

![prtg_ip_switch_41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/e7ae3fa8-a8dd-b80f-5eb5-17cd38c165d3.png)
7.登録された場合はStatus code「201 Created」が戻ります。
![prtg_ip_switch_42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/abd47ece-326d-c01a-c2cb-0ccf3ae615d4.png)

####確認
データがIP Switchテーブルに正しく登録されたか確認します。
1.アプリケーションナビゲータに「cmdb_ci_ip_switch.list」を入力します。
![prtg_ip_switch_50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/70415173-3466-8b86-b8f5-04b501d7886b.png)
2.IP Switch一覧が表示されます。「Created」をクリックした作成日でソートします。最新レコードがREST API Explorerに設定した内容と同じでしたら正しく登録されたことになります。
![prtg_ip_switch_51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/698027/8b9bfce1-7ddd-953a-8fb5-ddc2791c1cfe.png)

##その他テーブルのWebサービスインポートセット
同様にIP Router, IP Firewall, IP Address, Company, Product Model用のWebサービスインポートセットも作成します。
###IP Routerテーブル用Webサーボスインポートセット
テーブル設定

|No.|項目|値|
|---|---|---|
|1|Label|Import Intra IP Router data|
|2|Copy fields from target table|チェック|
|3|Target table|cmdb_ci_ip_router|
|4|Source table|Import Infra IP Router data (u_import_infra_ip_router_data)|

列の変換マップ

|No.|Column label|Column name|トランスフォームマップフィールド名|識別キー|Type|参照先|参照先テーブル|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Category|category|u_infra_category||String|||「Resource」で固定|
|2|Department|department|u_infra_department||Reference|Department|cmn_department|ITIにする|
|3|Description|short_description|u_infra_short_description||String|||
|4|Discovery source|discovery_source|u_infra_discovery_source||String|||「PRTG」で固定|
|5|IP Address|ip_address|u_infra_ip_address||String|||
|6|Manufacturer|manufacturer|u_infra_manufacturer||Reference|Company|core_company|
|7|ModelID|model_id|u_infra_netmask||Reference|Product Model|cmdb_model|
|8|Name|name|u_infra_name||String|||
|9|Ports|ports|u_infra_ports||Integer|||ポート数|
|10|Prtg ID|u_infra_prtg_id|u_infra_prtg_id|〇|String|||PRTGのオブジェクトIDを設定|
|11|Serial number|serial_number|u_infra_serial_number||String|		

###IP Firewallテーブル用Webサーボスインポートセット
テーブル設定

|No.|項目|値|
|---|---|---|
|1|Label|Import Infra IP Firewall data|
|2|Copy fields from target table|チェック|
|3|Target table|cmdb_ci_ip_firewall|
|4|Source table|Import Infra IP Firewall data (u_import_infra_ip_firewall_data)|

列の変換マップ

|No.|Column label|Column name|トランスフォームマップフィールド名|識別キー|Type|参照先|参照先テーブル|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Department|department|u_infra_department||Reference|Department|cmn_department|ITIにする|
|2|Description|short_description|u_infra_short_description||String|||
|3|Discovery source|discovery_source|u_infra_discovery_source||String|||「PRTG」で固定|
|4|IP Address|ip_address|u_infra_ip_address||String|||
|5|Manufacturer|ip_version|u_infra_ip_version||Reference|Company|core_company|
|6|ModelID|netmask|u_infra_netmask||Reference|Product Model|cmdb_model|
|7|Name|ip_address|u_infra_ip_address||String|||
|8|Ports|ports|u_infra_ports||Integer|||ポート数|
|9|Prtg ID|u_infra_prtg_id|u_infra_prtg_id|〇|String|||PRTGのオブジェクトIDを設定|
|10|Serial number|serial_number|u_infra_serial_number||String|||

###IP Addressテーブル用Webサーボスインポートセット
テーブル設定

|No.|項目|値|
|---|---|---|
|1|Label|Import Infra IP Address data|
|2|Copy fields from target table|チェック|
|3|Target table|cmdb_ci_ip_address|
|4|Source table|Import Infra IP Address data (u_import_infra_ip_address_data)|

列の変換マップ

|No.|Column label|Column name|トランスフォームマップフィールド名|識別キー|Type|参照先|参照先テーブル|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Department|department|u_infra_department||Reference|Department|cmn_department|ITIにする|
|2|Discovery source|discovery_source|u_infra_discovery_source||String|||「PRTG」で固定|
|3|IP Address|ip_address|u_infra_ip_address||String|||
|4|IP version|ip_version|u_infra_ip_version||Integer|||「4」で固定（IPv4）|
|5|Name|name|u_infra_name|||||
|6|Netmask|netmask|u_infra_netmask||String|||
|7|Prtg ID|u_infra_prtg_id|u_infra_prtg_id|〇|String|||PRTGのオブジェクトIDを設定|

###Companyテーブル用Webサーボスインポートセット
テーブル設定

|No.|項目|値|
|---|---|---|
|1|Label|Import Infra Company data|
|2|Copy fields from target table|チェック|
|3|Target table|core_company|
|4|Source table|Import Infra Company data (u_import_infra_company_data)|

列の変換マップ

|No.|Column label|Column name|トランスフォームマップフィールド名|識別キー|Type|参照先|参照先テーブル|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Manufacturer|manufacturer|u_manufacturer||True/False|||メーターの場合はtrue。それ以外はfalse|
|2|Name|name|u_name|〇|String|||
|3|Vendor|vendor|u_vendor||True/False|||購入元の場合はtrue。それ以外はfalse|
|4|Vendor type|vendor_type|u_vendor_type||List|||「Hardware」に固定|

###Product Modelテーブル用Webサーボスインポートセット
テーブル設定

|No.|項目|値|
|---|---|---|
|1|Label|Import Infra Model data|
|2|Copy fields from target table|チェック|
|3|Target table|cmdb_model|
|4|Source table|Import Infra Model data (u_import_infra_model_data)|

列の変換マップ

|No.|列ラベル|列名|トランスフォームマップフィールド名|識別キー|Type|参照先|参照先テーブル|コメント|
|---|---|---|---|---|---|---|---|---|
|1|Display name|display_name|u_display_name||String|||
|2|Manufacturer|manufacturer|u_infra_manufacturer||Reference|Company|core_company|
|3|Model categories|cmdb_model_category|u_infra_cmdb_model_category||List|Model Category||「Network Gear」で固定
|4|Model number|model_number|u_infra_model_number||String|||
|5|Name|name|u_infra_name|〇|String|||

以上