solarwinds-itsm-api-definitions 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3296b53ce6b0ba155c9aa1affd4c9cd11f3f9eb28a8ce9ed22af148aada80a17
|
|
4
|
+
data.tar.gz: bc424a8d8c84d5d94dad1bc7807adf4165db0d0f54d488d476d1329fc7109fa9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6340973191215703cedacc088f75771bfb62c488f2938e40d0c02f66265daaac9653327cbd2e9819c5cf3b50c384b46bc42c6189e3275324e1974539106b7f67
|
|
7
|
+
data.tar.gz: 6ba14865b5f999dd153141fdf6f98ad6f57ffa7dda0ee975697a26da0b87941ff7b0ce4f17de9c7b365867170524ac6ed436f85f8ef1050b8bf4af6bffd7430e
|
|
@@ -23,8 +23,9 @@
|
|
|
23
23
|
"type": "object",
|
|
24
24
|
"oneOf": [{
|
|
25
25
|
"type": "object",
|
|
26
|
+
"required": ["name"],
|
|
26
27
|
"properties": {
|
|
27
|
-
"name": { "type": "string"
|
|
28
|
+
"name": { "type": "string" }
|
|
28
29
|
}
|
|
29
30
|
},
|
|
30
31
|
{ "enum": ["nil", "", null] }]
|
|
@@ -33,8 +34,9 @@
|
|
|
33
34
|
"type": "object",
|
|
34
35
|
"oneOf": [{
|
|
35
36
|
"type": "object",
|
|
37
|
+
"required": ["email"],
|
|
36
38
|
"properties": {
|
|
37
|
-
"email": { "type": "string"
|
|
39
|
+
"email": { "type": "string" }
|
|
38
40
|
}
|
|
39
41
|
},
|
|
40
42
|
{ "enum": ["nil", "", null] }]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"openapi":"3.0.1","info":{"title":"SolarWinds ITSM API","description":"All SolarWinds ITSM API definitions","version":"0.0.
|
|
1
|
+
{"openapi":"3.0.1","info":{"title":"SolarWinds ITSM API","description":"All SolarWinds ITSM API definitions","version":"0.0.4","contact":{"name":"API Support","url":"samanage.com/support","email":"support@samanage.com"}},"servers":[{"url":"https://api.samanage.com"},{"url":"https://apieu.samanage.com"}],"paths":{"/incidents/{id}":{"get":{"operationId":"getIncidentById","description":"Get incident","parameters":[{"name":"X-Samanage-Authorization","in":"header","schema":{"type":"string"},"example":"Bearer TOKEN"},{"name":"id","in":"path","schema":{"oneOf":[{"type":"string"},{"type":"integer"}]},"required":true,"description":"Numeric ID of the object to get or update"}],"responses":{"200":{"description":"Object was returned correctly"},"404":{"description":"Not found"}}},"put":{"operationId":"updateIncidentById","description":"Update incident with specified fields","parameters":[{"name":"X-Samanage-Authorization","in":"header","schema":{"type":"string"},"example":"Bearer TOKEN"},{"name":"id","in":"path","schema":{"oneOf":[{"type":"string"},{"type":"integer"}]},"required":true,"description":"Numeric ID of the object to get or update"}],"requestBody":{"required":true,"description":"Incident fields to update","content":{"application/json":{"schema":{"type":"object","properties":{"incident":{"type":"object","properties":{"site":{"type":"object","oneOf":[{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},{"enum":["nil","",null]}]},"site_id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"department":{"type":"object","oneOf":[{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},{"enum":["nil","",null]}]},"department_id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"description":{"type":"string"},"state":{"oneOf":[{"type":"string"},{"type":"integer"}]},"assignee":{"type":"object","oneOf":[{"type":"object","required":["email"],"properties":{"email":{"type":"string"}}},{"enum":["nil","",null]}]},"assignee_id":{"oneOf":[{"type":"string"},{"type":"integer"}]}}}}},"example":{"value":"{\"incident\":{\"site\":{\"name\":\"SITE NAME\"},\"department_id\":DEPARTMENT-ID,\"description\":\"SOME DESCRIPTION\",\"state\":\"STATE NAME\",\"assignee\":{\"email\":\"EMAIL\"}}}"}},"application/xml":{"schema":{"type":"object","properties":{"incident":{"type":"object","properties":{"site":{"type":"object","oneOf":[{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},{"enum":["nil","",null]}]},"site_id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"department":{"type":"object","oneOf":[{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},{"enum":["nil","",null]}]},"department_id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"description":{"type":"string"},"state":{"oneOf":[{"type":"string"},{"type":"integer"}]},"assignee":{"type":"object","oneOf":[{"type":"object","required":["email"],"properties":{"email":{"type":"string"}}},{"enum":["nil","",null]}]},"assignee_id":{"oneOf":[{"type":"string"},{"type":"integer"}]}}}}},"example":{"value":"<incident><site><name>SITE NAME</name></site><department_id>DEPARTMENT-ID</department_id><description>SOME DESCRIPTION</description><state>STATE NAME</state><assignee><email>EMAIL</email></assignee></incident>"}}}},"responses":{"200":{"description":"Object was updated correctly"},"404":{"description":"Not found"}}}}}}
|
|
@@ -5,19 +5,20 @@ module Solarwinds
|
|
|
5
5
|
module Itsm
|
|
6
6
|
module Api
|
|
7
7
|
module Definitions
|
|
8
|
-
|
|
8
|
+
LIB_DIR = Pathname.new(File.join(__dir__, '../../..')).cleanpath.to_s
|
|
9
|
+
RESOLVED_DIR = File.join(LIB_DIR, 'resolved_schema')
|
|
9
10
|
|
|
10
11
|
def self.base_schema
|
|
11
|
-
path = '
|
|
12
|
+
path = File.join(LIB_DIR, 'definitions/openapi.json')
|
|
12
13
|
JSON.parse(File.open(path).read)
|
|
13
14
|
end
|
|
14
15
|
|
|
15
16
|
def self.resolved_schema
|
|
16
|
-
recursive_resolve(base_schema, '
|
|
17
|
+
recursive_resolve(base_schema, File.join(LIB_DIR, 'definitions'))
|
|
17
18
|
end
|
|
18
19
|
|
|
19
20
|
def self.resolved_schema_path
|
|
20
|
-
File.join(
|
|
21
|
+
File.join(RESOLVED_DIR, 'resolved_schema.json')
|
|
21
22
|
end
|
|
22
23
|
|
|
23
24
|
def self.write_resolved_schema(path = RESOLVED_DIR, name = 'resolved_schema.json')
|