late-sdk 0.0.103 → 0.0.105

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 (78) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -29
  3. data/docs/AdCampaignsApi.md +86 -0
  4. data/docs/AdTreeAdSet.md +30 -0
  5. data/docs/AdTreeCampaign.md +40 -0
  6. data/docs/GetAdTree200Response.md +20 -0
  7. data/lib/late-sdk/api/ad_campaigns_api.rb +105 -0
  8. data/lib/late-sdk/models/{hashtag_info.rb → ad_tree_ad_set.rb} +59 -18
  9. data/lib/late-sdk/models/{check_instagram_hashtags200_response_results_inner.rb → ad_tree_campaign.rb} +113 -24
  10. data/lib/late-sdk/models/{hashtag_check_response.rb → get_ad_tree200_response.rb} +20 -11
  11. data/lib/late-sdk/version.rb +1 -1
  12. data/lib/late-sdk.rb +3 -21
  13. data/openapi.yaml +80 -481
  14. data/spec/api/ad_campaigns_api_spec.rb +19 -0
  15. data/spec/models/{download_you_tube_video200_response_formats_inner_spec.rb → ad_tree_ad_set_spec.rb} +22 -12
  16. data/spec/models/ad_tree_campaign_spec.rb +110 -0
  17. data/spec/models/{transcript_segment_spec.rb → get_ad_tree200_response_spec.rb} +8 -14
  18. data/zernio-sdk-0.0.105.gem +0 -0
  19. metadata +14 -86
  20. data/docs/CaptionResponse.md +0 -18
  21. data/docs/CheckInstagramHashtags200Response.md +0 -22
  22. data/docs/CheckInstagramHashtags200ResponseResultsInner.md +0 -24
  23. data/docs/CheckInstagramHashtags200ResponseSummary.md +0 -22
  24. data/docs/CheckInstagramHashtagsRequest.md +0 -18
  25. data/docs/DownloadBlueskyMedia200Response.md +0 -26
  26. data/docs/DownloadFacebookVideo200Response.md +0 -24
  27. data/docs/DownloadFormat.md +0 -26
  28. data/docs/DownloadInstagramMedia200Response.md +0 -22
  29. data/docs/DownloadResponse.md +0 -26
  30. data/docs/DownloadTikTokVideo200Response.md +0 -24
  31. data/docs/DownloadTikTokVideo200ResponseFormatsInner.md +0 -22
  32. data/docs/DownloadYouTubeVideo200Response.md +0 -24
  33. data/docs/DownloadYouTubeVideo200ResponseFormatsInner.md +0 -28
  34. data/docs/GetYouTubeTranscript200Response.md +0 -26
  35. data/docs/GetYouTubeTranscript200ResponseSegmentsInner.md +0 -22
  36. data/docs/HashtagCheckResponse.md +0 -18
  37. data/docs/HashtagInfo.md +0 -22
  38. data/docs/ToolsApi.md +0 -663
  39. data/docs/TranscriptResponse.md +0 -22
  40. data/docs/TranscriptSegment.md +0 -22
  41. data/lib/late-sdk/api/tools_api.rb +0 -649
  42. data/lib/late-sdk/models/caption_response.rb +0 -147
  43. data/lib/late-sdk/models/check_instagram_hashtags200_response.rb +0 -167
  44. data/lib/late-sdk/models/check_instagram_hashtags200_response_summary.rb +0 -165
  45. data/lib/late-sdk/models/check_instagram_hashtags_request.rb +0 -175
  46. data/lib/late-sdk/models/download_bluesky_media200_response.rb +0 -183
  47. data/lib/late-sdk/models/download_facebook_video200_response.rb +0 -174
  48. data/lib/late-sdk/models/download_format.rb +0 -183
  49. data/lib/late-sdk/models/download_instagram_media200_response.rb +0 -165
  50. data/lib/late-sdk/models/download_response.rb +0 -185
  51. data/lib/late-sdk/models/download_tik_tok_video200_response.rb +0 -176
  52. data/lib/late-sdk/models/download_tik_tok_video200_response_formats_inner.rb +0 -165
  53. data/lib/late-sdk/models/download_you_tube_video200_response.rb +0 -176
  54. data/lib/late-sdk/models/download_you_tube_video200_response_formats_inner.rb +0 -192
  55. data/lib/late-sdk/models/get_you_tube_transcript200_response.rb +0 -185
  56. data/lib/late-sdk/models/get_you_tube_transcript200_response_segments_inner.rb +0 -165
  57. data/lib/late-sdk/models/transcript_response.rb +0 -167
  58. data/lib/late-sdk/models/transcript_segment.rb +0 -165
  59. data/spec/api/tools_api_spec.rb +0 -152
  60. data/spec/models/caption_response_spec.rb +0 -36
  61. data/spec/models/check_instagram_hashtags200_response_results_inner_spec.rb +0 -58
  62. data/spec/models/check_instagram_hashtags200_response_spec.rb +0 -48
  63. data/spec/models/check_instagram_hashtags200_response_summary_spec.rb +0 -48
  64. data/spec/models/check_instagram_hashtags_request_spec.rb +0 -36
  65. data/spec/models/download_bluesky_media200_response_spec.rb +0 -60
  66. data/spec/models/download_facebook_video200_response_spec.rb +0 -54
  67. data/spec/models/download_format_spec.rb +0 -60
  68. data/spec/models/download_instagram_media200_response_spec.rb +0 -48
  69. data/spec/models/download_response_spec.rb +0 -60
  70. data/spec/models/download_tik_tok_video200_response_formats_inner_spec.rb +0 -48
  71. data/spec/models/download_tik_tok_video200_response_spec.rb +0 -54
  72. data/spec/models/download_you_tube_video200_response_spec.rb +0 -54
  73. data/spec/models/get_you_tube_transcript200_response_segments_inner_spec.rb +0 -48
  74. data/spec/models/get_you_tube_transcript200_response_spec.rb +0 -60
  75. data/spec/models/hashtag_check_response_spec.rb +0 -36
  76. data/spec/models/hashtag_info_spec.rb +0 -52
  77. data/spec/models/transcript_response_spec.rb +0 -48
  78. data/zernio-sdk-0.0.103.gem +0 -0
@@ -14,14 +14,33 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Late
17
- class CheckInstagramHashtags200ResponseResultsInner < ApiModelBase
18
- attr_accessor :hashtag
17
+ # Campaign with nested ad sets and rolled-up metrics
18
+ class AdTreeCampaign < ApiModelBase
19
+ attr_accessor :platform_campaign_id
19
20
 
21
+ attr_accessor :platform
22
+
23
+ attr_accessor :campaign_name
24
+
25
+ # Derived from child ad statuses
20
26
  attr_accessor :status
21
27
 
22
- attr_accessor :reason
28
+ # Total ads across all ad sets
29
+ attr_accessor :ad_count
30
+
31
+ attr_accessor :ad_set_count
32
+
33
+ attr_accessor :budget
34
+
35
+ attr_accessor :metrics
36
+
37
+ attr_accessor :platform_ad_account_id
38
+
39
+ attr_accessor :account_id
40
+
41
+ attr_accessor :profile_id
23
42
 
24
- attr_accessor :confidence
43
+ attr_accessor :ad_sets
25
44
 
26
45
  class EnumAttributeValidator
27
46
  attr_reader :datatype
@@ -48,10 +67,18 @@ module Late
48
67
  # Attribute mapping from ruby-style variable name to JSON key.
49
68
  def self.attribute_map
50
69
  {
51
- :'hashtag' => :'hashtag',
70
+ :'platform_campaign_id' => :'platformCampaignId',
71
+ :'platform' => :'platform',
72
+ :'campaign_name' => :'campaignName',
52
73
  :'status' => :'status',
53
- :'reason' => :'reason',
54
- :'confidence' => :'confidence'
74
+ :'ad_count' => :'adCount',
75
+ :'ad_set_count' => :'adSetCount',
76
+ :'budget' => :'budget',
77
+ :'metrics' => :'metrics',
78
+ :'platform_ad_account_id' => :'platformAdAccountId',
79
+ :'account_id' => :'accountId',
80
+ :'profile_id' => :'profileId',
81
+ :'ad_sets' => :'adSets'
55
82
  }
56
83
  end
57
84
 
@@ -68,10 +95,18 @@ module Late
68
95
  # Attribute type mapping.
69
96
  def self.openapi_types
70
97
  {
71
- :'hashtag' => :'String',
98
+ :'platform_campaign_id' => :'String',
99
+ :'platform' => :'String',
100
+ :'campaign_name' => :'String',
72
101
  :'status' => :'String',
73
- :'reason' => :'String',
74
- :'confidence' => :'Float'
102
+ :'ad_count' => :'Integer',
103
+ :'ad_set_count' => :'Integer',
104
+ :'budget' => :'AdBudget',
105
+ :'metrics' => :'AdMetrics',
106
+ :'platform_ad_account_id' => :'String',
107
+ :'account_id' => :'String',
108
+ :'profile_id' => :'String',
109
+ :'ad_sets' => :'Array<AdTreeAdSet>'
75
110
  }
76
111
  end
77
112
 
@@ -85,32 +120,66 @@ module Late
85
120
  # @param [Hash] attributes Model attributes in the form of hash
86
121
  def initialize(attributes = {})
87
122
  if (!attributes.is_a?(Hash))
88
- fail ArgumentError, "The input argument (attributes) must be a hash in `Late::CheckInstagramHashtags200ResponseResultsInner` initialize method"
123
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Late::AdTreeCampaign` initialize method"
89
124
  end
90
125
 
91
126
  # check to see if the attribute exists and convert string to symbol for hash key
92
127
  acceptable_attribute_map = self.class.acceptable_attribute_map
93
128
  attributes = attributes.each_with_object({}) { |(k, v), h|
94
129
  if (!acceptable_attribute_map.key?(k.to_sym))
95
- fail ArgumentError, "`#{k}` is not a valid attribute in `Late::CheckInstagramHashtags200ResponseResultsInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
130
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Late::AdTreeCampaign`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
96
131
  end
97
132
  h[k.to_sym] = v
98
133
  }
99
134
 
100
- if attributes.key?(:'hashtag')
101
- self.hashtag = attributes[:'hashtag']
135
+ if attributes.key?(:'platform_campaign_id')
136
+ self.platform_campaign_id = attributes[:'platform_campaign_id']
137
+ end
138
+
139
+ if attributes.key?(:'platform')
140
+ self.platform = attributes[:'platform']
141
+ end
142
+
143
+ if attributes.key?(:'campaign_name')
144
+ self.campaign_name = attributes[:'campaign_name']
102
145
  end
103
146
 
104
147
  if attributes.key?(:'status')
105
148
  self.status = attributes[:'status']
106
149
  end
107
150
 
108
- if attributes.key?(:'reason')
109
- self.reason = attributes[:'reason']
151
+ if attributes.key?(:'ad_count')
152
+ self.ad_count = attributes[:'ad_count']
110
153
  end
111
154
 
112
- if attributes.key?(:'confidence')
113
- self.confidence = attributes[:'confidence']
155
+ if attributes.key?(:'ad_set_count')
156
+ self.ad_set_count = attributes[:'ad_set_count']
157
+ end
158
+
159
+ if attributes.key?(:'budget')
160
+ self.budget = attributes[:'budget']
161
+ end
162
+
163
+ if attributes.key?(:'metrics')
164
+ self.metrics = attributes[:'metrics']
165
+ end
166
+
167
+ if attributes.key?(:'platform_ad_account_id')
168
+ self.platform_ad_account_id = attributes[:'platform_ad_account_id']
169
+ end
170
+
171
+ if attributes.key?(:'account_id')
172
+ self.account_id = attributes[:'account_id']
173
+ end
174
+
175
+ if attributes.key?(:'profile_id')
176
+ self.profile_id = attributes[:'profile_id']
177
+ end
178
+
179
+ if attributes.key?(:'ad_sets')
180
+ if (value = attributes[:'ad_sets']).is_a?(Array)
181
+ self.ad_sets = value
182
+ end
114
183
  end
115
184
  end
116
185
 
@@ -126,15 +195,27 @@ module Late
126
195
  # @return true if the model is valid
127
196
  def valid?
128
197
  warn '[DEPRECATED] the `valid?` method is obsolete'
129
- status_validator = EnumAttributeValidator.new('String', ["banned", "restricted", "safe", "unknown"])
198
+ platform_validator = EnumAttributeValidator.new('String', ["facebook", "instagram", "tiktok", "linkedin", "pinterest", "google", "twitter"])
199
+ return false unless platform_validator.valid?(@platform)
200
+ status_validator = EnumAttributeValidator.new('String', ["active", "paused", "pending_review", "rejected", "completed", "cancelled", "error"])
130
201
  return false unless status_validator.valid?(@status)
131
202
  true
132
203
  end
133
204
 
205
+ # Custom attribute writer method checking allowed values (enum).
206
+ # @param [Object] platform Object to be assigned
207
+ def platform=(platform)
208
+ validator = EnumAttributeValidator.new('String', ["facebook", "instagram", "tiktok", "linkedin", "pinterest", "google", "twitter"])
209
+ unless validator.valid?(platform)
210
+ fail ArgumentError, "invalid value for \"platform\", must be one of #{validator.allowable_values}."
211
+ end
212
+ @platform = platform
213
+ end
214
+
134
215
  # Custom attribute writer method checking allowed values (enum).
135
216
  # @param [Object] status Object to be assigned
136
217
  def status=(status)
137
- validator = EnumAttributeValidator.new('String', ["banned", "restricted", "safe", "unknown"])
218
+ validator = EnumAttributeValidator.new('String', ["active", "paused", "pending_review", "rejected", "completed", "cancelled", "error"])
138
219
  unless validator.valid?(status)
139
220
  fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
140
221
  end
@@ -146,10 +227,18 @@ module Late
146
227
  def ==(o)
147
228
  return true if self.equal?(o)
148
229
  self.class == o.class &&
149
- hashtag == o.hashtag &&
230
+ platform_campaign_id == o.platform_campaign_id &&
231
+ platform == o.platform &&
232
+ campaign_name == o.campaign_name &&
150
233
  status == o.status &&
151
- reason == o.reason &&
152
- confidence == o.confidence
234
+ ad_count == o.ad_count &&
235
+ ad_set_count == o.ad_set_count &&
236
+ budget == o.budget &&
237
+ metrics == o.metrics &&
238
+ platform_ad_account_id == o.platform_ad_account_id &&
239
+ account_id == o.account_id &&
240
+ profile_id == o.profile_id &&
241
+ ad_sets == o.ad_sets
153
242
  end
154
243
 
155
244
  # @see the `==` method
@@ -161,7 +250,7 @@ module Late
161
250
  # Calculates hash code according to all attributes.
162
251
  # @return [Integer] Hash code
163
252
  def hash
164
- [hashtag, status, reason, confidence].hash
253
+ [platform_campaign_id, platform, campaign_name, status, ad_count, ad_set_count, budget, metrics, platform_ad_account_id, account_id, profile_id, ad_sets].hash
165
254
  end
166
255
 
167
256
  # Builds the object from hash
@@ -14,13 +14,16 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Late
17
- class HashtagCheckResponse < ApiModelBase
18
- attr_accessor :hashtags
17
+ class GetAdTree200Response < ApiModelBase
18
+ attr_accessor :campaigns
19
+
20
+ attr_accessor :pagination
19
21
 
20
22
  # Attribute mapping from ruby-style variable name to JSON key.
21
23
  def self.attribute_map
22
24
  {
23
- :'hashtags' => :'hashtags'
25
+ :'campaigns' => :'campaigns',
26
+ :'pagination' => :'pagination'
24
27
  }
25
28
  end
26
29
 
@@ -37,7 +40,8 @@ module Late
37
40
  # Attribute type mapping.
38
41
  def self.openapi_types
39
42
  {
40
- :'hashtags' => :'Array<HashtagInfo>'
43
+ :'campaigns' => :'Array<AdTreeCampaign>',
44
+ :'pagination' => :'Pagination'
41
45
  }
42
46
  end
43
47
 
@@ -51,23 +55,27 @@ module Late
51
55
  # @param [Hash] attributes Model attributes in the form of hash
52
56
  def initialize(attributes = {})
53
57
  if (!attributes.is_a?(Hash))
54
- fail ArgumentError, "The input argument (attributes) must be a hash in `Late::HashtagCheckResponse` initialize method"
58
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Late::GetAdTree200Response` initialize method"
55
59
  end
56
60
 
57
61
  # check to see if the attribute exists and convert string to symbol for hash key
58
62
  acceptable_attribute_map = self.class.acceptable_attribute_map
59
63
  attributes = attributes.each_with_object({}) { |(k, v), h|
60
64
  if (!acceptable_attribute_map.key?(k.to_sym))
61
- fail ArgumentError, "`#{k}` is not a valid attribute in `Late::HashtagCheckResponse`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
65
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Late::GetAdTree200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
62
66
  end
63
67
  h[k.to_sym] = v
64
68
  }
65
69
 
66
- if attributes.key?(:'hashtags')
67
- if (value = attributes[:'hashtags']).is_a?(Array)
68
- self.hashtags = value
70
+ if attributes.key?(:'campaigns')
71
+ if (value = attributes[:'campaigns']).is_a?(Array)
72
+ self.campaigns = value
69
73
  end
70
74
  end
75
+
76
+ if attributes.key?(:'pagination')
77
+ self.pagination = attributes[:'pagination']
78
+ end
71
79
  end
72
80
 
73
81
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -90,7 +98,8 @@ module Late
90
98
  def ==(o)
91
99
  return true if self.equal?(o)
92
100
  self.class == o.class &&
93
- hashtags == o.hashtags
101
+ campaigns == o.campaigns &&
102
+ pagination == o.pagination
94
103
  end
95
104
 
96
105
  # @see the `==` method
@@ -102,7 +111,7 @@ module Late
102
111
  # Calculates hash code according to all attributes.
103
112
  # @return [Integer] Hash code
104
113
  def hash
105
- [hashtags].hash
114
+ [campaigns, pagination].hash
106
115
  end
107
116
 
108
117
  # Builds the object from hash
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Late
14
- VERSION = '0.0.103'
14
+ VERSION = '0.0.105'
15
15
  end
data/lib/late-sdk.rb CHANGED
@@ -28,6 +28,8 @@ require 'late-sdk/models/ad_budget'
28
28
  require 'late-sdk/models/ad_campaign'
29
29
  require 'late-sdk/models/ad_metrics'
30
30
  require 'late-sdk/models/ad_schedule'
31
+ require 'late-sdk/models/ad_tree_ad_set'
32
+ require 'late-sdk/models/ad_tree_campaign'
31
33
  require 'late-sdk/models/add_broadcast_recipients200_response'
32
34
  require 'late-sdk/models/add_broadcast_recipients_request'
33
35
  require 'late-sdk/models/add_message_reaction_request'
@@ -69,11 +71,6 @@ require 'late-sdk/models/cancel_broadcast200_response'
69
71
  require 'late-sdk/models/cancel_broadcast200_response_broadcast'
70
72
  require 'late-sdk/models/cancel_whats_app_broadcast_schedule200_response'
71
73
  require 'late-sdk/models/cancel_whats_app_broadcast_schedule200_response_broadcast'
72
- require 'late-sdk/models/caption_response'
73
- require 'late-sdk/models/check_instagram_hashtags200_response'
74
- require 'late-sdk/models/check_instagram_hashtags200_response_results_inner'
75
- require 'late-sdk/models/check_instagram_hashtags200_response_summary'
76
- require 'late-sdk/models/check_instagram_hashtags_request'
77
74
  require 'late-sdk/models/complete_telegram_connect200_response'
78
75
  require 'late-sdk/models/connect_bluesky_credentials200_response'
79
76
  require 'late-sdk/models/connect_bluesky_credentials_request'
@@ -157,15 +154,6 @@ require 'late-sdk/models/delete_inbox_review_reply200_response'
157
154
  require 'late-sdk/models/delete_inbox_review_reply_request'
158
155
  require 'late-sdk/models/delete_queue_slot200_response'
159
156
  require 'late-sdk/models/delete_whats_app_group_request'
160
- require 'late-sdk/models/download_bluesky_media200_response'
161
- require 'late-sdk/models/download_facebook_video200_response'
162
- require 'late-sdk/models/download_format'
163
- require 'late-sdk/models/download_instagram_media200_response'
164
- require 'late-sdk/models/download_response'
165
- require 'late-sdk/models/download_tik_tok_video200_response'
166
- require 'late-sdk/models/download_tik_tok_video200_response_formats_inner'
167
- require 'late-sdk/models/download_you_tube_video200_response'
168
- require 'late-sdk/models/download_you_tube_video200_response_formats_inner'
169
157
  require 'late-sdk/models/edit_inbox_message200_response'
170
158
  require 'late-sdk/models/edit_inbox_message200_response_data'
171
159
  require 'late-sdk/models/edit_inbox_message_request'
@@ -199,6 +187,7 @@ require 'late-sdk/models/get_ad_analytics200_response_ad'
199
187
  require 'late-sdk/models/get_ad_analytics200_response_analytics'
200
188
  require 'late-sdk/models/get_ad_analytics200_response_analytics_daily_inner'
201
189
  require 'late-sdk/models/get_ad_audience200_response'
190
+ require 'late-sdk/models/get_ad_tree200_response'
202
191
  require 'late-sdk/models/get_all_accounts_health200_response'
203
192
  require 'late-sdk/models/get_all_accounts_health200_response_accounts_inner'
204
193
  require 'late-sdk/models/get_all_accounts_health200_response_summary'
@@ -355,15 +344,11 @@ require 'late-sdk/models/get_whats_app_templates200_response_templates_inner'
355
344
  require 'late-sdk/models/get_you_tube_daily_views400_response'
356
345
  require 'late-sdk/models/get_you_tube_daily_views403_response'
357
346
  require 'late-sdk/models/get_you_tube_daily_views500_response'
358
- require 'late-sdk/models/get_you_tube_transcript200_response'
359
- require 'late-sdk/models/get_you_tube_transcript200_response_segments_inner'
360
347
  require 'late-sdk/models/get_youtube_playlists200_response'
361
348
  require 'late-sdk/models/get_youtube_playlists200_response_playlists_inner'
362
349
  require 'late-sdk/models/google_business_platform_data'
363
350
  require 'late-sdk/models/google_business_platform_data_call_to_action'
364
351
  require 'late-sdk/models/handle_o_auth_callback_request'
365
- require 'late-sdk/models/hashtag_check_response'
366
- require 'late-sdk/models/hashtag_info'
367
352
  require 'late-sdk/models/hide_inbox_comment200_response'
368
353
  require 'late-sdk/models/hide_inbox_comment_request'
369
354
  require 'late-sdk/models/import_whats_app_contacts200_response'
@@ -592,8 +577,6 @@ require 'late-sdk/models/telegram_platform_data'
592
577
  require 'late-sdk/models/test_webhook_request'
593
578
  require 'late-sdk/models/threads_platform_data'
594
579
  require 'late-sdk/models/tik_tok_platform_data'
595
- require 'late-sdk/models/transcript_response'
596
- require 'late-sdk/models/transcript_segment'
597
580
  require 'late-sdk/models/twitter_platform_data'
598
581
  require 'late-sdk/models/twitter_platform_data_poll'
599
582
  require 'late-sdk/models/twitter_platform_data_thread_items_inner'
@@ -775,7 +758,6 @@ require 'late-sdk/api/queue_api'
775
758
  require 'late-sdk/api/reddit_search_api'
776
759
  require 'late-sdk/api/reviews_api'
777
760
  require 'late-sdk/api/sequences_api'
778
- require 'late-sdk/api/tools_api'
779
761
  require 'late-sdk/api/twitter_engagement_api'
780
762
  require 'late-sdk/api/usage_api'
781
763
  require 'late-sdk/api/users_api'