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,9 @@
1
+ # BombBomb::SignUploadRequest
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **expiration** | **DateTime** | when the upload will expire. | [optional]
7
+ **conditions** | **Object** | Key/Value object of request conditions. | [optional]
8
+
9
+
@@ -0,0 +1,9 @@
1
+ # BombBomb::SignUploadResponse
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **policy** | **String** | Base64 encoded policy. | [optional]
7
+ **signature** | **String** | Signature for policy. | [optional]
8
+
9
+
@@ -8,18 +8,25 @@ Name | Type | Description | Notes
8
8
  **template_id** | **String** | Optional. The email template to be used in the sent email, if none supplied, the users' default will be applied. | [optional]
9
9
  **email_subject_line** | **String** | The subject line of the final email |
10
10
  **email_content** | **String** | The HTML content of the final email |
11
+ **thumbnail_url** | **String** | The URL of a thumbnail image for this prompt | [optional]
11
12
  **to_email_addresses** | **Array<String>** | Email addresses to send the final email to, can be mixed with listIds. | [optional]
12
13
  **to_lists** | **Array<String>** | List Ids to send the final email to | [optional]
13
14
  **jericho_id** | **String** | If sent in a jericho context, this will have the jericho id | [optional]
14
15
  **prompt_subject** | **String** | The prompt's subject line |
15
- **prompt_html** | **String** | The HTML body of the prompt |
16
+ **prompt_html** | **String** | The suggested script of the prompt. |
17
+ **prompt_intro** | **String** | A paragraph intro statement about the purpose of the email you're recording a video for. | [optional]
18
+ **example_video_id** | **String** | An example or explanatory video to help the user understand what to say. | [optional]
16
19
  **send_without_video** | **BOOLEAN** | Whether to send the email if no video is recorded. If set to require a video, and none is added before the videoDueDate, the prompt is cancelled. | [optional]
17
20
  **video_due_date** | **DateTime** | When the video must be recorded by | [optional]
18
21
  **scheduled_send_date** | **DateTime** | When the final email is scheduled to be sent |
19
22
  **video_id** | **String** | The video that was added to the prompt. Read Only. | [optional]
20
23
  **email_id** | **String** | The email that was created by the prompt Read Only. | [optional]
21
24
  **job_id** | **String** | The job sent by the prompt Read Only. | [optional]
25
+ **prompt_bot_id** | **String** | The bot that created the prompt. | [optional]
26
+ **client_group_id** | **String** | The client group campaign that created the prompt. | [optional]
22
27
  **status** | **Integer** | The status of the prompt: created = 0, sent = 10, recorded = 20, job_created = 30, timed_out = 40, declined = 50 Read Only | [optional]
23
- **do_not_apply_template** | **BOOLEAN** | Controls whether a user template is applied to the message as it is sent | [optional]
28
+ **apply_template** | **BOOLEAN** | Controls whether a user template is applied to the message as it is sent | [optional]
29
+ **created_date** | **DateTime** | When the email was first sent out | [optional]
30
+ **last_notified** | **DateTime** | When the user was last notified about a prompt email waiting for a video | [optional]
24
31
 
25
32
 
@@ -0,0 +1,18 @@
1
+ # BombBomb::VideoPublicRepresentation
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **id** | **String** | The id of the video | [optional]
7
+ **user_id** | **String** | The is of the owning user | [optional]
8
+ **status** | **String** | The status of the video | [optional]
9
+ **name** | **String** | The name of the video | [optional]
10
+ **description** | **String** | A description of the video | [optional]
11
+ **thumb_url** | **String** | The url of the thumbnail for the video | [optional]
12
+ **video_urls** | **Array<String>** | Urls to different formats of the video | [optional]
13
+ **short_url** | **String** | The url to use to link to the video | [optional]
14
+ **height** | **Integer** | The height of the video in pixels | [optional]
15
+ **width** | **Integer** | The width of the video in pixels | [optional]
16
+ **upload_date** | **String** | The date the video was uploaded | [optional]
17
+
18
+
@@ -0,0 +1,15 @@
1
+ # BombBomb::VideoRecorderMethodResponse
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **user_id** | **String** | The id of the user for whom this video will be recorded | [optional]
7
+ **email** | **String** | The email address of the user for whom this video will be recorded | [optional]
8
+ **client_id** | **String** | The client_id of the user for whom this video will be recorded | [optional]
9
+ **vid_id** | **String** | The id of the video that will be recorded | [optional]
10
+ **content** | **String** | An HTML blob that displays a video recorder | [optional]
11
+ **width** | **Integer** | The width of the video recorder | [optional]
12
+ **height** | **Integer** | the Height of the video recorder | [optional]
13
+ **https** | **BOOLEAN** | Whether communication from the recorder will be handled via HTTPS (always true) | [optional]
14
+
15
+
@@ -0,0 +1,175 @@
1
+ # BombBomb::VideosApi
2
+
3
+ All URIs are relative to *https://api.bombbomb.com/v2*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**get_video_recorder**](VideosApi.md#get_video_recorder) | **GET** /videos/live/getRecorder | Get Live Video Recorder HTML
8
+ [**mark_live_recording_complete**](VideosApi.md#mark_live_recording_complete) | **POST** /videos/live/markComplete | Completes a live recording
9
+ [**sign_upload**](VideosApi.md#sign_upload) | **POST** /video/signedUpload | Generate Signed Url
10
+
11
+
12
+ # **get_video_recorder**
13
+ > VideoRecorderMethodResponse get_video_recorder(opts)
14
+
15
+ Get Live Video Recorder HTML
16
+
17
+ Returns an object with a number of properties to help you put a video recorder on your site. This is to be used in conjunction with the VideoRecordedLive call one the user has confirmed in your UI that the video is how they want it.
18
+
19
+ ### Example
20
+ ```ruby
21
+ # load the gem
22
+ require 'bombbomb'
23
+ # setup authorization
24
+ BombBomb.configure do |config|
25
+ # Configure OAuth2 access token for authorization: BBOAuth2
26
+ config.access_token = 'YOUR ACCESS TOKEN'
27
+ end
28
+
29
+ api_instance = BombBomb::VideosApi.new
30
+
31
+ opts = {
32
+ width: 56, # Integer | The width of the recorder to present.
33
+ video_id: "video_id_example" # String | The id of the video to record
34
+ }
35
+
36
+ begin
37
+ #Get Live Video Recorder HTML
38
+ result = api_instance.get_video_recorder(opts)
39
+ p result
40
+ rescue BombBomb::ApiError => e
41
+ puts "Exception when calling VideosApi->get_video_recorder: #{e}"
42
+ end
43
+ ```
44
+
45
+ ### Parameters
46
+
47
+ Name | Type | Description | Notes
48
+ ------------- | ------------- | ------------- | -------------
49
+ **width** | **Integer**| The width of the recorder to present. | [optional]
50
+ **video_id** | **String**| The id of the video to record | [optional]
51
+
52
+ ### Return type
53
+
54
+ [**VideoRecorderMethodResponse**](VideoRecorderMethodResponse.md)
55
+
56
+ ### Authorization
57
+
58
+ [BBOAuth2](../README.md#BBOAuth2)
59
+
60
+ ### HTTP request headers
61
+
62
+ - **Content-Type**: application/x-www-form-urlencoded
63
+ - **Accept**: application/json
64
+
65
+
66
+
67
+ # **mark_live_recording_complete**
68
+ > VideoPublicRepresentation mark_live_recording_complete(video_id, filename, title)
69
+
70
+ Completes a live recording
71
+
72
+ Used in conjunction with the live recorder method to mark a video recording as complete.
73
+
74
+ ### Example
75
+ ```ruby
76
+ # load the gem
77
+ require 'bombbomb'
78
+ # setup authorization
79
+ BombBomb.configure do |config|
80
+ # Configure OAuth2 access token for authorization: BBOAuth2
81
+ config.access_token = 'YOUR ACCESS TOKEN'
82
+ end
83
+
84
+ api_instance = BombBomb::VideosApi.new
85
+
86
+ video_id = "video_id_example" # String | The id of the video to mark as done.
87
+
88
+ filename = "filename_example" # String | The filename that was chosen as the final video.
89
+
90
+ title = "title_example" # String | The title to give the video
91
+
92
+
93
+ begin
94
+ #Completes a live recording
95
+ result = api_instance.mark_live_recording_complete(video_id, filename, title)
96
+ p result
97
+ rescue BombBomb::ApiError => e
98
+ puts "Exception when calling VideosApi->mark_live_recording_complete: #{e}"
99
+ end
100
+ ```
101
+
102
+ ### Parameters
103
+
104
+ Name | Type | Description | Notes
105
+ ------------- | ------------- | ------------- | -------------
106
+ **video_id** | **String**| The id of the video to mark as done. |
107
+ **filename** | **String**| The filename that was chosen as the final video. |
108
+ **title** | **String**| The title to give the video |
109
+
110
+ ### Return type
111
+
112
+ [**VideoPublicRepresentation**](VideoPublicRepresentation.md)
113
+
114
+ ### Authorization
115
+
116
+ [BBOAuth2](../README.md#BBOAuth2)
117
+
118
+ ### HTTP request headers
119
+
120
+ - **Content-Type**: application/x-www-form-urlencoded
121
+ - **Accept**: application/json
122
+
123
+
124
+
125
+ # **sign_upload**
126
+ > String sign_upload(policy, opts)
127
+
128
+ Generate Signed Url
129
+
130
+ Generates a signed url to be used for video uploads.
131
+
132
+ ### Example
133
+ ```ruby
134
+ # load the gem
135
+ require 'bombbomb'
136
+
137
+ api_instance = BombBomb::VideosApi.new
138
+
139
+ policy = BombBomb::SignUploadRequest.new # SignUploadRequest | The policy to sign
140
+
141
+ opts = {
142
+ v4: true # BOOLEAN | Whether to do v4 signing
143
+ }
144
+
145
+ begin
146
+ #Generate Signed Url
147
+ result = api_instance.sign_upload(policy, opts)
148
+ p result
149
+ rescue BombBomb::ApiError => e
150
+ puts "Exception when calling VideosApi->sign_upload: #{e}"
151
+ end
152
+ ```
153
+
154
+ ### Parameters
155
+
156
+ Name | Type | Description | Notes
157
+ ------------- | ------------- | ------------- | -------------
158
+ **policy** | [**SignUploadRequest**](SignUploadRequest.md)| The policy to sign |
159
+ **v4** | **BOOLEAN**| Whether to do v4 signing | [optional]
160
+
161
+ ### Return type
162
+
163
+ **String**
164
+
165
+ ### Authorization
166
+
167
+ No authorization required
168
+
169
+ ### HTTP request headers
170
+
171
+ - **Content-Type**: application/json
172
+ - **Accept**: application/json
173
+
174
+
175
+
@@ -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
 
@@ -37,15 +37,23 @@ require 'bombbomb/models/inline_response_200_items'
37
37
  require 'bombbomb/models/jericho_configuration'
38
38
  require 'bombbomb/models/jericho_performance'
39
39
  require 'bombbomb/models/o_auth_client'
40
+ require 'bombbomb/models/prompt_bot_bot'
41
+ require 'bombbomb/models/sign_upload_request'
42
+ require 'bombbomb/models/sign_upload_response'
40
43
  require 'bombbomb/models/string'
41
44
  require 'bombbomb/models/team_public_representation'
42
45
  require 'bombbomb/models/video_email_prompt'
46
+ require 'bombbomb/models/video_public_representation'
47
+ require 'bombbomb/models/video_recorder_method_response'
43
48
 
44
49
  # APIs
50
+ require 'bombbomb/api/automations_api'
45
51
  require 'bombbomb/api/curriculum_api'
52
+ require 'bombbomb/api/emails_api'
46
53
  require 'bombbomb/api/prompts_api'
47
54
  require 'bombbomb/api/teams_api'
48
55
  require 'bombbomb/api/utilities_api'
56
+ require 'bombbomb/api/videos_api'
49
57
  require 'bombbomb/api/webhooks_api'
50
58
 
51
59
  module BombBomb
@@ -0,0 +1,150 @@
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 AutomationsApi
28
+ attr_accessor :api_client
29
+
30
+ def initialize(api_client = ApiClient.default)
31
+ @api_client = api_client
32
+ end
33
+
34
+ # Get Automation Email Stats
35
+ # Get Automation Email Stats
36
+ # @param drip_id The id of the drip
37
+ # @param drip_drop_id The id of the drip drop
38
+ # @param [Hash] opts the optional parameters
39
+ # @return [nil]
40
+ def get_drip_drop_stats(drip_id, drip_drop_id, opts = {})
41
+ get_drip_drop_stats_with_http_info(drip_id, drip_drop_id, opts)
42
+ return nil
43
+ end
44
+
45
+ # Get Automation Email Stats
46
+ # Get Automation Email Stats
47
+ # @param drip_id The id of the drip
48
+ # @param drip_drop_id The id of the drip drop
49
+ # @param [Hash] opts the optional parameters
50
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
51
+ def get_drip_drop_stats_with_http_info(drip_id, drip_drop_id, opts = {})
52
+ if @api_client.config.debugging
53
+ @api_client.config.logger.debug "Calling API: AutomationsApi.get_drip_drop_stats ..."
54
+ end
55
+ # verify the required parameter 'drip_id' is set
56
+ fail ArgumentError, "Missing the required parameter 'drip_id' when calling AutomationsApi.get_drip_drop_stats" if drip_id.nil?
57
+ # verify the required parameter 'drip_drop_id' is set
58
+ fail ArgumentError, "Missing the required parameter 'drip_drop_id' when calling AutomationsApi.get_drip_drop_stats" if drip_drop_id.nil?
59
+ # resource path
60
+ local_var_path = "/automation/{dripId}/dripdrop/{dripDropId}/stats".sub('{format}','json').sub('{' + 'dripId' + '}', drip_id.to_s).sub('{' + 'dripDropId' + '}', drip_drop_id.to_s)
61
+
62
+ # query parameters
63
+ query_params = {}
64
+
65
+ # header parameters
66
+ header_params = {}
67
+
68
+ # HTTP header 'Accept' (if needed)
69
+ local_header_accept = ['application/json']
70
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
71
+
72
+ # HTTP header 'Content-Type'
73
+ local_header_content_type = ['application/x-www-form-urlencoded']
74
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
75
+
76
+ # form parameters
77
+ form_params = {}
78
+
79
+ # http body (model)
80
+ post_body = nil
81
+ auth_names = ['BBOAuth2']
82
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
83
+ :header_params => header_params,
84
+ :query_params => query_params,
85
+ :form_params => form_params,
86
+ :body => post_body,
87
+ :auth_names => auth_names)
88
+ if @api_client.config.debugging
89
+ @api_client.config.logger.debug "API called: AutomationsApi#get_drip_drop_stats\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
90
+ end
91
+ return data, status_code, headers
92
+ end
93
+
94
+ # Get Automation Stats
95
+ # Get Automation Stats
96
+ # @param id The id of the automation
97
+ # @param [Hash] opts the optional parameters
98
+ # @return [nil]
99
+ def get_drip_stats(id, opts = {})
100
+ get_drip_stats_with_http_info(id, opts)
101
+ return nil
102
+ end
103
+
104
+ # Get Automation Stats
105
+ # Get Automation Stats
106
+ # @param id The id of the automation
107
+ # @param [Hash] opts the optional parameters
108
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
109
+ def get_drip_stats_with_http_info(id, opts = {})
110
+ if @api_client.config.debugging
111
+ @api_client.config.logger.debug "Calling API: AutomationsApi.get_drip_stats ..."
112
+ end
113
+ # verify the required parameter 'id' is set
114
+ fail ArgumentError, "Missing the required parameter 'id' when calling AutomationsApi.get_drip_stats" if id.nil?
115
+ # resource path
116
+ local_var_path = "/automation/{id}/stats".sub('{format}','json').sub('{' + 'id' + '}', id.to_s)
117
+
118
+ # query parameters
119
+ query_params = {}
120
+
121
+ # header parameters
122
+ header_params = {}
123
+
124
+ # HTTP header 'Accept' (if needed)
125
+ local_header_accept = ['application/json']
126
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
127
+
128
+ # HTTP header 'Content-Type'
129
+ local_header_content_type = ['application/x-www-form-urlencoded']
130
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
131
+
132
+ # form parameters
133
+ form_params = {}
134
+
135
+ # http body (model)
136
+ post_body = nil
137
+ auth_names = ['BBOAuth2']
138
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
139
+ :header_params => header_params,
140
+ :query_params => query_params,
141
+ :form_params => form_params,
142
+ :body => post_body,
143
+ :auth_names => auth_names)
144
+ if @api_client.config.debugging
145
+ @api_client.config.logger.debug "API called: AutomationsApi#get_drip_stats\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
146
+ end
147
+ return data, status_code, headers
148
+ end
149
+ end
150
+ 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