bombbomb 2.0.21454 → 2.0.22196

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -14
  3. data/bombbomb.gemspec +1 -1
  4. data/docs/AutomationsApi.md +115 -0
  5. data/docs/EmailsApi.md +246 -0
  6. data/docs/JerichoConfiguration.md +5 -1
  7. data/docs/PromptBotBot.md +18 -0
  8. data/docs/PromptsApi.md +384 -3
  9. data/docs/SignUploadRequest.md +9 -0
  10. data/docs/SignUploadResponse.md +9 -0
  11. data/docs/VideoEmailPrompt.md +9 -2
  12. data/docs/VideoPublicRepresentation.md +18 -0
  13. data/docs/VideoRecorderMethodResponse.md +15 -0
  14. data/docs/VideosApi.md +175 -0
  15. data/lib/bombbomb.rb +9 -1
  16. data/lib/bombbomb/api/automations_api.rb +150 -0
  17. data/lib/bombbomb/api/curriculum_api.rb +1 -1
  18. data/lib/bombbomb/api/emails_api.rb +293 -0
  19. data/lib/bombbomb/api/prompts_api.rb +439 -5
  20. data/lib/bombbomb/api/teams_api.rb +1 -1
  21. data/lib/bombbomb/api/utilities_api.rb +1 -1
  22. data/lib/bombbomb/api/videos_api.rb +221 -0
  23. data/lib/bombbomb/api/webhooks_api.rb +1 -1
  24. data/lib/bombbomb/api_client.rb +1 -1
  25. data/lib/bombbomb/api_error.rb +1 -1
  26. data/lib/bombbomb/configuration.rb +1 -1
  27. data/lib/bombbomb/models/bb_web_hook.rb +1 -1
  28. data/lib/bombbomb/models/curriculum.rb +1 -1
  29. data/lib/bombbomb/models/curriculum_user_progress.rb +1 -1
  30. data/lib/bombbomb/models/curriculum_with_progress.rb +1 -1
  31. data/lib/bombbomb/models/inline_response_200.rb +1 -1
  32. data/lib/bombbomb/models/inline_response_200_items.rb +1 -1
  33. data/lib/bombbomb/models/jericho_configuration.rb +43 -3
  34. data/lib/bombbomb/models/jericho_performance.rb +1 -1
  35. data/lib/bombbomb/models/o_auth_client.rb +1 -1
  36. data/lib/bombbomb/models/prompt_bot_bot.rb +300 -0
  37. data/lib/bombbomb/models/sign_upload_request.rb +210 -0
  38. data/lib/bombbomb/models/sign_upload_response.rb +210 -0
  39. data/lib/bombbomb/models/string.rb +1 -1
  40. data/lib/bombbomb/models/team_public_representation.rb +1 -1
  41. data/lib/bombbomb/models/video_email_prompt.rb +79 -9
  42. data/lib/bombbomb/models/video_public_representation.rb +302 -0
  43. data/lib/bombbomb/models/video_recorder_method_response.rb +270 -0
  44. data/lib/bombbomb/version.rb +2 -2
  45. data/spec/api/automations_api_spec.rb +71 -0
  46. data/spec/api/emails_api_spec.rb +104 -0
  47. data/spec/api/videos_api_spec.rb +86 -0
  48. data/spec/models/prompt_bot_bot_spec.rb +113 -0
  49. data/spec/models/sign_upload_request_spec.rb +59 -0
  50. data/spec/models/sign_upload_response_spec.rb +59 -0
  51. data/spec/models/video_public_representation_spec.rb +113 -0
  52. data/spec/models/video_recorder_method_response_spec.rb +95 -0
  53. metadata +34 -2
@@ -0,0 +1,293 @@
1
+ =begin
2
+ #BombBomb
3
+
4
+ #We make it easy to build relationships using simple videos.
5
+
6
+ OpenAPI spec version: 2.0.22196
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
15
+
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
21
+
22
+ =end
23
+
24
+ require "uri"
25
+
26
+ module BombBomb
27
+ class EmailsApi
28
+ attr_accessor :api_client
29
+
30
+ def initialize(api_client = ApiClient.default)
31
+ @api_client = api_client
32
+ end
33
+
34
+ # Create an Email with Printing Press
35
+ # Prints an email using the template id and content to the users account.If a video id, is include it will replace any video placeholders with that video.
36
+ # @param template_id The template id to be printed.
37
+ # @param content The content of the email.
38
+ # @param replace Set whether to replace video placeholders with video id.
39
+ # @param [Hash] opts the optional parameters
40
+ # @option opts [String] :video_id A video to replace video place holders with.
41
+ # @option opts [String] :subject_line The subject line to be printed.
42
+ # @return [nil]
43
+ def create_printing_press_email(template_id, content, replace, opts = {})
44
+ create_printing_press_email_with_http_info(template_id, content, replace, opts)
45
+ return nil
46
+ end
47
+
48
+ # Create an Email with Printing Press
49
+ # Prints an email using the template id and content to the users account.If a video id, is include it will replace any video placeholders with that video.
50
+ # @param template_id The template id to be printed.
51
+ # @param content The content of the email.
52
+ # @param replace Set whether to replace video placeholders with video id.
53
+ # @param [Hash] opts the optional parameters
54
+ # @option opts [String] :video_id A video to replace video place holders with.
55
+ # @option opts [String] :subject_line The subject line to be printed.
56
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
57
+ def create_printing_press_email_with_http_info(template_id, content, replace, opts = {})
58
+ if @api_client.config.debugging
59
+ @api_client.config.logger.debug "Calling API: EmailsApi.create_printing_press_email ..."
60
+ end
61
+ # verify the required parameter 'template_id' is set
62
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling EmailsApi.create_printing_press_email" if template_id.nil?
63
+ # verify the required parameter 'content' is set
64
+ fail ArgumentError, "Missing the required parameter 'content' when calling EmailsApi.create_printing_press_email" if content.nil?
65
+ # verify the required parameter 'replace' is set
66
+ fail ArgumentError, "Missing the required parameter 'replace' when calling EmailsApi.create_printing_press_email" if replace.nil?
67
+ # resource path
68
+ local_var_path = "/emails/print".sub('{format}','json')
69
+
70
+ # query parameters
71
+ query_params = {}
72
+
73
+ # header parameters
74
+ header_params = {}
75
+
76
+ # HTTP header 'Accept' (if needed)
77
+ local_header_accept = ['application/json']
78
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
79
+
80
+ # HTTP header 'Content-Type'
81
+ local_header_content_type = ['application/x-www-form-urlencoded']
82
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
83
+
84
+ # form parameters
85
+ form_params = {}
86
+ form_params["templateId"] = template_id
87
+ form_params["content"] = content
88
+ form_params["replace"] = replace
89
+ form_params["videoId"] = opts[:'video_id'] if !opts[:'video_id'].nil?
90
+ form_params["subjectLine"] = opts[:'subject_line'] if !opts[:'subject_line'].nil?
91
+
92
+ # http body (model)
93
+ post_body = nil
94
+ auth_names = ['BBOAuth2']
95
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
96
+ :header_params => header_params,
97
+ :query_params => query_params,
98
+ :form_params => form_params,
99
+ :body => post_body,
100
+ :auth_names => auth_names)
101
+ if @api_client.config.debugging
102
+ @api_client.config.logger.debug "API called: EmailsApi#create_printing_press_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
103
+ end
104
+ return data, status_code, headers
105
+ end
106
+
107
+ # Get Email Tracking
108
+ # Get Tracking data for all sends of an Email
109
+ # @param email_id ID of the email
110
+ # @param [Hash] opts the optional parameters
111
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
112
+ # @return [nil]
113
+ def get_email_tracking(email_id, opts = {})
114
+ get_email_tracking_with_http_info(email_id, opts)
115
+ return nil
116
+ end
117
+
118
+ # Get Email Tracking
119
+ # Get Tracking data for all sends of an Email
120
+ # @param email_id ID of the email
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
123
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
124
+ def get_email_tracking_with_http_info(email_id, opts = {})
125
+ if @api_client.config.debugging
126
+ @api_client.config.logger.debug "Calling API: EmailsApi.get_email_tracking ..."
127
+ end
128
+ # verify the required parameter 'email_id' is set
129
+ fail ArgumentError, "Missing the required parameter 'email_id' when calling EmailsApi.get_email_tracking" if email_id.nil?
130
+ # resource path
131
+ local_var_path = "/emails/{emailId}/tracking".sub('{format}','json').sub('{' + 'emailId' + '}', email_id.to_s)
132
+
133
+ # query parameters
134
+ query_params = {}
135
+ query_params[:'jobId'] = opts[:'job_id'] if !opts[:'job_id'].nil?
136
+
137
+ # header parameters
138
+ header_params = {}
139
+
140
+ # HTTP header 'Accept' (if needed)
141
+ local_header_accept = ['application/json']
142
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
143
+
144
+ # HTTP header 'Content-Type'
145
+ local_header_content_type = ['application/x-www-form-urlencoded']
146
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
147
+
148
+ # form parameters
149
+ form_params = {}
150
+
151
+ # http body (model)
152
+ post_body = nil
153
+ auth_names = ['BBOAuth2']
154
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
155
+ :header_params => header_params,
156
+ :query_params => query_params,
157
+ :form_params => form_params,
158
+ :body => post_body,
159
+ :auth_names => auth_names)
160
+ if @api_client.config.debugging
161
+ @api_client.config.logger.debug "API called: EmailsApi#get_email_tracking\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
162
+ end
163
+ return data, status_code, headers
164
+ end
165
+
166
+ # Get Email Tracking Interactions
167
+ # Get Contact detail interactions for an Email
168
+ # @param email_id ID of the email
169
+ # @param [Hash] opts the optional parameters
170
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
171
+ # @option opts [String] :interaction_type Interaction type to order and filter by
172
+ # @option opts [String] :search_term Search term to filer by
173
+ # @return [nil]
174
+ def get_email_tracking_interactions(email_id, opts = {})
175
+ get_email_tracking_interactions_with_http_info(email_id, opts)
176
+ return nil
177
+ end
178
+
179
+ # Get Email Tracking Interactions
180
+ # Get Contact detail interactions for an Email
181
+ # @param email_id ID of the email
182
+ # @param [Hash] opts the optional parameters
183
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
184
+ # @option opts [String] :interaction_type Interaction type to order and filter by
185
+ # @option opts [String] :search_term Search term to filer by
186
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
187
+ def get_email_tracking_interactions_with_http_info(email_id, opts = {})
188
+ if @api_client.config.debugging
189
+ @api_client.config.logger.debug "Calling API: EmailsApi.get_email_tracking_interactions ..."
190
+ end
191
+ # verify the required parameter 'email_id' is set
192
+ fail ArgumentError, "Missing the required parameter 'email_id' when calling EmailsApi.get_email_tracking_interactions" if email_id.nil?
193
+ # resource path
194
+ local_var_path = "/emails/{emailId}/tracking/interactions".sub('{format}','json').sub('{' + 'emailId' + '}', email_id.to_s)
195
+
196
+ # query parameters
197
+ query_params = {}
198
+ query_params[:'jobId'] = opts[:'job_id'] if !opts[:'job_id'].nil?
199
+ query_params[:'interactionType'] = opts[:'interaction_type'] if !opts[:'interaction_type'].nil?
200
+ query_params[:'searchTerm'] = opts[:'search_term'] if !opts[:'search_term'].nil?
201
+
202
+ # header parameters
203
+ header_params = {}
204
+
205
+ # HTTP header 'Accept' (if needed)
206
+ local_header_accept = ['application/json']
207
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
208
+
209
+ # HTTP header 'Content-Type'
210
+ local_header_content_type = ['application/x-www-form-urlencoded']
211
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
212
+
213
+ # form parameters
214
+ form_params = {}
215
+
216
+ # http body (model)
217
+ post_body = nil
218
+ auth_names = ['BBOAuth2']
219
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
220
+ :header_params => header_params,
221
+ :query_params => query_params,
222
+ :form_params => form_params,
223
+ :body => post_body,
224
+ :auth_names => auth_names)
225
+ if @api_client.config.debugging
226
+ @api_client.config.logger.debug "API called: EmailsApi#get_email_tracking_interactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
227
+ end
228
+ return data, status_code, headers
229
+ end
230
+
231
+ # Get Hourly Email Tracking
232
+ # Get Tracking data for an Email, broken down by the hour and filterable by an Interaction type
233
+ # @param email_id ID of the email
234
+ # @param [Hash] opts the optional parameters
235
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
236
+ # @option opts [String] :interaction_type Interaction type to filter by
237
+ # @return [nil]
238
+ def get_hourly_email_tracking(email_id, opts = {})
239
+ get_hourly_email_tracking_with_http_info(email_id, opts)
240
+ return nil
241
+ end
242
+
243
+ # Get Hourly Email Tracking
244
+ # Get Tracking data for an Email, broken down by the hour and filterable by an Interaction type
245
+ # @param email_id ID of the email
246
+ # @param [Hash] opts the optional parameters
247
+ # @option opts [String] :job_id ID of the Job (or null for all jobs)
248
+ # @option opts [String] :interaction_type Interaction type to filter by
249
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
250
+ def get_hourly_email_tracking_with_http_info(email_id, opts = {})
251
+ if @api_client.config.debugging
252
+ @api_client.config.logger.debug "Calling API: EmailsApi.get_hourly_email_tracking ..."
253
+ end
254
+ # verify the required parameter 'email_id' is set
255
+ fail ArgumentError, "Missing the required parameter 'email_id' when calling EmailsApi.get_hourly_email_tracking" if email_id.nil?
256
+ # resource path
257
+ local_var_path = "/emails/{emailId}/tracking/hourly".sub('{format}','json').sub('{' + 'emailId' + '}', email_id.to_s)
258
+
259
+ # query parameters
260
+ query_params = {}
261
+ query_params[:'jobId'] = opts[:'job_id'] if !opts[:'job_id'].nil?
262
+ query_params[:'interactionType'] = opts[:'interaction_type'] if !opts[:'interaction_type'].nil?
263
+
264
+ # header parameters
265
+ header_params = {}
266
+
267
+ # HTTP header 'Accept' (if needed)
268
+ local_header_accept = ['application/json']
269
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
270
+
271
+ # HTTP header 'Content-Type'
272
+ local_header_content_type = ['application/x-www-form-urlencoded']
273
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
274
+
275
+ # form parameters
276
+ form_params = {}
277
+
278
+ # http body (model)
279
+ post_body = nil
280
+ auth_names = ['BBOAuth2']
281
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
282
+ :header_params => header_params,
283
+ :query_params => query_params,
284
+ :form_params => form_params,
285
+ :body => post_body,
286
+ :auth_names => auth_names)
287
+ if @api_client.config.debugging
288
+ @api_client.config.logger.debug "API called: EmailsApi#get_hourly_email_tracking\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
289
+ end
290
+ return data, status_code, headers
291
+ end
292
+ end
293
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #We make it easy to build relationships using simple videos.
5
5
 
6
- OpenAPI spec version: 2.0.21454
6
+ OpenAPI spec version: 2.0.22196
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
9
 
@@ -31,6 +31,94 @@ module BombBomb
31
31
  @api_client = api_client
32
32
  end
33
33
 
34
+ # Create a running Prompt Bot for a list
35
+ # Creates a Prompt Bot that sends emails to contacts on a list over the span of time defined.
36
+ # @param list_id The list id to attach the bot to.
37
+ # @param email_id The default email to use.
38
+ # @param end_date The time frame to complete sending to the list.
39
+ # @param prompt_subject The prompt subject.
40
+ # @param prompt_body The prompt script.
41
+ # @param bot_type_id The type of bot to create.
42
+ # @param template_id The template used to create the email id.
43
+ # @param [Hash] opts the optional parameters
44
+ # @return [PromptBotBot]
45
+ def create_prompt_bot(list_id, email_id, end_date, prompt_subject, prompt_body, bot_type_id, template_id, opts = {})
46
+ data, _status_code, _headers = create_prompt_bot_with_http_info(list_id, email_id, end_date, prompt_subject, prompt_body, bot_type_id, template_id, opts)
47
+ return data
48
+ end
49
+
50
+ # Create a running Prompt Bot for a list
51
+ # Creates a Prompt Bot that sends emails to contacts on a list over the span of time defined.
52
+ # @param list_id The list id to attach the bot to.
53
+ # @param email_id The default email to use.
54
+ # @param end_date The time frame to complete sending to the list.
55
+ # @param prompt_subject The prompt subject.
56
+ # @param prompt_body The prompt script.
57
+ # @param bot_type_id The type of bot to create.
58
+ # @param template_id The template used to create the email id.
59
+ # @param [Hash] opts the optional parameters
60
+ # @return [Array<(PromptBotBot, Fixnum, Hash)>] PromptBotBot data, response status code and response headers
61
+ def create_prompt_bot_with_http_info(list_id, email_id, end_date, prompt_subject, prompt_body, bot_type_id, template_id, opts = {})
62
+ if @api_client.config.debugging
63
+ @api_client.config.logger.debug "Calling API: PromptsApi.create_prompt_bot ..."
64
+ end
65
+ # verify the required parameter 'list_id' is set
66
+ fail ArgumentError, "Missing the required parameter 'list_id' when calling PromptsApi.create_prompt_bot" if list_id.nil?
67
+ # verify the required parameter 'email_id' is set
68
+ fail ArgumentError, "Missing the required parameter 'email_id' when calling PromptsApi.create_prompt_bot" if email_id.nil?
69
+ # verify the required parameter 'end_date' is set
70
+ fail ArgumentError, "Missing the required parameter 'end_date' when calling PromptsApi.create_prompt_bot" if end_date.nil?
71
+ # verify the required parameter 'prompt_subject' is set
72
+ fail ArgumentError, "Missing the required parameter 'prompt_subject' when calling PromptsApi.create_prompt_bot" if prompt_subject.nil?
73
+ # verify the required parameter 'prompt_body' is set
74
+ fail ArgumentError, "Missing the required parameter 'prompt_body' when calling PromptsApi.create_prompt_bot" if prompt_body.nil?
75
+ # verify the required parameter 'bot_type_id' is set
76
+ fail ArgumentError, "Missing the required parameter 'bot_type_id' when calling PromptsApi.create_prompt_bot" if bot_type_id.nil?
77
+ # verify the required parameter 'template_id' is set
78
+ fail ArgumentError, "Missing the required parameter 'template_id' when calling PromptsApi.create_prompt_bot" if template_id.nil?
79
+ # resource path
80
+ local_var_path = "/prompts/bots".sub('{format}','json')
81
+
82
+ # query parameters
83
+ query_params = {}
84
+
85
+ # header parameters
86
+ header_params = {}
87
+
88
+ # HTTP header 'Accept' (if needed)
89
+ local_header_accept = ['application/json']
90
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
91
+
92
+ # HTTP header 'Content-Type'
93
+ local_header_content_type = ['application/x-www-form-urlencoded']
94
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
95
+
96
+ # form parameters
97
+ form_params = {}
98
+ form_params["listId"] = list_id
99
+ form_params["emailId"] = email_id
100
+ form_params["endDate"] = end_date
101
+ form_params["promptSubject"] = prompt_subject
102
+ form_params["promptBody"] = prompt_body
103
+ form_params["botTypeId"] = bot_type_id
104
+ form_params["templateId"] = template_id
105
+
106
+ # http body (model)
107
+ post_body = nil
108
+ auth_names = ['BBOAuth2']
109
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
110
+ :header_params => header_params,
111
+ :query_params => query_params,
112
+ :form_params => form_params,
113
+ :body => post_body,
114
+ :auth_names => auth_names,
115
+ :return_type => 'PromptBotBot')
116
+ if @api_client.config.debugging
117
+ @api_client.config.logger.debug "API called: PromptsApi#create_prompt_bot\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
118
+ end
119
+ return data, status_code, headers
120
+ end
121
+
34
122
  # Prompts user to send a video
35
123
  # Sends the account holder an email prompting them to add a video to a scheduled outgoing message. Recipients, content and timing is all preset for the user.
36
124
  # @param prompt The Video Email Prompt to be created
@@ -88,6 +176,164 @@ module BombBomb
88
176
  return data, status_code, headers
89
177
  end
90
178
 
179
+ # List pending prompts
180
+ # Returns a list of prompts that have not been sent yet, and can still be customized.
181
+ # @param [Hash] opts the optional parameters
182
+ # @return [Array<VideoEmailPrompt>]
183
+ def get_pending_video_email_prompts(opts = {})
184
+ data, _status_code, _headers = get_pending_video_email_prompts_with_http_info(opts)
185
+ return data
186
+ end
187
+
188
+ # List pending prompts
189
+ # Returns a list of prompts that have not been sent yet, and can still be customized.
190
+ # @param [Hash] opts the optional parameters
191
+ # @return [Array<(Array<VideoEmailPrompt>, Fixnum, Hash)>] Array<VideoEmailPrompt> data, response status code and response headers
192
+ def get_pending_video_email_prompts_with_http_info(opts = {})
193
+ if @api_client.config.debugging
194
+ @api_client.config.logger.debug "Calling API: PromptsApi.get_pending_video_email_prompts ..."
195
+ end
196
+ # resource path
197
+ local_var_path = "/prompt/pending".sub('{format}','json')
198
+
199
+ # query parameters
200
+ query_params = {}
201
+
202
+ # header parameters
203
+ header_params = {}
204
+
205
+ # HTTP header 'Accept' (if needed)
206
+ local_header_accept = ['application/json']
207
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
208
+
209
+ # HTTP header 'Content-Type'
210
+ local_header_content_type = ['application/x-www-form-urlencoded']
211
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
212
+
213
+ # form parameters
214
+ form_params = {}
215
+
216
+ # http body (model)
217
+ post_body = nil
218
+ auth_names = ['BBOAuth2']
219
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
220
+ :header_params => header_params,
221
+ :query_params => query_params,
222
+ :form_params => form_params,
223
+ :body => post_body,
224
+ :auth_names => auth_names,
225
+ :return_type => 'Array<VideoEmailPrompt>')
226
+ if @api_client.config.debugging
227
+ @api_client.config.logger.debug "API called: PromptsApi#get_pending_video_email_prompts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
228
+ end
229
+ return data, status_code, headers
230
+ end
231
+
232
+ # List Prompt Bots
233
+ # Returns a list of all Prompt Bots for the user.
234
+ # @param [Hash] opts the optional parameters
235
+ # @return [Array<PromptBotBot>]
236
+ def get_prompt_bots(opts = {})
237
+ data, _status_code, _headers = get_prompt_bots_with_http_info(opts)
238
+ return data
239
+ end
240
+
241
+ # List Prompt Bots
242
+ # Returns a list of all Prompt Bots for the user.
243
+ # @param [Hash] opts the optional parameters
244
+ # @return [Array<(Array<PromptBotBot>, Fixnum, Hash)>] Array<PromptBotBot> data, response status code and response headers
245
+ def get_prompt_bots_with_http_info(opts = {})
246
+ if @api_client.config.debugging
247
+ @api_client.config.logger.debug "Calling API: PromptsApi.get_prompt_bots ..."
248
+ end
249
+ # resource path
250
+ local_var_path = "/prompts/bots".sub('{format}','json')
251
+
252
+ # query parameters
253
+ query_params = {}
254
+
255
+ # header parameters
256
+ header_params = {}
257
+
258
+ # HTTP header 'Accept' (if needed)
259
+ local_header_accept = ['application/json']
260
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
261
+
262
+ # HTTP header 'Content-Type'
263
+ local_header_content_type = ['application/x-www-form-urlencoded']
264
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
265
+
266
+ # form parameters
267
+ form_params = {}
268
+
269
+ # http body (model)
270
+ post_body = nil
271
+ auth_names = ['BBOAuth2']
272
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
273
+ :header_params => header_params,
274
+ :query_params => query_params,
275
+ :form_params => form_params,
276
+ :body => post_body,
277
+ :auth_names => auth_names,
278
+ :return_type => 'Array<PromptBotBot>')
279
+ if @api_client.config.debugging
280
+ @api_client.config.logger.debug "API called: PromptsApi#get_prompt_bots\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
281
+ end
282
+ return data, status_code, headers
283
+ end
284
+
285
+ # List Prompt Campaigns
286
+ # Returns a list of all Prompt Campaigns for the user.
287
+ # @param [Hash] opts the optional parameters
288
+ # @return [nil]
289
+ def get_prompt_campaigns(opts = {})
290
+ get_prompt_campaigns_with_http_info(opts)
291
+ return nil
292
+ end
293
+
294
+ # List Prompt Campaigns
295
+ # Returns a list of all Prompt Campaigns for the user.
296
+ # @param [Hash] opts the optional parameters
297
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
298
+ def get_prompt_campaigns_with_http_info(opts = {})
299
+ if @api_client.config.debugging
300
+ @api_client.config.logger.debug "Calling API: PromptsApi.get_prompt_campaigns ..."
301
+ end
302
+ # resource path
303
+ local_var_path = "/prompts/campaigns".sub('{format}','json')
304
+
305
+ # query parameters
306
+ query_params = {}
307
+
308
+ # header parameters
309
+ header_params = {}
310
+
311
+ # HTTP header 'Accept' (if needed)
312
+ local_header_accept = ['application/json']
313
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
314
+
315
+ # HTTP header 'Content-Type'
316
+ local_header_content_type = ['application/x-www-form-urlencoded']
317
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
318
+
319
+ # form parameters
320
+ form_params = {}
321
+
322
+ # http body (model)
323
+ post_body = nil
324
+ auth_names = ['BBOAuth2']
325
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
326
+ :header_params => header_params,
327
+ :query_params => query_params,
328
+ :form_params => form_params,
329
+ :body => post_body,
330
+ :auth_names => auth_names)
331
+ if @api_client.config.debugging
332
+ @api_client.config.logger.debug "API called: PromptsApi#get_prompt_campaigns\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
333
+ end
334
+ return data, status_code, headers
335
+ end
336
+
91
337
  # Gets a prompt
92
338
  # Gets a prompt
93
339
  # @param id The Id of the prompt
@@ -145,12 +391,66 @@ module BombBomb
145
391
  return data, status_code, headers
146
392
  end
147
393
 
394
+ # List prompts
395
+ # Returns a list of all prompts.
396
+ # @param [Hash] opts the optional parameters
397
+ # @return [Array<VideoEmailPrompt>]
398
+ def get_video_email_prompts(opts = {})
399
+ data, _status_code, _headers = get_video_email_prompts_with_http_info(opts)
400
+ return data
401
+ end
402
+
403
+ # List prompts
404
+ # Returns a list of all prompts.
405
+ # @param [Hash] opts the optional parameters
406
+ # @return [Array<(Array<VideoEmailPrompt>, Fixnum, Hash)>] Array<VideoEmailPrompt> data, response status code and response headers
407
+ def get_video_email_prompts_with_http_info(opts = {})
408
+ if @api_client.config.debugging
409
+ @api_client.config.logger.debug "Calling API: PromptsApi.get_video_email_prompts ..."
410
+ end
411
+ # resource path
412
+ local_var_path = "/prompt/".sub('{format}','json')
413
+
414
+ # query parameters
415
+ query_params = {}
416
+
417
+ # header parameters
418
+ header_params = {}
419
+
420
+ # HTTP header 'Accept' (if needed)
421
+ local_header_accept = ['application/json']
422
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
423
+
424
+ # HTTP header 'Content-Type'
425
+ local_header_content_type = ['application/x-www-form-urlencoded']
426
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
427
+
428
+ # form parameters
429
+ form_params = {}
430
+
431
+ # http body (model)
432
+ post_body = nil
433
+ auth_names = ['BBOAuth2']
434
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
435
+ :header_params => header_params,
436
+ :query_params => query_params,
437
+ :form_params => form_params,
438
+ :body => post_body,
439
+ :auth_names => auth_names,
440
+ :return_type => 'Array<VideoEmailPrompt>')
441
+ if @api_client.config.debugging
442
+ @api_client.config.logger.debug "API called: PromptsApi#get_video_email_prompts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
443
+ end
444
+ return data, status_code, headers
445
+ end
446
+
148
447
  # Respond to a prompt
149
448
  # Respond to a prompt by either adding a video, sending without a video or cancelling the prompt.
150
449
  # @param id The id of the prompt.
151
- # @param choice The users&#39; selection. Can be: WithVideo, WithoutVideo, Cancel
450
+ # @param choice The users&#39; selection. Can be: WithVideo, WithEmail, Cancel
152
451
  # @param [Hash] opts the optional parameters
153
452
  # @option opts [String] :video_id The id of the video.
453
+ # @option opts [String] :email_id The id of the video.
154
454
  # @return [VideoEmailPrompt]
155
455
  def respond_to_video_email_prompt(id, choice, opts = {})
156
456
  data, _status_code, _headers = respond_to_video_email_prompt_with_http_info(id, choice, opts)
@@ -160,9 +460,10 @@ module BombBomb
160
460
  # Respond to a prompt
161
461
  # Respond to a prompt by either adding a video, sending without a video or cancelling the prompt.
162
462
  # @param id The id of the prompt.
163
- # @param choice The users&#39; selection. Can be: WithVideo, WithoutVideo, Cancel
463
+ # @param choice The users&#39; selection. Can be: WithVideo, WithEmail, Cancel
164
464
  # @param [Hash] opts the optional parameters
165
465
  # @option opts [String] :video_id The id of the video.
466
+ # @option opts [String] :email_id The id of the video.
166
467
  # @return [Array<(VideoEmailPrompt, Fixnum, Hash)>] VideoEmailPrompt data, response status code and response headers
167
468
  def respond_to_video_email_prompt_with_http_info(id, choice, opts = {})
168
469
  if @api_client.config.debugging
@@ -173,8 +474,8 @@ module BombBomb
173
474
  # verify the required parameter 'choice' is set
174
475
  fail ArgumentError, "Missing the required parameter 'choice' when calling PromptsApi.respond_to_video_email_prompt" if choice.nil?
175
476
  # verify enum value
176
- unless ['WithVideo', 'WithoutVideo', 'Cancel'].include?(choice)
177
- fail ArgumentError, "invalid value for 'choice', must be one of WithVideo, WithoutVideo, Cancel"
477
+ unless ['WithVideo', 'WithEmail', 'Cancel'].include?(choice)
478
+ fail ArgumentError, "invalid value for 'choice', must be one of WithVideo, WithEmail, Cancel"
178
479
  end
179
480
  # resource path
180
481
  local_var_path = "/prompt/{id}/response".sub('{format}','json').sub('{' + 'id' + '}', id.to_s)
@@ -197,6 +498,7 @@ module BombBomb
197
498
  form_params = {}
198
499
  form_params["choice"] = choice
199
500
  form_params["videoId"] = opts[:'video_id'] if !opts[:'video_id'].nil?
501
+ form_params["emailId"] = opts[:'email_id'] if !opts[:'email_id'].nil?
200
502
 
201
503
  # http body (model)
202
504
  post_body = nil
@@ -213,5 +515,137 @@ module BombBomb
213
515
  end
214
516
  return data, status_code, headers
215
517
  end
518
+
519
+ # Update Prompt Bot
520
+ # Updates a Prompt Bot's settings.
521
+ # @param id The bot id.
522
+ # @param [Hash] opts the optional parameters
523
+ # @option opts [String] :email_id The default email to use.
524
+ # @option opts [String] :end_date The time frame to complete sending to the list.
525
+ # @option opts [String] :status The status of the bot.
526
+ # @return [PromptBotBot]
527
+ def update_prompt_bot(id, opts = {})
528
+ data, _status_code, _headers = update_prompt_bot_with_http_info(id, opts)
529
+ return data
530
+ end
531
+
532
+ # Update Prompt Bot
533
+ # Updates a Prompt Bot&#39;s settings.
534
+ # @param id The bot id.
535
+ # @param [Hash] opts the optional parameters
536
+ # @option opts [String] :email_id The default email to use.
537
+ # @option opts [String] :end_date The time frame to complete sending to the list.
538
+ # @option opts [String] :status The status of the bot.
539
+ # @return [Array<(PromptBotBot, Fixnum, Hash)>] PromptBotBot data, response status code and response headers
540
+ def update_prompt_bot_with_http_info(id, opts = {})
541
+ if @api_client.config.debugging
542
+ @api_client.config.logger.debug "Calling API: PromptsApi.update_prompt_bot ..."
543
+ end
544
+ # verify the required parameter 'id' is set
545
+ fail ArgumentError, "Missing the required parameter 'id' when calling PromptsApi.update_prompt_bot" if id.nil?
546
+ # resource path
547
+ local_var_path = "/prompts/bots/{id}".sub('{format}','json').sub('{' + 'id' + '}', id.to_s)
548
+
549
+ # query parameters
550
+ query_params = {}
551
+
552
+ # header parameters
553
+ header_params = {}
554
+
555
+ # HTTP header 'Accept' (if needed)
556
+ local_header_accept = ['application/json']
557
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
558
+
559
+ # HTTP header 'Content-Type'
560
+ local_header_content_type = ['application/x-www-form-urlencoded']
561
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
562
+
563
+ # form parameters
564
+ form_params = {}
565
+ form_params["emailId"] = opts[:'email_id'] if !opts[:'email_id'].nil?
566
+ form_params["endDate"] = opts[:'end_date'] if !opts[:'end_date'].nil?
567
+ form_params["status"] = opts[:'status'] if !opts[:'status'].nil?
568
+
569
+ # http body (model)
570
+ post_body = nil
571
+ auth_names = ['BBOAuth2']
572
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
573
+ :header_params => header_params,
574
+ :query_params => query_params,
575
+ :form_params => form_params,
576
+ :body => post_body,
577
+ :auth_names => auth_names,
578
+ :return_type => 'PromptBotBot')
579
+ if @api_client.config.debugging
580
+ @api_client.config.logger.debug "API called: PromptsApi#update_prompt_bot\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
581
+ end
582
+ return data, status_code, headers
583
+ end
584
+
585
+ # Update Prompt Campaign
586
+ # Updates a Prompt Campaign's Settings
587
+ # @param client_group_id The client group of the campaign.
588
+ # @param [Hash] opts the optional parameters
589
+ # @option opts [String] :branded_template_id The template to use for branded feel emails.
590
+ # @option opts [String] :personal_template_id The template to use for personal feel emails.
591
+ # @option opts [BOOLEAN] :enabled Set whether the user is able to start receiving prompts.
592
+ # @return [nil]
593
+ def update_prompt_campaign(client_group_id, opts = {})
594
+ update_prompt_campaign_with_http_info(client_group_id, opts)
595
+ return nil
596
+ end
597
+
598
+ # Update Prompt Campaign
599
+ # Updates a Prompt Campaign&#39;s Settings
600
+ # @param client_group_id The client group of the campaign.
601
+ # @param [Hash] opts the optional parameters
602
+ # @option opts [String] :branded_template_id The template to use for branded feel emails.
603
+ # @option opts [String] :personal_template_id The template to use for personal feel emails.
604
+ # @option opts [BOOLEAN] :enabled Set whether the user is able to start receiving prompts.
605
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
606
+ def update_prompt_campaign_with_http_info(client_group_id, opts = {})
607
+ if @api_client.config.debugging
608
+ @api_client.config.logger.debug "Calling API: PromptsApi.update_prompt_campaign ..."
609
+ end
610
+ # verify the required parameter 'client_group_id' is set
611
+ fail ArgumentError, "Missing the required parameter 'client_group_id' when calling PromptsApi.update_prompt_campaign" if client_group_id.nil?
612
+ # resource path
613
+ local_var_path = "/prompts/campaigns/{id}".sub('{format}','json')
614
+
615
+ # query parameters
616
+ query_params = {}
617
+
618
+ # header parameters
619
+ header_params = {}
620
+
621
+ # HTTP header 'Accept' (if needed)
622
+ local_header_accept = ['application/json']
623
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
624
+
625
+ # HTTP header 'Content-Type'
626
+ local_header_content_type = ['application/x-www-form-urlencoded']
627
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
628
+
629
+ # form parameters
630
+ form_params = {}
631
+ form_params["clientGroupId"] = client_group_id
632
+ form_params["brandedTemplateId"] = opts[:'branded_template_id'] if !opts[:'branded_template_id'].nil?
633
+ form_params["personalTemplateId"] = opts[:'personal_template_id'] if !opts[:'personal_template_id'].nil?
634
+ form_params["enabled"] = opts[:'enabled'] if !opts[:'enabled'].nil?
635
+
636
+ # http body (model)
637
+ post_body = nil
638
+ auth_names = ['BBOAuth2']
639
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
640
+ :header_params => header_params,
641
+ :query_params => query_params,
642
+ :form_params => form_params,
643
+ :body => post_body,
644
+ :auth_names => auth_names)
645
+ if @api_client.config.debugging
646
+ @api_client.config.logger.debug "API called: PromptsApi#update_prompt_campaign\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
647
+ end
648
+ return data, status_code, headers
649
+ end
216
650
  end
217
651
  end