late-sdk 0.0.861 → 0.0.862

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: 146640c51fef87c69dd69f069dfefc4e727410b38b284b954e44ca6f74a3c528
4
- data.tar.gz: 34f6fbd4a36b170972e28b46966a506c77a99a051e90ca7bdabf1f4fa086fdb5
3
+ metadata.gz: b90390dfb2a2cc7e6292ffb51014efc226ee983d0114067bbaa2fbb05313667f
4
+ data.tar.gz: 86b643311ebbb222f14e1e6671f9554cff1ad65877c1b33cf7f42b694610fd95
5
5
  SHA512:
6
- metadata.gz: d641c72cfb84ec4316fade42b1d296ae4cb0dce1f1896b03708a12bc7912091537e81206db5550aa837d59bd7ff9d427efb3e919c5fa7c0870049d6198ca5b9b
7
- data.tar.gz: a5a26110e0b1257224bbc256df74c880d1430ce1480a99f71264a5576e451a981c4d0446cec8d763dc00cd3644f725a855915fdd0feb1803c1ec516bb4b2d8cb
6
+ metadata.gz: ff84101e591476cee89c04279eaf6189a1d19ecc6f66b9a17c4fd2c95fd95b859a1d881f742fba694ffeedfdee7018c482db365f63a767f4face12cfabd3cd72
7
+ data.tar.gz: 59b03ea9ace6a929747ad7733896071c7542d6b999f2a2df97221ae963573ddfe68400ce4c34dd34d30e86ffadcdda680b8bc2d1b6fa30d3898d5b5b0646d9ba
data/docs/AdLibraryApi.md CHANGED
@@ -9,11 +9,11 @@ All URIs are relative to *https://zernio.com/api*
9
9
 
10
10
  ## search_ad_library
11
11
 
12
- > <SearchAdLibrary200Response> search_ad_library(account_id, opts)
12
+ > <SearchAdLibrary200Response> search_ad_library(opts)
13
13
 
14
14
  Search the public Ad Library
15
15
 
16
- Competitor and market research over the platform's public ad archive, searched with the customer's own connected token (no extra scope): Meta's Ad Library (`GET /ads_archive`) for a `facebook` / `instagram` / `metaads` account, LinkedIn's Ad Library (`GET /rest/adLibrary`) for a `linkedin` / `linkedinads` account. Rows are returned in the platform's raw shape under `data`; `paging.after` is an opaque cursor on both (`null` when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via `fields`. Meta serves the archive only to people who confirmed their identity and location at facebook.com/ID: until the Facebook user behind the connection has done so, the call fails with `meta_identity_confirmation_required` (403). **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (`limit` > 25 is a 400); `after` is the next offset. Which params apply: `q`, `countries`, `since`, `until`, `limit`, `after` on both; `pageIds`, `adType`, `status`, `platforms`, `mediaType`, `languages`, `searchType`, `fields` are Meta-only; `advertiser` is LinkedIn-only. Passing a param the account's platform does not support is a 400 naming the param.
16
+ Competitor and market research over the public ad archives. Meta's Ad Library (`GET /ads_archive`) is searched with Zernio's own developer access, so `platform=meta` needs no connected account at all. LinkedIn's Ad Library (`GET /rest/adLibrary`) runs on a connected `linkedin` / `linkedinads` account, passed as `accountId`. Passing a Meta account as `accountId` also selects Meta. Rows are returned in the platform's raw shape under `data`; `paging.after` is an opaque cursor on both (`null` when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via `fields`. All customers share Zernio's Meta quota, so a `429` means back off for a minute. **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (`limit` > 25 is a 400); `after` is the next offset. Which params apply: `q`, `countries`, `since`, `until`, `limit`, `after` on both; `pageIds`, `adType`, `status`, `platforms`, `mediaType`, `languages`, `searchType`, `fields` are Meta-only; `advertiser` is LinkedIn-only. Passing a param the account's platform does not support is a 400 naming the param.
17
17
 
18
18
  ### Examples
19
19
 
@@ -27,8 +27,9 @@ Zernio.configure do |config|
27
27
  end
28
28
 
29
29
  api_instance = Zernio::AdLibraryApi.new
30
- account_id = 'account_id_example' # String | Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches.
31
30
  opts = {
31
+ platform: 'meta', # String | Which archive to search. `meta` needs no accountId. Required unless accountId is given.
32
+ account_id: 'account_id_example', # String | Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform.
32
33
  q: 'q_example', # String | Keyword search. Meta does not translate it, so write it in the ads' language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given.
33
34
  page_ids: 'page_ids_example', # String | Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list.
34
35
  advertiser: 'advertiser_example', # String | LinkedIn only. Advertiser (Page) name to search.
@@ -48,7 +49,7 @@ opts = {
48
49
 
49
50
  begin
50
51
  # Search the public Ad Library
51
- result = api_instance.search_ad_library(account_id, opts)
52
+ result = api_instance.search_ad_library(opts)
52
53
  p result
53
54
  rescue Zernio::ApiError => e
54
55
  puts "Error when calling AdLibraryApi->search_ad_library: #{e}"
@@ -59,12 +60,12 @@ end
59
60
 
60
61
  This returns an Array which contains the response data, status code and headers.
61
62
 
62
- > <Array(<SearchAdLibrary200Response>, Integer, Hash)> search_ad_library_with_http_info(account_id, opts)
63
+ > <Array(<SearchAdLibrary200Response>, Integer, Hash)> search_ad_library_with_http_info(opts)
63
64
 
64
65
  ```ruby
65
66
  begin
66
67
  # Search the public Ad Library
67
- data, status_code, headers = api_instance.search_ad_library_with_http_info(account_id, opts)
68
+ data, status_code, headers = api_instance.search_ad_library_with_http_info(opts)
68
69
  p status_code # => 2xx
69
70
  p headers # => { ... }
70
71
  p data # => <SearchAdLibrary200Response>
@@ -77,7 +78,8 @@ end
77
78
 
78
79
  | Name | Type | Description | Notes |
79
80
  | ---- | ---- | ----------- | ----- |
80
- | **account_id** | **String** | Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches. | |
81
+ | **platform** | **String** | Which archive to search. &#x60;meta&#x60; needs no accountId. Required unless accountId is given. | [optional] |
82
+ | **account_id** | **String** | Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform. | [optional] |
81
83
  | **q** | **String** | Keyword search. Meta does not translate it, so write it in the ads&#39; language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given. | [optional] |
82
84
  | **page_ids** | **String** | Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list. | [optional] |
83
85
  | **advertiser** | **String** | LinkedIn only. Advertiser (Page) name to search. | [optional] |
@@ -20,9 +20,10 @@ module Zernio
20
20
  @api_client = api_client
21
21
  end
22
22
  # Search the public Ad Library
23
- # Competitor and market research over the platform's public ad archive, searched with the customer's own connected token (no extra scope): Meta's Ad Library (`GET /ads_archive`) for a `facebook` / `instagram` / `metaads` account, LinkedIn's Ad Library (`GET /rest/adLibrary`) for a `linkedin` / `linkedinads` account. Rows are returned in the platform's raw shape under `data`; `paging.after` is an opaque cursor on both (`null` when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via `fields`. Meta serves the archive only to people who confirmed their identity and location at facebook.com/ID: until the Facebook user behind the connection has done so, the call fails with `meta_identity_confirmation_required` (403). **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (`limit` > 25 is a 400); `after` is the next offset. Which params apply: `q`, `countries`, `since`, `until`, `limit`, `after` on both; `pageIds`, `adType`, `status`, `platforms`, `mediaType`, `languages`, `searchType`, `fields` are Meta-only; `advertiser` is LinkedIn-only. Passing a param the account's platform does not support is a 400 naming the param.
24
- # @param account_id [String] Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches.
23
+ # Competitor and market research over the public ad archives. Meta's Ad Library (`GET /ads_archive`) is searched with Zernio's own developer access, so `platform=meta` needs no connected account at all. LinkedIn's Ad Library (`GET /rest/adLibrary`) runs on a connected `linkedin` / `linkedinads` account, passed as `accountId`. Passing a Meta account as `accountId` also selects Meta. Rows are returned in the platform's raw shape under `data`; `paging.after` is an opaque cursor on both (`null` when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via `fields`. All customers share Zernio's Meta quota, so a `429` means back off for a minute. **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (`limit` > 25 is a 400); `after` is the next offset. Which params apply: `q`, `countries`, `since`, `until`, `limit`, `after` on both; `pageIds`, `adType`, `status`, `platforms`, `mediaType`, `languages`, `searchType`, `fields` are Meta-only; `advertiser` is LinkedIn-only. Passing a param the account's platform does not support is a 400 naming the param.
25
24
  # @param [Hash] opts the optional parameters
25
+ # @option opts [String] :platform Which archive to search. &#x60;meta&#x60; needs no accountId. Required unless accountId is given.
26
+ # @option opts [String] :account_id Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform.
26
27
  # @option opts [String] :q Keyword search. Meta does not translate it, so write it in the ads&#39; language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given.
27
28
  # @option opts [String] :page_ids Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list.
28
29
  # @option opts [String] :advertiser LinkedIn only. Advertiser (Page) name to search.
@@ -39,15 +40,16 @@ module Zernio
39
40
  # @option opts [Integer] :limit Rows per page. LinkedIn accepts at most 25. (default to 25)
40
41
  # @option opts [String] :after paging.after of the previous page.
41
42
  # @return [SearchAdLibrary200Response]
42
- def search_ad_library(account_id, opts = {})
43
- data, _status_code, _headers = search_ad_library_with_http_info(account_id, opts)
43
+ def search_ad_library(opts = {})
44
+ data, _status_code, _headers = search_ad_library_with_http_info(opts)
44
45
  data
45
46
  end
46
47
 
47
48
  # Search the public Ad Library
48
- # Competitor and market research over the platform&#39;s public ad archive, searched with the customer&#39;s own connected token (no extra scope): Meta&#39;s Ad Library (&#x60;GET /ads_archive&#x60;) for a &#x60;facebook&#x60; / &#x60;instagram&#x60; / &#x60;metaads&#x60; account, LinkedIn&#39;s Ad Library (&#x60;GET /rest/adLibrary&#x60;) for a &#x60;linkedin&#x60; / &#x60;linkedinads&#x60; account. Rows are returned in the platform&#39;s raw shape under &#x60;data&#x60;; &#x60;paging.after&#x60; is an opaque cursor on both (&#x60;null&#x60; when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via &#x60;fields&#x60;. Meta serves the archive only to people who confirmed their identity and location at facebook.com/ID: until the Facebook user behind the connection has done so, the call fails with &#x60;meta_identity_confirmation_required&#x60; (403). **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (&#x60;limit&#x60; &gt; 25 is a 400); &#x60;after&#x60; is the next offset. Which params apply: &#x60;q&#x60;, &#x60;countries&#x60;, &#x60;since&#x60;, &#x60;until&#x60;, &#x60;limit&#x60;, &#x60;after&#x60; on both; &#x60;pageIds&#x60;, &#x60;adType&#x60;, &#x60;status&#x60;, &#x60;platforms&#x60;, &#x60;mediaType&#x60;, &#x60;languages&#x60;, &#x60;searchType&#x60;, &#x60;fields&#x60; are Meta-only; &#x60;advertiser&#x60; is LinkedIn-only. Passing a param the account&#39;s platform does not support is a 400 naming the param.
49
- # @param account_id [String] Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches.
49
+ # Competitor and market research over the public ad archives. Meta&#39;s Ad Library (&#x60;GET /ads_archive&#x60;) is searched with Zernio&#39;s own developer access, so &#x60;platform&#x3D;meta&#x60; needs no connected account at all. LinkedIn&#39;s Ad Library (&#x60;GET /rest/adLibrary&#x60;) runs on a connected &#x60;linkedin&#x60; / &#x60;linkedinads&#x60; account, passed as &#x60;accountId&#x60;. Passing a Meta account as &#x60;accountId&#x60; also selects Meta. Rows are returned in the platform&#39;s raw shape under &#x60;data&#x60;; &#x60;paging.after&#x60; is an opaque cursor on both (&#x60;null&#x60; when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via &#x60;fields&#x60;. All customers share Zernio&#39;s Meta quota, so a &#x60;429&#x60; means back off for a minute. **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (&#x60;limit&#x60; &gt; 25 is a 400); &#x60;after&#x60; is the next offset. Which params apply: &#x60;q&#x60;, &#x60;countries&#x60;, &#x60;since&#x60;, &#x60;until&#x60;, &#x60;limit&#x60;, &#x60;after&#x60; on both; &#x60;pageIds&#x60;, &#x60;adType&#x60;, &#x60;status&#x60;, &#x60;platforms&#x60;, &#x60;mediaType&#x60;, &#x60;languages&#x60;, &#x60;searchType&#x60;, &#x60;fields&#x60; are Meta-only; &#x60;advertiser&#x60; is LinkedIn-only. Passing a param the account&#39;s platform does not support is a 400 naming the param.
50
50
  # @param [Hash] opts the optional parameters
51
+ # @option opts [String] :platform Which archive to search. &#x60;meta&#x60; needs no accountId. Required unless accountId is given.
52
+ # @option opts [String] :account_id Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform.
51
53
  # @option opts [String] :q Keyword search. Meta does not translate it, so write it in the ads&#39; language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given.
52
54
  # @option opts [String] :page_ids Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list.
53
55
  # @option opts [String] :advertiser LinkedIn only. Advertiser (Page) name to search.
@@ -64,13 +66,13 @@ module Zernio
64
66
  # @option opts [Integer] :limit Rows per page. LinkedIn accepts at most 25. (default to 25)
65
67
  # @option opts [String] :after paging.after of the previous page.
66
68
  # @return [Array<(SearchAdLibrary200Response, Integer, Hash)>] SearchAdLibrary200Response data, response status code and response headers
67
- def search_ad_library_with_http_info(account_id, opts = {})
69
+ def search_ad_library_with_http_info(opts = {})
68
70
  if @api_client.config.debugging
69
71
  @api_client.config.logger.debug 'Calling API: AdLibraryApi.search_ad_library ...'
70
72
  end
71
- # verify the required parameter 'account_id' is set
72
- if @api_client.config.client_side_validation && account_id.nil?
73
- fail ArgumentError, "Missing the required parameter 'account_id' when calling AdLibraryApi.search_ad_library"
73
+ allowable_values = ["meta", "linkedin"]
74
+ if @api_client.config.client_side_validation && opts[:'platform'] && !allowable_values.include?(opts[:'platform'])
75
+ fail ArgumentError, "invalid value for \"platform\", must be one of #{allowable_values}"
74
76
  end
75
77
  if @api_client.config.client_side_validation && !opts[:'q'].nil? && opts[:'q'].to_s.length > 100
76
78
  fail ArgumentError, 'invalid value for "opts[:"q"]" when calling AdLibraryApi.search_ad_library, the character length must be smaller than or equal to 100.'
@@ -109,7 +111,8 @@ module Zernio
109
111
 
110
112
  # query parameters
111
113
  query_params = opts[:query_params] || {}
112
- query_params[:'accountId'] = account_id
114
+ query_params[:'platform'] = opts[:'platform'] if !opts[:'platform'].nil?
115
+ query_params[:'accountId'] = opts[:'account_id'] if !opts[:'account_id'].nil?
113
116
  query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
114
117
  query_params[:'pageIds'] = opts[:'page_ids'] if !opts[:'page_ids'].nil?
115
118
  query_params[:'advertiser'] = opts[:'advertiser'] if !opts[:'advertiser'].nil?
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Zernio
14
- VERSION = '0.0.861'
14
+ VERSION = '0.0.862'
15
15
  end
data/openapi.yaml CHANGED
@@ -47793,19 +47793,18 @@ paths:
47793
47793
  x-platforms: ["meta", "linkedin"]
47794
47794
  summary: Search the public Ad Library
47795
47795
  description: |-
47796
- Competitor and market research over the platform's public ad archive, searched with the
47797
- customer's own connected token (no extra scope): Meta's Ad Library (`GET /ads_archive`) for
47798
- a `facebook` / `instagram` / `metaads` account, LinkedIn's Ad Library (`GET /rest/adLibrary`)
47799
- for a `linkedin` / `linkedinads` account. Rows are returned in the platform's raw shape under
47800
- `data`; `paging.after` is an opaque cursor on both (`null` when exhausted).
47796
+ Competitor and market research over the public ad archives. Meta's Ad Library
47797
+ (`GET /ads_archive`) is searched with Zernio's own developer access, so `platform=meta` needs
47798
+ no connected account at all. LinkedIn's Ad Library (`GET /rest/adLibrary`) runs on a connected
47799
+ `linkedin` / `linkedinads` account, passed as `accountId`. Passing a Meta account as `accountId`
47800
+ also selects Meta. Rows are returned in the platform's raw shape under `data`; `paging.after`
47801
+ is an opaque cursor on both (`null` when exhausted).
47801
47802
 
47802
47803
  **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is
47803
47804
  in the archive only if it was delivered to the EU or UK within the last year, so a US-only
47804
47805
  commercial advertiser is invisible. Spend, impressions and demographics are political-only
47805
- fields and are left out of the default projection; request them via `fields`. Meta serves the
47806
- archive only to people who confirmed their identity and location at facebook.com/ID: until the
47807
- Facebook user behind the connection has done so, the call fails with
47808
- `meta_identity_confirmation_required` (403).
47806
+ fields and are left out of the default projection; request them via `fields`. All customers
47807
+ share Zernio's Meta quota, so a `429` means back off for a minute.
47809
47808
 
47810
47809
  **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their
47811
47810
  last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets.
@@ -47818,7 +47817,8 @@ paths:
47818
47817
  security:
47819
47818
  - bearerAuth: []
47820
47819
  parameters:
47821
- - { name: accountId, in: query, required: true, schema: { type: string }, description: "Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches." }
47820
+ - { name: platform, in: query, schema: { type: string, enum: [meta, linkedin] }, description: "Which archive to search. `meta` needs no accountId. Required unless accountId is given." }
47821
+ - { name: accountId, in: query, schema: { type: string }, description: "Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform." }
47822
47822
  - { name: q, in: query, schema: { type: string, maxLength: 100 }, description: "Keyword search. Meta does not translate it, so write it in the ads' language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given." }
47823
47823
  - { name: pageIds, in: query, schema: { type: string }, description: "Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list." }
47824
47824
  - { name: advertiser, in: query, schema: { type: string, maxLength: 100 }, description: "LinkedIn only. Advertiser (Page) name to search." }
@@ -47892,9 +47892,10 @@ paths:
47892
47892
  '400': { $ref: '#/components/responses/BadRequest' }
47893
47893
  '401': { $ref: '#/components/responses/Unauthorized' }
47894
47894
  '403':
47895
- description: "Ads access required (legacy plans need the Ads add-on), or, on Meta, `meta_identity_confirmation_required`: the Facebook user behind the connection has not confirmed identity and location at facebook.com/ID."
47895
+ description: Ads access required. Legacy plans need the Ads add-on; included by default on usage-based plans.
47896
47896
  '404': { description: Account not found }
47897
47897
  '501': { description: Only supported on Meta and LinkedIn accounts }
47898
+ '503': { description: "Meta's Ad Library is unavailable on Zernio's side (`PLATFORM_DISABLED`); LinkedIn searches are unaffected." }
47898
47899
 
47899
47900
  /v1/ads/targeting/reach-estimate:
47900
47901
  post:
@@ -34,9 +34,10 @@ describe 'AdLibraryApi' do
34
34
 
35
35
  # unit tests for search_ad_library
36
36
  # Search the public Ad Library
37
- # Competitor and market research over the platform&#39;s public ad archive, searched with the customer&#39;s own connected token (no extra scope): Meta&#39;s Ad Library (&#x60;GET /ads_archive&#x60;) for a &#x60;facebook&#x60; / &#x60;instagram&#x60; / &#x60;metaads&#x60; account, LinkedIn&#39;s Ad Library (&#x60;GET /rest/adLibrary&#x60;) for a &#x60;linkedin&#x60; / &#x60;linkedinads&#x60; account. Rows are returned in the platform&#39;s raw shape under &#x60;data&#x60;; &#x60;paging.after&#x60; is an opaque cursor on both (&#x60;null&#x60; when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via &#x60;fields&#x60;. Meta serves the archive only to people who confirmed their identity and location at facebook.com/ID: until the Facebook user behind the connection has done so, the call fails with &#x60;meta_identity_confirmation_required&#x60; (403). **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (&#x60;limit&#x60; &gt; 25 is a 400); &#x60;after&#x60; is the next offset. Which params apply: &#x60;q&#x60;, &#x60;countries&#x60;, &#x60;since&#x60;, &#x60;until&#x60;, &#x60;limit&#x60;, &#x60;after&#x60; on both; &#x60;pageIds&#x60;, &#x60;adType&#x60;, &#x60;status&#x60;, &#x60;platforms&#x60;, &#x60;mediaType&#x60;, &#x60;languages&#x60;, &#x60;searchType&#x60;, &#x60;fields&#x60; are Meta-only; &#x60;advertiser&#x60; is LinkedIn-only. Passing a param the account&#39;s platform does not support is a 400 naming the param.
38
- # @param account_id Zernio SocialAccount id (facebook / instagram / metaads for Meta, linkedin / linkedinads for LinkedIn). Its token is the one that searches.
37
+ # Competitor and market research over the public ad archives. Meta&#39;s Ad Library (&#x60;GET /ads_archive&#x60;) is searched with Zernio&#39;s own developer access, so &#x60;platform&#x3D;meta&#x60; needs no connected account at all. LinkedIn&#39;s Ad Library (&#x60;GET /rest/adLibrary&#x60;) runs on a connected &#x60;linkedin&#x60; / &#x60;linkedinads&#x60; account, passed as &#x60;accountId&#x60;. Passing a Meta account as &#x60;accountId&#x60; also selects Meta. Rows are returned in the platform&#39;s raw shape under &#x60;data&#x60;; &#x60;paging.after&#x60; is an opaque cursor on both (&#x60;null&#x60; when exhausted). **Meta coverage.** Political and social-issue ads are searchable worldwide. Every other ad is in the archive only if it was delivered to the EU or UK within the last year, so a US-only commercial advertiser is invisible. Spend, impressions and demographics are political-only fields and are left out of the default projection; request them via &#x60;fields&#x60;. All customers share Zernio&#39;s Meta quota, so a &#x60;429&#x60; means back off for a minute. **LinkedIn coverage.** Ads served after June 1 2023, worldwide, kept for a year after their last impression. EU-delivered ads carry impression ranges and the disclosed targeting facets. Pages are capped at 25 ads (&#x60;limit&#x60; &gt; 25 is a 400); &#x60;after&#x60; is the next offset. Which params apply: &#x60;q&#x60;, &#x60;countries&#x60;, &#x60;since&#x60;, &#x60;until&#x60;, &#x60;limit&#x60;, &#x60;after&#x60; on both; &#x60;pageIds&#x60;, &#x60;adType&#x60;, &#x60;status&#x60;, &#x60;platforms&#x60;, &#x60;mediaType&#x60;, &#x60;languages&#x60;, &#x60;searchType&#x60;, &#x60;fields&#x60; are Meta-only; &#x60;advertiser&#x60; is LinkedIn-only. Passing a param the account&#39;s platform does not support is a 400 naming the param.
39
38
  # @param [Hash] opts the optional parameters
39
+ # @option opts [String] :platform Which archive to search. &#x60;meta&#x60; needs no accountId. Required unless accountId is given.
40
+ # @option opts [String] :account_id Zernio SocialAccount id. Required for LinkedIn (linkedin / linkedinads: its token searches). Optional for Meta, where any facebook / instagram / metaads account just selects the platform.
40
41
  # @option opts [String] :q Keyword search. Meta does not translate it, so write it in the ads&#39; language. Required unless pageIds (Meta) or advertiser (LinkedIn) is given.
41
42
  # @option opts [String] :page_ids Meta only. Comma-separated Facebook Page ids (max 10) whose ads to list.
42
43
  # @option opts [String] :advertiser LinkedIn only. Advertiser (Page) name to search.
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: late-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.861
4
+ version: 0.0.862
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-07 00:00:00.000000000 Z
11
+ date: 2026-09-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -5800,7 +5800,7 @@ files:
5800
5800
  - spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
5801
5801
  - spec/models/you_tube_video_retention_response_spec.rb
5802
5802
  - spec/spec_helper.rb
5803
- - zernio-sdk-0.0.861.gem
5803
+ - zernio-sdk-0.0.862.gem
5804
5804
  - zernio-sdk.gemspec
5805
5805
  homepage: https://openapi-generator.tech
5806
5806
  licenses:
Binary file