solarwinds-itsm-api-definitions 0.1.1 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +4 -4
  2. data/lib/definitions/common/components.json +298 -49
  3. data/lib/definitions/common/examples/catalog_item.json +70 -0
  4. data/lib/definitions/common/examples/change.json +127 -0
  5. data/lib/definitions/common/examples/change_catalog.json +92 -0
  6. data/lib/definitions/common/examples/configuration_item.json +108 -0
  7. data/lib/definitions/common/examples/hardware.json +125 -0
  8. data/lib/definitions/common/examples/incident.json +134 -109
  9. data/lib/definitions/common/examples/problem.json +132 -0
  10. data/lib/definitions/common/examples/release.json +150 -0
  11. data/lib/definitions/common/examples/service_request.json +28 -0
  12. data/lib/definitions/common/examples/solution.json +49 -0
  13. data/lib/definitions/common/examples/user.json +106 -0
  14. data/lib/definitions/common/schemas/analytics/audit.json +28 -0
  15. data/lib/definitions/common/schemas/analytics/risk.json +28 -0
  16. data/lib/definitions/common/schemas/inventory/hardware.json +104 -0
  17. data/lib/definitions/common/schemas/inventory/mobile.json +73 -0
  18. data/lib/definitions/common/schemas/inventory/other_asset.json +74 -0
  19. data/lib/definitions/common/schemas/inventory/printer.json +41 -0
  20. data/lib/definitions/common/schemas/inventory/software.json +28 -0
  21. data/lib/definitions/common/schemas/inventory/warranty.json +40 -0
  22. data/lib/definitions/common/schemas/procurement/contract.json +67 -0
  23. data/lib/definitions/common/schemas/procurement/item.json +51 -0
  24. data/lib/definitions/common/schemas/procurement/purchase.json +57 -0
  25. data/lib/definitions/common/schemas/procurement/purchase_order.json +85 -0
  26. data/lib/definitions/common/schemas/procurement/vendor.json +67 -0
  27. data/lib/definitions/common/schemas/service_desk/catalog_item.json +71 -0
  28. data/lib/definitions/common/schemas/service_desk/change.json +88 -0
  29. data/lib/definitions/common/schemas/service_desk/change_catalog.json +77 -0
  30. data/lib/definitions/common/schemas/service_desk/comment.json +52 -0
  31. data/lib/definitions/common/schemas/service_desk/configuration_item.json +117 -0
  32. data/lib/definitions/common/schemas/service_desk/incident.json +99 -0
  33. data/lib/definitions/common/schemas/service_desk/problem.json +81 -0
  34. data/lib/definitions/common/schemas/service_desk/release.json +86 -0
  35. data/lib/definitions/common/schemas/service_desk/service_request.json +31 -0
  36. data/lib/definitions/common/schemas/service_desk/solution.json +61 -0
  37. data/lib/definitions/common/schemas/service_desk/time_track.json +37 -0
  38. data/lib/definitions/common/schemas/setup/category.json +54 -0
  39. data/lib/definitions/common/schemas/setup/department.json +48 -0
  40. data/lib/definitions/common/schemas/setup/group.json +65 -0
  41. data/lib/definitions/common/schemas/setup/role.json +51 -0
  42. data/lib/definitions/common/schemas/setup/site.json +64 -0
  43. data/lib/definitions/common/schemas/setup/user.json +67 -0
  44. data/lib/definitions/common/schemas/tasks/task.json +52 -0
  45. data/lib/definitions/openapi.json +105 -10
  46. data/lib/definitions/paths/attachments/attachments.json +12 -0
  47. data/lib/definitions/paths/audits/audits.json +35 -0
  48. data/lib/definitions/paths/audits/audits_by_id.json +37 -0
  49. data/lib/definitions/paths/catalog_items/catalog_item_by_id.json +83 -0
  50. data/lib/definitions/paths/catalog_items/catalog_items.json +69 -0
  51. data/lib/definitions/paths/categories/categories.json +62 -0
  52. data/lib/definitions/paths/categories/category_by_id.json +70 -0
  53. data/lib/definitions/paths/change_catalogs/change_catalog_by_id.json +83 -0
  54. data/lib/definitions/paths/change_catalogs/change_catalogs.json +69 -0
  55. data/lib/definitions/paths/changes/change_by_id.json +83 -0
  56. data/lib/definitions/paths/changes/changes.json +69 -0
  57. data/lib/definitions/paths/comments/comment_by_id.json +65 -0
  58. data/lib/definitions/paths/comments/comments.json +31 -0
  59. data/lib/definitions/paths/configuration_items/append_dependent_assets.json +24 -0
  60. data/lib/definitions/paths/configuration_items/configuration_item_by_id.json +83 -0
  61. data/lib/definitions/paths/configuration_items/configuration_items.json +69 -0
  62. data/lib/definitions/paths/configuration_items/delete_asset_link.json +24 -0
  63. data/lib/definitions/paths/contracts/contract_by_id.json +74 -0
  64. data/lib/definitions/paths/contracts/contracts.json +62 -0
  65. data/lib/definitions/paths/contracts/item_by_id.json +75 -0
  66. data/lib/definitions/paths/contracts/items.json +30 -0
  67. data/lib/definitions/paths/departments/department_by_id.json +70 -0
  68. data/lib/definitions/paths/departments/departments.json +62 -0
  69. data/lib/definitions/paths/groups/group_by_id.json +70 -0
  70. data/lib/definitions/paths/groups/groups.json +62 -0
  71. data/lib/definitions/paths/hardwares/hardware_by_id.json +83 -0
  72. data/lib/definitions/paths/hardwares/hardwares.json +69 -0
  73. data/lib/definitions/paths/hardwares/warranties.json +64 -0
  74. data/lib/definitions/paths/hardwares/warranty_by_id.json +75 -0
  75. data/lib/definitions/paths/incidents/incident_by_id.json +7 -7
  76. data/lib/definitions/paths/incidents/incidents.json +11 -11
  77. data/lib/definitions/paths/memberships/membership_by_id.json +20 -0
  78. data/lib/definitions/paths/memberships/memberships.json +29 -0
  79. data/lib/definitions/paths/mobiles/mobile_by_id.json +74 -0
  80. data/lib/definitions/paths/mobiles/mobiles.json +62 -0
  81. data/lib/definitions/paths/other_assets/other_asset_by_id.json +74 -0
  82. data/lib/definitions/paths/other_assets/other_assets.json +62 -0
  83. data/lib/definitions/paths/printers/printer_by_id.json +53 -0
  84. data/lib/definitions/paths/printers/printers.json +36 -0
  85. data/lib/definitions/paths/problems/problem_by_id.json +83 -0
  86. data/lib/definitions/paths/problems/problems.json +69 -0
  87. data/lib/definitions/paths/purchase_orders/purchase_order_by_id.json +74 -0
  88. data/lib/definitions/paths/purchase_orders/purchase_orders.json +62 -0
  89. data/lib/definitions/paths/purchases/purchase_by_id.json +65 -0
  90. data/lib/definitions/paths/purchases/purchases.json +31 -0
  91. data/lib/definitions/paths/releases/release_by_id.json +83 -0
  92. data/lib/definitions/paths/releases/releases.json +69 -0
  93. data/lib/definitions/paths/risks/risks.json +34 -0
  94. data/lib/definitions/paths/roles/role_by_id.json +70 -0
  95. data/lib/definitions/paths/roles/roles.json +62 -0
  96. data/lib/definitions/paths/service_requests/request_by_id.json +37 -0
  97. data/lib/definitions/paths/sites/site_by_id.json +74 -0
  98. data/lib/definitions/paths/sites/sites.json +62 -0
  99. data/lib/definitions/paths/softwares/software_by_id.json +24 -0
  100. data/lib/definitions/paths/softwares/softwares.json +36 -0
  101. data/lib/definitions/paths/solutions/solution_by_id.json +83 -0
  102. data/lib/definitions/paths/solutions/solutions.json +69 -0
  103. data/lib/definitions/paths/tasks/task_by_id.json +65 -0
  104. data/lib/definitions/paths/tasks/tasks.json +31 -0
  105. data/lib/definitions/paths/time_tracks/time_track_by_id.json +65 -0
  106. data/lib/definitions/paths/time_tracks/time_tracks.json +66 -0
  107. data/lib/definitions/paths/users/user_by_id.json +83 -0
  108. data/lib/definitions/paths/users/users.json +69 -0
  109. data/lib/definitions/paths/vendors/vendor_by_id.json +74 -0
  110. data/lib/definitions/paths/vendors/vendors.json +62 -0
  111. data/lib/solarwinds/itsm/api/definitions.rb +52 -3
  112. metadata +106 -4
  113. data/lib/definitions/common/schemas/incident.json +0 -78
  114. data/lib/resolved_schema/resolved_schema.json +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a1abd54f8554875d244f0d6c1d24ee537d0e7943f8bc045cad05f5b7c35210d1
4
- data.tar.gz: d86890e898d99641dba63c3e1ad12e15812dc991b16e8f8d0dc84165ce596d4a
3
+ metadata.gz: 1d75bdeea2f3d28942444e62740fbeab2a0bb70eb852c31f17bbd0f9462c878b
4
+ data.tar.gz: 1298f1911f46bdae40a78c54e63583ae48c64700c18f8a87c93a3bff704bc66d
5
5
  SHA512:
6
- metadata.gz: 0b28631f3bc12077fd9bcf31aa25f1600b388d049dc1579750b71239618664cd00a739d618d8bb1490ac1a57e99fa3a3898b8be5c1d73b49c6a4a98bf77131d2
7
- data.tar.gz: 845ab95136b6a7e1002eb2fd73e742a47482d37eb59b126a190ec4b18cd922b7cc5b824f816d544f8e0a83b2b7b7135e78ef0fdf3f3b79d046938b1d542a2703
6
+ metadata.gz: e8c02f0641a3d9743a6405f9eed8e04697bf1bd54bcaa96cb894456639e19e45c19f8ef4f6d89bb91db1d8da252806137256f8605c1ab2620ba834f1a277b1c6
7
+ data.tar.gz: c2250a8c3dfd130b3c747cf475db59e1e2677178b6e304a3a1fe4bc41192b85f286b45b3250d98ef735d4ff58ecfc972dcaf66833ab98005c23bc5c3e60bbd86
@@ -14,6 +14,14 @@
14
14
  "schema": { "type": "string" },
15
15
  "required": true,
16
16
  "description": "Numeric ID of the object to get or update"
17
+ },
18
+ "object_param": {
19
+ "name": "object_type",
20
+ "in": "path",
21
+ "schema": { "type": "string" },
22
+ "required": true,
23
+ "description": "Source object type",
24
+ "example": "incidents"
17
25
  }
18
26
  },
19
27
  "schemas": {
@@ -23,7 +31,7 @@
23
31
  "type": "object",
24
32
  "required": ["name"],
25
33
  "properties": {
26
- "name": { "type": "string" }
34
+ "name": { "type": "string", "example": "Object Name" }
27
35
  }
28
36
  },
29
37
  { "enum": ["nil", "", null] }]
@@ -34,45 +42,139 @@
34
42
  "type": "object",
35
43
  "required": ["email"],
36
44
  "properties": {
37
- "email": { "type": "string" }
45
+ "email": {
46
+ "type": "string",
47
+ "format": "email",
48
+ "example": "john.doe@email.com"
49
+ }
38
50
  }
39
51
  },
40
52
  { "enum": ["nil", "", null] }]
41
53
  },
42
- "ids_array": {
43
- "type": "array",
44
- "items": {
45
- "$ref": "components.json#/components/common/schemas/association_by_id"
54
+ "attachment_numbers": {
55
+ "anyOf": [
56
+ { "$ref": "components.json#/components/request/schemas/numbers_array" },
57
+ { "$ref": "components.json#/components/request/schemas/number_property" }
58
+ ]
59
+ },
60
+ "number_property": {
61
+ "type": "object",
62
+ "properties": {
63
+ "number": { "anyOf": [ { "type": "string", "example": "1" }, { "type": "integer", "example": 1 }] }
46
64
  }
47
65
  },
48
66
  "numbers_array": {
49
67
  "type": "array",
50
- "items": {
51
- "type": "object",
52
- "properties": {
53
- "number": {
54
- "oneOf": [{ "type": "string" }, { "type": "integer" }]
55
- }
56
- }
57
- }
68
+ "items": { "$ref": "components.json#/components/request/schemas/number_property" }
69
+ },
70
+ "value_of_custom_field": {
71
+ "anyOf":[
72
+ { "type": "string", "example": "content" }, { "type": "integer", "example": 1 }, { "type": "null" },
73
+ { "content": { "application/octet-stream": {} }, "description": "attachment custom field" }
74
+ ]
58
75
  },
59
76
  "custom_field": {
60
77
  "type": "object",
61
- "required": ["name", "value"],
78
+ "required": ["name"],
79
+ "properties": {
80
+ "name": { "type": "string", "example": "Name of custom text field" },
81
+ "value": { "$ref": "components.json#/components/request/schemas/value_of_custom_field" },
82
+ "user_value": { "$ref": "components.json#/components/request/schemas/association_by_email" }
83
+ }
84
+ },
85
+ "custom_fields_value": {
86
+ "anyOf": [
87
+ { "type": "array", "items": { "$ref": "components.json#/components/request/schemas/custom_field" } },
88
+ { "$ref": "components.json#/components/request/schemas/custom_field" }
89
+ ]
90
+ },
91
+ "custom_fields_values": {
92
+ "type": "object",
93
+ "required": ["custom_fields_value"],
94
+ "properties": { "custom_fields_value": { "$ref": "components.json#/components/request/schemas/custom_fields_value" } }
95
+ },
96
+ "custom_field_by_id": {
97
+ "type": "object",
98
+ "properties": {
99
+ "id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
100
+ "custom_field_id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
101
+ "value": { "$ref": "components.json#/components/request/schemas/value_of_custom_field" }
102
+ }
103
+ },
104
+ "custom_fields_values_attributes": {
105
+ "anyOf": [
106
+ { "type": "array", "items": { "$ref": "components.json#/components/request/schemas/custom_field_by_id" } },
107
+ { "type": "object", "items": { "$ref": "components.json#/components/request/schemas/custom_field_by_id" } }
108
+ ]
109
+ },
110
+ "approval_levels_attributes": {
111
+ "anyOf": [
112
+ { "type": "array", "items": { "$ref": "components.json#/components/request/schemas/approval_level" } },
113
+ { "type": "object", "items": { "$ref": "components.json#/components/request/schemas/approval_level" } }
114
+ ]
115
+ },
116
+ "approval_level": {
117
+ "type": "object",
118
+ "properties": {
119
+ "id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
120
+ "approver_ids": { "type": "string", "example": "1, 2" },
121
+ "approval_condition": { "type": "string", "example": "1" }
122
+ }
123
+ },
124
+ "bio": {
125
+ "type": "object",
62
126
  "properties": {
63
- "name": { "type": "string" },
64
- "value": { "type": "string" }
127
+ "manufacturer": { "type": "string", "example": "Dell" },
128
+ "ssn": { "anyOf": [{ "type": "string", "example": "1" },{ "type": "integer", "example": 1 }] },
129
+ "model": { "type": "string", "example": "model description" },
130
+ "version": { "anyOf": [{ "type": "string", "example": "1" },{ "type": "integer", "example": 1 }] },
131
+ "bios_date": { "type": "string", "example": "2020-01-01 00:00" }
65
132
  }
66
133
  },
67
- "custom_field_value": {
134
+ "variable": {
135
+ "type": "object",
136
+ "required": ["name"],
137
+ "properties": {
138
+ "name": { "type": "string", "example": "Variable name" },
139
+ "value": { "type": "string", "example": "Content" },
140
+ "user_value": { "$ref": "components.json#/components/request/schemas/association_by_email" }
141
+ }
142
+ },
143
+ "cc_array": {
68
144
  "type": "array",
69
- "items": { "$ref": "components.json#/components/request/schemas/custom_field" }
145
+ "items": { "type": "string", "format": "email", "example": "john.doe@email.com" },
146
+ "xml": { "wrapped": true },
147
+ "description": "for xml requests, please add: type=\"array\". for example: \"\\<cc type='array'\\> \\<cc\\>john.doe@email.com\\<\/cc\\> \\<\/cc\\>\""
70
148
  },
71
- "custom_field_values": {
149
+ "reports_to": {
150
+ "oneOf": [
151
+ {
152
+ "type": "object",
153
+ "required": ["id"],
154
+ "properties": { "id": { "$ref": "components.json#/components/common/schemas/association_by_id" } }
155
+ },
156
+ { "$ref": "components.json#/components/request/schemas/association_by_email" }
157
+ ]
158
+ },
159
+ "purchase_order_items_attributes": {
160
+ "type": "array",
161
+ "items": { "$ref": "components.json#/components/request/schemas/purchase_order_items_attribute" }
162
+ },
163
+ "purchase_order_items_attribute": {
72
164
  "type": "object",
73
- "required": ["custom_field_value"],
74
165
  "properties": {
75
- "custom_field_value": { "$ref": "components.json#/components/request/schemas/custom_field_value" }
166
+ "id": {
167
+ "$ref": "components.json#/components/common/schemas/association_by_id",
168
+ "description": "Required field for update operations"
169
+ },
170
+ "name": { "type": "string", "example": "Item Name" },
171
+ "description": { "type": "string", "example": "Item Decription" },
172
+ "serial_number": { "type": "string", "example": "XXXXX" },
173
+ "part_number": { "$ref": "components.json#/components/common/schemas/number_or_string" },
174
+ "price": { "$ref": "components.json#/components/common/schemas/number_or_string" },
175
+ "quantity": { "$ref": "components.json#/components/common/schemas/number_or_string" },
176
+ "discount": { "$ref": "components.json#/components/common/schemas/number_or_string" },
177
+ "tax": { "$ref": "components.json#/components/common/schemas/number_or_string" }
76
178
  }
77
179
  }
78
180
  }
@@ -81,20 +183,19 @@
81
183
  "schemas": {
82
184
  "id": {
83
185
  "readOnly": true,
84
- "oneOf": [{ "type": "string" }, { "type": "integer" }]
186
+ "oneOf": [{ "type": "string", "example": "1" }, { "type": "integer", "example": 1 }]
85
187
  },
86
188
  "custom_field": {
87
189
  "type": "object",
88
190
  "properties": {
89
191
  "id": { "$ref": "components.json#/components/response/schemas/id" },
90
192
  "custom_field_id": { "$ref": "components.json#/components/response/schemas/id" },
91
- "name": { "type": "string" },
92
- "value": { "type": "string" },
93
- "options": { "type": "string" },
94
- "type_name": { "type": "string" }
193
+ "name": { "type": "string", "example": " Name of custom text field" },
194
+ "value": { "type": "string", "example": "content" },
195
+ "type_name": { "type": "string", "example": "Text" }
95
196
  }
96
197
  },
97
- "custom_field_values": {
198
+ "custom_fields_values": {
98
199
  "type": "array",
99
200
  "items": { "$ref": "components.json#/components/response/schemas/custom_field" }
100
201
  },
@@ -102,8 +203,8 @@
102
203
  "type": "object",
103
204
  "properties": {
104
205
  "id": { "$ref": "components.json#/components/response/schemas/id" },
105
- "name": { "type": "string" },
106
- "default_tags": { "type": "string" },
206
+ "name": { "type": "string", "example": "Category / Subcategory name" },
207
+ "default_tags": { "type": "string", "example": "tag1, tag2" },
107
208
  "parent_id": { "$ref": "components.json#/components/response/schemas/id" },
108
209
  "default_assignee_id": { "$ref": "components.json#/components/response/schemas/id" }
109
210
  }
@@ -111,35 +212,36 @@
111
212
  "avatar": {
112
213
  "type": "object",
113
214
  "properties": {
114
- "type": { "type": "string" },
115
- "color": { "type": "string" },
215
+ "type": { "type": "string", "example": "initials" },
216
+ "color": { "type": "string", "example": "#1000" },
116
217
  "initials": {
117
218
  "type": "string",
118
219
  "minLength": 2,
119
- "maxLength": 2
220
+ "maxLength": 2,
221
+ "example": "JD"
120
222
  }
121
223
  }
122
224
  },
123
- "assignee_details": {
225
+ "group_details": {
124
226
  "type": "object",
125
227
  "properties": {
126
228
  "group_id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
127
- "is_user": { "oneOf": [{ "type": "string" }, { "type": "boolean" }] },
229
+ "is_user": { "oneOf": [{ "type": "string", "example": "true" }, { "type": "boolean" }] },
128
230
  "id": { "$ref": "components.json#/components/response/schemas/id" },
129
- "name": { "type": "string" },
130
- "email": { "type": "string" },
231
+ "name": { "type": "string", "example": "John Doe" },
232
+ "email": { "type": "string", "example": "john.doe@email.com" },
131
233
  "avatar": { "$ref": "components.json#/components/response/schemas/avatar" }
132
234
  }
133
235
  },
134
- "requester_details": {
236
+ "user_details": {
135
237
  "type": "object",
136
238
  "properties": {
137
239
  "id": { "$ref": "components.json#/components/response/schemas/id" },
138
240
  "account_id": { "$ref": "components.json#/components/response/schemas/id" },
139
241
  "user_id": { "$ref": "components.json#/components/response/schemas/id" },
140
- "email": { "type": "string" },
141
- "name": { "type": "string" },
142
- "disabled": { "type": "boolean" },
242
+ "email": { "type": "string", "example": "john.doe@email.com" },
243
+ "name": { "type": "string", "example": "John Doe" },
244
+ "disabled": { "type": "boolean", "example": false },
143
245
  "avatar": { "$ref": "components.json#/components/response/schemas/avatar" }
144
246
  }
145
247
  },
@@ -147,18 +249,18 @@
147
249
  "type": "object",
148
250
  "properties": {
149
251
  "id": { "$ref": "components.json#/components/response/schemas/id" },
150
- "name": { "type": "string" },
151
- "description": { "type": "string" },
152
- "location": { "type": "string" },
153
- "timezone": { "type": "string" }
252
+ "name": { "type": "string", "example": "Austin TX, USA" },
253
+ "description": { "type": "string", "example": "AUS" },
254
+ "location": { "type": "string", "example": "AUS" },
255
+ "timezone": { "type": "string", "example": "UTC-6h" }
154
256
  }
155
257
  },
156
258
  "department_response": {
157
259
  "type": "object",
158
260
  "properties": {
159
261
  "id": { "$ref": "components.json#/components/response/schemas/id" },
160
- "name": { "type": "string" },
161
- "description": { "type": "string" },
262
+ "name": { "type": "string", "example": "Support" },
263
+ "description": { "type": "string", "example": "Support Department" },
162
264
  "default_assignee_id": { "$ref": "components.json#/components/response/schemas/id" }
163
265
  }
164
266
  },
@@ -168,16 +270,163 @@
168
270
  "type": "object",
169
271
  "properties": {
170
272
  "id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
171
- "href": { "type": "string" }
273
+ "href": { "type": "string", "example": "https://mydomain.com/object_type/1" }
172
274
  }
173
275
  }
276
+ },
277
+ "role": {
278
+ "type": "object",
279
+ "properties": {
280
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
281
+ "name": { "type": "string", "example": "Requester" },
282
+ "description": { "type": "string", "example": "Requester role" },
283
+ "portal": { "type": "boolean", "example": true },
284
+ "show_my_tasks": { "type": "boolean", "example": true }
285
+ }
286
+ },
287
+ "tag": {
288
+ "type": "object",
289
+ "properties": {
290
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
291
+ "name": { "type": "string", "example": "tag name" },
292
+ "taggings_count": { "type": "integer", "example": 1 }
293
+ }
294
+ },
295
+ "tags": {
296
+ "type": "array",
297
+ "items": { "$ref": "components.json#/components/response/schemas/tag" }
298
+ },
299
+ "approvers": {
300
+ "type": "array",
301
+ "items": { "$ref": "components.json#/components/response/schemas/group_details" }
302
+ },
303
+ "creator": {
304
+ "type": "object",
305
+ "properties": {
306
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
307
+ "name": { "type": "string", "example": "tag name" },
308
+ "email": { "type": "string", "format": "email", "example": "john.doe@email.com" }
309
+ }
310
+ },
311
+ "ci_type": {
312
+ "type": "object",
313
+ "properties": {
314
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
315
+ "name": { "type": "string", "example": "Building" },
316
+ "description": { "type": "string", "example": "Configuration Item - Building" },
317
+ "parent_id": { "$ref": "components.json#/components/response/schemas/id" },
318
+ "custom": { "type": "boolean", "example": false },
319
+ "icon_name": { "type": "string", "example": "BUILDING" },
320
+ "updated_at": { "type": "string", "example": "2025-01-01T00:00:00.000+01:00" }
321
+ }
322
+ },
323
+ "bioses": {
324
+ "type": "array",
325
+ "items": {
326
+ "type": "object",
327
+ "properties": {
328
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
329
+ "manufacturer": { "type": "string", "example": "Dell" },
330
+ "ssn": { "type": "string", "example": "1" },
331
+ "model": { "type": "string", "example": "model description" },
332
+ "version": { "type": "string", "example": "1" },
333
+ "bios_date": { "type": "string", "example": "2020-01-01 00:00" },
334
+ "reported_at": { "type": "string", "example": "2020-01-01 00:00" }
335
+ }
336
+ }
337
+ },
338
+ "asset_type": {
339
+ "type": "object",
340
+ "properties": {
341
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
342
+ "account_id": { "$ref": "components.json#/components/response/schemas/id" },
343
+ "parent_id": { "$ref": "components.json#/components/response/schemas/id" },
344
+ "name": { "type": "string", "example": "Asset Type" }
345
+ }
346
+ },
347
+ "vendor": {
348
+ "type": "object",
349
+ "properties": {
350
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
351
+ "name": { "type": "string", "example": "Google" },
352
+ "address": { "type": "string", "example": "address description" },
353
+ "country": { "type": "string", "example": "US" },
354
+ "city": { "type": "string", "example": "Texas" },
355
+ "zip": { "type": "string", "example": "1" },
356
+ "tech_support": { "type": "string", "example": "+000000000", "description": "support phone number" },
357
+ "business_phone": { "type": "string", "example": "+000000000", "description": "business phone" },
358
+ "url": { "type": "string", "example": "www.google.com" },
359
+ "created_at": { "type": "string", "example": "2020-01-01T00:00:00.000+01:00" },
360
+ "updated_at": { "type": "string", "example": "2020-10-01T00:00:00.000+01:00" }
361
+ }
362
+ },
363
+ "procurement_items": {
364
+ "type": "array",
365
+ "items": {
366
+ "type": "object",
367
+ "properties": {
368
+ "name": { "type": "string", "example": "Item Name" },
369
+ "version": { "type": "string", "example": "0.0.0" },
370
+ "quantity": { "type": "string", "example": "1" },
371
+ "notes": { "type": "string", "example": "Item notes" },
372
+ "created_at": { "type": "string", "example": "2020-01-01T00:00:00.000+01:00" },
373
+ "updated_at": { "type": "string", "example": "2020-10-01T00:00:00.000+01:00" },
374
+ "tag": { "type": "string", "example": "example tag" }
375
+ }
376
+ }
377
+ },
378
+ "id_name_href": {
379
+ "type": "object",
380
+ "properties": {
381
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
382
+ "name": { "type": "string", "example": "Object Name" },
383
+ "href": { "type": "string", "example": "/objects/1" }
384
+ }
385
+ },
386
+ "parent_object": {
387
+ "type": "object",
388
+ "properties": {
389
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
390
+ "class": { "type": "string", "example": "Incident" }
391
+ }
392
+ },
393
+ "purchase_order_items": {
394
+ "type": "array",
395
+ "items": { "$ref": "components.json#/components/response/schemas/purchase_order_item" }
396
+ },
397
+ "purchase_order_item": {
398
+ "type": "object",
399
+ "properties": {
400
+ "created_at": { "type": "string", "example": "2020-01-01T00:00:00.000+01:00" },
401
+ "updated_at": { "type": "string", "example": "2020-10-01T00:00:00.000+01:00" },
402
+ "id": { "$ref": "components.json#/components/common/schemas/association_by_id" },
403
+ "name": { "type": "string", "example": "Item Name" },
404
+ "description": { "type": "string", "example": "Item Decription" },
405
+ "serial_number": { "type": "string", "example": "XXXXX" },
406
+ "part_number": { "$ref": "components.json#/components/common/schemas/number_or_string" },
407
+ "price": { "$ref": "components.json#/components/common/schemas/number_or_string" },
408
+ "quantity": { "$ref": "components.json#/components/common/schemas/number_or_string" },
409
+ "discount": { "$ref": "components.json#/components/common/schemas/number_or_string" },
410
+ "tax": { "$ref": "components.json#/components/common/schemas/number_or_string" }
411
+ }
174
412
  }
175
413
  }
176
414
  },
177
415
  "common": {
178
416
  "schemas": {
179
417
  "association_by_id": {
180
- "oneOf": [{ "type": "string" }, { "type": "integer" }]
418
+ "anyOf": [{ "type": "string", "example": "1" }, { "type": "integer", "example": 1 }]
419
+ },
420
+ "ids_array": {
421
+ "type": "array",
422
+ "items": {
423
+ "$ref": "components.json#/components/common/schemas/association_by_id"
424
+ },
425
+ "xml": { "wrapped": true },
426
+ "description": "for xml requests, please add: type=\"array\", for example: <incident_ids type=\"array\"><incident_id>1</incident_id></incident_ids>"
427
+ },
428
+ "number_or_string": {
429
+ "anyOf": [{ "type": "string", "example": "1" }, { "type": "integer", "example": 1 }]
181
430
  }
182
431
  }
183
432
  }