messagemedia_messages_sdk 1.1.0 → 2.0.0

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 (50) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +240 -55
  4. data/lib/message_media_messages.rb +32 -18
  5. data/lib/message_media_messages/api_helper.rb +76 -9
  6. data/lib/message_media_messages/configuration.rb +8 -6
  7. data/lib/message_media_messages/controllers/base_controller.rb +13 -29
  8. data/lib/message_media_messages/controllers/delivery_reports_controller.rb +55 -100
  9. data/lib/message_media_messages/controllers/messages_controller.rb +162 -199
  10. data/lib/message_media_messages/controllers/replies_controller.rb +79 -123
  11. data/lib/message_media_messages/exceptions/api_exception.rb +5 -3
  12. data/lib/message_media_messages/exceptions/send_messages400_response_exception.rb +29 -0
  13. data/lib/message_media_messages/http/auth/auth_manager.rb +90 -0
  14. data/lib/message_media_messages/http/faraday_client.rb +10 -3
  15. data/lib/message_media_messages/http/http_call_back.rb +5 -3
  16. data/lib/message_media_messages/http/http_client.rb +29 -18
  17. data/lib/message_media_messages/http/http_context.rb +5 -3
  18. data/lib/message_media_messages/http/http_method_enum.rb +4 -2
  19. data/lib/message_media_messages/http/http_request.rb +13 -11
  20. data/lib/message_media_messages/http/http_response.rb +6 -4
  21. data/lib/message_media_messages/message_media_messages_client.rb +9 -6
  22. data/lib/message_media_messages/models/base_model.rb +4 -1
  23. data/lib/message_media_messages/models/cancel_scheduled_message_request.rb +7 -7
  24. data/lib/message_media_messages/models/check_delivery_reports_response.rb +15 -8
  25. data/lib/message_media_messages/models/check_replies_response.rb +15 -8
  26. data/lib/message_media_messages/models/confirm_delivery_reports_as_received_request.rb +5 -5
  27. data/lib/message_media_messages/models/{confirm_delivery_reports_as_received_request_11.rb → confirm_delivery_reports_as_received_request1.rb} +8 -8
  28. data/lib/message_media_messages/models/confirm_replies_as_received_request.rb +5 -5
  29. data/lib/message_media_messages/models/{confirm_replies_as_received_request_8.rb → confirm_replies_as_received_request1.rb} +8 -8
  30. data/lib/message_media_messages/models/delivery_report.rb +135 -0
  31. data/lib/message_media_messages/models/format1_enum.rb +20 -0
  32. data/lib/message_media_messages/models/format_enum.rb +20 -0
  33. data/lib/message_media_messages/models/get_message_status_response.rb +145 -0
  34. data/lib/message_media_messages/models/message.rb +166 -0
  35. data/lib/message_media_messages/models/reply.rb +112 -0
  36. data/lib/message_media_messages/models/send_messages_request.rb +14 -7
  37. data/lib/message_media_messages/models/send_messages_response.rb +14 -7
  38. data/lib/message_media_messages/models/source_number_type_enum.rb +21 -0
  39. data/lib/message_media_messages/models/status2_enum.rb +32 -0
  40. data/lib/message_media_messages/models/status_enum.rb +44 -0
  41. data/lib/message_media_messages/models/vendor_account_id.rb +44 -0
  42. metadata +18 -21
  43. data/lib/message_media_messages/http/auth/basic_auth.rb +0 -20
  44. data/lib/message_media_messages/http/auth/hmac_auth.rb +0 -54
  45. data/test/controllers/controller_test_base.rb +0 -33
  46. data/test/controllers/test_delivery_reports_controller.rb +0 -164
  47. data/test/controllers/test_messages_controller.rb +0 -166
  48. data/test/controllers/test_replies_controller.rb +0 -164
  49. data/test/http_response_catcher.rb +0 -16
  50. data/test/test_helper.rb +0 -79
@@ -1,9 +1,10 @@
1
- # This file was automatically generated for MessageMedia by APIMATIC v2.0
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
2
4
  # ( https://apimatic.io ).
3
5
 
4
6
  module MessageMediaMessages
5
7
  # RepliesController
6
- # noinspection RubyResolve,RubyInstanceMethodNamingConvention,RubyStringKeysInHashInspection
7
8
  class RepliesController < BaseController
8
9
  @instance = RepliesController.new
9
10
 
@@ -15,87 +16,6 @@ module MessageMediaMessages
15
16
  self.class.instance
16
17
  end
17
18
 
18
- # Mark a reply message as confirmed so it is no longer returned in check
19
- # replies requests.
20
- # The confirm replies endpoint is intended to be used in conjunction with
21
- # the check replies endpoint
22
- # to allow for robust processing of reply messages. Once one or more reply
23
- # messages have been processed
24
- # they can then be confirmed using the confirm replies endpoint so they are
25
- # no longer returned in
26
- # subsequent check replies requests.
27
- # The confirm replies endpoint takes a list of reply IDs as follows:
28
- # ```json
29
- # {
30
- # "reply_ids": [
31
- # "011dcead-6988-4ad6-a1c7-6b6c68ea628d",
32
- # "3487b3fa-6586-4979-a233-2d1b095c7718",
33
- # "ba28e94b-c83d-4759-98e7-ff9c7edb87a1"
34
- # ]
35
- # }
36
- # ```
37
- # Up to 100 replies can be confirmed in a single confirm replies request.
38
- # @param [ConfirmRepliesAsReceivedRequest] body Required parameter:
39
- # Example:
40
- # @param [Object] account_header_value The account id to pass to the API
41
- # @return Mixed response from the API call
42
- def create_confirm_replies_as_received(body, account_header_value=nil)
43
- begin
44
- @logger.info("create_confirm_replies_as_received called.")
45
-
46
- request_url = '/v1/replies/confirmed'
47
-
48
- # Prepare query url.
49
- @logger.info("Preparing query URL for create_confirm_replies_as_received.")
50
- query_builder = Configuration.base_uri.dup
51
- query_builder << request_url
52
- query_url = APIHelper.clean_url query_builder
53
-
54
- # Prepare headers.
55
- @logger.info("Preparing headers for create_confirm_replies_as_received.")
56
- headers = {
57
- 'accept' => 'application/json',
58
- 'content-type' => 'application/json; charset=utf-8'
59
- }
60
-
61
- add_account_header(headers, account_header_value)
62
-
63
- json_body = body.to_json
64
-
65
- # Prepare and execute HttpRequest.
66
- @logger.info('Preparing and executing HttpRequest for create_confirm_replies_as_received.')
67
- request = @http_client.post(
68
- query_url,
69
- headers: headers,
70
- parameters: json_body
71
- )
72
-
73
- apply_authentication(request, request_url, json_body)
74
-
75
- context = execute_request(request, name: 'create_confirm_replies_as_received')
76
-
77
- # Validate response against endpoint and global error codes.
78
- @logger.info("Validating response for create_confirm_replies_as_received.")
79
- if context.response.status_code == 400
80
- raise APIException.new(
81
- '',
82
- context
83
- )
84
- end
85
- validate_response(context)
86
-
87
- # Return appropriate response type.
88
- @logger.info("Returning response for create_confirm_replies_as_received.")
89
- return APIHelper.json_deserialize(context.response.raw_body) unless
90
- context.response.raw_body.nil? ||
91
- context.response.raw_body.to_s.strip.empty?
92
-
93
- rescue Exception => e
94
- @logger.error(e)
95
- raise e
96
- end
97
- end
98
-
99
19
  # Check for any replies that have been received.
100
20
  # Replies are messages that have been sent from a handset in response to a
101
21
  # message sent by an
@@ -178,48 +98,84 @@ module MessageMediaMessages
178
98
  # *Note: It is recommended to use the Webhooks feature to receive reply
179
99
  # messages rather than polling
180
100
  # the check replies endpoint.*
181
- # @param [Object] account_header_value The account id to pass to the API
182
101
  # @return CheckRepliesResponse response from the API call
183
- def get_check_replies(account_header_value=nil)
184
- begin
185
- @logger.info("get_check_replies called.")
186
-
187
- request_url = '/v1/replies'
188
- # Prepare query url.
189
- @logger.info("Preparing query URL for get_check_replies.")
190
- query_builder = Configuration.base_uri.dup
191
- query_builder << request_url
192
- query_url = APIHelper.clean_url query_builder
193
-
194
- # Prepare headers.
195
- @logger.info("Preparing headers for get_check_replies.")
196
- headers = {
197
- 'accept' => 'application/json'
198
- }
199
-
200
- add_account_header(headers, account_header_value)
201
-
202
- # Prepare and execute HttpRequest.
203
- @logger.info('Preparing and executing HttpRequest for get_check_replies.')
204
- request = @http_client.get(
205
- query_url,
206
- headers: headers
207
- )
208
-
209
- apply_authentication(request, request_url)
210
-
211
- context = execute_request(request, name: 'get_check_replies')
212
- validate_response(context)
213
-
214
- # Return appropriate response type.
215
- @logger.info("Returning response for get_check_replies.")
216
- decoded = APIHelper.json_deserialize(context.response.raw_body)
217
- CheckRepliesResponse.from_hash(decoded)
102
+ def check_replies
103
+ # Prepare query url.
104
+ _path_url = '/v1/replies'
105
+ _query_builder = Configuration.base_uri.dup
106
+ _query_builder << _path_url
107
+ _query_url = APIHelper.clean_url _query_builder
108
+
109
+ # Prepare headers.
110
+ _headers = {
111
+ 'accept' => 'application/json'
112
+ }
113
+
114
+ # Prepare and execute HttpRequest.
115
+ _request = @http_client.get(
116
+ _query_url,
117
+ headers: _headers
118
+ )
119
+ AuthManager.apply(_request, _path_url)
120
+ _context = execute_request(_request)
121
+ validate_response(_context)
122
+
123
+ # Return appropriate response type.
124
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
125
+ CheckRepliesResponse.from_hash(decoded)
126
+ end
218
127
 
219
- rescue Exception => e
220
- @logger.error(e)
221
- raise e
222
- end
128
+ # Mark a reply message as confirmed so it is no longer returned in check
129
+ # replies requests.
130
+ # The confirm replies endpoint is intended to be used in conjunction with
131
+ # the check replies endpoint
132
+ # to allow for robust processing of reply messages. Once one or more reply
133
+ # messages have been processed
134
+ # they can then be confirmed using the confirm replies endpoint so they are
135
+ # no longer returned in
136
+ # subsequent check replies requests.
137
+ # The confirm replies endpoint takes a list of reply IDs as follows:
138
+ # ```json
139
+ # {
140
+ # "reply_ids": [
141
+ # "011dcead-6988-4ad6-a1c7-6b6c68ea628d",
142
+ # "3487b3fa-6586-4979-a233-2d1b095c7718",
143
+ # "ba28e94b-c83d-4759-98e7-ff9c7edb87a1"
144
+ # ]
145
+ # }
146
+ # ```
147
+ # Up to 100 replies can be confirmed in a single confirm replies request.
148
+ # @param [ConfirmRepliesAsReceivedRequest] body Required parameter:
149
+ # Example:
150
+ # @return Mixed response from the API call
151
+ def confirm_replies_as_received(body)
152
+ # Prepare query url.
153
+ _path_url = '/v1/replies/confirmed'
154
+ _query_builder = Configuration.base_uri.dup
155
+ _query_builder << _path_url
156
+ _query_url = APIHelper.clean_url _query_builder
157
+
158
+ # Prepare headers.
159
+ _headers = {
160
+ 'accept' => 'application/json',
161
+ 'content-type' => 'application/json; charset=utf-8'
162
+ }
163
+
164
+ # Prepare and execute HttpRequest.
165
+ _request = @http_client.post(
166
+ _query_url,
167
+ headers: _headers,
168
+ parameters: body.to_json
169
+ )
170
+ AuthManager.apply(_request, _path_url, body.to_json)
171
+ _context = execute_request(_request)
172
+ validate_response(_context)
173
+
174
+ # Return appropriate response type.
175
+ decoded = APIHelper.json_deserialize(_context.response.raw_body) unless
176
+ _context.response.raw_body.nil? ||
177
+ _context.response.raw_body.to_s.strip.empty?
178
+ decoded
223
179
  end
224
180
  end
225
181
  end
@@ -1,4 +1,6 @@
1
- # This file was automatically generated for MessageMedia by APIMATIC v2.0
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
2
4
  # ( https://apimatic.io ).
3
5
 
4
6
  module MessageMediaMessages
@@ -7,8 +9,8 @@ module MessageMediaMessages
7
9
  attr_reader :context, :response_code
8
10
 
9
11
  # The constructor.
10
- # @param [String] reason The reason for raising an exception.
11
- # @param [HttpContext] context The HttpContext of the API call.
12
+ # @param [String] The reason for raising an exception.
13
+ # @param [HttpContext] The HttpContext of the API call.
12
14
  def initialize(reason, context)
13
15
  super(reason)
14
16
  @context = context
@@ -0,0 +1,29 @@
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module MessageMediaMessages
7
+ # Send messages 400 response class.
8
+ class SendMessages400ResponseException < APIException
9
+ # TODO: Write general description for this method
10
+ # @return [String]
11
+ attr_accessor :message
12
+
13
+ # The constructor.
14
+ # @param [String] The reason for raising an exception.
15
+ # @param [HttpContext] The HttpContext of the API call.
16
+ def initialize(reason, context)
17
+ super(reason, context)
18
+ hash = APIHelper.json_deserialize(@context.response.raw_body)
19
+ unbox(hash)
20
+ end
21
+
22
+ # Populates this object by extracting properties from a hash.
23
+ # @param [Hash] The deserialized response sent by the server in the
24
+ # response body.
25
+ def unbox(hash)
26
+ @message = hash['message']
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,90 @@
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ require 'base64'
7
+
8
+ module MessageMediaMessages
9
+ # Utility class for basic authorization.
10
+ class AuthManager
11
+ # Add authentication to the request.
12
+ # @param [HttpRequest] The HttpRequest object to which authentication will
13
+ # be added.
14
+ # @param [String] The url of the request.
15
+ # @param [String] The body of the request. None for GET requests.
16
+ def self.apply(http_request, url, body = nil)
17
+ if Configuration.hmac_auth_user_name.nil? ||
18
+ Configuration.hmac_auth_password.nil?
19
+ AuthManager.apply_basic_auth(http_request)
20
+ else
21
+ AuthManager.apply_hmac_auth(http_request, url, body)
22
+ end
23
+ end
24
+
25
+ # Add basic authentication to the request.
26
+ # @param [HttpRequest] The HttpRequest object to which authentication will
27
+ # be added.
28
+ def self.apply_basic_auth(http_request)
29
+ username = Configuration.basic_auth_user_name
30
+ password = Configuration.basic_auth_password
31
+ value = Base64.strict_encode64("#{username}:#{password}")
32
+ header_value = "Basic #{value}"
33
+ http_request.headers['Authorization'] = header_value
34
+ end
35
+
36
+ # Add hmac authentication to the request.
37
+ # @param [HttpRequest] The HttpRequest object to which authentication will
38
+ # be added.
39
+ # @param [String] The url of the request.
40
+ # @param [String] The body of the request. None for GET requests.
41
+ def self.apply_hmac_auth(http_request, url, body)
42
+ username = Configuration.hmac_auth_user_name
43
+
44
+ content_signature = ''
45
+ content_header = ''
46
+
47
+ now = Time.now.utc.strftime('%a, %d %b %Y %H:%M:%S GMT')
48
+
49
+ date_header = now
50
+
51
+ request_type = 'GET'
52
+
53
+ unless body.nil?
54
+ request_type = 'POST'
55
+
56
+ md5 = Digest::MD5.new
57
+ md5.update(body)
58
+
59
+ content_hash = md5.hexdigest
60
+ content_signature = "x-Content-MD5: #{content_hash}\n"
61
+ content_header = 'x-Content-MD5 '
62
+ http_request.headers['x-Content-MD5'] = content_hash
63
+ end
64
+
65
+ http_request.headers['date'] = date_header
66
+
67
+ hmac_signature = AuthManager.create_signature(date_header,
68
+ content_signature, url,
69
+ request_type)
70
+
71
+ joined = "username=\"#{username}\", algorithm=\"hmac-sha1\", " \
72
+ "headers=\"date #{content_header}request-line\", " \
73
+ "signature=\"#{hmac_signature}\""
74
+ header_value = "hmac #{joined}"
75
+ http_request.headers['Authorization'] = header_value
76
+ end
77
+
78
+ def self.create_signature(date, content_signature, url, request_type)
79
+ signing_string = "date: #{date}\n#{content_signature}#{request_type} " \
80
+ "#{url} HTTP/1.1"
81
+ hmac = OpenSSL::HMAC.digest(OpenSSL::Digest.new('sha1'),
82
+ Configuration.hmac_auth_password.encode(
83
+ Encoding::UTF_8
84
+ ),
85
+ signing_string.encode(Encoding::UTF_8))
86
+
87
+ Base64.encode64(hmac).chomp
88
+ end
89
+ end
90
+ end
@@ -1,5 +1,8 @@
1
- # This file was automatically generated for MessageMedia by APIMATIC v2.0
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
2
4
  # ( https://apimatic.io ).
5
+
3
6
  require 'faraday/http_cache'
4
7
 
5
8
  module MessageMediaMessages
@@ -30,7 +33,9 @@ module MessageMediaMessages
30
33
  http_request.query_url
31
34
  ) do |request|
32
35
  request.headers = http_request.headers
33
- request.body = http_request.parameters
36
+ unless http_request.parameters.empty?
37
+ request.body = http_request.parameters
38
+ end
34
39
  end
35
40
  convert_response(response)
36
41
  end
@@ -42,7 +47,9 @@ module MessageMediaMessages
42
47
  http_request.query_url
43
48
  ) do |request|
44
49
  request.headers = http_request.headers
45
- request.body = http_request.parameters
50
+ unless http_request.parameters.empty?
51
+ request.body = http_request.parameters
52
+ end
46
53
  end
47
54
  convert_response(response)
48
55
  end
@@ -1,11 +1,13 @@
1
- # This file was automatically generated for MessageMedia by APIMATIC v2.0
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
2
4
  # ( https://apimatic.io ).
3
5
 
4
6
  module MessageMediaMessages
5
7
  # HttpCallBack allows defining callables for pre and post API calls.
6
8
  class HttpCallBack
7
9
  # A controller will call this method before making an HTTP Request.
8
- # @param [HttpRequest] _http_request The HttpRequest object which the HttpClient
10
+ # @param [HttpRequest] The HttpRequest object which the HttpClient
9
11
  # will execute.
10
12
  def on_before_request(_http_request)
11
13
  raise NotImplementedError, 'This method needs
@@ -13,7 +15,7 @@ module MessageMediaMessages
13
15
  end
14
16
 
15
17
  # A controller will call this method after making an HTTP Request.
16
- # @param [HttpContext] _http_context The HttpContext of the API call.
18
+ # @param [HttpContext] The HttpContext of the API call.
17
19
  def on_after_response(_http_context)
18
20
  raise NotImplementedError, 'This method needs
19
21
  to be implemented in a child class.'
@@ -1,4 +1,6 @@
1
- # This file was automatically generated for MessageMedia by APIMATIC v2.0
1
+ # message_media_messages
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
2
4
  # ( https://apimatic.io ).
3
5
 
4
6
  module MessageMediaMessages
@@ -8,29 +10,29 @@ module MessageMediaMessages
8
10
  # for HTTP Client classes.
9
11
  class HttpClient
10
12
  # Execute an HttpRequest when the response is expected to be a string.
11
- # @param [HttpRequest] _http_request The HttpRequest to be executed.
13
+ # @param [HttpRequest] The HttpRequest to be executed.
12
14
  def execute_as_string(_http_request)
13
15
  raise NotImplementedError, 'This method needs
14
16
  to be implemented in a child class.'
15
17
  end
16
18
 
17
19
  # Execute an HttpRequest when the response is expected to be binary.
18
- # @param [HttpRequest] _http_request The HttpRequest to be executed.
20
+ # @param [HttpRequest] The HttpRequest to be executed.
19
21
  def execute_as_binary(_http_request)
20
22
  raise NotImplementedError, 'This method needs
21
23
  to be implemented in a child class.'
22
24
  end
23
25
 
24
26
  # Converts the HTTP Response from the client to an HttpResponse object.
25
- # @param [Dynamic] _response The response object received from the client.
27
+ # @param [Dynamic] The response object received from the client.
26
28
  def convert_response(_response)
27
29
  raise NotImplementedError, 'This method needs
28
30
  to be implemented in a child class.'
29
31
  end
30
32
 
31
33
  # Get a GET HttpRequest object.
32
- # @param [String] query_url The URL to send the request to.
33
- # @param [Hash, Optional] headers The headers for the HTTP Request.
34
+ # @param [String] The URL to send the request to.
35
+ # @param [Hash, Optional] The headers for the HTTP Request.
34
36
  def get(query_url,
35
37
  headers: {})
36
38
  HttpRequest.new(HttpMethodEnum::GET,
@@ -38,10 +40,20 @@ module MessageMediaMessages
38
40
  headers: headers)
39
41
  end
40
42
 
43
+ # Get a HEAD HttpRequest object.
44
+ # @param [String] The URL to send the request to.
45
+ # @param [Hash, Optional] The headers for the HTTP Request.
46
+ def head(query_url,
47
+ headers: {})
48
+ HttpRequest.new(HttpMethodEnum::HEAD,
49
+ query_url,
50
+ headers: headers)
51
+ end
52
+
41
53
  # Get a POST HttpRequest object.
42
- # @param [String] query_url The URL to send the request to.
43
- # @param [Hash, Optional] headers The headers for the HTTP Request.
44
- # @param [Hash, Optional] parameters The parameters for the HTTP Request.
54
+ # @param [String] The URL to send the request to.
55
+ # @param [Hash, Optional] The headers for the HTTP Request.
56
+ # @param [Hash, Optional] The parameters for the HTTP Request.
45
57
  def post(query_url,
46
58
  headers: {},
47
59
  parameters: {})
@@ -52,9 +64,9 @@ module MessageMediaMessages
52
64
  end
53
65
 
54
66
  # Get a PUT HttpRequest object.
55
- # @param [String] query_url The URL to send the request to.
56
- # @param [Hash, Optional] headers The headers for the HTTP Request.
57
- # @param [Hash, Optional] parameters The parameters for the HTTP Request.
67
+ # @param [String] The URL to send the request to.
68
+ # @param [Hash, Optional] The headers for the HTTP Request.
69
+ # @param [Hash, Optional] The parameters for the HTTP Request.
58
70
  def put(query_url,
59
71
  headers: {},
60
72
  parameters: {})
@@ -65,9 +77,9 @@ module MessageMediaMessages
65
77
  end
66
78
 
67
79
  # Get a PATCH HttpRequest object.
68
- # @param [String] query_url The URL to send the request to.
69
- # @param [Hash, Optional] headers The headers for the HTTP Request.
70
- # @param [Hash, Optional] parameters The parameters for the HTTP Request.
80
+ # @param [String] The URL to send the request to.
81
+ # @param [Hash, Optional] The headers for the HTTP Request.
82
+ # @param [Hash, Optional] The parameters for the HTTP Request.
71
83
  def patch(query_url,
72
84
  headers: {},
73
85
  parameters: {})
@@ -78,9 +90,8 @@ module MessageMediaMessages
78
90
  end
79
91
 
80
92
  # Get a DELETE HttpRequest object.
81
- # @param [String] query_url The URL to send the request to.
82
- # @param [Hash, Optional] headers The headers for the HTTP Request.
83
- # @param [Hash, Optional] parameters The parameters for the HTTP Request.
93
+ # @param [String] The URL to send the request to.
94
+ # @param [Hash, Optional] The headers for the HTTP Request.
84
95
  def delete(query_url,
85
96
  headers: {},
86
97
  parameters: {})