late-sdk 0.0.943 → 0.0.945
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 +4 -4
- data/docs/CreateCallAdRequest.md +2 -0
- data/docs/CreateMessagingAdRequest.md +2 -0
- data/docs/CreateStandaloneAdRequest.md +2 -0
- data/docs/CtwaAdRequestBody.md +2 -0
- data/docs/TargetingSpec.md +2 -0
- data/docs/TargetingSpecExcludedLocations.md +2 -0
- data/lib/zernio-sdk/api/ad_targeting_api.rb +1 -1
- data/lib/zernio-sdk/models/create_call_ad_request.rb +13 -1
- data/lib/zernio-sdk/models/create_messaging_ad_request.rb +13 -1
- data/lib/zernio-sdk/models/create_standalone_ad_request.rb +13 -1
- data/lib/zernio-sdk/models/ctwa_ad_request_body.rb +13 -1
- data/lib/zernio-sdk/models/targeting_spec.rb +13 -1
- data/lib/zernio-sdk/models/targeting_spec_excluded_locations.rb +35 -1
- data/lib/zernio-sdk/version.rb +1 -1
- data/openapi.yaml +39 -1
- data/spec/models/create_call_ad_request_spec.rb +10 -0
- data/spec/models/create_messaging_ad_request_spec.rb +10 -0
- data/spec/models/create_standalone_ad_request_spec.rb +10 -0
- data/spec/models/ctwa_ad_request_body_spec.rb +10 -0
- data/spec/models/targeting_spec_excluded_locations_spec.rb +10 -0
- data/spec/models/targeting_spec_spec.rb +10 -0
- data/zernio-sdk-0.0.945.gem +0 -0
- metadata +2 -2
- data/zernio-sdk-0.0.943.gem +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 06b139dee8527c1c6a113a3e72d0741b26edaafd6fad59e369ebcd10b173fa3d
|
|
4
|
+
data.tar.gz: 0bff41a2d60b52fc069b21d4a12c9ee306160a59aa44743a37cdea357db7f418
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4491bf3530ed66f8bf2c72592c7d3995730cbad905c8494b5cdeb9c6428b61da8bd4a9848c60c0a9b22446261134e5d51996bd00942bae84d7396f0aef1ee337
|
|
7
|
+
data.tar.gz: 9ab0279020ee5d6ab8f383f3499f97c51ebb4ef206753e280564ad64eabc00e23781e594a2f69c056b3d3e9a20da6bac3f7ccaa12b6cff103904164794c94adb
|
data/docs/CreateCallAdRequest.md
CHANGED
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
| **regions** | [**Array<CtwaAdRequestBodyRegionsInner>**](CtwaAdRequestBodyRegionsInner.md) | Region / state-level geo targeting. `key` is Meta's region ID (lookupable via GET /v1/ads/targeting/search?type=region). | [optional] |
|
|
29
29
|
| **zips** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | ZIP / postal-code geo targeting. `key` is the platform's postal id resolved via /v1/ads/targeting/search. | [optional] |
|
|
30
30
|
| **metros** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`). | [optional] |
|
|
31
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`. | [optional] |
|
|
31
32
|
| **custom_locations** | [**Array<CreateStandaloneAdRequestCustomLocationsInner>**](CreateStandaloneAdRequestCustomLocationsInner.md) | Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required. | [optional] |
|
|
32
33
|
| **age_min** | **Integer** | | [optional] |
|
|
33
34
|
| **age_max** | **Integer** | | [optional] |
|
|
@@ -78,6 +79,7 @@ instance = Zernio::CreateCallAdRequest.new(
|
|
|
78
79
|
regions: null,
|
|
79
80
|
zips: null,
|
|
80
81
|
metros: null,
|
|
82
|
+
country_groups: null,
|
|
81
83
|
custom_locations: null,
|
|
82
84
|
age_min: null,
|
|
83
85
|
age_max: null,
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
| **regions** | [**Array<CtwaAdRequestBodyRegionsInner>**](CtwaAdRequestBodyRegionsInner.md) | Region / state-level geo targeting. `key` is Meta's region ID (lookupable via GET /v1/ads/targeting/search?type=region). | [optional] |
|
|
29
29
|
| **zips** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | ZIP / postal-code geo targeting. `key` is the platform's postal id resolved via /v1/ads/targeting/search. | [optional] |
|
|
30
30
|
| **metros** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`). | [optional] |
|
|
31
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`. | [optional] |
|
|
31
32
|
| **custom_locations** | [**Array<CreateStandaloneAdRequestCustomLocationsInner>**](CreateStandaloneAdRequestCustomLocationsInner.md) | Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required. | [optional] |
|
|
32
33
|
| **age_min** | **Integer** | | [optional] |
|
|
33
34
|
| **age_max** | **Integer** | | [optional] |
|
|
@@ -77,6 +78,7 @@ instance = Zernio::CreateMessagingAdRequest.new(
|
|
|
77
78
|
regions: null,
|
|
78
79
|
zips: null,
|
|
79
80
|
metros: null,
|
|
81
|
+
country_groups: null,
|
|
80
82
|
custom_locations: null,
|
|
81
83
|
age_min: null,
|
|
82
84
|
age_max: null,
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
| **organization_id** | **String** | LinkedIn only. The Company Page that authors the Direct Sponsored Content (\"dark\") post backing the ad. Accepts a numeric organization ID or a full `urn:li:organization:N` URN. Required unless the resolved `accountId` is a connected LinkedIn Company-Page account (defaults to that page) or the LinkedIn ad account is org-owned (defaults to the account's owning organization). The authenticated member must be an ADMINISTRATOR or DIRECT_SPONSORED_CONTENT_POSTER of this page (and the page must be associated with the ad account), or LinkedIn returns 403. Ignored by every other platform. | [optional] |
|
|
49
49
|
| **targeting** | [**TargetingSpec**](TargetingSpec.md) | Nested targeting object, the same TargetingSpec shape as `POST /v1/ads/boost`, `POST /v1/ads/targeting/reach-estimate`, and `saved_targeting` audiences. Merged UNDER the flat inline targeting fields below: `savedTargetingId` < `targeting` < flat fields (a flat field present on the body replaces the nested value entirely). Both forms are equivalent; use whichever your integration already builds. | [optional] |
|
|
50
50
|
| **countries** | **Array<String>** | ISO 3166-1 alpha-2 country codes (e.g. ['NL']). Defaults to ['US'] when no other geo targeting (flat or nested `targeting`) is provided. (LinkedIn and OpenAI Ads currently honour country-level targeting only; any other targeting field returns 400 for OpenAI Ads.) | [optional] |
|
|
51
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`. | [optional] |
|
|
51
52
|
| **cities** | [**Array<CreateStandaloneAdRequestCitiesInner>**](CreateStandaloneAdRequestCitiesInner.md) | City-level geo targeting (Meta and TikTok). Each city is targeted by the platform's opaque `key` (the city ID) which can be looked up via `GET /v1/ads/targeting/search?dimension=geo&q=<name>&countryCode=<ISO>`. Optional `radius` + `distance_unit` (Meta only) extend the targeting beyond the city limits (e.g. radius 25 km around the city center). Both must be set together, or both omitted (Meta defaults to ~16 km when omitted). On Meta, cannot overlap with the same country in `countries` (Meta returns a \"locations overlap\" error). Either drop the country or scope it to a different country. On TikTok, keys are numeric location ids and can be sent without `countries`. | [optional] |
|
|
52
53
|
| **regions** | [**Array<CreateStandaloneAdRequestRegionsInner>**](CreateStandaloneAdRequestRegionsInner.md) | Region-level (state/province) geo targeting (Meta and TikTok). Each region is targeted by the platform's opaque `key` (the region ID) which can be looked up via `GET /v1/ads/targeting/search?dimension=geo&q=<name>&countryCode=<ISO>`. | [optional] |
|
|
53
54
|
| **age_min** | **Integer** | | [optional] |
|
|
@@ -159,6 +160,7 @@ instance = Zernio::CreateStandaloneAdRequest.new(
|
|
|
159
160
|
organization_id: null,
|
|
160
161
|
targeting: null,
|
|
161
162
|
countries: null,
|
|
163
|
+
country_groups: null,
|
|
162
164
|
cities: null,
|
|
163
165
|
regions: null,
|
|
164
166
|
age_min: null,
|
data/docs/CtwaAdRequestBody.md
CHANGED
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
| **regions** | [**Array<CtwaAdRequestBodyRegionsInner>**](CtwaAdRequestBodyRegionsInner.md) | Region / state-level geo targeting. `key` is Meta's region ID (lookupable via GET /v1/ads/targeting/search?type=region). | [optional] |
|
|
29
29
|
| **zips** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | ZIP / postal-code geo targeting. `key` is the platform's postal id resolved via /v1/ads/targeting/search. | [optional] |
|
|
30
30
|
| **metros** | [**Array<CtwaAdRequestBodyZipsInner>**](CtwaAdRequestBodyZipsInner.md) | DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`). | [optional] |
|
|
31
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`. | [optional] |
|
|
31
32
|
| **custom_locations** | [**Array<CreateStandaloneAdRequestCustomLocationsInner>**](CreateStandaloneAdRequestCustomLocationsInner.md) | Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required. | [optional] |
|
|
32
33
|
| **age_min** | **Integer** | | [optional] |
|
|
33
34
|
| **age_max** | **Integer** | | [optional] |
|
|
@@ -76,6 +77,7 @@ instance = Zernio::CtwaAdRequestBody.new(
|
|
|
76
77
|
regions: null,
|
|
77
78
|
zips: null,
|
|
78
79
|
metros: null,
|
|
80
|
+
country_groups: null,
|
|
79
81
|
custom_locations: null,
|
|
80
82
|
age_min: null,
|
|
81
83
|
age_max: null,
|
data/docs/TargetingSpec.md
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
| **cities** | [**Array<TargetingSpecCitiesInner>**](TargetingSpecCitiesInner.md) | City targeting. Optional `radius` + `distanceUnit` extend beyond the city limits; both must be set together or both omitted. `radius` is only honoured on platforms whose capability map allows city radius (Meta). | [optional] |
|
|
12
12
|
| **zips** | [**Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>**](UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner.md) | Postal/ZIP targeting. `key` is the platform's postal location ID (e.g. Meta `US:94304`). Supported on Meta, Google, TikTok, Pinterest, X. | [optional] |
|
|
13
13
|
| **metros** | [**Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>**](UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner.md) | DMA / metro-area targeting. `key` is the platform's metro ID (e.g. Meta `DMA:807`). | [optional] |
|
|
14
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`. | [optional] |
|
|
14
15
|
| **custom_locations** | [**Array<TargetingSpecCustomLocationsInner>**](TargetingSpecCustomLocationsInner.md) | Point-radius (lat/lng) targeting (Meta custom_locations / Google proximity). Honoured on Meta and Google; ignored on platforms without radius support. | [optional] |
|
|
15
16
|
| **excluded_locations** | [**TargetingSpecExcludedLocations**](TargetingSpecExcludedLocations.md) | | [optional] |
|
|
16
17
|
| **age_min** | **Integer** | Minimum age. Applied on Meta, TikTok and Pinterest; ignored on Google, LinkedIn and X. Each platform clamps to its own range: Meta and Pinterest effectively cap at 65 (65 = 65+), TikTok maps up to 100. Pinterest has no under-18 bucket, so an ageMin below 18 starts at 18 there. | [optional] |
|
|
@@ -43,6 +44,7 @@ instance = Zernio::TargetingSpec.new(
|
|
|
43
44
|
cities: null,
|
|
44
45
|
zips: null,
|
|
45
46
|
metros: null,
|
|
47
|
+
country_groups: null,
|
|
46
48
|
custom_locations: null,
|
|
47
49
|
excluded_locations: null,
|
|
48
50
|
age_min: null,
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **countries** | **Array<String>** | | [optional] |
|
|
8
|
+
| **country_groups** | **Array<String>** | Meta only. Continents and trade blocs to exclude (`excluded_geo_locations.country_groups`). | [optional] |
|
|
8
9
|
| **regions** | [**Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>**](UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner.md) | | [optional] |
|
|
9
10
|
| **cities** | [**Array<TargetingSpecExcludedLocationsCitiesInner>**](TargetingSpecExcludedLocationsCitiesInner.md) | Cities to exclude. Optional `radius` + `distanceUnit` exclude a catchment around the city (both must be set together or both omitted); Meta honours the radius on excluded cities. | [optional] |
|
|
10
11
|
| **zips** | [**Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>**](UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner.md) | | [optional] |
|
|
@@ -19,6 +20,7 @@ require 'zernio-sdk'
|
|
|
19
20
|
|
|
20
21
|
instance = Zernio::TargetingSpecExcludedLocations.new(
|
|
21
22
|
countries: null,
|
|
23
|
+
country_groups: null,
|
|
22
24
|
regions: null,
|
|
23
25
|
cities: null,
|
|
24
26
|
zips: null,
|
|
@@ -335,7 +335,7 @@ module Zernio
|
|
|
335
335
|
if @api_client.config.client_side_validation && opts[:'dimension'] && !allowable_values.include?(opts[:'dimension'])
|
|
336
336
|
fail ArgumentError, "invalid value for \"dimension\", must be one of #{allowable_values}"
|
|
337
337
|
end
|
|
338
|
-
allowable_values = ["all", "country", "region", "city", "subcity", "neighborhood", "place", "zip", "metro_area", "geo_market"]
|
|
338
|
+
allowable_values = ["all", "country", "country_group", "region", "city", "subcity", "neighborhood", "place", "zip", "metro_area", "geo_market"]
|
|
339
339
|
if @api_client.config.client_side_validation && opts[:'geo_type'] && !allowable_values.include?(opts[:'geo_type'])
|
|
340
340
|
fail ArgumentError, "invalid value for \"geo_type\", must be one of #{allowable_values}"
|
|
341
341
|
end
|
|
@@ -84,6 +84,9 @@ module Zernio
|
|
|
84
84
|
# DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`).
|
|
85
85
|
attr_accessor :metros
|
|
86
86
|
|
|
87
|
+
# Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
88
|
+
attr_accessor :country_groups
|
|
89
|
+
|
|
87
90
|
# Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required.
|
|
88
91
|
attr_accessor :custom_locations
|
|
89
92
|
|
|
@@ -186,6 +189,7 @@ module Zernio
|
|
|
186
189
|
:'regions' => :'regions',
|
|
187
190
|
:'zips' => :'zips',
|
|
188
191
|
:'metros' => :'metros',
|
|
192
|
+
:'country_groups' => :'countryGroups',
|
|
189
193
|
:'custom_locations' => :'customLocations',
|
|
190
194
|
:'age_min' => :'ageMin',
|
|
191
195
|
:'age_max' => :'ageMax',
|
|
@@ -245,6 +249,7 @@ module Zernio
|
|
|
245
249
|
:'regions' => :'Array<CtwaAdRequestBodyRegionsInner>',
|
|
246
250
|
:'zips' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
247
251
|
:'metros' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
252
|
+
:'country_groups' => :'Array<String>',
|
|
248
253
|
:'custom_locations' => :'Array<CreateStandaloneAdRequestCustomLocationsInner>',
|
|
249
254
|
:'age_min' => :'Integer',
|
|
250
255
|
:'age_max' => :'Integer',
|
|
@@ -412,6 +417,12 @@ module Zernio
|
|
|
412
417
|
end
|
|
413
418
|
end
|
|
414
419
|
|
|
420
|
+
if attributes.key?(:'country_groups')
|
|
421
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
422
|
+
self.country_groups = value
|
|
423
|
+
end
|
|
424
|
+
end
|
|
425
|
+
|
|
415
426
|
if attributes.key?(:'custom_locations')
|
|
416
427
|
if (value = attributes[:'custom_locations']).is_a?(Array)
|
|
417
428
|
self.custom_locations = value
|
|
@@ -968,6 +979,7 @@ module Zernio
|
|
|
968
979
|
regions == o.regions &&
|
|
969
980
|
zips == o.zips &&
|
|
970
981
|
metros == o.metros &&
|
|
982
|
+
country_groups == o.country_groups &&
|
|
971
983
|
custom_locations == o.custom_locations &&
|
|
972
984
|
age_min == o.age_min &&
|
|
973
985
|
age_max == o.age_max &&
|
|
@@ -998,7 +1010,7 @@ module Zernio
|
|
|
998
1010
|
# Calculates hash code according to all attributes.
|
|
999
1011
|
# @return [Integer] Hash code
|
|
1000
1012
|
def hash
|
|
1001
|
-
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities, phone_number, link_url].hash
|
|
1013
|
+
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, country_groups, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities, phone_number, link_url].hash
|
|
1002
1014
|
end
|
|
1003
1015
|
|
|
1004
1016
|
# Builds the object from hash
|
|
@@ -84,6 +84,9 @@ module Zernio
|
|
|
84
84
|
# DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`).
|
|
85
85
|
attr_accessor :metros
|
|
86
86
|
|
|
87
|
+
# Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
88
|
+
attr_accessor :country_groups
|
|
89
|
+
|
|
87
90
|
# Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required.
|
|
88
91
|
attr_accessor :custom_locations
|
|
89
92
|
|
|
@@ -183,6 +186,7 @@ module Zernio
|
|
|
183
186
|
:'regions' => :'regions',
|
|
184
187
|
:'zips' => :'zips',
|
|
185
188
|
:'metros' => :'metros',
|
|
189
|
+
:'country_groups' => :'countryGroups',
|
|
186
190
|
:'custom_locations' => :'customLocations',
|
|
187
191
|
:'age_min' => :'ageMin',
|
|
188
192
|
:'age_max' => :'ageMax',
|
|
@@ -241,6 +245,7 @@ module Zernio
|
|
|
241
245
|
:'regions' => :'Array<CtwaAdRequestBodyRegionsInner>',
|
|
242
246
|
:'zips' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
243
247
|
:'metros' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
248
|
+
:'country_groups' => :'Array<String>',
|
|
244
249
|
:'custom_locations' => :'Array<CreateStandaloneAdRequestCustomLocationsInner>',
|
|
245
250
|
:'age_min' => :'Integer',
|
|
246
251
|
:'age_max' => :'Integer',
|
|
@@ -407,6 +412,12 @@ module Zernio
|
|
|
407
412
|
end
|
|
408
413
|
end
|
|
409
414
|
|
|
415
|
+
if attributes.key?(:'country_groups')
|
|
416
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
417
|
+
self.country_groups = value
|
|
418
|
+
end
|
|
419
|
+
end
|
|
420
|
+
|
|
410
421
|
if attributes.key?(:'custom_locations')
|
|
411
422
|
if (value = attributes[:'custom_locations']).is_a?(Array)
|
|
412
423
|
self.custom_locations = value
|
|
@@ -944,6 +955,7 @@ module Zernio
|
|
|
944
955
|
regions == o.regions &&
|
|
945
956
|
zips == o.zips &&
|
|
946
957
|
metros == o.metros &&
|
|
958
|
+
country_groups == o.country_groups &&
|
|
947
959
|
custom_locations == o.custom_locations &&
|
|
948
960
|
age_min == o.age_min &&
|
|
949
961
|
age_max == o.age_max &&
|
|
@@ -973,7 +985,7 @@ module Zernio
|
|
|
973
985
|
# Calculates hash code according to all attributes.
|
|
974
986
|
# @return [Integer] Hash code
|
|
975
987
|
def hash
|
|
976
|
-
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities, destination].hash
|
|
988
|
+
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, country_groups, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities, destination].hash
|
|
977
989
|
end
|
|
978
990
|
|
|
979
991
|
# Builds the object from hash
|
|
@@ -141,6 +141,9 @@ module Zernio
|
|
|
141
141
|
# ISO 3166-1 alpha-2 country codes (e.g. ['NL']). Defaults to ['US'] when no other geo targeting (flat or nested `targeting`) is provided. (LinkedIn and OpenAI Ads currently honour country-level targeting only; any other targeting field returns 400 for OpenAI Ads.)
|
|
142
142
|
attr_accessor :countries
|
|
143
143
|
|
|
144
|
+
# Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
145
|
+
attr_accessor :country_groups
|
|
146
|
+
|
|
144
147
|
# City-level geo targeting (Meta and TikTok). Each city is targeted by the platform's opaque `key` (the city ID) which can be looked up via `GET /v1/ads/targeting/search?dimension=geo&q=<name>&countryCode=<ISO>`. Optional `radius` + `distance_unit` (Meta only) extend the targeting beyond the city limits (e.g. radius 25 km around the city center). Both must be set together, or both omitted (Meta defaults to ~16 km when omitted). On Meta, cannot overlap with the same country in `countries` (Meta returns a \"locations overlap\" error). Either drop the country or scope it to a different country. On TikTok, keys are numeric location ids and can be sent without `countries`.
|
|
145
148
|
attr_accessor :cities
|
|
146
149
|
|
|
@@ -381,6 +384,7 @@ module Zernio
|
|
|
381
384
|
:'organization_id' => :'organizationId',
|
|
382
385
|
:'targeting' => :'targeting',
|
|
383
386
|
:'countries' => :'countries',
|
|
387
|
+
:'country_groups' => :'countryGroups',
|
|
384
388
|
:'cities' => :'cities',
|
|
385
389
|
:'regions' => :'regions',
|
|
386
390
|
:'age_min' => :'ageMin',
|
|
@@ -501,6 +505,7 @@ module Zernio
|
|
|
501
505
|
:'organization_id' => :'String',
|
|
502
506
|
:'targeting' => :'TargetingSpec',
|
|
503
507
|
:'countries' => :'Array<String>',
|
|
508
|
+
:'country_groups' => :'Array<String>',
|
|
504
509
|
:'cities' => :'Array<CreateStandaloneAdRequestCitiesInner>',
|
|
505
510
|
:'regions' => :'Array<CreateStandaloneAdRequestRegionsInner>',
|
|
506
511
|
:'age_min' => :'Integer',
|
|
@@ -785,6 +790,12 @@ module Zernio
|
|
|
785
790
|
end
|
|
786
791
|
end
|
|
787
792
|
|
|
793
|
+
if attributes.key?(:'country_groups')
|
|
794
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
795
|
+
self.country_groups = value
|
|
796
|
+
end
|
|
797
|
+
end
|
|
798
|
+
|
|
788
799
|
if attributes.key?(:'cities')
|
|
789
800
|
if (value = attributes[:'cities']).is_a?(Array)
|
|
790
801
|
self.cities = value
|
|
@@ -2018,6 +2029,7 @@ module Zernio
|
|
|
2018
2029
|
organization_id == o.organization_id &&
|
|
2019
2030
|
targeting == o.targeting &&
|
|
2020
2031
|
countries == o.countries &&
|
|
2032
|
+
country_groups == o.country_groups &&
|
|
2021
2033
|
cities == o.cities &&
|
|
2022
2034
|
regions == o.regions &&
|
|
2023
2035
|
age_min == o.age_min &&
|
|
@@ -2089,7 +2101,7 @@ module Zernio
|
|
|
2089
2101
|
# Calculates hash code according to all attributes.
|
|
2090
2102
|
# @return [Integer] Hash code
|
|
2091
2103
|
def hash
|
|
2092
|
-
[account_id, ad_account_id, name, campaign_name, ad_set_name, ad_name, tracking, goal, optimization_goal, billing_event, buying_type, rf_prediction_id, promotion, creative_features, multi_advertiser, validate_only, budget_amount, budget_type, status, campaign_status, budget_level, currency, headline, long_headline, body, description, bodies, headlines, descriptions, call_to_action, link_url, lead_gen_form_id, image_url, images, video, creatives, ad_set_id, existing_campaign_id, existing_creative_id, business_name, board_id, organization_id, targeting, countries, cities, regions, age_min, age_max, interests, zips, metros, custom_locations, behaviors, work_positions, work_employers, work_industries, income_tier, languages, placements, saved_targeting_id, raw_targeting, special_ad_categories, special_ad_category_country, regional_regulated_categories, regional_regulation_identities, end_date, start_date, instagram_account_id, dynamic_creative, carousel_cards, default_locale, translations, placement_assets, audience_id, campaign_type, asset_group, keywords, negative_keywords, campaign_negative_keywords, additional_headlines, additional_descriptions, sitelinks, callouts, structured_snippets, advantage_audience, attribution_spec, gender, bid_strategy, bid_amount, roas_average_floor, portfolio_bid_strategy_id, value_rule_set_id, value_rules_applied, platform_specific_data, dsa_beneficiary, dsa_payor, brand_identity, identity_type, smart_plus, user_os, user_device, is_skadnetwork_attribution, campaign_attribution, promoted_object].hash
|
|
2104
|
+
[account_id, ad_account_id, name, campaign_name, ad_set_name, ad_name, tracking, goal, optimization_goal, billing_event, buying_type, rf_prediction_id, promotion, creative_features, multi_advertiser, validate_only, budget_amount, budget_type, status, campaign_status, budget_level, currency, headline, long_headline, body, description, bodies, headlines, descriptions, call_to_action, link_url, lead_gen_form_id, image_url, images, video, creatives, ad_set_id, existing_campaign_id, existing_creative_id, business_name, board_id, organization_id, targeting, countries, country_groups, cities, regions, age_min, age_max, interests, zips, metros, custom_locations, behaviors, work_positions, work_employers, work_industries, income_tier, languages, placements, saved_targeting_id, raw_targeting, special_ad_categories, special_ad_category_country, regional_regulated_categories, regional_regulation_identities, end_date, start_date, instagram_account_id, dynamic_creative, carousel_cards, default_locale, translations, placement_assets, audience_id, campaign_type, asset_group, keywords, negative_keywords, campaign_negative_keywords, additional_headlines, additional_descriptions, sitelinks, callouts, structured_snippets, advantage_audience, attribution_spec, gender, bid_strategy, bid_amount, roas_average_floor, portfolio_bid_strategy_id, value_rule_set_id, value_rules_applied, platform_specific_data, dsa_beneficiary, dsa_payor, brand_identity, identity_type, smart_plus, user_os, user_device, is_skadnetwork_attribution, campaign_attribution, promoted_object].hash
|
|
2093
2105
|
end
|
|
2094
2106
|
|
|
2095
2107
|
# Builds the object from hash
|
|
@@ -85,6 +85,9 @@ module Zernio
|
|
|
85
85
|
# DMA / metro-area geo targeting. `key` is Meta's metro id (e.g. `DMA:807`).
|
|
86
86
|
attr_accessor :metros
|
|
87
87
|
|
|
88
|
+
# Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
89
|
+
attr_accessor :country_groups
|
|
90
|
+
|
|
88
91
|
# Point-radius geo (Meta `geo_locations.custom_locations`). Use for targeting a radius around a specific lat/long when no Meta city/region key fits. `distanceUnit` is required.
|
|
89
92
|
attr_accessor :custom_locations
|
|
90
93
|
|
|
@@ -181,6 +184,7 @@ module Zernio
|
|
|
181
184
|
:'regions' => :'regions',
|
|
182
185
|
:'zips' => :'zips',
|
|
183
186
|
:'metros' => :'metros',
|
|
187
|
+
:'country_groups' => :'countryGroups',
|
|
184
188
|
:'custom_locations' => :'customLocations',
|
|
185
189
|
:'age_min' => :'ageMin',
|
|
186
190
|
:'age_max' => :'ageMax',
|
|
@@ -238,6 +242,7 @@ module Zernio
|
|
|
238
242
|
:'regions' => :'Array<CtwaAdRequestBodyRegionsInner>',
|
|
239
243
|
:'zips' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
240
244
|
:'metros' => :'Array<CtwaAdRequestBodyZipsInner>',
|
|
245
|
+
:'country_groups' => :'Array<String>',
|
|
241
246
|
:'custom_locations' => :'Array<CreateStandaloneAdRequestCustomLocationsInner>',
|
|
242
247
|
:'age_min' => :'Integer',
|
|
243
248
|
:'age_max' => :'Integer',
|
|
@@ -396,6 +401,12 @@ module Zernio
|
|
|
396
401
|
end
|
|
397
402
|
end
|
|
398
403
|
|
|
404
|
+
if attributes.key?(:'country_groups')
|
|
405
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
406
|
+
self.country_groups = value
|
|
407
|
+
end
|
|
408
|
+
end
|
|
409
|
+
|
|
399
410
|
if attributes.key?(:'custom_locations')
|
|
400
411
|
if (value = attributes[:'custom_locations']).is_a?(Array)
|
|
401
412
|
self.custom_locations = value
|
|
@@ -910,6 +921,7 @@ module Zernio
|
|
|
910
921
|
regions == o.regions &&
|
|
911
922
|
zips == o.zips &&
|
|
912
923
|
metros == o.metros &&
|
|
924
|
+
country_groups == o.country_groups &&
|
|
913
925
|
custom_locations == o.custom_locations &&
|
|
914
926
|
age_min == o.age_min &&
|
|
915
927
|
age_max == o.age_max &&
|
|
@@ -938,7 +950,7 @@ module Zernio
|
|
|
938
950
|
# Calculates hash code according to all attributes.
|
|
939
951
|
# @return [Integer] Hash code
|
|
940
952
|
def hash
|
|
941
|
-
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities].hash
|
|
953
|
+
[creative_features, tracking, account_id, ad_account_id, name, existing_post_id, object_story_id, whatsapp_phone_number, headline, body, image_url, video, welcome_message, creatives, ad_set_id, budget_amount, budget_type, currency, end_date, countries, cities, regions, zips, metros, country_groups, custom_locations, age_min, age_max, interests, audience_id, placements, advantage_audience, objective, status, campaign_status, bid_strategy, bid_amount, roas_average_floor, dsa_beneficiary, dsa_payor, regional_regulated_categories, regional_regulation_identities].hash
|
|
942
954
|
end
|
|
943
955
|
|
|
944
956
|
# Builds the object from hash
|
|
@@ -37,6 +37,9 @@ module Zernio
|
|
|
37
37
|
# DMA / metro-area targeting. `key` is the platform's metro ID (e.g. Meta `DMA:807`).
|
|
38
38
|
attr_accessor :metros
|
|
39
39
|
|
|
40
|
+
# Meta only. Continents and trade blocs (`geo_locations.country_groups`), for targeting a whole region without listing its countries. Combines with `countries` rather than replacing it, and is also accepted under `excludedLocations`. Discoverable via `GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
41
|
+
attr_accessor :country_groups
|
|
42
|
+
|
|
40
43
|
# Point-radius (lat/lng) targeting (Meta custom_locations / Google proximity). Honoured on Meta and Google; ignored on platforms without radius support.
|
|
41
44
|
attr_accessor :custom_locations
|
|
42
45
|
|
|
@@ -122,6 +125,7 @@ module Zernio
|
|
|
122
125
|
:'cities' => :'cities',
|
|
123
126
|
:'zips' => :'zips',
|
|
124
127
|
:'metros' => :'metros',
|
|
128
|
+
:'country_groups' => :'countryGroups',
|
|
125
129
|
:'custom_locations' => :'customLocations',
|
|
126
130
|
:'excluded_locations' => :'excludedLocations',
|
|
127
131
|
:'age_min' => :'ageMin',
|
|
@@ -163,6 +167,7 @@ module Zernio
|
|
|
163
167
|
:'cities' => :'Array<TargetingSpecCitiesInner>',
|
|
164
168
|
:'zips' => :'Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>',
|
|
165
169
|
:'metros' => :'Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>',
|
|
170
|
+
:'country_groups' => :'Array<String>',
|
|
166
171
|
:'custom_locations' => :'Array<TargetingSpecCustomLocationsInner>',
|
|
167
172
|
:'excluded_locations' => :'TargetingSpecExcludedLocations',
|
|
168
173
|
:'age_min' => :'Integer',
|
|
@@ -248,6 +253,12 @@ module Zernio
|
|
|
248
253
|
end
|
|
249
254
|
end
|
|
250
255
|
|
|
256
|
+
if attributes.key?(:'country_groups')
|
|
257
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
258
|
+
self.country_groups = value
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
|
|
251
262
|
if attributes.key?(:'custom_locations')
|
|
252
263
|
if (value = attributes[:'custom_locations']).is_a?(Array)
|
|
253
264
|
self.custom_locations = value
|
|
@@ -492,6 +503,7 @@ module Zernio
|
|
|
492
503
|
cities == o.cities &&
|
|
493
504
|
zips == o.zips &&
|
|
494
505
|
metros == o.metros &&
|
|
506
|
+
country_groups == o.country_groups &&
|
|
495
507
|
custom_locations == o.custom_locations &&
|
|
496
508
|
excluded_locations == o.excluded_locations &&
|
|
497
509
|
age_min == o.age_min &&
|
|
@@ -521,7 +533,7 @@ module Zernio
|
|
|
521
533
|
# Calculates hash code according to all attributes.
|
|
522
534
|
# @return [Integer] Hash code
|
|
523
535
|
def hash
|
|
524
|
-
[user_os, user_device, countries, regions, cities, zips, metros, custom_locations, excluded_locations, age_min, age_max, gender, income_tier, languages, interests, behaviors, work_positions, work_employers, work_industries, industries, company_sizes, seniorities, job_functions, audience_include, audience_exclude].hash
|
|
536
|
+
[user_os, user_device, countries, regions, cities, zips, metros, country_groups, custom_locations, excluded_locations, age_min, age_max, gender, income_tier, languages, interests, behaviors, work_positions, work_employers, work_industries, industries, company_sizes, seniorities, job_functions, audience_include, audience_exclude].hash
|
|
525
537
|
end
|
|
526
538
|
|
|
527
539
|
# Builds the object from hash
|
|
@@ -18,6 +18,9 @@ module Zernio
|
|
|
18
18
|
class TargetingSpecExcludedLocations < ApiModelBase
|
|
19
19
|
attr_accessor :countries
|
|
20
20
|
|
|
21
|
+
# Meta only. Continents and trade blocs to exclude (`excluded_geo_locations.country_groups`).
|
|
22
|
+
attr_accessor :country_groups
|
|
23
|
+
|
|
21
24
|
attr_accessor :regions
|
|
22
25
|
|
|
23
26
|
# Cities to exclude. Optional `radius` + `distanceUnit` exclude a catchment around the city (both must be set together or both omitted); Meta honours the radius on excluded cities.
|
|
@@ -34,10 +37,33 @@ module Zernio
|
|
|
34
37
|
# Point-radius (lat/lng) pins to exclude (Meta excluded_geo_locations.custom_locations). Mirrors the inclusion customLocations shape.
|
|
35
38
|
attr_accessor :custom_locations
|
|
36
39
|
|
|
40
|
+
class EnumAttributeValidator
|
|
41
|
+
attr_reader :datatype
|
|
42
|
+
attr_reader :allowable_values
|
|
43
|
+
|
|
44
|
+
def initialize(datatype, allowable_values)
|
|
45
|
+
@allowable_values = allowable_values.map do |value|
|
|
46
|
+
case datatype.to_s
|
|
47
|
+
when /Integer/i
|
|
48
|
+
value.to_i
|
|
49
|
+
when /Float/i
|
|
50
|
+
value.to_f
|
|
51
|
+
else
|
|
52
|
+
value
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def valid?(value)
|
|
58
|
+
!value || allowable_values.include?(value)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
37
62
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
38
63
|
def self.attribute_map
|
|
39
64
|
{
|
|
40
65
|
:'countries' => :'countries',
|
|
66
|
+
:'country_groups' => :'countryGroups',
|
|
41
67
|
:'regions' => :'regions',
|
|
42
68
|
:'cities' => :'cities',
|
|
43
69
|
:'zips' => :'zips',
|
|
@@ -61,6 +87,7 @@ module Zernio
|
|
|
61
87
|
def self.openapi_types
|
|
62
88
|
{
|
|
63
89
|
:'countries' => :'Array<String>',
|
|
90
|
+
:'country_groups' => :'Array<String>',
|
|
64
91
|
:'regions' => :'Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>',
|
|
65
92
|
:'cities' => :'Array<TargetingSpecExcludedLocationsCitiesInner>',
|
|
66
93
|
:'zips' => :'Array<UpdateCampaignTargetingRequestTargetingLocationsOneOfRegionsInner>',
|
|
@@ -98,6 +125,12 @@ module Zernio
|
|
|
98
125
|
end
|
|
99
126
|
end
|
|
100
127
|
|
|
128
|
+
if attributes.key?(:'country_groups')
|
|
129
|
+
if (value = attributes[:'country_groups']).is_a?(Array)
|
|
130
|
+
self.country_groups = value
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
|
|
101
134
|
if attributes.key?(:'regions')
|
|
102
135
|
if (value = attributes[:'regions']).is_a?(Array)
|
|
103
136
|
self.regions = value
|
|
@@ -156,6 +189,7 @@ module Zernio
|
|
|
156
189
|
return true if self.equal?(o)
|
|
157
190
|
self.class == o.class &&
|
|
158
191
|
countries == o.countries &&
|
|
192
|
+
country_groups == o.country_groups &&
|
|
159
193
|
regions == o.regions &&
|
|
160
194
|
cities == o.cities &&
|
|
161
195
|
zips == o.zips &&
|
|
@@ -173,7 +207,7 @@ module Zernio
|
|
|
173
207
|
# Calculates hash code according to all attributes.
|
|
174
208
|
# @return [Integer] Hash code
|
|
175
209
|
def hash
|
|
176
|
-
[countries, regions, cities, zips, places, neighborhoods, custom_locations].hash
|
|
210
|
+
[countries, country_groups, regions, cities, zips, places, neighborhoods, custom_locations].hash
|
|
177
211
|
end
|
|
178
212
|
|
|
179
213
|
# Builds the object from hash
|
data/lib/zernio-sdk/version.rb
CHANGED
data/openapi.yaml
CHANGED
|
@@ -1277,6 +1277,17 @@ components:
|
|
|
1277
1277
|
properties:
|
|
1278
1278
|
key: { type: string, minLength: 1 }
|
|
1279
1279
|
name: { type: string }
|
|
1280
|
+
countryGroups:
|
|
1281
|
+
type: array
|
|
1282
|
+
description: |
|
|
1283
|
+
Meta only. Continents and trade blocs (`geo_locations.country_groups`),
|
|
1284
|
+
for targeting a whole region without listing its countries. Combines
|
|
1285
|
+
with `countries` rather than replacing it, and is also accepted under
|
|
1286
|
+
`excludedLocations`. Discoverable via
|
|
1287
|
+
`GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
1288
|
+
items:
|
|
1289
|
+
type: string
|
|
1290
|
+
enum: [africa, asia, europe, north_america, south_america, oceania, central_america, caribbean, eea, euro_area, nafta, mercosur, afta, apec, gcc, cisfta, emerging_markets, itunes_app_store, android_free_store, android_paid_store]
|
|
1280
1291
|
customLocations:
|
|
1281
1292
|
type: array
|
|
1282
1293
|
description: |
|
|
@@ -9213,6 +9224,17 @@ components:
|
|
|
9213
9224
|
properties:
|
|
9214
9225
|
key: { type: string }
|
|
9215
9226
|
name: { type: string }
|
|
9227
|
+
countryGroups:
|
|
9228
|
+
type: array
|
|
9229
|
+
description: |
|
|
9230
|
+
Meta only. Continents and trade blocs (`geo_locations.country_groups`),
|
|
9231
|
+
for targeting a whole region without listing its countries. Combines
|
|
9232
|
+
with `countries` rather than replacing it, and is also accepted under
|
|
9233
|
+
`excludedLocations`. Discoverable via
|
|
9234
|
+
`GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
9235
|
+
items:
|
|
9236
|
+
type: string
|
|
9237
|
+
enum: [africa, asia, europe, north_america, south_america, oceania, central_america, caribbean, eea, euro_area, nafta, mercosur, afta, apec, gcc, cisfta, emerging_markets, itunes_app_store, android_free_store, android_paid_store]
|
|
9216
9238
|
customLocations:
|
|
9217
9239
|
type: array
|
|
9218
9240
|
description: "Point-radius (lat/lng) targeting (Meta custom_locations / Google proximity). Honoured on Meta and Google; ignored on platforms without radius support."
|
|
@@ -9231,6 +9253,12 @@ components:
|
|
|
9231
9253
|
description: "Geo to exclude from the audience. Mirrors the inclusion geo shape: excluded cities can carry a radius catchment and excluded custom (lat/lng) pins are supported, both on Meta (excluded_geo_locations)."
|
|
9232
9254
|
properties:
|
|
9233
9255
|
countries: { type: array, items: { type: string } }
|
|
9256
|
+
countryGroups:
|
|
9257
|
+
type: array
|
|
9258
|
+
description: "Meta only. Continents and trade blocs to exclude (`excluded_geo_locations.country_groups`)."
|
|
9259
|
+
items:
|
|
9260
|
+
type: string
|
|
9261
|
+
enum: [africa, asia, europe, north_america, south_america, oceania, central_america, caribbean, eea, euro_area, nafta, mercosur, afta, apec, gcc, cisfta, emerging_markets, itunes_app_store, android_free_store, android_paid_store]
|
|
9234
9262
|
regions:
|
|
9235
9263
|
type: array
|
|
9236
9264
|
items:
|
|
@@ -51675,6 +51703,16 @@ paths:
|
|
|
51675
51703
|
allOf:
|
|
51676
51704
|
- $ref: '#/components/schemas/TargetingSpec'
|
|
51677
51705
|
countries: { type: array, items: { type: string }, description: "ISO 3166-1 alpha-2 country codes (e.g. ['NL']). Defaults to ['US'] when no other geo targeting (flat or nested `targeting`) is provided. (LinkedIn and OpenAI Ads currently honour country-level targeting only; any other targeting field returns 400 for OpenAI Ads.)" }
|
|
51706
|
+
countryGroups:
|
|
51707
|
+
type: array
|
|
51708
|
+
description: |
|
|
51709
|
+
Meta only. Continents and trade blocs (`geo_locations.country_groups`),
|
|
51710
|
+
for targeting a whole region without listing its countries. Combines with
|
|
51711
|
+
`countries` rather than replacing it. Discoverable via
|
|
51712
|
+
`GET /v1/ads/targeting/search?dimension=geo&geoType=country_group`.
|
|
51713
|
+
items:
|
|
51714
|
+
type: string
|
|
51715
|
+
enum: [africa, asia, europe, north_america, south_america, oceania, central_america, caribbean, eea, euro_area, nafta, mercosur, afta, apec, gcc, cisfta, emerging_markets, itunes_app_store, android_free_store, android_paid_store]
|
|
51678
51716
|
cities:
|
|
51679
51717
|
type: array
|
|
51680
51718
|
description: |
|
|
@@ -53325,7 +53363,7 @@ paths:
|
|
|
53325
53363
|
- { name: accountId, in: query, required: true, schema: { type: string }, description: "Account ID (a connected account on the target ad platform)." }
|
|
53326
53364
|
- { name: q, in: query, required: true, schema: { type: string }, description: "Search query. For geo, the locality name only (no region/country suffix)." }
|
|
53327
53365
|
- { name: dimension, in: query, required: false, schema: { type: string, enum: [geo, interest, behavior, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize], default: interest }, description: "What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities, `income` resolves income-tier options, `language` resolves Google's targetable language_constant table (Google only), `workPosition`/`workEmployer`/`workIndustry` resolve Meta work demographics, `industry`/`jobFunction`/`seniority`/`companySize` resolve LinkedIn B2B facets (LinkedIn only). Defaults to `interest` for backward compatibility with the deprecated /v1/ads/interests alias." }
|
|
53328
|
-
- { name: geoType, in: query, required: false, schema: { type: string, enum: [all, country, region, city, subcity, neighborhood, place, zip, metro_area, geo_market], default: city }, description: "Only used when `dimension=geo`. The kind of location to resolve. `all` searches every type in one relevance-ranked call. Defaults to `city`." }
|
|
53366
|
+
- { name: geoType, in: query, required: false, schema: { type: string, enum: [all, country, country_group, region, city, subcity, neighborhood, place, zip, metro_area, geo_market], default: city }, description: "Only used when `dimension=geo`. The kind of location to resolve. `all` searches every type in one relevance-ranked call. Defaults to `city`." }
|
|
53329
53367
|
- { name: countryCode, in: query, required: false, schema: { type: string, minLength: 2, maxLength: 2 }, description: "ISO 3166-1 alpha-2 country code (e.g. NL) to scope a geo search." }
|
|
53330
53368
|
- { name: limit, in: query, required: false, schema: { type: integer, minimum: 1, maximum: 100, default: 25 }, description: "Maximum results to return." }
|
|
53331
53369
|
responses:
|
|
@@ -179,6 +179,16 @@ describe Zernio::CreateCallAdRequest do
|
|
|
179
179
|
end
|
|
180
180
|
end
|
|
181
181
|
|
|
182
|
+
describe 'test attribute "country_groups"' do
|
|
183
|
+
it 'should work' do
|
|
184
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
185
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
186
|
+
# validator.allowable_values.each do |value|
|
|
187
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
188
|
+
# end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
|
|
182
192
|
describe 'test attribute "custom_locations"' do
|
|
183
193
|
it 'should work' do
|
|
184
194
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -179,6 +179,16 @@ describe Zernio::CreateMessagingAdRequest do
|
|
|
179
179
|
end
|
|
180
180
|
end
|
|
181
181
|
|
|
182
|
+
describe 'test attribute "country_groups"' do
|
|
183
|
+
it 'should work' do
|
|
184
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
185
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
186
|
+
# validator.allowable_values.each do |value|
|
|
187
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
188
|
+
# end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
|
|
182
192
|
describe 'test attribute "custom_locations"' do
|
|
183
193
|
it 'should work' do
|
|
184
194
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -327,6 +327,16 @@ describe Zernio::CreateStandaloneAdRequest do
|
|
|
327
327
|
end
|
|
328
328
|
end
|
|
329
329
|
|
|
330
|
+
describe 'test attribute "country_groups"' do
|
|
331
|
+
it 'should work' do
|
|
332
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
333
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
334
|
+
# validator.allowable_values.each do |value|
|
|
335
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
336
|
+
# end
|
|
337
|
+
end
|
|
338
|
+
end
|
|
339
|
+
|
|
330
340
|
describe 'test attribute "cities"' do
|
|
331
341
|
it 'should work' do
|
|
332
342
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -179,6 +179,16 @@ describe Zernio::CtwaAdRequestBody do
|
|
|
179
179
|
end
|
|
180
180
|
end
|
|
181
181
|
|
|
182
|
+
describe 'test attribute "country_groups"' do
|
|
183
|
+
it 'should work' do
|
|
184
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
185
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
186
|
+
# validator.allowable_values.each do |value|
|
|
187
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
188
|
+
# end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
|
|
182
192
|
describe 'test attribute "custom_locations"' do
|
|
183
193
|
it 'should work' do
|
|
184
194
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -33,6 +33,16 @@ describe Zernio::TargetingSpecExcludedLocations do
|
|
|
33
33
|
end
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
+
describe 'test attribute "country_groups"' do
|
|
37
|
+
it 'should work' do
|
|
38
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
39
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
40
|
+
# validator.allowable_values.each do |value|
|
|
41
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
42
|
+
# end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
36
46
|
describe 'test attribute "regions"' do
|
|
37
47
|
it 'should work' do
|
|
38
48
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -69,6 +69,16 @@ describe Zernio::TargetingSpec do
|
|
|
69
69
|
end
|
|
70
70
|
end
|
|
71
71
|
|
|
72
|
+
describe 'test attribute "country_groups"' do
|
|
73
|
+
it 'should work' do
|
|
74
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
75
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('Array<String>', ["africa", "asia", "europe", "north_america", "south_america", "oceania", "central_america", "caribbean", "eea", "euro_area", "nafta", "mercosur", "afta", "apec", "gcc", "cisfta", "emerging_markets", "itunes_app_store", "android_free_store", "android_paid_store"])
|
|
76
|
+
# validator.allowable_values.each do |value|
|
|
77
|
+
# expect { instance.country_groups = value }.not_to raise_error
|
|
78
|
+
# end
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
|
|
72
82
|
describe 'test attribute "custom_locations"' do
|
|
73
83
|
it 'should work' do
|
|
74
84
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: late-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.945
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- OpenAPI-Generator
|
|
@@ -6400,7 +6400,7 @@ files:
|
|
|
6400
6400
|
- spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
|
|
6401
6401
|
- spec/models/you_tube_video_retention_response_spec.rb
|
|
6402
6402
|
- spec/spec_helper.rb
|
|
6403
|
-
- zernio-sdk-0.0.
|
|
6403
|
+
- zernio-sdk-0.0.945.gem
|
|
6404
6404
|
- zernio-sdk.gemspec
|
|
6405
6405
|
homepage: https://openapi-generator.tech
|
|
6406
6406
|
licenses:
|
data/zernio-sdk-0.0.943.gem
DELETED
|
Binary file
|