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 +4 -4
- data/lib/definitions/common/components.json +21 -3
- data/lib/definitions/common/examples/incident.json +6 -6
- data/lib/definitions/common/examples/problem.json +108 -0
- data/lib/definitions/common/schemas/incident.json +1 -0
- data/lib/definitions/common/schemas/problem.json +67 -0
- data/lib/definitions/common/schemas/user.json +1 -0
- data/lib/definitions/openapi.json +6 -3
- data/lib/definitions/paths/incidents/incidents.json +1 -1
- data/lib/definitions/paths/problems/problem_by_id.json +84 -0
- data/lib/definitions/paths/problems/problems.json +69 -0
- data/lib/resolved_schema/resolved_schema.json +1 -1
- metadata +5 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bdeef30e6c481c8f44e37d4e18207feac682d505b51736256a7ac96604d105c6
|
4
|
+
data.tar.gz: 68c9235b9579912c4ede1e0ab9d5e51fcd8b5eeecd36aab4ceb7e28b4005a781
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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/
|
106
|
-
"problems": [{ "id": "100", "href": "https://mydomain.com/problems/
|
107
|
-
"changes": [{ "id": "100", "href": "https://mydomain.com/changes/
|
108
|
-
"solutions": [{ "id": "100", "href": "https://mydomain.com/solutions/
|
109
|
-
"releases": [{ "id": "100", "href": "https://mydomain.com/releases/
|
110
|
-
"configuration_items": [{ "id": "100", "href": "https://mydomain.com/configuration_items/
|
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
|
+
}
|
@@ -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
|
+
|
@@ -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.
|
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
|
+
|