@getlatedev/node 0.2.1148 → 0.2.1149

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.
package/dist/index.d.mts CHANGED
@@ -12463,14 +12463,14 @@ type TargetingSpec = {
12463
12463
  */
12464
12464
  languages?: Array<(string)>;
12465
12465
  /**
12466
- * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only.
12466
+ * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
12467
12467
  */
12468
12468
  interests?: Array<{
12469
12469
  id: string;
12470
12470
  name?: string;
12471
12471
  }>;
12472
12472
  /**
12473
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only.
12473
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests.
12474
12474
  */
12475
12475
  behaviors?: Array<{
12476
12476
  id: string;
@@ -47337,7 +47337,7 @@ type CreateStandaloneAdData = {
47337
47337
  ageMin?: number;
47338
47338
  ageMax?: number;
47339
47339
  /**
47340
- * Interest objects from /v1/ads/interests. Each must include id and name.
47340
+ * Interest objects from /v1/ads/targeting/search?dimension=interest (or dimension=interestKeyword on TikTok). Each must include id and name. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
47341
47341
  */
47342
47342
  interests?: Array<{
47343
47343
  id: string;
@@ -47369,7 +47369,7 @@ type CreateStandaloneAdData = {
47369
47369
  address?: string;
47370
47370
  }>;
47371
47371
  /**
47372
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only. Each must include id.
47372
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests. Each must include id.
47373
47373
  */
47374
47374
  behaviors?: Array<{
47375
47375
  id: string;
@@ -48718,9 +48718,9 @@ type SearchAdTargetingData = {
48718
48718
  */
48719
48719
  countryCode?: string;
48720
48720
  /**
48721
- * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` is Meta only), `income` resolves the normalized income tiers, `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.
48721
+ * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` on Meta, TikTok and LinkedIn), `interestKeyword`/`hashtag` resolve TikTok additional interests and hashtags (TikTok only), `income` resolves the normalized income tiers, `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.
48722
48722
  */
48723
- dimension?: 'geo' | 'interest' | 'behavior' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
48723
+ dimension?: 'geo' | 'interest' | 'interestKeyword' | 'behavior' | 'hashtag' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
48724
48724
  /**
48725
48725
  * Only used when `dimension=geo`. The kind of location to resolve. `all` searches every type in one relevance-ranked call. Defaults to `city`.
48726
48726
  */
@@ -48746,7 +48746,7 @@ type SearchAdTargetingResponse = ({
48746
48746
  */
48747
48747
  name: string;
48748
48748
  /**
48749
- * What the result is. Equals the requested dimension (interest, behavior, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
48749
+ * What the result is. Equals the requested dimension (interest, interestKeyword, behavior, hashtag, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
48750
48750
  */
48751
48751
  type: string;
48752
48752
  /**
@@ -48757,6 +48757,10 @@ type SearchAdTargetingResponse = ({
48757
48757
  * Optional estimated reachable users for this option, when the platform returns it.
48758
48758
  */
48759
48759
  audienceSize?: (number) | null;
48760
+ /**
48761
+ * TikTok `interestKeyword` and `hashtag` results only: TikTok's availability status. `EFFECTIVE` / `INEFFECTIVE` for additional interests, `ONLINE` / `OFFLINE` for hashtags. Only `EFFECTIVE` and `ONLINE` ids can be targeted.
48762
+ */
48763
+ status?: string;
48760
48764
  /**
48761
48765
  * ISO-3166 alpha-2 of the country a sub-country geo result (city, region, zip, metro) belongs to, when the platform reports it (Meta does). Useful to know whether a location falls under the EU DSA disclosure rules before creating the ad.
48762
48766
  */
package/dist/index.d.ts CHANGED
@@ -12463,14 +12463,14 @@ type TargetingSpec = {
12463
12463
  */
12464
12464
  languages?: Array<(string)>;
12465
12465
  /**
12466
- * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only.
12466
+ * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
12467
12467
  */
12468
12468
  interests?: Array<{
12469
12469
  id: string;
12470
12470
  name?: string;
12471
12471
  }>;
12472
12472
  /**
12473
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only.
12473
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests.
12474
12474
  */
12475
12475
  behaviors?: Array<{
12476
12476
  id: string;
@@ -47337,7 +47337,7 @@ type CreateStandaloneAdData = {
47337
47337
  ageMin?: number;
47338
47338
  ageMax?: number;
47339
47339
  /**
47340
- * Interest objects from /v1/ads/interests. Each must include id and name.
47340
+ * Interest objects from /v1/ads/targeting/search?dimension=interest (or dimension=interestKeyword on TikTok). Each must include id and name. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
47341
47341
  */
47342
47342
  interests?: Array<{
47343
47343
  id: string;
@@ -47369,7 +47369,7 @@ type CreateStandaloneAdData = {
47369
47369
  address?: string;
47370
47370
  }>;
47371
47371
  /**
47372
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only. Each must include id.
47372
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests. Each must include id.
47373
47373
  */
47374
47374
  behaviors?: Array<{
47375
47375
  id: string;
@@ -48718,9 +48718,9 @@ type SearchAdTargetingData = {
48718
48718
  */
48719
48719
  countryCode?: string;
48720
48720
  /**
48721
- * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` is Meta only), `income` resolves the normalized income tiers, `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.
48721
+ * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` on Meta, TikTok and LinkedIn), `interestKeyword`/`hashtag` resolve TikTok additional interests and hashtags (TikTok only), `income` resolves the normalized income tiers, `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.
48722
48722
  */
48723
- dimension?: 'geo' | 'interest' | 'behavior' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
48723
+ dimension?: 'geo' | 'interest' | 'interestKeyword' | 'behavior' | 'hashtag' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
48724
48724
  /**
48725
48725
  * Only used when `dimension=geo`. The kind of location to resolve. `all` searches every type in one relevance-ranked call. Defaults to `city`.
48726
48726
  */
@@ -48746,7 +48746,7 @@ type SearchAdTargetingResponse = ({
48746
48746
  */
48747
48747
  name: string;
48748
48748
  /**
48749
- * What the result is. Equals the requested dimension (interest, behavior, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
48749
+ * What the result is. Equals the requested dimension (interest, interestKeyword, behavior, hashtag, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
48750
48750
  */
48751
48751
  type: string;
48752
48752
  /**
@@ -48757,6 +48757,10 @@ type SearchAdTargetingResponse = ({
48757
48757
  * Optional estimated reachable users for this option, when the platform returns it.
48758
48758
  */
48759
48759
  audienceSize?: (number) | null;
48760
+ /**
48761
+ * TikTok `interestKeyword` and `hashtag` results only: TikTok's availability status. `EFFECTIVE` / `INEFFECTIVE` for additional interests, `ONLINE` / `OFFLINE` for hashtags. Only `EFFECTIVE` and `ONLINE` ids can be targeted.
48762
+ */
48763
+ status?: string;
48760
48764
  /**
48761
48765
  * ISO-3166 alpha-2 of the country a sub-country geo result (city, region, zip, metro) belongs to, when the platform reports it (Meta does). Useful to know whether a location falls under the EU DSA disclosure rules before creating the ad.
48762
48766
  */
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ module.exports = __toCommonJS(index_exports);
36
36
  // package.json
37
37
  var package_default = {
38
38
  name: "@getlatedev/node",
39
- version: "0.2.1148",
39
+ version: "0.2.1149",
40
40
  description: "The official Node.js library for the Zernio API",
41
41
  main: "dist/index.js",
42
42
  module: "dist/index.mjs",
package/dist/index.mjs CHANGED
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5
5
  // package.json
6
6
  var package_default = {
7
7
  name: "@getlatedev/node",
8
- version: "0.2.1148",
8
+ version: "0.2.1149",
9
9
  description: "The official Node.js library for the Zernio API",
10
10
  main: "dist/index.js",
11
11
  module: "dist/index.mjs",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getlatedev/node",
3
- "version": "0.2.1148",
3
+ "version": "0.2.1149",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -12575,10 +12575,17 @@ export const searchAdInterests = <ThrowOnError extends boolean = false>(options:
12575
12575
  * Meta: its fixed behaviors catalog (e.g. `Small business owners`, `Frequent Travelers`).
12576
12576
  * TikTok: video and creator interaction categories (e.g. `Software & Apps`), with ids like
12577
12577
  * `video:1913101` or `creator:24001` and `path` starting with `Video interactions` or
12578
- * `Creator interactions`. LinkedIn: member behaviors (e.g. `Frequent Travelers`,
12578
+ * `Creator interactions` (hashtags are their own `hashtag` dimension). LinkedIn: member behaviors (e.g. `Frequent Travelers`,
12579
12579
  * `Job Seekers`, `Recently Promoted`), ids like `urn:li:memberBehavior:9`. Google has no
12580
12580
  * separate behavior catalog: its in-market and affinity segments come back from `interest`,
12581
12581
  * and X removed behavior targeting from its Ads API
12582
+ * - `interestKeyword`: TikTok only. The "Additional interests" of TikTok Ads Manager (e.g. `folk`
12583
+ * returns `Folk Music`), from TikTok's keyword recommendations for the seed `q`. Ids look like
12584
+ * `keyword:123456` and go in `TargetingSpec.interests`, next to interest categories. Only keywords
12585
+ * TikTok lets an ad group target come back (`status` `EFFECTIVE`). TikTok returns no audience size
12586
+ * - `hashtag`: TikTok only. Hashtags recommended for the seed `q`, to target people who viewed videos
12587
+ * with them. Ids look like `hashtag:123456` and go in `TargetingSpec.behaviors`. Only hashtags
12588
+ * TikTok reports `ONLINE` come back. Spaces in `q` are removed first, because TikTok recommends no hashtags for a multi-word seed (`acoustic guitar` searches `acousticguitar`)
12582
12589
  * - `income`: the household-income tiers the platform can target (Meta, TikTok, Google).
12583
12590
  * The id is the normalized tier (`top_5`, `top_10`, `top_10_25`, `top_25_50`) to pass as
12584
12591
  * `TargetingSpec.incomeTier`, never a platform segment id. Meta's tiers are US-only
@@ -12598,6 +12605,10 @@ export const searchAdInterests = <ThrowOnError extends boolean = false>(options:
12598
12605
  * TikTok `interest` searches TikTok's interest category catalog (about 700 categories over
12599
12606
  * four levels, `path` holds the parent categories), matched by name in Zernio. The ids are
12600
12607
  * what `TargetingSpec.interests` sends to TikTok as `interest_category_ids`.
12608
+ * For `interestKeyword` and `hashtag`, a `q` made only of prefixed ids (`keyword:101,keyword:102` or
12609
+ * `hashtag:201`) looks those ids up instead of searching, unavailable ones included with their `status`
12610
+ * (`INEFFECTIVE` or `OFFLINE`), so ids read back from an ad group (`interest_keyword_ids`, `actions`
12611
+ * in `nativeSettings`) resolve to names. An `interestKeyword` lookup takes at most 50 ids (more returns 400 naming `q`).
12601
12612
  * Work industries are a fixed ~30-entry Meta catalog with no server-side query,
12602
12613
  * so `workIndustry` matching, ranking and `limit` happen in Zernio. `language`
12603
12614
  * is likewise a fixed, checked-in table of Google's targetable
@@ -10930,14 +10930,14 @@ export type TargetingSpec = {
10930
10930
  */
10931
10931
  languages?: Array<(string)>;
10932
10932
  /**
10933
- * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only.
10933
+ * Interest entities from /v1/ads/targeting/search?dimension=interest. Each carries the platform's opaque id. On Google, applied as ad-group interest criteria (affinity and in-market categories) on Display and Search ad groups the request creates; rejected with 400 on Performance Max, on Demand Gen (use the Demand Gen audience `userInterests` there), when attaching to an existing ad group (`adSetId`), and on OpenAI. On Google, interests are create-only. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
10934
10934
  */
10935
10935
  interests?: Array<{
10936
10936
  id: string;
10937
10937
  name?: string;
10938
10938
  }>;
10939
10939
  /**
10940
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only.
10940
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests.
10941
10941
  */
10942
10942
  behaviors?: Array<{
10943
10943
  id: string;
@@ -48146,7 +48146,7 @@ export type CreateStandaloneAdData = {
48146
48146
  ageMin?: number;
48147
48147
  ageMax?: number;
48148
48148
  /**
48149
- * Interest objects from /v1/ads/interests. Each must include id and name.
48149
+ * Interest objects from /v1/ads/targeting/search?dimension=interest (or dimension=interestKeyword on TikTok). Each must include id and name. On TikTok, bare numeric ids are interest categories (`interest_category_ids`) and ids like `keyword:123456` from `dimension=interestKeyword` are additional interests (`interest_keyword_ids`); any other id returns 422 naming `targeting.interests`. TikTok matches people who fit ANY selected interest, additional interest or behavior (one OR'd group), and that group is ANDed with location, age, gender and the other dimensions.
48150
48150
  */
48151
48151
  interests?: Array<{
48152
48152
  id: string;
@@ -48178,7 +48178,7 @@ export type CreateStandaloneAdData = {
48178
48178
  address?: string;
48179
48179
  }>;
48180
48180
  /**
48181
- * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, and the ad group uses the TikTok placement only. Each must include id.
48181
+ * Behaviour entities from /v1/ads/targeting/search?dimension=behavior (Meta, TikTok and LinkedIn). On TikTok they target people who interacted with videos (watched to the end, liked, commented or shared, last 15 days) or creators (followed or viewed the profile) in the picked categories, or who viewed videos with a picked hashtag (`hashtag:<id>` ids from `dimension=hashtag`, sent as a `HASHTAG_RELATED` action with `VIEW_HASHTAG`), and the ad group uses the TikTok placement only. On TikTok, behaviors are OR'd with interests and additional interests. Each must include id.
48182
48182
  */
48183
48183
  behaviors?: Array<{
48184
48184
  id: string;
@@ -49575,9 +49575,9 @@ export type SearchAdTargetingData = {
49575
49575
  */
49576
49576
  countryCode?: string;
49577
49577
  /**
49578
- * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` is Meta only), `income` resolves the normalized income tiers, `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.
49578
+ * What to search. `geo` resolves locations (scope further with `geoType`), `interest`/`behavior` resolve audience entities (`behavior` on Meta, TikTok and LinkedIn), `interestKeyword`/`hashtag` resolve TikTok additional interests and hashtags (TikTok only), `income` resolves the normalized income tiers, `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.
49579
49579
  */
49580
- dimension?: 'geo' | 'interest' | 'behavior' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
49580
+ dimension?: 'geo' | 'interest' | 'interestKeyword' | 'behavior' | 'hashtag' | 'income' | 'language' | 'workPosition' | 'workEmployer' | 'workIndustry' | 'industry' | 'jobFunction' | 'seniority' | 'companySize';
49581
49581
  /**
49582
49582
  * Only used when `dimension=geo`. The kind of location to resolve. `all` searches every type in one relevance-ranked call. Defaults to `city`.
49583
49583
  */
@@ -49604,7 +49604,7 @@ export type SearchAdTargetingResponse = ({
49604
49604
  */
49605
49605
  name: string;
49606
49606
  /**
49607
- * What the result is. Equals the requested dimension (interest, behavior, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
49607
+ * What the result is. Equals the requested dimension (interest, interestKeyword, behavior, hashtag, income, language, workPosition, workEmployer, workIndustry, industry, jobFunction, seniority, companySize), or the location level for geo (country, region, city, zip, metro, ...).
49608
49608
  */
49609
49609
  type: string;
49610
49610
  /**
@@ -49615,6 +49615,10 @@ export type SearchAdTargetingResponse = ({
49615
49615
  * Optional estimated reachable users for this option, when the platform returns it.
49616
49616
  */
49617
49617
  audienceSize?: (number) | null;
49618
+ /**
49619
+ * TikTok `interestKeyword` and `hashtag` results only: TikTok's availability status. `EFFECTIVE` / `INEFFECTIVE` for additional interests, `ONLINE` / `OFFLINE` for hashtags. Only `EFFECTIVE` and `ONLINE` ids can be targeted.
49620
+ */
49621
+ status?: string;
49618
49622
  /**
49619
49623
  * ISO-3166 alpha-2 of the country a sub-country geo result (city, region, zip, metro) belongs to, when the platform reports it (Meta does). Useful to know whether a location falls under the EU DSA disclosure rules before creating the ad.
49620
49624
  */