livepeer 0.0.1

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.
Files changed (91) hide show
  1. checksums.yaml +7 -0
  2. data/lib/livepeer.rb +96 -0
  3. data/lib/sdk/access_control.rb +195 -0
  4. data/lib/sdk/asset.rb +248 -0
  5. data/lib/sdk/metrics.rb +158 -0
  6. data/lib/sdk/models/operations/createmultistreamtarget.rb +34 -0
  7. data/lib/sdk/models/operations/createsigningkey.rb +35 -0
  8. data/lib/sdk/models/operations/createstream.rb +34 -0
  9. data/lib/sdk/models/operations/createwebhook.rb +35 -0
  10. data/lib/sdk/models/operations/deleteasset.rb +45 -0
  11. data/lib/sdk/models/operations/deletemultistreamtarget.rb +45 -0
  12. data/lib/sdk/models/operations/deletesigningkey.rb +45 -0
  13. data/lib/sdk/models/operations/deletestream.rb +45 -0
  14. data/lib/sdk/models/operations/deletewebhook.rb +49 -0
  15. data/lib/sdk/models/operations/get_session_id_clips.rb +48 -0
  16. data/lib/sdk/models/operations/get_stream_id_clips.rb +48 -0
  17. data/lib/sdk/models/operations/getasset.rb +49 -0
  18. data/lib/sdk/models/operations/getassets.rb +34 -0
  19. data/lib/sdk/models/operations/getcreatormetrics.rb +98 -0
  20. data/lib/sdk/models/operations/getmultistreamtarget.rb +49 -0
  21. data/lib/sdk/models/operations/getmultistreamtargets.rb +34 -0
  22. data/lib/sdk/models/operations/getplaybackinfo.rb +53 -0
  23. data/lib/sdk/models/operations/getpublictotalviewsmetrics.rb +76 -0
  24. data/lib/sdk/models/operations/getrecordedsessions.rb +53 -0
  25. data/lib/sdk/models/operations/getsession.rb +49 -0
  26. data/lib/sdk/models/operations/getsessions.rb +34 -0
  27. data/lib/sdk/models/operations/getsigningkey.rb +49 -0
  28. data/lib/sdk/models/operations/getsigningkeys.rb +34 -0
  29. data/lib/sdk/models/operations/getstream.rb +49 -0
  30. data/lib/sdk/models/operations/getstreams.rb +48 -0
  31. data/lib/sdk/models/operations/gettask.rb +49 -0
  32. data/lib/sdk/models/operations/gettasks.rb +34 -0
  33. data/lib/sdk/models/operations/getusagemetrics.rb +72 -0
  34. data/lib/sdk/models/operations/getviewershipsmetrics.rb +107 -0
  35. data/lib/sdk/models/operations/getwebhook.rb +49 -0
  36. data/lib/sdk/models/operations/getwebhooks.rb +34 -0
  37. data/lib/sdk/models/operations/patch_asset_assetid_.rb +53 -0
  38. data/lib/sdk/models/operations/post_clip.rb +66 -0
  39. data/lib/sdk/models/operations/requestupload.rb +72 -0
  40. data/lib/sdk/models/operations/transcode.rb +35 -0
  41. data/lib/sdk/models/operations/updatemultistreamtarget.rb +49 -0
  42. data/lib/sdk/models/operations/updatesigningkey.rb +65 -0
  43. data/lib/sdk/models/operations/updatestream.rb +49 -0
  44. data/lib/sdk/models/operations/updatewebhook.rb +49 -0
  45. data/lib/sdk/models/operations/uploadassetviaurl.rb +66 -0
  46. data/lib/sdk/models/shared/asset.rb +312 -0
  47. data/lib/sdk/models/shared/asset_patch_payload.rb +38 -0
  48. data/lib/sdk/models/shared/attestation.rb +178 -0
  49. data/lib/sdk/models/shared/clip_payload.rb +37 -0
  50. data/lib/sdk/models/shared/encryption.rb +25 -0
  51. data/lib/sdk/models/shared/encryption_output.rb +21 -0
  52. data/lib/sdk/models/shared/error.rb +25 -0
  53. data/lib/sdk/models/shared/ffmpeg_profile.rb +71 -0
  54. data/lib/sdk/models/shared/ipfs_export_params.rb +41 -0
  55. data/lib/sdk/models/shared/ipfs_file_info.rb +31 -0
  56. data/lib/sdk/models/shared/multistream.rb +75 -0
  57. data/lib/sdk/models/shared/multistream_target.rb +36 -0
  58. data/lib/sdk/models/shared/multistream_target_input.rb +33 -0
  59. data/lib/sdk/models/shared/multistream_target_patch_payload.rb +33 -0
  60. data/lib/sdk/models/shared/new_asset_payload.rb +79 -0
  61. data/lib/sdk/models/shared/new_stream_payload.rb +44 -0
  62. data/lib/sdk/models/shared/nftmetadata.rb +24 -0
  63. data/lib/sdk/models/shared/nftmetadatatemplate.rb +23 -0
  64. data/lib/sdk/models/shared/playback_info.rb +115 -0
  65. data/lib/sdk/models/shared/playback_policy.rb +41 -0
  66. data/lib/sdk/models/shared/security.rb +25 -0
  67. data/lib/sdk/models/shared/session.rb +99 -0
  68. data/lib/sdk/models/shared/signing_key.rb +40 -0
  69. data/lib/sdk/models/shared/signing_key_response_payload.rb +43 -0
  70. data/lib/sdk/models/shared/storage.rb +28 -0
  71. data/lib/sdk/models/shared/storage_status.rb +70 -0
  72. data/lib/sdk/models/shared/stream.rb +142 -0
  73. data/lib/sdk/models/shared/stream_patch_payload.rb +41 -0
  74. data/lib/sdk/models/shared/task.rb +626 -0
  75. data/lib/sdk/models/shared/upload.rb +34 -0
  76. data/lib/sdk/models/shared/upload_output.rb +34 -0
  77. data/lib/sdk/models/shared/usage_metric.rb +38 -0
  78. data/lib/sdk/models/shared/viewership_metric.rb +97 -0
  79. data/lib/sdk/models/shared/webhook.rb +112 -0
  80. data/lib/sdk/multistream_target.rb +205 -0
  81. data/lib/sdk/playback.rb +63 -0
  82. data/lib/sdk/sdk.rb +89 -0
  83. data/lib/sdk/sdkconfiguration.rb +54 -0
  84. data/lib/sdk/session.rb +166 -0
  85. data/lib/sdk/stream.rb +290 -0
  86. data/lib/sdk/task.rb +87 -0
  87. data/lib/sdk/transcode.rb +59 -0
  88. data/lib/sdk/utils/metadata_fields.rb +154 -0
  89. data/lib/sdk/utils/utils.rb +774 -0
  90. data/lib/sdk/webhook.rb +192 -0
  91. metadata +260 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 19a41c70f8968e649a5e4d9117a08287899e24097c4e2296424810b127a0e6a6
4
+ data.tar.gz: 7ba2e750d2001df8366bc8c56bcff2e730e9e71876248bb04aaa081fe761cc7c
5
+ SHA512:
6
+ metadata.gz: 92328f764ef361bcf27d758568b51620dced1f65107bc09c66fe4101359403e33a428b83c22723d7d51d10f90ec337a378d2ba8486a3bd54d2dfb3fd202a3b40
7
+ data.tar.gz: 880b98e28926a32d4b5676e1fb4120dda3eaa296c5662f9d14f4e1f87f7976592b83ab4765944a0e5e23d18f95bb72bf035e86249acbc5ee869ade5e67ca105f
data/lib/livepeer.rb ADDED
@@ -0,0 +1,96 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require_relative 'sdk/utils/utils'
7
+ require_relative 'sdk/utils/metadata_fields'
8
+ require_relative 'sdk/sdk'
9
+ require_relative 'sdk/models/shared/stream'
10
+ require_relative 'sdk/models/shared/ffmpeg_profile'
11
+ require_relative 'sdk/models/shared/playback_policy'
12
+ require_relative 'sdk/models/shared/new_stream_payload'
13
+ require_relative 'sdk/models/shared/multistream'
14
+ require_relative 'sdk/models/shared/stream_patch_payload'
15
+ require_relative 'sdk/models/shared/asset'
16
+ require_relative 'sdk/models/shared/storage_status'
17
+ require_relative 'sdk/models/shared/ipfs_file_info'
18
+ require_relative 'sdk/models/shared/clip_payload'
19
+ require_relative 'sdk/models/shared/multistream_target'
20
+ require_relative 'sdk/models/shared/multistream_target_input'
21
+ require_relative 'sdk/models/shared/multistream_target_patch_payload'
22
+ require_relative 'sdk/models/shared/webhook'
23
+ require_relative 'sdk/models/shared/new_asset_payload'
24
+ require_relative 'sdk/models/shared/asset_patch_payload'
25
+ require_relative 'sdk/models/shared/storage'
26
+ require_relative 'sdk/models/shared/viewership_metric'
27
+ require_relative 'sdk/models/shared/usage_metric'
28
+ require_relative 'sdk/models/shared/session'
29
+ require_relative 'sdk/models/shared/signing_key'
30
+ require_relative 'sdk/models/shared/signing_key_response_payload'
31
+ require_relative 'sdk/models/shared/ipfs_export_params'
32
+ require_relative 'sdk/models/shared/nftmetadata'
33
+ require_relative 'sdk/models/shared/nftmetadatatemplate'
34
+ require_relative 'sdk/models/shared/upload_output'
35
+ require_relative 'sdk/models/shared/encryption_output'
36
+ require_relative 'sdk/models/shared/task'
37
+ require_relative 'sdk/models/shared/upload'
38
+ require_relative 'sdk/models/shared/encryption'
39
+ require_relative 'sdk/models/shared/error'
40
+ require_relative 'sdk/models/shared/playback_info'
41
+ require_relative 'sdk/models/shared/attestation'
42
+ require_relative 'sdk/models/shared/security'
43
+ require_relative 'sdk/models/operations/createmultistreamtarget'
44
+ require_relative 'sdk/models/operations/createsigningkey'
45
+ require_relative 'sdk/models/operations/createstream'
46
+ require_relative 'sdk/models/operations/createwebhook'
47
+ require_relative 'sdk/models/operations/deleteasset'
48
+ require_relative 'sdk/models/operations/deletemultistreamtarget'
49
+ require_relative 'sdk/models/operations/deletesigningkey'
50
+ require_relative 'sdk/models/operations/deletestream'
51
+ require_relative 'sdk/models/operations/deletewebhook'
52
+ require_relative 'sdk/models/operations/get_session_id_clips'
53
+ require_relative 'sdk/models/operations/get_stream_id_clips'
54
+ require_relative 'sdk/models/operations/getasset'
55
+ require_relative 'sdk/models/operations/getassets'
56
+ require_relative 'sdk/models/operations/getcreatormetrics'
57
+ require_relative 'sdk/models/operations/getmultistreamtarget'
58
+ require_relative 'sdk/models/operations/getmultistreamtargets'
59
+ require_relative 'sdk/models/operations/getplaybackinfo'
60
+ require_relative 'sdk/models/operations/getpublictotalviewsmetrics'
61
+ require_relative 'sdk/models/operations/getrecordedsessions'
62
+ require_relative 'sdk/models/operations/getsession'
63
+ require_relative 'sdk/models/operations/getsessions'
64
+ require_relative 'sdk/models/operations/getsigningkey'
65
+ require_relative 'sdk/models/operations/getsigningkeys'
66
+ require_relative 'sdk/models/operations/getstream'
67
+ require_relative 'sdk/models/operations/getstreams'
68
+ require_relative 'sdk/models/operations/gettask'
69
+ require_relative 'sdk/models/operations/gettasks'
70
+ require_relative 'sdk/models/operations/getusagemetrics'
71
+ require_relative 'sdk/models/operations/getviewershipsmetrics'
72
+ require_relative 'sdk/models/operations/getwebhook'
73
+ require_relative 'sdk/models/operations/getwebhooks'
74
+ require_relative 'sdk/models/operations/patch_asset_assetid_'
75
+ require_relative 'sdk/models/operations/post_clip'
76
+ require_relative 'sdk/models/operations/requestupload'
77
+ require_relative 'sdk/models/operations/transcode'
78
+ require_relative 'sdk/models/operations/updatemultistreamtarget'
79
+ require_relative 'sdk/models/operations/updatesigningkey'
80
+ require_relative 'sdk/models/operations/updatestream'
81
+ require_relative 'sdk/models/operations/updatewebhook'
82
+ require_relative 'sdk/models/operations/uploadassetviaurl'
83
+ require_relative 'sdk/sdkconfiguration'
84
+ require_relative 'sdk/stream'
85
+ require_relative 'sdk/multistream_target'
86
+ require_relative 'sdk/webhook'
87
+ require_relative 'sdk/asset'
88
+ require_relative 'sdk/metrics'
89
+ require_relative 'sdk/session'
90
+ require_relative 'sdk/access_control'
91
+ require_relative 'sdk/task'
92
+ require_relative 'sdk/transcode'
93
+ require_relative 'sdk/playback'
94
+
95
+ module Livepeer
96
+ end
@@ -0,0 +1,195 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'faraday'
7
+ require 'faraday/multipart'
8
+ require 'sorbet-runtime'
9
+
10
+ module Livepeer
11
+ extend T::Sig
12
+ class AccessControl
13
+
14
+ extend T::Sig
15
+ sig { params(sdk_config: SDKConfiguration).void }
16
+ def initialize(sdk_config)
17
+ @sdk_configuration = sdk_config
18
+ end
19
+
20
+ sig { returns(Utils::FieldAugmented) }
21
+ def get_signing_keys
22
+ # get_signing_keys - Retrieves signing keys
23
+ url, params = @sdk_configuration.get_server_details
24
+ base_url = Utils.template_url(url, params)
25
+ url = "#{base_url}/access-control/signing-key"
26
+ headers = {}
27
+ headers['Accept'] = 'application/json'
28
+ headers['user-agent'] = @sdk_configuration.user_agent
29
+
30
+ r = @sdk_configuration.client.get(url) do |req|
31
+ req.headers = headers
32
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
33
+ end
34
+
35
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
36
+
37
+ res = Operations::GetSigningKeysResponse.new(
38
+ status_code: r.status, content_type: content_type, raw_response: r
39
+ )
40
+ if r.status == 200
41
+ if Utils.match_content_type(content_type, 'application/json')
42
+ out = Utils.unmarshal_complex(r.env.response_body, T::Array[Shared::SigningKey])
43
+ res.data = out
44
+ end
45
+ end
46
+ res
47
+ end
48
+
49
+ sig { returns(Utils::FieldAugmented) }
50
+ def create_signing_key
51
+ # create_signing_key - Create a signing key
52
+ url, params = @sdk_configuration.get_server_details
53
+ base_url = Utils.template_url(url, params)
54
+ url = "#{base_url}/access-control/signing-key"
55
+ headers = {}
56
+ headers['Accept'] = 'application/json'
57
+ headers['user-agent'] = @sdk_configuration.user_agent
58
+
59
+ r = @sdk_configuration.client.post(url) do |req|
60
+ req.headers = headers
61
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
62
+ end
63
+
64
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
65
+
66
+ res = Operations::CreateSigningKeyResponse.new(
67
+ status_code: r.status, content_type: content_type, raw_response: r
68
+ )
69
+ if r.status == 200
70
+ if Utils.match_content_type(content_type, 'application/json')
71
+ out = Utils.unmarshal_complex(r.env.response_body, Shared::SigningKeyResponsePayload)
72
+ res.signing_key_response_payload = out
73
+ end
74
+ end
75
+ res
76
+ end
77
+
78
+ sig { params(key_id: String).returns(Utils::FieldAugmented) }
79
+ def delete_signing_key(key_id)
80
+ # delete_signing_key - Delete Signing Key
81
+ request = Operations::DeleteSigningKeyRequest.new(
82
+
83
+ key_id: key_id
84
+ )
85
+ url, params = @sdk_configuration.get_server_details
86
+ base_url = Utils.template_url(url, params)
87
+ url = Utils.generate_url(
88
+ Operations::DeleteSigningKeyRequest,
89
+ base_url,
90
+ '/access-control/signing-key/{keyId}',
91
+ request
92
+ )
93
+ headers = {}
94
+ headers['Accept'] = '*/*'
95
+ headers['user-agent'] = @sdk_configuration.user_agent
96
+
97
+ r = @sdk_configuration.client.delete(url) do |req|
98
+ req.headers = headers
99
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
100
+ end
101
+
102
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
103
+
104
+ res = Operations::DeleteSigningKeyResponse.new(
105
+ status_code: r.status, content_type: content_type, raw_response: r
106
+ )
107
+ if r.status == 204
108
+ end
109
+ res
110
+ end
111
+
112
+ sig { params(key_id: String).returns(Utils::FieldAugmented) }
113
+ def get_signing_key(key_id)
114
+ # get_signing_key - Retrieves a signing key
115
+ request = Operations::GetSigningKeyRequest.new(
116
+
117
+ key_id: key_id
118
+ )
119
+ url, params = @sdk_configuration.get_server_details
120
+ base_url = Utils.template_url(url, params)
121
+ url = Utils.generate_url(
122
+ Operations::GetSigningKeyRequest,
123
+ base_url,
124
+ '/access-control/signing-key/{keyId}',
125
+ request
126
+ )
127
+ headers = {}
128
+ headers['Accept'] = 'application/json'
129
+ headers['user-agent'] = @sdk_configuration.user_agent
130
+
131
+ r = @sdk_configuration.client.get(url) do |req|
132
+ req.headers = headers
133
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
134
+ end
135
+
136
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
137
+
138
+ res = Operations::GetSigningKeyResponse.new(
139
+ status_code: r.status, content_type: content_type, raw_response: r
140
+ )
141
+ if r.status == 200
142
+ if Utils.match_content_type(content_type, 'application/json')
143
+ out = Utils.unmarshal_complex(r.env.response_body, Shared::SigningKey)
144
+ res.signing_key = out
145
+ end
146
+ end
147
+ res
148
+ end
149
+
150
+ sig { params(key_id: String, request_body: Operations::UpdateSigningKeyRequestBody).returns(Utils::FieldAugmented) }
151
+ def update_signing_key(key_id, request_body)
152
+ # update_signing_key - Update a signing key
153
+ request = Operations::UpdateSigningKeyRequest.new(
154
+
155
+ key_id: key_id,
156
+ request_body: request_body
157
+ )
158
+ url, params = @sdk_configuration.get_server_details
159
+ base_url = Utils.template_url(url, params)
160
+ url = Utils.generate_url(
161
+ Operations::UpdateSigningKeyRequest,
162
+ base_url,
163
+ '/access-control/signing-key/{keyId}',
164
+ request
165
+ )
166
+ headers = {}
167
+ req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :json)
168
+ headers['content-type'] = req_content_type
169
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
170
+ headers['Accept'] = '*/*'
171
+ headers['user-agent'] = @sdk_configuration.user_agent
172
+
173
+ r = @sdk_configuration.client.patch(url) do |req|
174
+ req.headers = headers
175
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
176
+ if form
177
+ req.body = Utils.encode_form(form)
178
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
179
+ req.body = URI.encode_www_form(data)
180
+ else
181
+ req.body = data
182
+ end
183
+ end
184
+
185
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
186
+
187
+ res = Operations::UpdateSigningKeyResponse.new(
188
+ status_code: r.status, content_type: content_type, raw_response: r
189
+ )
190
+ if r.status == 204
191
+ end
192
+ res
193
+ end
194
+ end
195
+ end
data/lib/sdk/asset.rb ADDED
@@ -0,0 +1,248 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ require 'faraday'
7
+ require 'faraday/multipart'
8
+ require 'sorbet-runtime'
9
+
10
+ module Livepeer
11
+ extend T::Sig
12
+ class Asset
13
+
14
+ extend T::Sig
15
+ sig { params(sdk_config: SDKConfiguration).void }
16
+ def initialize(sdk_config)
17
+ @sdk_configuration = sdk_config
18
+ end
19
+
20
+ sig { returns(Utils::FieldAugmented) }
21
+ def get_all
22
+ # get_all - Retrieve assets
23
+ url, params = @sdk_configuration.get_server_details
24
+ base_url = Utils.template_url(url, params)
25
+ url = "#{base_url}/asset"
26
+ headers = {}
27
+ headers['Accept'] = 'application/json'
28
+ headers['user-agent'] = @sdk_configuration.user_agent
29
+
30
+ r = @sdk_configuration.client.get(url) do |req|
31
+ req.headers = headers
32
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
33
+ end
34
+
35
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
36
+
37
+ res = Operations::GetAssetsResponse.new(
38
+ status_code: r.status, content_type: content_type, raw_response: r
39
+ )
40
+ if r.status == 200
41
+ if Utils.match_content_type(content_type, 'application/json')
42
+ out = Utils.unmarshal_complex(r.env.response_body, T::Array[Shared::Asset])
43
+ res.data = out
44
+ end
45
+ end
46
+ res
47
+ end
48
+
49
+ sig { params(request: Shared::NewAssetPayload).returns(Utils::FieldAugmented) }
50
+ def create(request)
51
+ # create - Upload an asset
52
+ url, params = @sdk_configuration.get_server_details
53
+ base_url = Utils.template_url(url, params)
54
+ url = "#{base_url}/asset/request-upload"
55
+ headers = {}
56
+ req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
57
+ headers['content-type'] = req_content_type
58
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
59
+ headers['Accept'] = 'application/json'
60
+ headers['user-agent'] = @sdk_configuration.user_agent
61
+
62
+ r = @sdk_configuration.client.post(url) do |req|
63
+ req.headers = headers
64
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
65
+ if form
66
+ req.body = Utils.encode_form(form)
67
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
68
+ req.body = URI.encode_www_form(data)
69
+ else
70
+ req.body = data
71
+ end
72
+ end
73
+
74
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
75
+
76
+ res = Operations::RequestUploadResponse.new(
77
+ status_code: r.status, content_type: content_type, raw_response: r
78
+ )
79
+ if r.status == 200
80
+ if Utils.match_content_type(content_type, 'application/json')
81
+ out = Utils.unmarshal_complex(r.env.response_body, Operations::RequestUploadData)
82
+ res.data = out
83
+ end
84
+ end
85
+ res
86
+ end
87
+
88
+ sig { params(request: Shared::NewAssetPayload).returns(Utils::FieldAugmented) }
89
+ def create_via_url(request)
90
+ # create_via_url - Upload asset via URL
91
+ url, params = @sdk_configuration.get_server_details
92
+ base_url = Utils.template_url(url, params)
93
+ url = "#{base_url}/asset/upload/url"
94
+ headers = {}
95
+ req_content_type, data, form = Utils.serialize_request_body(request, :request, :json)
96
+ headers['content-type'] = req_content_type
97
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
98
+ headers['Accept'] = 'application/json'
99
+ headers['user-agent'] = @sdk_configuration.user_agent
100
+
101
+ r = @sdk_configuration.client.post(url) do |req|
102
+ req.headers = headers
103
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
104
+ if form
105
+ req.body = Utils.encode_form(form)
106
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
107
+ req.body = URI.encode_www_form(data)
108
+ else
109
+ req.body = data
110
+ end
111
+ end
112
+
113
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
114
+
115
+ res = Operations::UploadAssetViaURLResponse.new(
116
+ status_code: r.status, content_type: content_type, raw_response: r
117
+ )
118
+ if r.status == 200
119
+ if Utils.match_content_type(content_type, 'application/json')
120
+ out = Utils.unmarshal_complex(r.env.response_body, Operations::UploadAssetViaURLData)
121
+ res.data = out
122
+ end
123
+ end
124
+ res
125
+ end
126
+
127
+ sig { params(asset_id: String).returns(Utils::FieldAugmented) }
128
+ def delete(asset_id)
129
+ # delete - Delete an asset
130
+ request = Operations::DeleteAssetRequest.new(
131
+
132
+ asset_id: asset_id
133
+ )
134
+ url, params = @sdk_configuration.get_server_details
135
+ base_url = Utils.template_url(url, params)
136
+ url = Utils.generate_url(
137
+ Operations::DeleteAssetRequest,
138
+ base_url,
139
+ '/asset/{assetId}',
140
+ request
141
+ )
142
+ headers = {}
143
+ headers['Accept'] = '*/*'
144
+ headers['user-agent'] = @sdk_configuration.user_agent
145
+
146
+ r = @sdk_configuration.client.delete(url) do |req|
147
+ req.headers = headers
148
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
149
+ end
150
+
151
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
152
+
153
+ res = Operations::DeleteAssetResponse.new(
154
+ status_code: r.status, content_type: content_type, raw_response: r
155
+ )
156
+ if r.status == 204
157
+ end
158
+ res
159
+ end
160
+
161
+ sig { params(asset_id: String).returns(Utils::FieldAugmented) }
162
+ def get(asset_id)
163
+ # get - Retrieves an asset
164
+ request = Operations::GetAssetRequest.new(
165
+
166
+ asset_id: asset_id
167
+ )
168
+ url, params = @sdk_configuration.get_server_details
169
+ base_url = Utils.template_url(url, params)
170
+ url = Utils.generate_url(
171
+ Operations::GetAssetRequest,
172
+ base_url,
173
+ '/asset/{assetId}',
174
+ request
175
+ )
176
+ headers = {}
177
+ headers['Accept'] = 'application/json'
178
+ headers['user-agent'] = @sdk_configuration.user_agent
179
+
180
+ r = @sdk_configuration.client.get(url) do |req|
181
+ req.headers = headers
182
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
183
+ end
184
+
185
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
186
+
187
+ res = Operations::GetAssetResponse.new(
188
+ status_code: r.status, content_type: content_type, raw_response: r
189
+ )
190
+ if r.status == 200
191
+ if Utils.match_content_type(content_type, 'application/json')
192
+ out = Utils.unmarshal_complex(r.env.response_body, Shared::Asset)
193
+ res.asset = out
194
+ end
195
+ end
196
+ res
197
+ end
198
+
199
+ sig { params(asset_id: String, asset_patch_payload: Shared::AssetPatchPayload).returns(Utils::FieldAugmented) }
200
+ def update(asset_id, asset_patch_payload)
201
+ # update - Update an asset
202
+ request = Operations::PatchAssetAssetIdRequest.new(
203
+
204
+ asset_id: asset_id,
205
+ asset_patch_payload: asset_patch_payload
206
+ )
207
+ url, params = @sdk_configuration.get_server_details
208
+ base_url = Utils.template_url(url, params)
209
+ url = Utils.generate_url(
210
+ Operations::PatchAssetAssetIdRequest,
211
+ base_url,
212
+ '/asset/{assetId}',
213
+ request
214
+ )
215
+ headers = {}
216
+ req_content_type, data, form = Utils.serialize_request_body(request, :asset_patch_payload, :json)
217
+ headers['content-type'] = req_content_type
218
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
219
+ headers['Accept'] = 'application/json'
220
+ headers['user-agent'] = @sdk_configuration.user_agent
221
+
222
+ r = @sdk_configuration.client.patch(url) do |req|
223
+ req.headers = headers
224
+ Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
225
+ if form
226
+ req.body = Utils.encode_form(form)
227
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
228
+ req.body = URI.encode_www_form(data)
229
+ else
230
+ req.body = data
231
+ end
232
+ end
233
+
234
+ content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
235
+
236
+ res = Operations::PatchAssetAssetIdResponse.new(
237
+ status_code: r.status, content_type: content_type, raw_response: r
238
+ )
239
+ if r.status == 200
240
+ if Utils.match_content_type(content_type, 'application/json')
241
+ out = Utils.unmarshal_complex(r.env.response_body, Shared::Asset)
242
+ res.asset = out
243
+ end
244
+ end
245
+ res
246
+ end
247
+ end
248
+ end