solarwinds-itsm-api-definitions 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f6c9b8cbf0f5cc8e5ba43221fc294a0badef740f61138a7ad6f47661adf307ba
4
- data.tar.gz: 24361ec5717637cdbc899e866c091cde67eaa7f1b8cd0636dcdc4ab140287ea8
3
+ metadata.gz: bdeef30e6c481c8f44e37d4e18207feac682d505b51736256a7ac96604d105c6
4
+ data.tar.gz: 68c9235b9579912c4ede1e0ab9d5e51fcd8b5eeecd36aab4ceb7e28b4005a781
5
5
  SHA512:
6
- metadata.gz: 5980d87da3b952dd8eb447a90936d75cf6d92101d8b3ccc9f61b3facde7698d071622cc0c31bd29f062177679f31b66423c4752b367ff3a8ff2c1a2ed10dc568
7
- data.tar.gz: 44b96d412caddbfb09f42cace13dd733ce353713382bad70727ee81b5397250a65e73685ef14087220abb05ad5bbe051635a5e91b5e6db6bc9f0b0938b425087
6
+ metadata.gz: 5b6d166fc3c96f5dae026d408b3c5e212bbaa9c46a40a550a502305ad9d3b123ca4f7d7734377caa8bf24b5eb4743f4b793f0431e6b82598b52f404559d3b531
7
+ data.tar.gz: d57042d57130302d6d36265a04490910f8aaf98b749b96bb0dabee360224f940b114f6f50b0b40dab3695994ff2b29f373fad781e610cd3c582a988c56f0a29c
@@ -44,9 +44,7 @@
44
44
  "items": {
45
45
  "type": "object",
46
46
  "properties": {
47
- "number": {
48
- "oneOf": [{ "type": "string" }, { "type": "integer" }]
49
- }
47
+ "number": { "type": "string" }
50
48
  }
51
49
  }
52
50
  },
@@ -77,6 +75,14 @@
77
75
  "type": "object",
78
76
  "required": ["custom_fields_value"],
79
77
  "properties": { "custom_fields_value": { "$ref": "components.json#/components/request/schemas/custom_fields_value" } }
78
+ },
79
+ "custom_field_by_id": {
80
+ "type": "object",
81
+ "properties": { "custom_field_id": { "type": "integer" }, "value": { "type": "string" } }
82
+ },
83
+ "custom_fields_values_attributes": {
84
+ "type": "array",
85
+ "items": { "$ref": "components.json#/components/request/schemas/custom_field_by_id" }
80
86
  }
81
87
  }
82
88
  },
@@ -184,6 +190,18 @@
184
190
  "portal": { "type": "boolean" },
185
191
  "show_my_tasks": { "type": "boolean" }
186
192
  }
193
+ },
194
+ "tag": {
195
+ "type": "object",
196
+ "properties": {
197
+ "id": { "$ref": "components.json#/components/response/schemas/id" },
198
+ "name": { "type": "string" },
199
+ "taggings_count": { "type": "integer" }
200
+ }
201
+ },
202
+ "tags": {
203
+ "type": "array",
204
+ "items": { "$ref": "components.json#/components/response/schemas/tag" }
187
205
  }
188
206
  }
189
207
  },
@@ -102,12 +102,12 @@
102
102
  ],
103
103
  "due_at": "2025-01-01T00:00:00.000+01:00",
104
104
  "origin": "api",
105
- "incidents": [{ "id": "100", "href": "https://mydomain.com/incidents/123"}],
106
- "problems": [{ "id": "100", "href": "https://mydomain.com/problems/123"}],
107
- "changes": [{ "id": "100", "href": "https://mydomain.com/changes/123"}],
108
- "solutions": [{ "id": "100", "href": "https://mydomain.com/solutions/123"}],
109
- "releases": [{ "id": "100", "href": "https://mydomain.com/releases/123"}],
110
- "configuration_items": [{ "id": "100", "href": "https://mydomain.com/configuration_items/123"}]
105
+ "incidents": [{ "id": "100", "href": "https://mydomain.com/incidents/100"}],
106
+ "problems": [{ "id": "100", "href": "https://mydomain.com/problems/100"}],
107
+ "changes": [{ "id": "100", "href": "https://mydomain.com/changes/100"}],
108
+ "solutions": [{ "id": "100", "href": "https://mydomain.com/solutions/100"}],
109
+ "releases": [{ "id": "100", "href": "https://mydomain.com/releases/100"}],
110
+ "configuration_items": [{ "id": "100", "href": "https://mydomain.com/configuration_items/100"}]
111
111
  }
112
112
  }
113
113
  }
@@ -0,0 +1,108 @@
1
+ {
2
+ "examples": {
3
+ "request": {
4
+ "json": {
5
+ "problem": {
6
+ "name": "Problem Name",
7
+ "site_id": 1,
8
+ "department_id": 1,
9
+ "description": "description",
10
+ "state": 1,
11
+ "root_cause": "Root cause description",
12
+ "symptoms": "Symptoms description",
13
+ "workaround": "workaround description",
14
+ "assignee": { "email": "john.doe@email.com" },
15
+ "requester": { "email": "john.doe@email.com" },
16
+ "priority": "High",
17
+ "add_to_tag_list": "tag1",
18
+ "custom_fields_values_attributes": [
19
+ { "custom_field_id": 1, "value": "content" }
20
+ ],
21
+ "incident_ids": [100],
22
+ "itsm_change_ids": [100],
23
+ "configuration_item_ids":[100]
24
+ }
25
+ }
26
+ },
27
+ "response": {
28
+ "json": {
29
+ "problem": {
30
+ "id": "10000",
31
+ "number": "1000",
32
+ "name": "Problem Name",
33
+ "description": "description",
34
+ "state": "New",
35
+ "root_cause": "Root cause description",
36
+ "symptoms": "Symptoms description",
37
+ "workaround": "workaround description",
38
+ "site": {
39
+ "id": "1",
40
+ "name": "Austin TX, USA",
41
+ "location": "AUS",
42
+ "description": "",
43
+ "time_zone": ""
44
+ },
45
+ "department": {
46
+ "id": "1",
47
+ "name": "Support",
48
+ "description": "",
49
+ "default_assignee_id": "1"
50
+ },
51
+ "priority": "High",
52
+ "created_by": {
53
+ "id": "1",
54
+ "account_id": "1",
55
+ "user_id": "1",
56
+ "email": "john.doe@email.com",
57
+ "name": "John Doe",
58
+ "disabled": false,
59
+ "avatar": {
60
+ "type": "initials",
61
+ "color": "#fd4165",
62
+ "initials": "JD"
63
+ }
64
+ },
65
+ "assignee": {
66
+ "group_id": "1",
67
+ "is_user": "true",
68
+ "id": "1",
69
+ "name": "Jogn Doe",
70
+ "email": "john.doe@email.com",
71
+ "avatar": {
72
+ "type": "initials",
73
+ "color": "#fd4165",
74
+ "initials": "JD"
75
+ }
76
+ },
77
+ "requester": {
78
+ "id": "1",
79
+ "account_id": "1",
80
+ "user_id": "1",
81
+ "email": "john.doe@email.com",
82
+ "name": "John Doe",
83
+ "disabled": false,
84
+ "avatar": {
85
+ "type": "initials",
86
+ "color": "#fd4165",
87
+ "initials": "JD"
88
+ }
89
+ },
90
+ "custom_fields_values": [
91
+ {
92
+ "id": "1000",
93
+ "custom_field_id": "1",
94
+ "name": "field name",
95
+ "value": "content",
96
+ "options": "",
97
+ "type_name": "Text"
98
+ }
99
+ ],
100
+ "tags": [{ "id": 1, "name": "tag1", "taggings_count": 1 }],
101
+ "incidents": [{ "id": "100", "href": "https://mydomain.com/incidents/100"}],
102
+ "changes": [{ "id": "100", "href": "https://mydomain.com/changes/1"}],
103
+ "configuration_items": [{ "id": "100", "href": "https://mydomain.com/configuration_items/100"}]
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }
@@ -7,6 +7,7 @@
7
7
  "properties": {
8
8
  "incident": {
9
9
  "type": "object",
10
+ "required": ["name"],
10
11
  "properties": {
11
12
  "name": { "type": "string" },
12
13
  "site_id": { "$ref": "../components.json#/components/common/schemas/association_by_id" },
@@ -0,0 +1,67 @@
1
+ {
2
+ "components": {
3
+ "schemas": {
4
+ "problem": {
5
+ "request": {
6
+ "type": "object",
7
+ "properties": {
8
+ "problem": {
9
+ "type": "object",
10
+ "required": ["name"],
11
+ "properties": {
12
+ "name": { "type": "string" },
13
+ "description": { "type": "string" },
14
+ "site": { "$ref": "../components.json#/components/request/schemas/association_by_name" },
15
+ "department": { "$ref": "../components.json#/components/request/schemas/association_by_name" },
16
+ "site_id": { "$ref": "../components.json#/components/common/schemas/association_by_id" },
17
+ "department_id": { "$ref": "../components.json#/components/common/schemas/association_by_id" },
18
+ "state": { "type": "string" },
19
+ "requester": { "$ref": "../components.json#/components/request/schemas/association_by_email" },
20
+ "assignee": { "$ref": "../components.json#/components/request/schemas/association_by_email" },
21
+ "priority": { "type": "string" },
22
+ "root_cause": { "type": "string" },
23
+ "symptoms": { "type": "string" },
24
+ "workaround": { "type": "string" },
25
+ "add_to_tag_list": { "type": "string" },
26
+ "custom_fields_values_attributes": { "$ref": "../components.json#/components/request/schemas/custom_fields_values_attributes" },
27
+ "incident_ids": { "$ref": "../components.json#/components/common/schemas/ids_array" },
28
+ "itsm_change_ids": { "$ref": "../components.json#/components/common/schemas/ids_array" },
29
+ "configuration_item_ids": { "$ref": "../components.json#/components/common/schemas/ids_array" }
30
+ }
31
+ }
32
+ }
33
+ },
34
+ "response": {
35
+ "type": "object",
36
+ "properties": {
37
+ "problem": {
38
+ "type": "object",
39
+ "properties": {
40
+ "id": { "$ref": "../components.json#/components/response/schemas/id" },
41
+ "name": { "type": "string" },
42
+ "description": { "type": "string" },
43
+ "site": { "$ref": "../components.json#/components/response/schemas/site_response" },
44
+ "department": { "$ref": "../components.json#/components/response/schemas/department_response" },
45
+ "state": { "type": "string" },
46
+ "priority": { "type": "string" },
47
+ "root_cause": { "type": "string" },
48
+ "symptoms": { "type": "string" },
49
+ "workaround": { "type": "string" },
50
+ "created_by": { "$ref": "../components.json#/components/response/schemas/requester_details" },
51
+ "assignee": { "$ref": "../components.json#/components/response/schemas/assignee_details" },
52
+ "requester": { "$ref": "../components.json#/components/response/schemas/requester_details" },
53
+ "custom_fields_values": { "$ref": "../components.json#/components/response/schemas/custom_field_values" },
54
+ "tags": { "$ref": "../components.json#/components/response/schemas/tags" },
55
+ "incidents": { "$ref": "../components.json#/components/response/schemas/response_attachments" },
56
+ "changes": { "$ref": "../components.json#/components/response/schemas/response_attachments" },
57
+ "problems": { "$ref": "../components.json#/components/response/schemas/response_attachments" },
58
+ "configuration_items": { "$ref": "../components.json#/components/response/schemas/response_attachments" }
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+
@@ -7,6 +7,7 @@
7
7
  "properties": {
8
8
  "user": {
9
9
  "type": "object",
10
+ "required": ["name", "email"],
10
11
  "properties": {
11
12
  "name": { "type": "string" },
12
13
  "title": { "type": "string" },
@@ -3,7 +3,7 @@
3
3
  "info": {
4
4
  "title": "SolarWinds ITSM API",
5
5
  "description": "All SolarWinds ITSM API definitions",
6
- "version": "0.1.2",
6
+ "version": "0.1.3",
7
7
  "contact": {
8
8
  "name": "API Support",
9
9
  "url": "samanage.com/support",
@@ -18,10 +18,13 @@
18
18
  "/incidents/{id}": { "$ref": "paths/incidents/incident_by_id.json" },
19
19
  "/incidents": { "$ref": "paths/incidents/incidents.json" },
20
20
  "/users/{id}": { "$ref": "paths/users/user_by_id.json" },
21
- "/users": { "$ref": "paths/users/users.json" }
21
+ "/users": { "$ref": "paths/users/users.json" },
22
+ "/problems/{id}": { "$ref": "paths/problems/problem_by_id.json" },
23
+ "/problems": { "$ref": "paths/problems/problems.json" }
22
24
  },
23
25
  "tags": [
24
26
  { "name": "Incident", "description": "Incident operations" },
25
- { "name": "User", "description": "User operations" }
27
+ { "name": "User", "description": "User operations" },
28
+ { "name": "Problem", "description": "Problem operations" }
26
29
  ]
27
30
  }
@@ -19,7 +19,7 @@
19
19
  "example": [{ "$ref": "../../common/examples/incident.json#/examples/response/json" }]
20
20
  },
21
21
  "application/xml": {
22
- "schema": {
22
+ "schema": {
23
23
  "description": "List of incidents",
24
24
  "type": "array",
25
25
  "items": { "allOf": [{ "$ref": "../../common/schemas/incident.json#/components/schemas/incident/response" }] }
@@ -0,0 +1,84 @@
1
+ {
2
+ "get": {
3
+ "operationId": "getProblemById",
4
+ "description": "Get problem",
5
+ "tags": ["Problem"],
6
+ "parameters": [
7
+ { "$ref": "../../common/components.json#/components/request/parameters/token_param" },
8
+ { "$ref": "../../common/components.json#/components/request/parameters/id_param" }
9
+ ],
10
+ "responses": {
11
+ "200": {
12
+ "description": "Object was returned correctly",
13
+ "content": {
14
+ "application/json": {
15
+ "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" },
16
+ "example": { "$ref": "../../common/examples/problem.json#/examples/response/json" }
17
+ },
18
+ "application/xml": { "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" } }
19
+ }
20
+ },
21
+ "400": { "description": "Bad request" },
22
+ "404": { "description": "Not found" },
23
+ "500": { "description": "Internal Server Error" }
24
+ }
25
+ },
26
+ "put": {
27
+ "operationId": "updateProblemById",
28
+ "description": "Update problem with specified fields",
29
+ "tags": ["Problem"],
30
+ "parameters": [
31
+ { "$ref": "../../common/components.json#/components/request/parameters/token_param" },
32
+ { "$ref": "../../common/components.json#/components/request/parameters/id_param" }
33
+ ],
34
+ "requestBody": {
35
+ "required": true,
36
+ "description": "Problem fields to update",
37
+ "content": {
38
+ "application/json": {
39
+ "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/request" },
40
+ "example": { "$ref": "../../common/examples/problem.json#/examples/request/json" }
41
+ },
42
+ "application/xml": { "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/request" } }
43
+ }
44
+ },
45
+ "responses": {
46
+ "200": {
47
+ "description": "Object was updated correctly",
48
+ "content": {
49
+ "application/json": {
50
+ "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" },
51
+ "example": { "$ref": "../../common/examples/problem.json#/examples/response/json" }
52
+ },
53
+ "application/xml": { "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" } }
54
+ }
55
+ },
56
+ "400": { "description": "Bad request" },
57
+ "404": { "description": "Not found" },
58
+ "500": { "description": "Internal Server Error" }
59
+ }
60
+ },
61
+ "delete": {
62
+ "operationId": "deleteProblemById",
63
+ "description": "Delete problem",
64
+ "tags": ["Problem"],
65
+ "parameters": [
66
+ { "$ref": "../../common/components.json#/components/request/parameters/token_param" },
67
+ { "$ref": "../../common/components.json#/components/request/parameters/id_param" }
68
+ ],
69
+ "responses": {
70
+ "200": {
71
+ "description": "Object was returned correctly",
72
+ "content": {
73
+ "application/json": {
74
+ "example": { "deleted_ids": ["1"] }
75
+ }
76
+ }
77
+ },
78
+ "400": { "description": "Bad request" },
79
+ "404": { "description": "Not found" },
80
+ "500": { "description": "Internal Server Error" }
81
+ }
82
+ }
83
+ }
84
+
@@ -0,0 +1,69 @@
1
+ {
2
+ "get": {
3
+ "operationId": "getProblems",
4
+ "description": "List of problems",
5
+ "tags": ["Problem"],
6
+ "parameters": [
7
+ { "$ref": "../../common/components.json#/components/request/parameters/token_param" }
8
+ ],
9
+ "responses": {
10
+ "200": {
11
+ "description": "Object was returned correctly",
12
+ "content": {
13
+ "application/json": {
14
+ "schema": {
15
+ "description": "List of problems",
16
+ "type": "array",
17
+ "items": { "allOf": [{ "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" }] }
18
+ },
19
+ "example": [{ "$ref": "../../common/examples/problem.json#/examples/response/json" }]
20
+ },
21
+ "application/xml": {
22
+ "schema": {
23
+ "description": "List of problems",
24
+ "type": "array",
25
+ "items": { "allOf": [{ "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" }] }
26
+ }
27
+ }
28
+ }
29
+ },
30
+ "400": { "description": "Bad request" },
31
+ "404": { "description": "Not found" },
32
+ "500": { "description": "Server error" }
33
+ }
34
+ },
35
+ "post": {
36
+ "operationId": "createProblem",
37
+ "description": "Create new problem",
38
+ "tags": ["Problem"],
39
+ "parameters": [
40
+ { "$ref": "../../common/components.json#/components/request/parameters/token_param" }
41
+ ],
42
+ "requestBody": {
43
+ "required": true,
44
+ "description": "Problem fields to fill",
45
+ "content": {
46
+ "application/json": {
47
+ "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/request" },
48
+ "example": { "$ref": "../../common/examples/problem.json#/examples/request/json" }
49
+ },
50
+ "application/xml": { "schema": { "$ref": "../../common/schemas/incident.json#/components/schemas/incident/request" } }
51
+ }
52
+ },
53
+ "responses": {
54
+ "200": {
55
+ "description": "Object created and returned correctly",
56
+ "content": {
57
+ "application/json": {
58
+ "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" },
59
+ "example": { "$ref": "../../common/examples/problem.json#/examples/response/json" }
60
+ },
61
+ "application/xml": { "schema": { "$ref": "../../common/schemas/problem.json#/components/schemas/problem/response" } }
62
+ }
63
+ },
64
+ "400": { "description": "Bad request" },
65
+ "500": { "description": "Server error" }
66
+ }
67
+ }
68
+ }
69
+