late-sdk 0.0.97 → 0.0.99

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 (128) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +53 -0
  3. data/docs/Ad.md +58 -0
  4. data/docs/AdAudiencesApi.md +365 -0
  5. data/docs/AdBudget.md +20 -0
  6. data/docs/AdCampaign.md +40 -0
  7. data/docs/AdCampaignsApi.md +165 -0
  8. data/docs/AdMetrics.md +34 -0
  9. data/docs/AdSchedule.md +20 -0
  10. data/docs/AddUsersToAdAudience200Response.md +22 -0
  11. data/docs/AddUsersToAdAudienceRequest.md +18 -0
  12. data/docs/AddUsersToAdAudienceRequestUsersInner.md +20 -0
  13. data/docs/AdsApi.md +726 -0
  14. data/docs/BoostPostRequest.md +36 -0
  15. data/docs/BoostPostRequestBudget.md +20 -0
  16. data/docs/BoostPostRequestSchedule.md +20 -0
  17. data/docs/BoostPostRequestTargeting.md +24 -0
  18. data/docs/CreateAdAudience201Response.md +20 -0
  19. data/docs/CreateAdAudienceRequest.md +36 -0
  20. data/docs/CreateStandaloneAdRequest.md +56 -0
  21. data/docs/GetAd200Response.md +18 -0
  22. data/docs/GetAdAnalytics200Response.md +20 -0
  23. data/docs/GetAdAnalytics200ResponseAd.md +24 -0
  24. data/docs/GetAdAnalytics200ResponseAnalytics.md +22 -0
  25. data/docs/GetAdAnalytics200ResponseAnalyticsDailyInner.md +36 -0
  26. data/docs/GetAdAudience200Response.md +20 -0
  27. data/docs/ListAdAccounts200Response.md +18 -0
  28. data/docs/ListAdAccounts200ResponseAccountsInner.md +24 -0
  29. data/docs/ListAdAudiences200Response.md +18 -0
  30. data/docs/ListAdAudiences200ResponseAudiencesInner.md +32 -0
  31. data/docs/ListAdCampaigns200Response.md +20 -0
  32. data/docs/ListAds200Response.md +20 -0
  33. data/docs/SearchAdInterests200Response.md +18 -0
  34. data/docs/SearchAdInterests200ResponseInterestsInner.md +22 -0
  35. data/docs/SyncExternalAds200Response.md +24 -0
  36. data/docs/UpdateAd200Response.md +20 -0
  37. data/docs/UpdateAdCampaignStatus200Response.md +22 -0
  38. data/docs/UpdateAdCampaignStatusRequest.md +20 -0
  39. data/docs/UpdateAdRequest.md +24 -0
  40. data/docs/UpdateAdRequestBudget.md +20 -0
  41. data/docs/UpdateAdRequestTargeting.md +24 -0
  42. data/docs/UpdatePostMetadataRequest.md +7 -1
  43. data/lib/late-sdk/api/ad_audiences_api.rb +368 -0
  44. data/lib/late-sdk/api/ad_campaigns_api.rb +201 -0
  45. data/lib/late-sdk/api/ads_api.rb +719 -0
  46. data/lib/late-sdk/models/ad.rb +399 -0
  47. data/lib/late-sdk/models/ad_budget.rb +190 -0
  48. data/lib/late-sdk/models/ad_campaign.rb +293 -0
  49. data/lib/late-sdk/models/ad_metrics.rb +222 -0
  50. data/lib/late-sdk/models/ad_schedule.rb +156 -0
  51. data/lib/late-sdk/models/add_users_to_ad_audience200_response.rb +165 -0
  52. data/lib/late-sdk/models/add_users_to_ad_audience_request.rb +175 -0
  53. data/lib/late-sdk/models/add_users_to_ad_audience_request_users_inner.rb +157 -0
  54. data/lib/late-sdk/models/boost_post_request.rb +350 -0
  55. data/lib/late-sdk/models/boost_post_request_budget.rb +215 -0
  56. data/lib/late-sdk/models/boost_post_request_schedule.rb +157 -0
  57. data/lib/late-sdk/models/boost_post_request_targeting.rb +234 -0
  58. data/lib/late-sdk/models/create_ad_audience201_response.rb +156 -0
  59. data/lib/late-sdk/models/create_ad_audience_request.rb +391 -0
  60. data/lib/late-sdk/models/create_standalone_ad_request.rb +585 -0
  61. data/lib/late-sdk/models/get_ad200_response.rb +147 -0
  62. data/lib/late-sdk/models/get_ad_analytics200_response.rb +156 -0
  63. data/lib/late-sdk/models/get_ad_analytics200_response_ad.rb +174 -0
  64. data/lib/late-sdk/models/get_ad_analytics200_response_analytics.rb +169 -0
  65. data/lib/late-sdk/models/get_ad_analytics200_response_analytics_daily_inner.rb +238 -0
  66. data/lib/late-sdk/models/get_ad_audience200_response.rb +157 -0
  67. data/lib/late-sdk/models/list_ad_accounts200_response.rb +149 -0
  68. data/lib/late-sdk/models/list_ad_accounts200_response_accounts_inner.rb +175 -0
  69. data/lib/late-sdk/models/list_ad_audiences200_response.rb +149 -0
  70. data/lib/late-sdk/models/list_ad_audiences200_response_audiences_inner.rb +244 -0
  71. data/lib/late-sdk/models/list_ad_campaigns200_response.rb +158 -0
  72. data/lib/late-sdk/models/list_ads200_response.rb +158 -0
  73. data/lib/late-sdk/models/search_ad_interests200_response.rb +149 -0
  74. data/lib/late-sdk/models/search_ad_interests200_response_interests_inner.rb +165 -0
  75. data/lib/late-sdk/models/sync_external_ads200_response.rb +177 -0
  76. data/lib/late-sdk/models/update_ad200_response.rb +156 -0
  77. data/lib/late-sdk/models/update_ad_campaign_status200_response.rb +169 -0
  78. data/lib/late-sdk/models/update_ad_campaign_status_request.rb +216 -0
  79. data/lib/late-sdk/models/update_ad_request.rb +208 -0
  80. data/lib/late-sdk/models/update_ad_request_budget.rb +191 -0
  81. data/lib/late-sdk/models/update_ad_request_targeting.rb +235 -0
  82. data/lib/late-sdk/models/update_post_metadata_request.rb +34 -4
  83. data/lib/late-sdk/version.rb +1 -1
  84. data/lib/late-sdk.rb +39 -0
  85. data/openapi.yaml +693 -0
  86. data/spec/api/ad_audiences_api_spec.rb +98 -0
  87. data/spec/api/ad_campaigns_api_spec.rb +67 -0
  88. data/spec/api/ads_api_spec.rb +163 -0
  89. data/spec/models/ad_budget_spec.rb +46 -0
  90. data/spec/models/ad_campaign_spec.rb +110 -0
  91. data/spec/models/ad_metrics_spec.rb +84 -0
  92. data/spec/models/ad_schedule_spec.rb +42 -0
  93. data/spec/models/ad_spec.rb +172 -0
  94. data/spec/models/add_users_to_ad_audience200_response_spec.rb +48 -0
  95. data/spec/models/add_users_to_ad_audience_request_spec.rb +36 -0
  96. data/spec/models/add_users_to_ad_audience_request_users_inner_spec.rb +42 -0
  97. data/spec/models/boost_post_request_budget_spec.rb +46 -0
  98. data/spec/models/boost_post_request_schedule_spec.rb +42 -0
  99. data/spec/models/boost_post_request_spec.rb +94 -0
  100. data/spec/models/boost_post_request_targeting_spec.rb +54 -0
  101. data/spec/models/create_ad_audience201_response_spec.rb +42 -0
  102. data/spec/models/create_ad_audience_request_spec.rb +94 -0
  103. data/spec/models/create_standalone_ad_request_spec.rb +166 -0
  104. data/spec/models/get_ad200_response_spec.rb +36 -0
  105. data/spec/models/get_ad_analytics200_response_ad_spec.rb +54 -0
  106. data/spec/models/get_ad_analytics200_response_analytics_daily_inner_spec.rb +90 -0
  107. data/spec/models/get_ad_analytics200_response_analytics_spec.rb +48 -0
  108. data/spec/models/get_ad_analytics200_response_spec.rb +42 -0
  109. data/spec/models/get_ad_audience200_response_spec.rb +42 -0
  110. data/spec/models/list_ad_accounts200_response_accounts_inner_spec.rb +54 -0
  111. data/spec/models/list_ad_accounts200_response_spec.rb +36 -0
  112. data/spec/models/list_ad_audiences200_response_audiences_inner_spec.rb +82 -0
  113. data/spec/models/list_ad_audiences200_response_spec.rb +36 -0
  114. data/spec/models/list_ad_campaigns200_response_spec.rb +42 -0
  115. data/spec/models/list_ads200_response_spec.rb +42 -0
  116. data/spec/models/search_ad_interests200_response_interests_inner_spec.rb +48 -0
  117. data/spec/models/search_ad_interests200_response_spec.rb +36 -0
  118. data/spec/models/sync_external_ads200_response_spec.rb +54 -0
  119. data/spec/models/update_ad200_response_spec.rb +42 -0
  120. data/spec/models/update_ad_campaign_status200_response_spec.rb +48 -0
  121. data/spec/models/update_ad_campaign_status_request_spec.rb +50 -0
  122. data/spec/models/update_ad_request_budget_spec.rb +46 -0
  123. data/spec/models/update_ad_request_spec.rb +58 -0
  124. data/spec/models/update_ad_request_targeting_spec.rb +54 -0
  125. data/spec/models/update_post_metadata_request_spec.rb +18 -0
  126. data/zernio-sdk-0.0.99.gem +0 -0
  127. metadata +159 -3
  128. data/zernio-sdk-0.0.97.gem +0 -0
@@ -0,0 +1,165 @@
1
+ # Late::AdCampaignsApi
2
+
3
+ All URIs are relative to *https://zernio.com/api*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**list_ad_campaigns**](AdCampaignsApi.md#list_ad_campaigns) | **GET** /v1/ads/campaigns | List campaigns with aggregate metrics |
8
+ | [**update_ad_campaign_status**](AdCampaignsApi.md#update_ad_campaign_status) | **PUT** /v1/ads/campaigns/{campaignId}/status | Pause or resume a campaign |
9
+
10
+
11
+ ## list_ad_campaigns
12
+
13
+ > <ListAdCampaigns200Response> list_ad_campaigns(opts)
14
+
15
+ List campaigns with aggregate metrics
16
+
17
+ Returns campaigns as virtual aggregations over ad documents grouped by platform campaign ID. Metrics (spend, impressions, clicks, etc.) are summed across all ads in each campaign. Campaign status is derived from child ad statuses (active > pending_review > paused > error > completed > cancelled > rejected).
18
+
19
+ ### Examples
20
+
21
+ ```ruby
22
+ require 'time'
23
+ require 'late-sdk'
24
+ # setup authorization
25
+ Late.configure do |config|
26
+ # Configure Bearer authorization (JWT): bearerAuth
27
+ config.access_token = 'YOUR_BEARER_TOKEN'
28
+ end
29
+
30
+ api_instance = Late::AdCampaignsApi.new
31
+ opts = {
32
+ page: 56, # Integer | Page number (1-based)
33
+ limit: 56, # Integer |
34
+ source: 'zernio', # String |
35
+ platform: 'facebook', # String |
36
+ status: 'active', # String | Filter by derived campaign status (post-aggregation)
37
+ ad_account_id: 'ad_account_id_example', # String | Platform ad account ID (e.g. act_123 for Meta)
38
+ account_id: 'account_id_example', # String | Social account ID
39
+ profile_id: 'profile_id_example' # String | Profile ID
40
+ }
41
+
42
+ begin
43
+ # List campaigns with aggregate metrics
44
+ result = api_instance.list_ad_campaigns(opts)
45
+ p result
46
+ rescue Late::ApiError => e
47
+ puts "Error when calling AdCampaignsApi->list_ad_campaigns: #{e}"
48
+ end
49
+ ```
50
+
51
+ #### Using the list_ad_campaigns_with_http_info variant
52
+
53
+ This returns an Array which contains the response data, status code and headers.
54
+
55
+ > <Array(<ListAdCampaigns200Response>, Integer, Hash)> list_ad_campaigns_with_http_info(opts)
56
+
57
+ ```ruby
58
+ begin
59
+ # List campaigns with aggregate metrics
60
+ data, status_code, headers = api_instance.list_ad_campaigns_with_http_info(opts)
61
+ p status_code # => 2xx
62
+ p headers # => { ... }
63
+ p data # => <ListAdCampaigns200Response>
64
+ rescue Late::ApiError => e
65
+ puts "Error when calling AdCampaignsApi->list_ad_campaigns_with_http_info: #{e}"
66
+ end
67
+ ```
68
+
69
+ ### Parameters
70
+
71
+ | Name | Type | Description | Notes |
72
+ | ---- | ---- | ----------- | ----- |
73
+ | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
74
+ | **limit** | **Integer** | | [optional][default to 20] |
75
+ | **source** | **String** | | [optional][default to &#39;zernio&#39;] |
76
+ | **platform** | **String** | | [optional] |
77
+ | **status** | **String** | Filter by derived campaign status (post-aggregation) | [optional] |
78
+ | **ad_account_id** | **String** | Platform ad account ID (e.g. act_123 for Meta) | [optional] |
79
+ | **account_id** | **String** | Social account ID | [optional] |
80
+ | **profile_id** | **String** | Profile ID | [optional] |
81
+
82
+ ### Return type
83
+
84
+ [**ListAdCampaigns200Response**](ListAdCampaigns200Response.md)
85
+
86
+ ### Authorization
87
+
88
+ [bearerAuth](../README.md#bearerAuth)
89
+
90
+ ### HTTP request headers
91
+
92
+ - **Content-Type**: Not defined
93
+ - **Accept**: application/json
94
+
95
+
96
+ ## update_ad_campaign_status
97
+
98
+ > <UpdateAdCampaignStatus200Response> update_ad_campaign_status(campaign_id, update_ad_campaign_status_request)
99
+
100
+ Pause or resume a campaign
101
+
102
+ Updates the status of all ads in a campaign. Makes one platform API call (not per-ad) since status cascades through the campaign hierarchy. Ads in terminal statuses (rejected, completed, cancelled) are automatically skipped.
103
+
104
+ ### Examples
105
+
106
+ ```ruby
107
+ require 'time'
108
+ require 'late-sdk'
109
+ # setup authorization
110
+ Late.configure do |config|
111
+ # Configure Bearer authorization (JWT): bearerAuth
112
+ config.access_token = 'YOUR_BEARER_TOKEN'
113
+ end
114
+
115
+ api_instance = Late::AdCampaignsApi.new
116
+ campaign_id = 'campaign_id_example' # String | Platform campaign ID
117
+ update_ad_campaign_status_request = Late::UpdateAdCampaignStatusRequest.new({status: 'active', platform: 'facebook'}) # UpdateAdCampaignStatusRequest |
118
+
119
+ begin
120
+ # Pause or resume a campaign
121
+ result = api_instance.update_ad_campaign_status(campaign_id, update_ad_campaign_status_request)
122
+ p result
123
+ rescue Late::ApiError => e
124
+ puts "Error when calling AdCampaignsApi->update_ad_campaign_status: #{e}"
125
+ end
126
+ ```
127
+
128
+ #### Using the update_ad_campaign_status_with_http_info variant
129
+
130
+ This returns an Array which contains the response data, status code and headers.
131
+
132
+ > <Array(<UpdateAdCampaignStatus200Response>, Integer, Hash)> update_ad_campaign_status_with_http_info(campaign_id, update_ad_campaign_status_request)
133
+
134
+ ```ruby
135
+ begin
136
+ # Pause or resume a campaign
137
+ data, status_code, headers = api_instance.update_ad_campaign_status_with_http_info(campaign_id, update_ad_campaign_status_request)
138
+ p status_code # => 2xx
139
+ p headers # => { ... }
140
+ p data # => <UpdateAdCampaignStatus200Response>
141
+ rescue Late::ApiError => e
142
+ puts "Error when calling AdCampaignsApi->update_ad_campaign_status_with_http_info: #{e}"
143
+ end
144
+ ```
145
+
146
+ ### Parameters
147
+
148
+ | Name | Type | Description | Notes |
149
+ | ---- | ---- | ----------- | ----- |
150
+ | **campaign_id** | **String** | Platform campaign ID | |
151
+ | **update_ad_campaign_status_request** | [**UpdateAdCampaignStatusRequest**](UpdateAdCampaignStatusRequest.md) | | |
152
+
153
+ ### Return type
154
+
155
+ [**UpdateAdCampaignStatus200Response**](UpdateAdCampaignStatus200Response.md)
156
+
157
+ ### Authorization
158
+
159
+ [bearerAuth](../README.md#bearerAuth)
160
+
161
+ ### HTTP request headers
162
+
163
+ - **Content-Type**: application/json
164
+ - **Accept**: application/json
165
+
data/docs/AdMetrics.md ADDED
@@ -0,0 +1,34 @@
1
+ # Late::AdMetrics
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **spend** | **Float** | | [optional] |
8
+ | **impressions** | **Integer** | | [optional] |
9
+ | **reach** | **Integer** | | [optional] |
10
+ | **clicks** | **Integer** | | [optional] |
11
+ | **ctr** | **Float** | Click-through rate (%) | [optional] |
12
+ | **cpc** | **Float** | Cost per click | [optional] |
13
+ | **cpm** | **Float** | Cost per 1000 impressions | [optional] |
14
+ | **engagement** | **Integer** | | [optional] |
15
+ | **last_synced_at** | **Time** | | [optional] |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'late-sdk'
21
+
22
+ instance = Late::AdMetrics.new(
23
+ spend: null,
24
+ impressions: null,
25
+ reach: null,
26
+ clicks: null,
27
+ ctr: null,
28
+ cpc: null,
29
+ cpm: null,
30
+ engagement: null,
31
+ last_synced_at: null
32
+ )
33
+ ```
34
+
@@ -0,0 +1,20 @@
1
+ # Late::AdSchedule
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **start_date** | **Time** | | [optional] |
8
+ | **end_date** | **Time** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'late-sdk'
14
+
15
+ instance = Late::AdSchedule.new(
16
+ start_date: null,
17
+ end_date: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,22 @@
1
+ # Late::AddUsersToAdAudience200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **message** | **String** | | [optional] |
8
+ | **num_received** | **Integer** | | [optional] |
9
+ | **num_invalid** | **Integer** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'late-sdk'
15
+
16
+ instance = Late::AddUsersToAdAudience200Response.new(
17
+ message: null,
18
+ num_received: null,
19
+ num_invalid: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,18 @@
1
+ # Late::AddUsersToAdAudienceRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **users** | [**Array&lt;AddUsersToAdAudienceRequestUsersInner&gt;**](AddUsersToAdAudienceRequestUsersInner.md) | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'late-sdk'
13
+
14
+ instance = Late::AddUsersToAdAudienceRequest.new(
15
+ users: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,20 @@
1
+ # Late::AddUsersToAdAudienceRequestUsersInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **email** | **String** | | [optional] |
8
+ | **phone** | **String** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'late-sdk'
14
+
15
+ instance = Late::AddUsersToAdAudienceRequestUsersInner.new(
16
+ email: null,
17
+ phone: null
18
+ )
19
+ ```
20
+