late-sdk 0.0.937 → 0.0.939

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab87906cefb9d1114509587092f8add4580bec1060ea4454cf4f7066f94a88e4
4
- data.tar.gz: ea4c2949818eaee9bf4e67d2e80252481fce3653fafe0f2b9ed50fbe38998a67
3
+ metadata.gz: e7fee19ee6d79e0037360959f02b218625cc5403fc656a1bce785ba85644294b
4
+ data.tar.gz: 5bf34407d7cdcb8af7bfb57572500b556e9dacd9f1d92e1e7fab4759b37eca8a
5
5
  SHA512:
6
- metadata.gz: 531f31208261f86a2ef4e6dbb78ee57eb32a0a5c05e28816fad4a42f36dc55e77906d71c3cc8369ce3d492da97371efedc527fa2511cf016e38adb21ca41dd37
7
- data.tar.gz: 6bcd9d0704d2a5d619c5458e337feafbeba1eceed3bd73763e1a5c861d03e2f247e7620fcbd2d3c70415d5f9dec51dac90d37cfa8176c8ffd91b0797a4f60dfa
6
+ metadata.gz: e8de5b9dd890b04f309ea11e07dce086f05db19435fd61173c98051f90e6c1384be51078cf30dd38db11632e31b38820c2287ed065d2ec95e60d714a4ee68c9f
7
+ data.tar.gz: 46c9cb783ddb2e79948b5ac23b451438d413c1915258216e2f1ed209338e190a3b7ca2d4cd2165b0413c8238e0e13fd2140bd21668680494c673c1101aaf11a6
data/README.md CHANGED
@@ -175,6 +175,7 @@ Class | Method | HTTP request | Description
175
175
  *Zernio::AdCampaignsApi* | [**duplicate_ad_campaign**](docs/AdCampaignsApi.md#duplicate_ad_campaign) | **POST** /v1/ads/campaigns/{campaignId}/duplicate | Duplicate a campaign
176
176
  *Zernio::AdCampaignsApi* | [**duplicate_ad_set**](docs/AdCampaignsApi.md#duplicate_ad_set) | **POST** /v1/ads/ad-sets/{adSetId}/duplicate | Duplicate an ad set
177
177
  *Zernio::AdCampaignsApi* | [**get_ad**](docs/AdCampaignsApi.md#get_ad) | **GET** /v1/ads/{adId} | Get ad details
178
+ *Zernio::AdCampaignsApi* | [**get_ad_campaign_details**](docs/AdCampaignsApi.md#get_ad_campaign_details) | **GET** /v1/ads/campaigns/{campaignId} | Get live campaign details
178
179
  *Zernio::AdCampaignsApi* | [**get_ad_set_details**](docs/AdCampaignsApi.md#get_ad_set_details) | **GET** /v1/ads/ad-sets/{adSetId} | Get live ad-set details
179
180
  *Zernio::AdCampaignsApi* | [**get_ad_tree**](docs/AdCampaignsApi.md#get_ad_tree) | **GET** /v1/ads/tree | Get campaign tree
180
181
  *Zernio::AdCampaignsApi* | [**get_ads_timeline**](docs/AdCampaignsApi.md#get_ads_timeline) | **GET** /v1/ads/timeline | Get daily account metrics
@@ -379,6 +380,7 @@ Class | Method | HTTP request | Description
379
380
  *Zernio::ConnectApi* | [**connect_whats_app_credentials**](docs/ConnectApi.md#connect_whats_app_credentials) | **POST** /v1/connect/whatsapp/credentials | Connect WhatsApp via credentials
380
381
  *Zernio::ConnectApi* | [**connect_whats_app_embedded_signup**](docs/ConnectApi.md#connect_whats_app_embedded_signup) | **POST** /v1/connect/whatsapp/embedded-signup | Connect WhatsApp from Embedded Signup
381
382
  *Zernio::ConnectApi* | [**create_pinterest_board**](docs/ConnectApi.md#create_pinterest_board) | **POST** /v1/accounts/{accountId}/pinterest-boards | Create Pinterest board
383
+ *Zernio::ConnectApi* | [**create_youtube_playlist**](docs/ConnectApi.md#create_youtube_playlist) | **POST** /v1/accounts/{accountId}/youtube-playlists | Create YouTube playlist
382
384
  *Zernio::ConnectApi* | [**get_connect_url**](docs/ConnectApi.md#get_connect_url) | **GET** /v1/connect/{platform} | Get OAuth connect URL
383
385
  *Zernio::ConnectApi* | [**get_facebook_pages**](docs/ConnectApi.md#get_facebook_pages) | **GET** /v1/accounts/{accountId}/facebook-page | List Facebook pages
384
386
  *Zernio::ConnectApi* | [**get_gmb_locations**](docs/ConnectApi.md#get_gmb_locations) | **GET** /v1/accounts/{accountId}/gmb-locations | List Google Business Profile locations
@@ -1228,6 +1230,9 @@ Class | Method | HTTP request | Description
1228
1230
  - [Zernio::CreateWorkflow200Response](docs/CreateWorkflow200Response.md)
1229
1231
  - [Zernio::CreateWorkflow200ResponseWorkflow](docs/CreateWorkflow200ResponseWorkflow.md)
1230
1232
  - [Zernio::CreateWorkflowRequest](docs/CreateWorkflowRequest.md)
1233
+ - [Zernio::CreateYoutubePlaylist201Response](docs/CreateYoutubePlaylist201Response.md)
1234
+ - [Zernio::CreateYoutubePlaylist201ResponsePlaylist](docs/CreateYoutubePlaylist201ResponsePlaylist.md)
1235
+ - [Zernio::CreateYoutubePlaylistRequest](docs/CreateYoutubePlaylistRequest.md)
1231
1236
  - [Zernio::CrosspostDiscordMessage200Response](docs/CrosspostDiscordMessage200Response.md)
1232
1237
  - [Zernio::CtwaAdRequestBody](docs/CtwaAdRequestBody.md)
1233
1238
  - [Zernio::CtwaAdRequestBodyCitiesInner](docs/CtwaAdRequestBodyCitiesInner.md)
@@ -1372,6 +1377,7 @@ Class | Method | HTTP request | Description
1372
1377
  - [Zernio::GetAdAccountFinance200ResponseFundingSource](docs/GetAdAccountFinance200ResponseFundingSource.md)
1373
1378
  - [Zernio::GetAdAnalytics202Response](docs/GetAdAnalytics202Response.md)
1374
1379
  - [Zernio::GetAdAudience200Response](docs/GetAdAudience200Response.md)
1380
+ - [Zernio::GetAdCampaignDetails200Response](docs/GetAdCampaignDetails200Response.md)
1375
1381
  - [Zernio::GetAdComments200Response](docs/GetAdComments200Response.md)
1376
1382
  - [Zernio::GetAdComments200ResponseMeta](docs/GetAdComments200ResponseMeta.md)
1377
1383
  - [Zernio::GetAdComments200ResponsePagination](docs/GetAdComments200ResponsePagination.md)
@@ -20,6 +20,7 @@ All URIs are relative to *https://zernio.com/api*
20
20
  | [**duplicate_ad_campaign**](AdCampaignsApi.md#duplicate_ad_campaign) | **POST** /v1/ads/campaigns/{campaignId}/duplicate | Duplicate a campaign |
21
21
  | [**duplicate_ad_set**](AdCampaignsApi.md#duplicate_ad_set) | **POST** /v1/ads/ad-sets/{adSetId}/duplicate | Duplicate an ad set |
22
22
  | [**get_ad**](AdCampaignsApi.md#get_ad) | **GET** /v1/ads/{adId} | Get ad details |
23
+ | [**get_ad_campaign_details**](AdCampaignsApi.md#get_ad_campaign_details) | **GET** /v1/ads/campaigns/{campaignId} | Get live campaign details |
23
24
  | [**get_ad_set_details**](AdCampaignsApi.md#get_ad_set_details) | **GET** /v1/ads/ad-sets/{adSetId} | Get live ad-set details |
24
25
  | [**get_ad_tree**](AdCampaignsApi.md#get_ad_tree) | **GET** /v1/ads/tree | Get campaign tree |
25
26
  | [**get_ads_timeline**](AdCampaignsApi.md#get_ads_timeline) | **GET** /v1/ads/timeline | Get daily account metrics |
@@ -1197,6 +1198,81 @@ end
1197
1198
  - **Accept**: application/json
1198
1199
 
1199
1200
 
1201
+ ## get_ad_campaign_details
1202
+
1203
+ > <GetAdCampaignDetails200Response> get_ad_campaign_details(campaign_id, account_id, opts)
1204
+
1205
+ Get live campaign details
1206
+
1207
+ Reads one campaign live from Meta, returned verbatim, so a caller that knows a campaign id no longer has to page `GET /v1/ads/campaigns` to find it. The default projection covers name, status, objective, buying type, bid strategy, budgets, spend cap, schedule and `issues_info`. `fields` is a raw-passthrough override; unknown fields return Meta's 400 verbatim. A campaign the resolved connection cannot see comes back as Meta's own 400, not a 404.
1208
+
1209
+ ### Examples
1210
+
1211
+ ```ruby
1212
+ require 'time'
1213
+ require 'zernio-sdk'
1214
+ # setup authorization
1215
+ Zernio.configure do |config|
1216
+ # Configure Bearer authorization (JWT): bearerAuth
1217
+ config.access_token = 'YOUR_BEARER_TOKEN'
1218
+ end
1219
+
1220
+ api_instance = Zernio::AdCampaignsApi.new
1221
+ campaign_id = 'campaign_id_example' # String | Meta campaign id (platformCampaignId).
1222
+ account_id = 'account_id_example' # String | Zernio SocialAccount id (posting or ads variant) used to resolve the Meta token.
1223
+ opts = {
1224
+ fields: 'id,name,status,daily_budget' # String | Comma-separated Graph field override. Supports nested {} projections and Graph field modifiers.
1225
+ }
1226
+
1227
+ begin
1228
+ # Get live campaign details
1229
+ result = api_instance.get_ad_campaign_details(campaign_id, account_id, opts)
1230
+ p result
1231
+ rescue Zernio::ApiError => e
1232
+ puts "Error when calling AdCampaignsApi->get_ad_campaign_details: #{e}"
1233
+ end
1234
+ ```
1235
+
1236
+ #### Using the get_ad_campaign_details_with_http_info variant
1237
+
1238
+ This returns an Array which contains the response data, status code and headers.
1239
+
1240
+ > <Array(<GetAdCampaignDetails200Response>, Integer, Hash)> get_ad_campaign_details_with_http_info(campaign_id, account_id, opts)
1241
+
1242
+ ```ruby
1243
+ begin
1244
+ # Get live campaign details
1245
+ data, status_code, headers = api_instance.get_ad_campaign_details_with_http_info(campaign_id, account_id, opts)
1246
+ p status_code # => 2xx
1247
+ p headers # => { ... }
1248
+ p data # => <GetAdCampaignDetails200Response>
1249
+ rescue Zernio::ApiError => e
1250
+ puts "Error when calling AdCampaignsApi->get_ad_campaign_details_with_http_info: #{e}"
1251
+ end
1252
+ ```
1253
+
1254
+ ### Parameters
1255
+
1256
+ | Name | Type | Description | Notes |
1257
+ | ---- | ---- | ----------- | ----- |
1258
+ | **campaign_id** | **String** | Meta campaign id (platformCampaignId). | |
1259
+ | **account_id** | **String** | Zernio SocialAccount id (posting or ads variant) used to resolve the Meta token. | |
1260
+ | **fields** | **String** | Comma-separated Graph field override. Supports nested {} projections and Graph field modifiers. | [optional] |
1261
+
1262
+ ### Return type
1263
+
1264
+ [**GetAdCampaignDetails200Response**](GetAdCampaignDetails200Response.md)
1265
+
1266
+ ### Authorization
1267
+
1268
+ [bearerAuth](../README.md#bearerAuth)
1269
+
1270
+ ### HTTP request headers
1271
+
1272
+ - **Content-Type**: Not defined
1273
+ - **Accept**: application/json
1274
+
1275
+
1200
1276
  ## get_ad_set_details
1201
1277
 
1202
1278
  > <GetAdSetDetails200Response> get_ad_set_details(ad_set_id, account_id, opts)
data/docs/ConnectApi.md CHANGED
@@ -18,6 +18,7 @@ All URIs are relative to *https://zernio.com/api*
18
18
  | [**connect_whats_app_credentials**](ConnectApi.md#connect_whats_app_credentials) | **POST** /v1/connect/whatsapp/credentials | Connect WhatsApp via credentials |
19
19
  | [**connect_whats_app_embedded_signup**](ConnectApi.md#connect_whats_app_embedded_signup) | **POST** /v1/connect/whatsapp/embedded-signup | Connect WhatsApp from Embedded Signup |
20
20
  | [**create_pinterest_board**](ConnectApi.md#create_pinterest_board) | **POST** /v1/accounts/{accountId}/pinterest-boards | Create Pinterest board |
21
+ | [**create_youtube_playlist**](ConnectApi.md#create_youtube_playlist) | **POST** /v1/accounts/{accountId}/youtube-playlists | Create YouTube playlist |
21
22
  | [**get_connect_url**](ConnectApi.md#get_connect_url) | **GET** /v1/connect/{platform} | Get OAuth connect URL |
22
23
  | [**get_facebook_pages**](ConnectApi.md#get_facebook_pages) | **GET** /v1/accounts/{accountId}/facebook-page | List Facebook pages |
23
24
  | [**get_gmb_locations**](ConnectApi.md#get_gmb_locations) | **GET** /v1/accounts/{accountId}/gmb-locations | List Google Business Profile locations |
@@ -1056,6 +1057,77 @@ end
1056
1057
  - **Accept**: application/json
1057
1058
 
1058
1059
 
1060
+ ## create_youtube_playlist
1061
+
1062
+ > <CreateYoutubePlaylist201Response> create_youtube_playlist(account_id, create_youtube_playlist_request)
1063
+
1064
+ Create YouTube playlist
1065
+
1066
+ Creates an empty playlist on the connected YouTube channel. Requires a title; privacy defaults to private. Returns the same playlist shape as the list endpoint. Pass the returned playlist.id as platformSpecificData.playlistId when publishing a video. Does not change the account's default playlist. Requires the youtube or youtube.force-ssl OAuth scope. Costs 50 YouTube quota units. This operation is not idempotent and is not automatically retried: repeating a request can create another playlist, including after a timeout. List playlists before retrying an ambiguous failure. Official series settings are not exposed by YouTube's public API and must be enabled manually in YouTube's desktop playlist settings.
1067
+
1068
+ ### Examples
1069
+
1070
+ ```ruby
1071
+ require 'time'
1072
+ require 'zernio-sdk'
1073
+ # setup authorization
1074
+ Zernio.configure do |config|
1075
+ # Configure Bearer authorization (JWT): bearerAuth
1076
+ config.access_token = 'YOUR_BEARER_TOKEN'
1077
+ end
1078
+
1079
+ api_instance = Zernio::ConnectApi.new
1080
+ account_id = 'account_id_example' # String |
1081
+ create_youtube_playlist_request = Zernio::CreateYoutubePlaylistRequest.new({title: 'title_example'}) # CreateYoutubePlaylistRequest |
1082
+
1083
+ begin
1084
+ # Create YouTube playlist
1085
+ result = api_instance.create_youtube_playlist(account_id, create_youtube_playlist_request)
1086
+ p result
1087
+ rescue Zernio::ApiError => e
1088
+ puts "Error when calling ConnectApi->create_youtube_playlist: #{e}"
1089
+ end
1090
+ ```
1091
+
1092
+ #### Using the create_youtube_playlist_with_http_info variant
1093
+
1094
+ This returns an Array which contains the response data, status code and headers.
1095
+
1096
+ > <Array(<CreateYoutubePlaylist201Response>, Integer, Hash)> create_youtube_playlist_with_http_info(account_id, create_youtube_playlist_request)
1097
+
1098
+ ```ruby
1099
+ begin
1100
+ # Create YouTube playlist
1101
+ data, status_code, headers = api_instance.create_youtube_playlist_with_http_info(account_id, create_youtube_playlist_request)
1102
+ p status_code # => 2xx
1103
+ p headers # => { ... }
1104
+ p data # => <CreateYoutubePlaylist201Response>
1105
+ rescue Zernio::ApiError => e
1106
+ puts "Error when calling ConnectApi->create_youtube_playlist_with_http_info: #{e}"
1107
+ end
1108
+ ```
1109
+
1110
+ ### Parameters
1111
+
1112
+ | Name | Type | Description | Notes |
1113
+ | ---- | ---- | ----------- | ----- |
1114
+ | **account_id** | **String** | | |
1115
+ | **create_youtube_playlist_request** | [**CreateYoutubePlaylistRequest**](CreateYoutubePlaylistRequest.md) | | |
1116
+
1117
+ ### Return type
1118
+
1119
+ [**CreateYoutubePlaylist201Response**](CreateYoutubePlaylist201Response.md)
1120
+
1121
+ ### Authorization
1122
+
1123
+ [bearerAuth](../README.md#bearerAuth)
1124
+
1125
+ ### HTTP request headers
1126
+
1127
+ - **Content-Type**: application/json
1128
+ - **Accept**: application/json
1129
+
1130
+
1059
1131
  ## get_connect_url
1060
1132
 
1061
1133
  > <GetConnectUrl200Response> get_connect_url(platform, profile_id, opts)
@@ -0,0 +1,18 @@
1
+ # Zernio::CreateYoutubePlaylist201Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **playlist** | [**CreateYoutubePlaylist201ResponsePlaylist**](CreateYoutubePlaylist201ResponsePlaylist.md) | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ instance = Zernio::CreateYoutubePlaylist201Response.new(
15
+ playlist: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,28 @@
1
+ # Zernio::CreateYoutubePlaylist201ResponsePlaylist
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | |
8
+ | **title** | **String** | | |
9
+ | **description** | **String** | | |
10
+ | **privacy** | **String** | | |
11
+ | **item_count** | **Integer** | | |
12
+ | **thumbnail_url** | **String** | | |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'zernio-sdk'
18
+
19
+ instance = Zernio::CreateYoutubePlaylist201ResponsePlaylist.new(
20
+ id: null,
21
+ title: null,
22
+ description: null,
23
+ privacy: null,
24
+ item_count: null,
25
+ thumbnail_url: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # Zernio::CreateYoutubePlaylistRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **title** | **String** | Playlist title. Leading and trailing whitespace is removed. | |
8
+ | **description** | **String** | Optional playlist description. | [optional] |
9
+ | **privacy** | **String** | | [optional][default to &#39;private&#39;] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'zernio-sdk'
15
+
16
+ instance = Zernio::CreateYoutubePlaylistRequest.new(
17
+ title: null,
18
+ description: null,
19
+ privacy: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,18 @@
1
+ # Zernio::GetAdCampaignDetails200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **campaign** | **Object** | Raw Meta campaign; keys are the requested Graph fields. | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ instance = Zernio::GetAdCampaignDetails200Response.new(
15
+ campaign: null
16
+ )
17
+ ```
18
+
data/docs/LeadGenApi.md CHANGED
@@ -34,7 +34,7 @@ end
34
34
 
35
35
  api_instance = Zernio::LeadGenApi.new
36
36
  form_id = 'form_id_example' # String | Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
37
- account_id = 'account_id_example' # String | Connected facebook or linkedin ads account id (selects the platform).
37
+ account_id = 'account_id_example' # String | Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
38
38
 
39
39
  begin
40
40
  # Archive a lead form
@@ -68,7 +68,7 @@ end
68
68
  | Name | Type | Description | Notes |
69
69
  | ---- | ---- | ----------- | ----- |
70
70
  | **form_id** | **String** | Numeric form id (Meta leadgen_form id or LinkedIn leadForm id). | |
71
- | **account_id** | **String** | Connected facebook or linkedin ads account id (selects the platform). | |
71
+ | **account_id** | **String** | Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile. | |
72
72
 
73
73
  ### Return type
74
74
 
@@ -90,7 +90,7 @@ end
90
90
 
91
91
  Create a lead form
92
92
 
93
- Creates a Lead Gen form. The form content goes inside `platformSpecificData` for both platforms (the shape is selected by the accountId's platform). Meta: created on the connected Facebook Page (a facebook account or a metaads business-login account with a selected Page) (POST /{page-id}/leadgen_forms); the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account's Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
93
+ Creates a Lead Gen form. The form content goes inside `platformSpecificData` for both platforms (the shape is selected by the accountId's platform). Meta: created on the connected Facebook Page (POST /{page-id}/leadgen_forms), where `accountId` may be the `metaads` ads connection (its Page comes from the Facebook account linked to the same profile) or the Facebook account itself; the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account's Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
94
94
 
95
95
  ### Examples
96
96
 
@@ -245,7 +245,7 @@ end
245
245
 
246
246
  api_instance = Zernio::LeadGenApi.new
247
247
  form_id = 'form_id_example' # String | Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
248
- account_id = 'account_id_example' # String | Connected facebook or linkedin ads account id (selects the platform).
248
+ account_id = 'account_id_example' # String | Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
249
249
  opts = {
250
250
  fields: 'name,thank_you_page{title,body,button_type,website_url}' # String | Meta only. A Graph field selection passed through verbatim to GET /{form-id}, replacing the default projection, so fields Meta adds later are reachable without an API change. Field names, commas and {} expansion only; anything else (Graph field modifiers such as .limit(), or characters that could open another query parameter) is a 400. Ownership of the form is verified before the selection runs, so this cannot reach any Page but the one accountId manages. Unknown field names are rejected by Meta as a 400.
251
251
  }
@@ -282,7 +282,7 @@ end
282
282
  | Name | Type | Description | Notes |
283
283
  | ---- | ---- | ----------- | ----- |
284
284
  | **form_id** | **String** | Numeric form id (Meta leadgen_form id or LinkedIn leadForm id). | |
285
- | **account_id** | **String** | Connected facebook or linkedin ads account id (selects the platform). | |
285
+ | **account_id** | **String** | Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile. | |
286
286
  | **fields** | **String** | Meta only. A Graph field selection passed through verbatim to GET /{form-id}, replacing the default projection, so fields Meta adds later are reachable without an API change. Field names, commas and {} expansion only; anything else (Graph field modifiers such as .limit(), or characters that could open another query parameter) is a 400. Ownership of the form is verified before the selection runs, so this cannot reach any Page but the one accountId manages. Unknown field names are rejected by Meta as a 400. | [optional] |
287
287
 
288
288
  ### Return type
@@ -384,7 +384,7 @@ end
384
384
 
385
385
  List lead forms
386
386
 
387
- Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page, including a Page selected on a metaads business-login connection. LinkedIn: forms owned by the ad account's Company Page. Pass `adAccountId` (LinkedIn forms are org-owned). Requires the Ads add-on.
387
+ Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page. Pass either the `metaads` ads connection (the Page is taken from the Facebook account linked to it) or the Facebook account itself. LinkedIn: forms owned by the ad account's Company Page. Pass `adAccountId` (LinkedIn forms are org-owned). Requires the Ads add-on.
388
388
 
389
389
  ### Examples
390
390
 
@@ -398,7 +398,7 @@ Zernio.configure do |config|
398
398
  end
399
399
 
400
400
  api_instance = Zernio::LeadGenApi.new
401
- account_id = 'account_id_example' # String | Connected Facebook, Meta ads business-login or LinkedIn ads account ID.
401
+ account_id = 'account_id_example' # String | Connected Meta ads, Facebook or LinkedIn ads account ID. A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
402
402
  opts = {
403
403
  ad_account_id: 'ad_account_id_example', # String | LinkedIn only: the LinkedIn ad account id (used to resolve the owning organization). Required for LinkedIn.
404
404
  limit: 56, # Integer |
@@ -436,7 +436,7 @@ end
436
436
 
437
437
  | Name | Type | Description | Notes |
438
438
  | ---- | ---- | ----------- | ----- |
439
- | **account_id** | **String** | Connected Facebook, Meta ads business-login or LinkedIn ads account ID. | |
439
+ | **account_id** | **String** | Connected Meta ads, Facebook or LinkedIn ads account ID. A Meta ads connection resolves its Page through the Facebook account linked to the same profile. | |
440
440
  | **ad_account_id** | **String** | LinkedIn only: the LinkedIn ad account id (used to resolve the owning organization). Required for LinkedIn. | [optional] |
441
441
  | **limit** | **Integer** | | [optional][default to 25] |
442
442
  | **cursor** | **String** | | [optional] |
@@ -1183,6 +1183,79 @@ module Zernio
1183
1183
  return data, status_code, headers
1184
1184
  end
1185
1185
 
1186
+ # Get live campaign details
1187
+ # Reads one campaign live from Meta, returned verbatim, so a caller that knows a campaign id no longer has to page `GET /v1/ads/campaigns` to find it. The default projection covers name, status, objective, buying type, bid strategy, budgets, spend cap, schedule and `issues_info`. `fields` is a raw-passthrough override; unknown fields return Meta's 400 verbatim. A campaign the resolved connection cannot see comes back as Meta's own 400, not a 404.
1188
+ # @param campaign_id [String] Meta campaign id (platformCampaignId).
1189
+ # @param account_id [String] Zernio SocialAccount id (posting or ads variant) used to resolve the Meta token.
1190
+ # @param [Hash] opts the optional parameters
1191
+ # @option opts [String] :fields Comma-separated Graph field override. Supports nested {} projections and Graph field modifiers.
1192
+ # @return [GetAdCampaignDetails200Response]
1193
+ def get_ad_campaign_details(campaign_id, account_id, opts = {})
1194
+ data, _status_code, _headers = get_ad_campaign_details_with_http_info(campaign_id, account_id, opts)
1195
+ data
1196
+ end
1197
+
1198
+ # Get live campaign details
1199
+ # Reads one campaign live from Meta, returned verbatim, so a caller that knows a campaign id no longer has to page &#x60;GET /v1/ads/campaigns&#x60; to find it. The default projection covers name, status, objective, buying type, bid strategy, budgets, spend cap, schedule and &#x60;issues_info&#x60;. &#x60;fields&#x60; is a raw-passthrough override; unknown fields return Meta&#39;s 400 verbatim. A campaign the resolved connection cannot see comes back as Meta&#39;s own 400, not a 404.
1200
+ # @param campaign_id [String] Meta campaign id (platformCampaignId).
1201
+ # @param account_id [String] Zernio SocialAccount id (posting or ads variant) used to resolve the Meta token.
1202
+ # @param [Hash] opts the optional parameters
1203
+ # @option opts [String] :fields Comma-separated Graph field override. Supports nested {} projections and Graph field modifiers.
1204
+ # @return [Array<(GetAdCampaignDetails200Response, Integer, Hash)>] GetAdCampaignDetails200Response data, response status code and response headers
1205
+ def get_ad_campaign_details_with_http_info(campaign_id, account_id, opts = {})
1206
+ if @api_client.config.debugging
1207
+ @api_client.config.logger.debug 'Calling API: AdCampaignsApi.get_ad_campaign_details ...'
1208
+ end
1209
+ # verify the required parameter 'campaign_id' is set
1210
+ if @api_client.config.client_side_validation && campaign_id.nil?
1211
+ fail ArgumentError, "Missing the required parameter 'campaign_id' when calling AdCampaignsApi.get_ad_campaign_details"
1212
+ end
1213
+ # verify the required parameter 'account_id' is set
1214
+ if @api_client.config.client_side_validation && account_id.nil?
1215
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AdCampaignsApi.get_ad_campaign_details"
1216
+ end
1217
+ # resource path
1218
+ local_var_path = '/v1/ads/campaigns/{campaignId}'.sub('{' + 'campaignId' + '}', CGI.escape(campaign_id.to_s))
1219
+
1220
+ # query parameters
1221
+ query_params = opts[:query_params] || {}
1222
+ query_params[:'accountId'] = account_id
1223
+ query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?
1224
+
1225
+ # header parameters
1226
+ header_params = opts[:header_params] || {}
1227
+ # HTTP header 'Accept' (if needed)
1228
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1229
+
1230
+ # form parameters
1231
+ form_params = opts[:form_params] || {}
1232
+
1233
+ # http body (model)
1234
+ post_body = opts[:debug_body]
1235
+
1236
+ # return_type
1237
+ return_type = opts[:debug_return_type] || 'GetAdCampaignDetails200Response'
1238
+
1239
+ # auth_names
1240
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1241
+
1242
+ new_options = opts.merge(
1243
+ :operation => :"AdCampaignsApi.get_ad_campaign_details",
1244
+ :header_params => header_params,
1245
+ :query_params => query_params,
1246
+ :form_params => form_params,
1247
+ :body => post_body,
1248
+ :auth_names => auth_names,
1249
+ :return_type => return_type
1250
+ )
1251
+
1252
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1253
+ if @api_client.config.debugging
1254
+ @api_client.config.logger.debug "API called: AdCampaignsApi#get_ad_campaign_details\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1255
+ end
1256
+ return data, status_code, headers
1257
+ end
1258
+
1186
1259
  # Get live ad-set details
1187
1260
  # Reads the ad set live from Meta, returned verbatim. The default projection includes `learning_stage_info` (learning-phase status: LEARNING / SUCCESS / FAIL / WAIVING; Meta omits its `status` key on paused ad sets), delivery settings, budgets, schedule and targeting. `fields` is a raw-passthrough override; unknown fields return Meta's 400 verbatim.
1188
1261
  # @param ad_set_id [String] Meta ad set id (platformAdSetId).
@@ -1027,6 +1027,80 @@ module Zernio
1027
1027
  return data, status_code, headers
1028
1028
  end
1029
1029
 
1030
+ # Create YouTube playlist
1031
+ # Creates an empty playlist on the connected YouTube channel. Requires a title; privacy defaults to private. Returns the same playlist shape as the list endpoint. Pass the returned playlist.id as platformSpecificData.playlistId when publishing a video. Does not change the account's default playlist. Requires the youtube or youtube.force-ssl OAuth scope. Costs 50 YouTube quota units. This operation is not idempotent and is not automatically retried: repeating a request can create another playlist, including after a timeout. List playlists before retrying an ambiguous failure. Official series settings are not exposed by YouTube's public API and must be enabled manually in YouTube's desktop playlist settings.
1032
+ # @param account_id [String]
1033
+ # @param create_youtube_playlist_request [CreateYoutubePlaylistRequest]
1034
+ # @param [Hash] opts the optional parameters
1035
+ # @return [CreateYoutubePlaylist201Response]
1036
+ def create_youtube_playlist(account_id, create_youtube_playlist_request, opts = {})
1037
+ data, _status_code, _headers = create_youtube_playlist_with_http_info(account_id, create_youtube_playlist_request, opts)
1038
+ data
1039
+ end
1040
+
1041
+ # Create YouTube playlist
1042
+ # Creates an empty playlist on the connected YouTube channel. Requires a title; privacy defaults to private. Returns the same playlist shape as the list endpoint. Pass the returned playlist.id as platformSpecificData.playlistId when publishing a video. Does not change the account&#39;s default playlist. Requires the youtube or youtube.force-ssl OAuth scope. Costs 50 YouTube quota units. This operation is not idempotent and is not automatically retried: repeating a request can create another playlist, including after a timeout. List playlists before retrying an ambiguous failure. Official series settings are not exposed by YouTube&#39;s public API and must be enabled manually in YouTube&#39;s desktop playlist settings.
1043
+ # @param account_id [String]
1044
+ # @param create_youtube_playlist_request [CreateYoutubePlaylistRequest]
1045
+ # @param [Hash] opts the optional parameters
1046
+ # @return [Array<(CreateYoutubePlaylist201Response, Integer, Hash)>] CreateYoutubePlaylist201Response data, response status code and response headers
1047
+ def create_youtube_playlist_with_http_info(account_id, create_youtube_playlist_request, opts = {})
1048
+ if @api_client.config.debugging
1049
+ @api_client.config.logger.debug 'Calling API: ConnectApi.create_youtube_playlist ...'
1050
+ end
1051
+ # verify the required parameter 'account_id' is set
1052
+ if @api_client.config.client_side_validation && account_id.nil?
1053
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling ConnectApi.create_youtube_playlist"
1054
+ end
1055
+ # verify the required parameter 'create_youtube_playlist_request' is set
1056
+ if @api_client.config.client_side_validation && create_youtube_playlist_request.nil?
1057
+ fail ArgumentError, "Missing the required parameter 'create_youtube_playlist_request' when calling ConnectApi.create_youtube_playlist"
1058
+ end
1059
+ # resource path
1060
+ local_var_path = '/v1/accounts/{accountId}/youtube-playlists'.sub('{' + 'accountId' + '}', CGI.escape(account_id.to_s))
1061
+
1062
+ # query parameters
1063
+ query_params = opts[:query_params] || {}
1064
+
1065
+ # header parameters
1066
+ header_params = opts[:header_params] || {}
1067
+ # HTTP header 'Accept' (if needed)
1068
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1069
+ # HTTP header 'Content-Type'
1070
+ content_type = @api_client.select_header_content_type(['application/json'])
1071
+ if !content_type.nil?
1072
+ header_params['Content-Type'] = content_type
1073
+ end
1074
+
1075
+ # form parameters
1076
+ form_params = opts[:form_params] || {}
1077
+
1078
+ # http body (model)
1079
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_youtube_playlist_request)
1080
+
1081
+ # return_type
1082
+ return_type = opts[:debug_return_type] || 'CreateYoutubePlaylist201Response'
1083
+
1084
+ # auth_names
1085
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1086
+
1087
+ new_options = opts.merge(
1088
+ :operation => :"ConnectApi.create_youtube_playlist",
1089
+ :header_params => header_params,
1090
+ :query_params => query_params,
1091
+ :form_params => form_params,
1092
+ :body => post_body,
1093
+ :auth_names => auth_names,
1094
+ :return_type => return_type
1095
+ )
1096
+
1097
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
1098
+ if @api_client.config.debugging
1099
+ @api_client.config.logger.debug "API called: ConnectApi#create_youtube_playlist\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1100
+ end
1101
+ return data, status_code, headers
1102
+ end
1103
+
1030
1104
  # Get OAuth connect URL
1031
1105
  # Initiate an OAuth connection flow. Returns an authUrl to redirect the user to. Standard flow: Zernio hosts the selection UI, then redirects to your redirect_url. Headless mode (headless=true): user is redirected to your redirect_url with OAuth data for custom UI. Use the platform-specific selection endpoints to complete. TikTok: every connection now goes through the TikTok for Business app. One TikTok account per profile, so connecting on a profile that already holds one replaces it. Reconnecting the SAME account keeps it and all of its history; authorizing a DIFFERENT TikTok account takes the slot over and permanently deletes the previous account's analytics, inbox and DM history. The two are told apart by the `@handle` stored at the last connect, so an account whose handle has been renamed on TikTok since then reads as a different account. An authorization that leaves out a permission the connected account needs changes nothing at all and comes back as `missing_tiktok_permissions`; connect again and accept every permission on TikTok's screen.
1032
1106
  # @param platform [String] Social media platform to connect. &#x60;snapchat&#x60; is a closed beta with no public release date: it returns 403 &#x60;PLATFORM_BETA_RESTRICTED&#x60; until the account is approved.
@@ -22,7 +22,7 @@ module Zernio
22
22
  # Archive a lead form
23
23
  # Neither platform hard-deletes a form; this archives it (Meta status=ARCHIVED; LinkedIn state=ARCHIVED via PARTIAL_UPDATE). Meta forms must belong to the Page the accountId manages.
24
24
  # @param form_id [String] Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
25
- # @param account_id [String] Connected facebook or linkedin ads account id (selects the platform).
25
+ # @param account_id [String] Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
26
26
  # @param [Hash] opts the optional parameters
27
27
  # @return [ArchiveLeadForm200Response]
28
28
  def archive_lead_form(form_id, account_id, opts = {})
@@ -33,7 +33,7 @@ module Zernio
33
33
  # Archive a lead form
34
34
  # Neither platform hard-deletes a form; this archives it (Meta status&#x3D;ARCHIVED; LinkedIn state&#x3D;ARCHIVED via PARTIAL_UPDATE). Meta forms must belong to the Page the accountId manages.
35
35
  # @param form_id [String] Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
36
- # @param account_id [String] Connected facebook or linkedin ads account id (selects the platform).
36
+ # @param account_id [String] Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
37
37
  # @param [Hash] opts the optional parameters
38
38
  # @return [Array<(ArchiveLeadForm200Response, Integer, Hash)>] ArchiveLeadForm200Response data, response status code and response headers
39
39
  def archive_lead_form_with_http_info(form_id, account_id, opts = {})
@@ -90,7 +90,7 @@ module Zernio
90
90
  end
91
91
 
92
92
  # Create a lead form
93
- # Creates a Lead Gen form. The form content goes inside `platformSpecificData` for both platforms (the shape is selected by the accountId's platform). Meta: created on the connected Facebook Page (a facebook account or a metaads business-login account with a selected Page) (POST /{page-id}/leadgen_forms); the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account's Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
93
+ # Creates a Lead Gen form. The form content goes inside `platformSpecificData` for both platforms (the shape is selected by the accountId's platform). Meta: created on the connected Facebook Page (POST /{page-id}/leadgen_forms), where `accountId` may be the `metaads` ads connection (its Page comes from the Facebook account linked to the same profile) or the Facebook account itself; the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account's Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
94
94
  # @param create_lead_form_request [CreateLeadFormRequest]
95
95
  # @param [Hash] opts the optional parameters
96
96
  # @return [CreateLeadForm200Response]
@@ -100,7 +100,7 @@ module Zernio
100
100
  end
101
101
 
102
102
  # Create a lead form
103
- # Creates a Lead Gen form. The form content goes inside &#x60;platformSpecificData&#x60; for both platforms (the shape is selected by the accountId&#39;s platform). Meta: created on the connected Facebook Page (a facebook account or a metaads business-login account with a selected Page) (POST /{page-id}/leadgen_forms); the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account&#39;s Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
103
+ # Creates a Lead Gen form. The form content goes inside &#x60;platformSpecificData&#x60; for both platforms (the shape is selected by the accountId&#39;s platform). Meta: created on the connected Facebook Page (POST /{page-id}/leadgen_forms), where &#x60;accountId&#x60; may be the &#x60;metaads&#x60; ads connection (its Page comes from the Facebook account linked to the same profile) or the Facebook account itself; the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account&#39;s Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
104
104
  # @param create_lead_form_request [CreateLeadFormRequest]
105
105
  # @param [Hash] opts the optional parameters
106
106
  # @return [Array<(CreateLeadForm200Response, Integer, Hash)>] CreateLeadForm200Response data, response status code and response headers
@@ -234,7 +234,7 @@ module Zernio
234
234
  # Get a lead form
235
235
  # Returns the full form, including the thank-you page, so a form can be diffed against what was created. Meta forms are scoped to the Page the accountId manages: a form on any other Page is a 404, never a read.
236
236
  # @param form_id [String] Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
237
- # @param account_id [String] Connected facebook or linkedin ads account id (selects the platform).
237
+ # @param account_id [String] Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
238
238
  # @param [Hash] opts the optional parameters
239
239
  # @option opts [String] :fields Meta only. A Graph field selection passed through verbatim to GET /{form-id}, replacing the default projection, so fields Meta adds later are reachable without an API change. Field names, commas and {} expansion only; anything else (Graph field modifiers such as .limit(), or characters that could open another query parameter) is a 400. Ownership of the form is verified before the selection runs, so this cannot reach any Page but the one accountId manages. Unknown field names are rejected by Meta as a 400.
240
240
  # @return [GetLeadForm200Response]
@@ -246,7 +246,7 @@ module Zernio
246
246
  # Get a lead form
247
247
  # Returns the full form, including the thank-you page, so a form can be diffed against what was created. Meta forms are scoped to the Page the accountId manages: a form on any other Page is a 404, never a read.
248
248
  # @param form_id [String] Numeric form id (Meta leadgen_form id or LinkedIn leadForm id).
249
- # @param account_id [String] Connected facebook or linkedin ads account id (selects the platform).
249
+ # @param account_id [String] Connected Meta ads, facebook or linkedin ads account id (selects the platform). A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
250
250
  # @param [Hash] opts the optional parameters
251
251
  # @option opts [String] :fields Meta only. A Graph field selection passed through verbatim to GET /{form-id}, replacing the default projection, so fields Meta adds later are reachable without an API change. Field names, commas and {} expansion only; anything else (Graph field modifiers such as .limit(), or characters that could open another query parameter) is a 400. Ownership of the form is verified before the selection runs, so this cannot reach any Page but the one accountId manages. Unknown field names are rejected by Meta as a 400.
252
252
  # @return [Array<(GetLeadForm200Response, Integer, Hash)>] GetLeadForm200Response data, response status code and response headers
@@ -396,8 +396,8 @@ module Zernio
396
396
  end
397
397
 
398
398
  # List lead forms
399
- # Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page, including a Page selected on a metaads business-login connection. LinkedIn: forms owned by the ad account's Company Page. Pass `adAccountId` (LinkedIn forms are org-owned). Requires the Ads add-on.
400
- # @param account_id [String] Connected Facebook, Meta ads business-login or LinkedIn ads account ID.
399
+ # Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page. Pass either the `metaads` ads connection (the Page is taken from the Facebook account linked to it) or the Facebook account itself. LinkedIn: forms owned by the ad account's Company Page. Pass `adAccountId` (LinkedIn forms are org-owned). Requires the Ads add-on.
400
+ # @param account_id [String] Connected Meta ads, Facebook or LinkedIn ads account ID. A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
401
401
  # @param [Hash] opts the optional parameters
402
402
  # @option opts [String] :ad_account_id LinkedIn only: the LinkedIn ad account id (used to resolve the owning organization). Required for LinkedIn.
403
403
  # @option opts [Integer] :limit (default to 25)
@@ -409,8 +409,8 @@ module Zernio
409
409
  end
410
410
 
411
411
  # List lead forms
412
- # Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page, including a Page selected on a metaads business-login connection. LinkedIn: forms owned by the ad account&#39;s Company Page. Pass &#x60;adAccountId&#x60; (LinkedIn forms are org-owned). Requires the Ads add-on.
413
- # @param account_id [String] Connected Facebook, Meta ads business-login or LinkedIn ads account ID.
412
+ # Lists the Lead Gen forms owned by the account. Meta: forms on the connected Facebook Page. Pass either the &#x60;metaads&#x60; ads connection (the Page is taken from the Facebook account linked to it) or the Facebook account itself. LinkedIn: forms owned by the ad account&#39;s Company Page. Pass &#x60;adAccountId&#x60; (LinkedIn forms are org-owned). Requires the Ads add-on.
413
+ # @param account_id [String] Connected Meta ads, Facebook or LinkedIn ads account ID. A Meta ads connection resolves its Page through the Facebook account linked to the same profile.
414
414
  # @param [Hash] opts the optional parameters
415
415
  # @option opts [String] :ad_account_id LinkedIn only: the LinkedIn ad account id (used to resolve the owning organization). Required for LinkedIn.
416
416
  # @option opts [Integer] :limit (default to 25)