@getlatedev/node 0.2.1158 → 0.2.1159
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.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
- package/src/generated/sdk.gen.ts +642 -94
package/src/generated/sdk.gen.ts
CHANGED
|
@@ -1727,7 +1727,9 @@ export const handleOAuthCallback = <ThrowOnError extends boolean = false>(option
|
|
|
1727
1727
|
|
|
1728
1728
|
/**
|
|
1729
1729
|
* Connect ads for a platform
|
|
1730
|
-
*
|
|
1730
|
+
* Starts connecting a platform's ads account, giving you a dedicated ads connection to manage campaigns without touching posting accounts.
|
|
1731
|
+
*
|
|
1732
|
+
* Creates a dedicated ads SocialAccount for the specified platform.
|
|
1731
1733
|
*
|
|
1732
1734
|
* **Meta business login (opt-in).** Set `loginMode=business` for `facebook` or
|
|
1733
1735
|
* `instagram` to use Facebook Login for Business and a Business Integration System User
|
|
@@ -1827,7 +1829,10 @@ export const connectAds = <ThrowOnError extends boolean = false>(options: Option
|
|
|
1827
1829
|
|
|
1828
1830
|
/**
|
|
1829
1831
|
* Complete Meta business login
|
|
1832
|
+
* Finishes a Meta business login after the user approves access, connects the Meta ads account and sends them back to your app.
|
|
1833
|
+
*
|
|
1830
1834
|
* Facebook Login for Business redirect target. Meta supplies the single-use authorization code and the authenticated state returned by connectAds. The state expires after 30 minutes and binds the user, profile, Page selection and ad-account scope. No bearer token is sent by the browser. Success reconnects only metaads and redirects to the original redirect_url. Invalid state returns 400; inaccessible profiles or missing ads access cannot connect. Dashboard logins with several Pages redirect to the Facebook Page picker with an encrypted selectionToken valid for ten minutes. Listing and selecting require the initiating user and current profile access. No plaintext platform token is returned to the browser.
|
|
1835
|
+
*
|
|
1831
1836
|
*/
|
|
1832
1837
|
export const completeMetaAdsBusinessLogin = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CompleteMetaAdsBusinessLoginData, ThrowOnError>) => {
|
|
1833
1838
|
return (options?.client ?? client).get<void, unknown, ThrowOnError>({
|
|
@@ -1956,7 +1961,10 @@ export const configureTikTokAdsBrandIdentity = <ThrowOnError extends boolean = f
|
|
|
1956
1961
|
|
|
1957
1962
|
/**
|
|
1958
1963
|
* List Facebook pages
|
|
1959
|
-
*
|
|
1964
|
+
* Lists the Facebook Pages a user can pick from after signing in, so they can choose which Page to connect.
|
|
1965
|
+
*
|
|
1966
|
+
* Classic connections require profileId and tempToken from the OAuth redirect. Use X-Connect-Token for headless connections. The dashboard business-login picker instead sends only selectionToken, an encrypted grant valid for ten minutes. This requires the initiating user and current profile access and returns only Page IDs and names. X-Connect-Token cannot authorize business selection.
|
|
1967
|
+
*
|
|
1960
1968
|
*/
|
|
1961
1969
|
export const listFacebookPages = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<ListFacebookPagesData, ThrowOnError>) => {
|
|
1962
1970
|
return (options?.client ?? client).get<ListFacebookPagesResponse, ListFacebookPagesError, ThrowOnError>({
|
|
@@ -1967,7 +1975,10 @@ export const listFacebookPages = <ThrowOnError extends boolean = false>(options?
|
|
|
1967
1975
|
|
|
1968
1976
|
/**
|
|
1969
1977
|
* Select Facebook page
|
|
1978
|
+
* Connects the Facebook Page the user picked after signing in, completing the Facebook or Meta Ads connection.
|
|
1979
|
+
*
|
|
1970
1980
|
* Complete a classic Facebook Page connection with profileId, pageId, tempToken and userProfile. Use X-Connect-Token for headless connections. The dashboard business-login picker instead sends only selectionToken and pageId to complete a Meta Ads connection. The server verifies the initiating user, profile access, current grants and connection eligibility. The profile, platform token, ad-account scope and return URL come only from the encrypted grant. Business selection requires a session or bearer authentication for the initiating user; X-Connect-Token is not accepted. It returns redirect_url with connected=metaads on success or an eligibility error redirect.
|
|
1981
|
+
*
|
|
1971
1982
|
*/
|
|
1972
1983
|
export const selectFacebookPage = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<SelectFacebookPageData, ThrowOnError>) => {
|
|
1973
1984
|
return (options?.client ?? client).post<SelectFacebookPageResponse, SelectFacebookPageError, ThrowOnError>({
|
|
@@ -9468,6 +9479,8 @@ export const listCommentAutomationLogs = <ThrowOnError extends boolean = false>(
|
|
|
9468
9479
|
|
|
9469
9480
|
/**
|
|
9470
9481
|
* List ads
|
|
9482
|
+
* Lists your ads with their performance over a date range, including ads created directly in each platform's ads manager.
|
|
9483
|
+
*
|
|
9471
9484
|
* Returns a paginated list of ads with metrics computed over an optional date range.
|
|
9472
9485
|
* Use source=all to include externally-synced ads from platform ad managers.
|
|
9473
9486
|
* If no date range is provided, defaults to the last 90 days. Date range is capped at 730 days max.
|
|
@@ -9488,6 +9501,8 @@ export const listAds = <ThrowOnError extends boolean = false>(options?: OptionsL
|
|
|
9488
9501
|
|
|
9489
9502
|
/**
|
|
9490
9503
|
* Google Ads search terms report
|
|
9504
|
+
* Shows the actual Google searches that triggered your ads, with spend and results, so you can spot wasted spend and add negative keywords.
|
|
9505
|
+
*
|
|
9491
9506
|
* The actual search queries that triggered your ads, with matched-keyword
|
|
9492
9507
|
* status and spend metrics, the raw material for wasted-spend analysis and
|
|
9493
9508
|
* negative-keyword lists. Reads Google's `search_term_view`, cached for
|
|
@@ -9505,7 +9520,10 @@ export const getAdsSearchTerms = <ThrowOnError extends boolean = false>(options:
|
|
|
9505
9520
|
|
|
9506
9521
|
/**
|
|
9507
9522
|
* List Google Ads recommendations
|
|
9523
|
+
* Lists Google's optimization suggestions for an ad account, with the estimated impact of each.
|
|
9524
|
+
*
|
|
9508
9525
|
* Google's optimization recommendations for one ad account: type, estimated impact (base vs potential metrics, cost in account currency units), the campaign, ad group or budget they target, and the type-specific payload Google returns (`details`, in Google's own shape with micros). Filter by campaignId and types. Cached for 10 minutes and cleared by apply or dismiss; served stale when Google quota is exhausted.
|
|
9526
|
+
*
|
|
9509
9527
|
*/
|
|
9510
9528
|
export const listGoogleRecommendations = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListGoogleRecommendationsData, ThrowOnError>) => {
|
|
9511
9529
|
return (options?.client ?? client).get<ListGoogleRecommendationsResponse, ListGoogleRecommendationsError, ThrowOnError>({
|
|
@@ -9516,7 +9534,10 @@ export const listGoogleRecommendations = <ThrowOnError extends boolean = false>(
|
|
|
9516
9534
|
|
|
9517
9535
|
/**
|
|
9518
9536
|
* Apply Google Ads recommendations
|
|
9537
|
+
* Applies Google's optimization suggestions to an ad account, using Google's values or your own; the changes cannot be undone.
|
|
9538
|
+
*
|
|
9519
9539
|
* Apply up to 100 recommendations. This changes the account (budgets, bidding, keywords, assets) and is not reversible or idempotent; Google offers no validate-only mode for it. Items run in partial-failure mode, so one stale recommendation does not block the rest. `parameters` is optional and takes exactly one key named for the recommendation type, in Google's ApplyRecommendationOperation shape (for example `campaignBudget: { newBudgetAmountMicros }` or `keyword: { matchType, cpcBidMicros }`); omit it to apply Google's suggested values.
|
|
9540
|
+
*
|
|
9520
9541
|
*/
|
|
9521
9542
|
export const applyGoogleRecommendations = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ApplyGoogleRecommendationsData, ThrowOnError>) => {
|
|
9522
9543
|
return (options?.client ?? client).post<ApplyGoogleRecommendationsResponse, ApplyGoogleRecommendationsError, ThrowOnError>({
|
|
@@ -9527,7 +9548,10 @@ export const applyGoogleRecommendations = <ThrowOnError extends boolean = false>
|
|
|
9527
9548
|
|
|
9528
9549
|
/**
|
|
9529
9550
|
* Dismiss Google Ads recommendations
|
|
9551
|
+
* Dismisses Google optimization suggestions so Google stops showing them.
|
|
9552
|
+
*
|
|
9530
9553
|
* Dismiss up to 100 recommendations so Google stops suggesting them. Items run in partial-failure mode.
|
|
9554
|
+
*
|
|
9531
9555
|
*/
|
|
9532
9556
|
export const dismissGoogleRecommendations = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DismissGoogleRecommendationsData, ThrowOnError>) => {
|
|
9533
9557
|
return (options?.client ?? client).post<DismissGoogleRecommendationsResponse, DismissGoogleRecommendationsError, ThrowOnError>({
|
|
@@ -9538,6 +9562,8 @@ export const dismissGoogleRecommendations = <ThrowOnError extends boolean = fals
|
|
|
9538
9562
|
|
|
9539
9563
|
/**
|
|
9540
9564
|
* List portfolio bid strategies
|
|
9565
|
+
* Lists a Google Ads account's shared bid strategies with how many campaigns use each and how they performed.
|
|
9566
|
+
*
|
|
9541
9567
|
* Bidding strategy report: type, status, campaign count, clicks, cost, cost per conversion, impressions, average CPC and conversions over the date range (default last 30 days). Reads Google's `bidding_strategy` resource, cached for the quota window. Draws on the shared Google Ads operations budget. The response carries `cachedAt` and `stale`, set when a quota-exhausted call falls back to the last-good copy instead of a live read.
|
|
9542
9568
|
*/
|
|
9543
9569
|
export const listBidStrategies = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListBidStrategiesData, ThrowOnError>) => {
|
|
@@ -9549,7 +9575,10 @@ export const listBidStrategies = <ThrowOnError extends boolean = false>(options:
|
|
|
9549
9575
|
|
|
9550
9576
|
/**
|
|
9551
9577
|
* Create portfolio bid strategy
|
|
9552
|
-
* Creates a
|
|
9578
|
+
* Creates a Google Ads bid strategy that several campaigns can share, such as one target CPA or ROAS.
|
|
9579
|
+
*
|
|
9580
|
+
* Attach it to a campaign with `portfolioBidStrategyId` on POST /v1/ads/create, PUT /v1/ads/campaigns/{campaignId}, or PUT /v1/ads/ad-sets/{adSetId}. Attaching a strategy aligned to a shared budget fails there with a 400 (Google's `BIDDING_STRATEGY_AND_BUDGET_MUST_BE_ALIGNED`); this is not retryable.
|
|
9581
|
+
*
|
|
9553
9582
|
*/
|
|
9554
9583
|
export const createBidStrategy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateBidStrategyData, ThrowOnError>) => {
|
|
9555
9584
|
return (options?.client ?? client).post<CreateBidStrategyResponse, CreateBidStrategyError, ThrowOnError>({
|
|
@@ -9560,7 +9589,10 @@ export const createBidStrategy = <ThrowOnError extends boolean = false>(options:
|
|
|
9560
9589
|
|
|
9561
9590
|
/**
|
|
9562
9591
|
* Update portfolio bid strategy
|
|
9563
|
-
* Renames
|
|
9592
|
+
* Renames a shared Google Ads bid strategy or changes its target CPA or ROAS.
|
|
9593
|
+
*
|
|
9594
|
+
* The strategy's status is output only on Google's side, so it cannot be changed here; remove a strategy in Google Ads. `type` is only needed alongside `targetCpa`/`targetRoas` to disambiguate the field Google writes to (TARGET_CPA and MAXIMIZE_CONVERSIONS both take a target CPA; TARGET_ROAS and MAXIMIZE_CONVERSION_VALUE both take a target ROAS); the strategy's family is otherwise immutable once created.
|
|
9595
|
+
*
|
|
9564
9596
|
*/
|
|
9565
9597
|
export const updateBidStrategy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateBidStrategyData, ThrowOnError>) => {
|
|
9566
9598
|
return (options?.client ?? client).patch<UpdateBidStrategyResponse, UpdateBidStrategyError, ThrowOnError>({
|
|
@@ -9571,6 +9603,8 @@ export const updateBidStrategy = <ThrowOnError extends boolean = false>(options:
|
|
|
9571
9603
|
|
|
9572
9604
|
/**
|
|
9573
9605
|
* List shared budgets
|
|
9606
|
+
* Lists a Google Ads account's shared budgets and how many campaigns draw from each.
|
|
9607
|
+
*
|
|
9574
9608
|
* Lists the Google Ads customer's shared campaign budgets (`campaign_budget.explicitly_shared`
|
|
9575
9609
|
* = true, not removed), with how many campaigns use each. Move a campaign onto one with
|
|
9576
9610
|
* `sharedBudgetId` on PUT /v1/ads/campaigns/{campaignId}. Google only; other platforms return 501.
|
|
@@ -9585,6 +9619,8 @@ export const listSharedBudgets = <ThrowOnError extends boolean = false>(options:
|
|
|
9585
9619
|
|
|
9586
9620
|
/**
|
|
9587
9621
|
* Create a shared budget
|
|
9622
|
+
* Creates a daily Google Ads budget that several campaigns can share.
|
|
9623
|
+
*
|
|
9588
9624
|
* Creates a daily shared campaign budget (`explicitly_shared: true`, standard delivery) that
|
|
9589
9625
|
* several campaigns can draw from. A lifetime budget returns 422, like every Google budget.
|
|
9590
9626
|
* Google refuses some bidding strategies on a shared budget; that error surfaces when a
|
|
@@ -9600,6 +9636,8 @@ export const createSharedBudget = <ThrowOnError extends boolean = false>(options
|
|
|
9600
9636
|
|
|
9601
9637
|
/**
|
|
9602
9638
|
* Google Local Services Ads leads
|
|
9639
|
+
* Lists the calls, messages and bookings your Google Local Services Ads generated, newest first.
|
|
9640
|
+
*
|
|
9603
9641
|
* Leads generated by Local Services Ads (phone calls, messages, bookings),
|
|
9604
9642
|
* read live from Google's `local_services_lead` resource, newest first.
|
|
9605
9643
|
* No persistence: Google is the source of truth and lead/credit statuses
|
|
@@ -9616,6 +9654,8 @@ export const listLocalServicesLeads = <ThrowOnError extends boolean = false>(opt
|
|
|
9616
9654
|
|
|
9617
9655
|
/**
|
|
9618
9656
|
* List lead conversations
|
|
9657
|
+
* Shows the calls (with recordings) and messages exchanged with one Google Local Services lead, oldest first.
|
|
9658
|
+
*
|
|
9619
9659
|
* Conversation entries of one Local Services lead: phone calls (duration,
|
|
9620
9660
|
* recording URL) and messages (text, attachment URLs), oldest first. Read
|
|
9621
9661
|
* live from `local_services_lead_conversation`, always scoped to a single
|
|
@@ -9631,6 +9671,8 @@ export const listLocalServicesLeadConversations = <ThrowOnError extends boolean
|
|
|
9631
9671
|
|
|
9632
9672
|
/**
|
|
9633
9673
|
* List Search keywords
|
|
9674
|
+
* Lists the keywords and negative keywords in your Google Search ad groups.
|
|
9675
|
+
*
|
|
9634
9676
|
* Returns the Google Search keyword criteria (positive and negative) synced from
|
|
9635
9677
|
* connected Google Ads accounts, one row per ad-group keyword. Refreshed about
|
|
9636
9678
|
* once a day per Google Ads customer (the keyword sweep rides the ads discovery
|
|
@@ -9651,6 +9693,8 @@ export const listAdKeywords = <ThrowOnError extends boolean = false>(options?: O
|
|
|
9651
9693
|
|
|
9652
9694
|
/**
|
|
9653
9695
|
* Add Search ad-group keywords
|
|
9696
|
+
* Adds keywords, or negative keywords, to a Google Search ad group without replacing the ones already there.
|
|
9697
|
+
*
|
|
9654
9698
|
* Adds one or more keyword criteria to an existing Google Search ad group,
|
|
9655
9699
|
* without touching the keywords already there (unlike the whole-set diff on
|
|
9656
9700
|
* `PUT /v1/ads/{adId}`, `keywords`/`negativeKeywords` in `platformSpecificData`,
|
|
@@ -9667,6 +9711,8 @@ export const addAdKeywords = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
9667
9711
|
|
|
9668
9712
|
/**
|
|
9669
9713
|
* Pause or enable a Search keyword
|
|
9714
|
+
* Pauses or re-enables a single Google Search keyword.
|
|
9715
|
+
*
|
|
9670
9716
|
* Changes `ad_group_criterion.status` for one keyword criterion (M.140).
|
|
9671
9717
|
* Negative keywords have no status on Google and cannot be paused or enabled.
|
|
9672
9718
|
*
|
|
@@ -9680,7 +9726,10 @@ export const updateAdKeyword = <ThrowOnError extends boolean = false>(options: O
|
|
|
9680
9726
|
|
|
9681
9727
|
/**
|
|
9682
9728
|
* Remove a Search keyword
|
|
9729
|
+
* Removes a single keyword or negative keyword from a Google Search ad group.
|
|
9730
|
+
*
|
|
9683
9731
|
* Removes one keyword criterion (positive or negative) from its ad group (M.140).
|
|
9732
|
+
*
|
|
9684
9733
|
*/
|
|
9685
9734
|
export const removeAdKeyword = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAdKeywordData, ThrowOnError>) => {
|
|
9686
9735
|
return (options?.client ?? client).delete<RemoveAdKeywordResponse, RemoveAdKeywordError, ThrowOnError>({
|
|
@@ -9691,6 +9740,8 @@ export const removeAdKeyword = <ThrowOnError extends boolean = false>(options: O
|
|
|
9691
9740
|
|
|
9692
9741
|
/**
|
|
9693
9742
|
* List campaigns
|
|
9743
|
+
* Lists your campaigns with spend, impressions and clicks summed across their ads, plus each campaign's status and budget.
|
|
9744
|
+
*
|
|
9694
9745
|
* Returns campaigns as virtual aggregations over ad documents grouped by platform campaign ID.
|
|
9695
9746
|
* Metrics (spend, impressions, clicks, etc.) are summed across all ads in each campaign.
|
|
9696
9747
|
* Campaign status is derived from child ad statuses (active > pending_review > paused > error > completed > cancelled > rejected).
|
|
@@ -9723,6 +9774,8 @@ export const listAdCampaigns = <ThrowOnError extends boolean = false>(options?:
|
|
|
9723
9774
|
|
|
9724
9775
|
/**
|
|
9725
9776
|
* Create a standalone campaign
|
|
9777
|
+
* Creates an empty campaign, paused, so you can add ad sets and ads to it afterwards.
|
|
9778
|
+
*
|
|
9726
9779
|
* Creates a campaign WITHOUT its first ad set / ad, on the platform of the given
|
|
9727
9780
|
* `accountId`. Ad sets join it later via `existingCampaignId` on the create endpoints.
|
|
9728
9781
|
* Platform notes: on Meta a budget here is campaign-level (CBO) by definition; omit it
|
|
@@ -9747,6 +9800,8 @@ export const createAdCampaign = <ThrowOnError extends boolean = false>(options:
|
|
|
9747
9800
|
|
|
9748
9801
|
/**
|
|
9749
9802
|
* Pause or resume a campaign
|
|
9803
|
+
* Pauses or resumes a campaign, leaving the on/off switches of its ad sets and ads as they are.
|
|
9804
|
+
*
|
|
9750
9805
|
* Writes the campaign's own on/off switch and nothing else, on every platform (Meta, TikTok,
|
|
9751
9806
|
* Google, LinkedIn campaign group, Pinterest, X, ChatGPT (OpenAI)). Its ad sets and ads keep
|
|
9752
9807
|
* their own switches: pausing stops their delivery through the campaign, and resuming lets
|
|
@@ -9773,6 +9828,8 @@ export const updateAdCampaignStatus = <ThrowOnError extends boolean = false>(opt
|
|
|
9773
9828
|
|
|
9774
9829
|
/**
|
|
9775
9830
|
* Read a campaign's ad schedule (dayparting)
|
|
9831
|
+
* Shows the days and hours a Google campaign runs and its bid adjustments, optionally with performance by day and hour.
|
|
9832
|
+
*
|
|
9776
9833
|
* The windows a Google campaign serves in, with the bid modifier on each, plus the
|
|
9777
9834
|
* criterion ids Google minted for them.
|
|
9778
9835
|
*
|
|
@@ -9797,7 +9854,9 @@ export const getCampaignAdSchedule = <ThrowOnError extends boolean = false>(opti
|
|
|
9797
9854
|
|
|
9798
9855
|
/**
|
|
9799
9856
|
* Replace a campaign's ad schedule (dayparting)
|
|
9800
|
-
* Replaces the campaign
|
|
9857
|
+
* Replaces the days and hours a Google campaign runs, or clears them so it serves around the clock.
|
|
9858
|
+
*
|
|
9859
|
+
* This is a
|
|
9801
9860
|
* REPLACE, not a merge: windows you leave out stop serving.
|
|
9802
9861
|
*
|
|
9803
9862
|
* Send `schedule: []` to clear dayparting, which returns the campaign to serving around
|
|
@@ -9826,6 +9885,8 @@ export const updateCampaignAdSchedule = <ThrowOnError extends boolean = false>(o
|
|
|
9826
9885
|
|
|
9827
9886
|
/**
|
|
9828
9887
|
* Read a campaign's current bidding
|
|
9888
|
+
* Shows a Google campaign's current bidding strategy and targets, ready to prefill an edit.
|
|
9889
|
+
*
|
|
9829
9890
|
* Read of the campaign's bidding strategy on Google, cached for the quota window, for
|
|
9830
9891
|
* pre-filling the bid strategy block before a PUT to /v1/ads/campaigns/{campaignId}.
|
|
9831
9892
|
* Google Ads only; `platform` is required and rejected when it is anything else, since
|
|
@@ -9850,6 +9911,8 @@ export const getCampaignBidding = <ThrowOnError extends boolean = false>(options
|
|
|
9850
9911
|
|
|
9851
9912
|
/**
|
|
9852
9913
|
* Get live campaign details
|
|
9914
|
+
* Shows a Meta campaign's current settings straight from Meta, such as its objective, budget, bid strategy, schedule and delivery issues.
|
|
9915
|
+
*
|
|
9853
9916
|
* Reads one campaign live from Meta, returned verbatim, so a caller that knows a
|
|
9854
9917
|
* campaign id no longer has to page `GET /v1/ads/campaigns` to find it. The default
|
|
9855
9918
|
* projection covers name, status, objective, buying type, bid strategy, budgets,
|
|
@@ -9866,7 +9929,9 @@ export const getAdCampaignDetails = <ThrowOnError extends boolean = false>(optio
|
|
|
9866
9929
|
|
|
9867
9930
|
/**
|
|
9868
9931
|
* Update a campaign
|
|
9869
|
-
*
|
|
9932
|
+
* Changes a campaign's settings, such as its name, budget, bidding or tracking URLs.
|
|
9933
|
+
*
|
|
9934
|
+
* Send at least one of `budget`, `bidStrategy`,
|
|
9870
9935
|
* `portfolioBidStrategyId`, `targetImpressionShare`, `manualCpc`, `networkSettings`,
|
|
9871
9936
|
* `trackingUrlTemplate`, `finalUrlSuffix`, `sharedBudgetId`, `name` or `platformSpecificData`. An unsupported
|
|
9872
9937
|
* field is always an error, never a silent drop.
|
|
@@ -9936,8 +10001,9 @@ export const updateAdCampaign = <ThrowOnError extends boolean = false>(options:
|
|
|
9936
10001
|
|
|
9937
10002
|
/**
|
|
9938
10003
|
* Delete a campaign
|
|
9939
|
-
* Deletes
|
|
9940
|
-
*
|
|
10004
|
+
* Deletes a campaign along with all of its ad sets and ads, including a campaign that never got any ads.
|
|
10005
|
+
*
|
|
10006
|
+
* Locally, all Ad documents for this campaign are marked
|
|
9941
10007
|
* `status: cancelled`.
|
|
9942
10008
|
*
|
|
9943
10009
|
* **Empty campaigns.** A campaign with zero ads has no local Ad documents
|
|
@@ -9958,6 +10024,8 @@ export const deleteAdCampaign = <ThrowOnError extends boolean = false>(options:
|
|
|
9958
10024
|
|
|
9959
10025
|
/**
|
|
9960
10026
|
* List campaign-level negative keywords
|
|
10027
|
+
* Lists the negative keywords set on a whole Google campaign, separate from ad group negatives.
|
|
10028
|
+
*
|
|
9961
10029
|
* Returns the campaign-level negative keywords (`campaign_criterion.negative`),
|
|
9962
10030
|
* distinct from the ad-group-level negatives under `GET /v1/ads/keywords`. Cached
|
|
9963
10031
|
* for the quota window (not synced to Postgres), and gated by the shared Google
|
|
@@ -9978,6 +10046,8 @@ export const listCampaignNegativeKeywords = <ThrowOnError extends boolean = fals
|
|
|
9978
10046
|
|
|
9979
10047
|
/**
|
|
9980
10048
|
* Replace campaign-level negative keywords
|
|
10049
|
+
* Replaces a Google campaign's full list of campaign-level negative keywords, or clears it.
|
|
10050
|
+
*
|
|
9981
10051
|
* Replaces the FULL set of campaign-level negative keywords (C.270): the desired
|
|
9982
10052
|
* list is diffed against what Google already has, and the difference is applied
|
|
9983
10053
|
* as one `create`/`remove` mutate. Send an empty array to clear every campaign
|
|
@@ -9996,7 +10066,9 @@ export const replaceCampaignNegativeKeywords = <ThrowOnError extends boolean = f
|
|
|
9996
10066
|
|
|
9997
10067
|
/**
|
|
9998
10068
|
* Pause or resume many campaigns
|
|
9999
|
-
*
|
|
10069
|
+
* Pauses or resumes up to 50 campaigns in one call, with a separate result per campaign so one failure does not block the rest.
|
|
10070
|
+
*
|
|
10071
|
+
* Each campaign is updated
|
|
10000
10072
|
* concurrently and the response contains a per-campaign result so a
|
|
10001
10073
|
* single bad row does not fail the whole batch. Each campaign is read,
|
|
10002
10074
|
* written and re-read exactly as PUT /v1/ads/campaigns/{campaignId}/status
|
|
@@ -10013,6 +10085,8 @@ export const bulkUpdateAdCampaignStatus = <ThrowOnError extends boolean = false>
|
|
|
10013
10085
|
|
|
10014
10086
|
/**
|
|
10015
10087
|
* Duplicate a campaign
|
|
10088
|
+
* Copies a campaign with its ad sets, ads, creatives and targeting, created paused so you can review it before launch.
|
|
10089
|
+
*
|
|
10016
10090
|
* Duplicates a campaign, including its ad sets, ads, creatives, and
|
|
10017
10091
|
* targeting by default (`deepCopy: true`). The copy is created paused
|
|
10018
10092
|
* so callers can review before launching.
|
|
@@ -10053,6 +10127,8 @@ export const duplicateAdCampaign = <ThrowOnError extends boolean = false>(option
|
|
|
10053
10127
|
|
|
10054
10128
|
/**
|
|
10055
10129
|
* Read a Google campaign's device, location, excluded location, and language targeting
|
|
10130
|
+
* Shows a Google campaign's device, location, excluded location and language targeting so you can build an editor for it.
|
|
10131
|
+
*
|
|
10056
10132
|
* Google Ads compliance requires geo, language, budget, and bidding targeting
|
|
10057
10133
|
* set at creation to stay editable afterwards; this reads the campaign state
|
|
10058
10134
|
* so an integrator can build an editor around it. Cached for the quota window
|
|
@@ -10080,6 +10156,8 @@ export const getCampaignTargeting = <ThrowOnError extends boolean = false>(optio
|
|
|
10080
10156
|
|
|
10081
10157
|
/**
|
|
10082
10158
|
* Edit a Google campaign's device, location, excluded location, or language targeting
|
|
10159
|
+
* Changes a Google campaign's device, location, excluded location or language targeting after it was created.
|
|
10160
|
+
*
|
|
10083
10161
|
* Google Ads compliance row M.10: geo and language targeting set at
|
|
10084
10162
|
* creation must stay editable afterwards. Send at least one of `devices`,
|
|
10085
10163
|
* `locations`, `excludedLocations`, `languages`, `locationTargetingType`; each provided field REPLACES that field's
|
|
@@ -10141,6 +10219,8 @@ export const updateCampaignTargeting = <ThrowOnError extends boolean = false>(op
|
|
|
10141
10219
|
|
|
10142
10220
|
/**
|
|
10143
10221
|
* List ad sets
|
|
10222
|
+
* Lists ad sets (ad groups on Google) with their targeting, bidding and optimization settings, optionally for one campaign.
|
|
10223
|
+
*
|
|
10144
10224
|
* Ad sets (Google ad groups) synced for the connection, optionally
|
|
10145
10225
|
* filtered by platform and campaignId. Reads the `ad_sets` table
|
|
10146
10226
|
* directly, independent of the `ads` rollup GET /v1/ads/tree uses, so a
|
|
@@ -10188,6 +10268,8 @@ export const listAdSets = <ThrowOnError extends boolean = false>(options?: Optio
|
|
|
10188
10268
|
|
|
10189
10269
|
/**
|
|
10190
10270
|
* Create a standalone ad group
|
|
10271
|
+
* Creates an empty Google ad group under an existing campaign, ready for ads to be added later.
|
|
10272
|
+
*
|
|
10191
10273
|
* Google Ads compliance row C.190: creates an ad group WITHOUT an ad,
|
|
10192
10274
|
* under an existing campaign. Ads join it later via `adSetId`
|
|
10193
10275
|
* on POST /v1/ads/create. Google only; every other platform returns 501.
|
|
@@ -10208,7 +10290,9 @@ export const createAdSet = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10208
10290
|
|
|
10209
10291
|
/**
|
|
10210
10292
|
* Duplicate an ad set
|
|
10211
|
-
*
|
|
10293
|
+
* Copies an ad set, optionally with its ads and into another campaign, created paused so you can review it before launch.
|
|
10294
|
+
*
|
|
10295
|
+
* The copy is created paused so callers can review before launching.
|
|
10212
10296
|
* `campaignId` retargets the copy into another campaign; omitted = the source's own campaign.
|
|
10213
10297
|
*
|
|
10214
10298
|
* Meta: ads and creatives are included by default (`deepCopy: true`) via Meta's native
|
|
@@ -10219,6 +10303,7 @@ export const createAdSet = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10219
10303
|
* budget and schedule (start reset to now); `deepCopy: true` recreates its ads too (default
|
|
10220
10304
|
* false). `startTime`, `endTime` and `renameStrategy` are ignored and `statusOption` must be
|
|
10221
10305
|
* PAUSED or absent. The copy appears on the next discovery sync.
|
|
10306
|
+
*
|
|
10222
10307
|
*/
|
|
10223
10308
|
export const duplicateAdSet = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DuplicateAdSetData, ThrowOnError>) => {
|
|
10224
10309
|
return (options?.client ?? client).post<DuplicateAdSetResponse, DuplicateAdSetError, ThrowOnError>({
|
|
@@ -10229,6 +10314,8 @@ export const duplicateAdSet = <ThrowOnError extends boolean = false>(options: Op
|
|
|
10229
10314
|
|
|
10230
10315
|
/**
|
|
10231
10316
|
* Duplicate an ad
|
|
10317
|
+
* Copies a single Meta ad, optionally into another ad set, created paused so you can review it before launch.
|
|
10318
|
+
*
|
|
10232
10319
|
* Duplicates a single ad via Meta's native `POST /{ad-id}/copies`. The copy is created
|
|
10233
10320
|
* paused. `adSetId` retargets the copy into another ad set; omitted = the source's own ad
|
|
10234
10321
|
* set. Accepts the Zernio ad id or the platform ad id. Sync discovery is triggered
|
|
@@ -10249,6 +10336,8 @@ export const duplicateAd = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10249
10336
|
|
|
10250
10337
|
/**
|
|
10251
10338
|
* Get live ad-set details
|
|
10339
|
+
* Shows a Meta ad set's current settings straight from Meta, including its learning phase, budget, schedule and targeting.
|
|
10340
|
+
*
|
|
10252
10341
|
* Reads the ad set live from Meta, returned verbatim. The default projection includes
|
|
10253
10342
|
* `learning_stage_info` (learning-phase status: LEARNING / SUCCESS / FAIL / WAIVING; Meta
|
|
10254
10343
|
* omits its `status` key on paused ad sets), delivery settings, budgets, schedule and
|
|
@@ -10264,7 +10353,9 @@ export const getAdSetDetails = <ThrowOnError extends boolean = false>(options: O
|
|
|
10264
10353
|
|
|
10265
10354
|
/**
|
|
10266
10355
|
* Update an ad set
|
|
10267
|
-
*
|
|
10356
|
+
* Changes an ad set's settings, such as its budget, bid strategy, status or delivery options.
|
|
10357
|
+
*
|
|
10358
|
+
* Use this for ABO budget updates, ad-set-scoped
|
|
10268
10359
|
* pause/resume, bid-strategy edits, Meta value-rule-set attach/detach, and
|
|
10269
10360
|
* Meta-only post-launch delivery settings via `platformSpecificData`. At
|
|
10270
10361
|
* least one updatable field is required.
|
|
@@ -10317,8 +10408,9 @@ export const updateAdSet = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10317
10408
|
|
|
10318
10409
|
/**
|
|
10319
10410
|
* Delete an ad set
|
|
10320
|
-
* Deletes
|
|
10321
|
-
*
|
|
10411
|
+
* Deletes an ad set and its ads while keeping the campaign, archiving it instead on platforms without a hard delete.
|
|
10412
|
+
*
|
|
10413
|
+
* Locally, every Ad document under the ad set is marked
|
|
10322
10414
|
* `status: cancelled`.
|
|
10323
10415
|
*
|
|
10324
10416
|
* Delete is soft on platforms that have no hard delete: LinkedIn moves the
|
|
@@ -10336,7 +10428,9 @@ export const deleteAdSet = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10336
10428
|
|
|
10337
10429
|
/**
|
|
10338
10430
|
* Pause or resume a single ad set
|
|
10339
|
-
*
|
|
10431
|
+
* Pauses or resumes one ad set without touching its campaign, its sibling ad sets or the switches of its ads.
|
|
10432
|
+
*
|
|
10433
|
+
* Thin wrapper
|
|
10340
10434
|
* over PUT /v1/ads/ad-sets/{adSetId} for callers that only want the
|
|
10341
10435
|
* status toggle and prefer a symmetric URL to
|
|
10342
10436
|
* /v1/ads/campaigns/{campaignId}/status.
|
|
@@ -10371,7 +10465,8 @@ export const updateAdSetStatus = <ThrowOnError extends boolean = false>(options:
|
|
|
10371
10465
|
|
|
10372
10466
|
/**
|
|
10373
10467
|
* Get campaign tree
|
|
10374
|
-
*
|
|
10468
|
+
* Shows your campaigns with their ad sets and ads nested inside, with spend and results rolled up at every level.
|
|
10469
|
+
*
|
|
10375
10470
|
* Uses a two-stage aggregation: ads are grouped into ad sets, then ad sets into campaigns.
|
|
10376
10471
|
* Metrics are computed over an optional date range, then rolled up from ad level to ad set
|
|
10377
10472
|
* and campaign levels. Pagination is at the campaign level. Ads without a campaign or ad set
|
|
@@ -10399,6 +10494,8 @@ export const getAdTree = <ThrowOnError extends boolean = false>(options?: Option
|
|
|
10399
10494
|
|
|
10400
10495
|
/**
|
|
10401
10496
|
* Get daily account metrics
|
|
10497
|
+
* Returns an ads account's spend, results and other metrics day by day, ready for a daily performance chart.
|
|
10498
|
+
*
|
|
10402
10499
|
* Returns daily aggregate metrics across all ads in a SocialAccount as a single
|
|
10403
10500
|
* time series, one row per calendar day in the requested range. Use this for
|
|
10404
10501
|
* dashboards that draw a daily-spend or daily-conversions chart, instead of
|
|
@@ -10425,7 +10522,8 @@ export const getAdsTimeline = <ThrowOnError extends boolean = false>(options: Op
|
|
|
10425
10522
|
|
|
10426
10523
|
/**
|
|
10427
10524
|
* Get ad details
|
|
10428
|
-
*
|
|
10525
|
+
* Shows one ad with its creative, targeting, status and performance metrics.
|
|
10526
|
+
*
|
|
10429
10527
|
* Google Search ads include current creative.headlines, creative.descriptions and creative.finalUrls,
|
|
10430
10528
|
* preserving pinnedField. Top-level cachedAt and stale report cache freshness. Google mutations invalidate this read.
|
|
10431
10529
|
* RSA enrichment requires a stored advertisingChannelType of SEARCH. Ads with an unknown or other channel
|
|
@@ -10464,6 +10562,8 @@ export const getAd = <ThrowOnError extends boolean = false>(options: OptionsLega
|
|
|
10464
10562
|
|
|
10465
10563
|
/**
|
|
10466
10564
|
* Update ad
|
|
10565
|
+
* Changes an ad's status, budget, targeting or creative and applies the change on the platform.
|
|
10566
|
+
*
|
|
10467
10567
|
* Patch one or more fields on an ad. Status, budget, targeting, and creative changes
|
|
10468
10568
|
* are propagated to the platform.
|
|
10469
10569
|
*
|
|
@@ -10566,6 +10666,8 @@ export const updateAd = <ThrowOnError extends boolean = false>(options: OptionsL
|
|
|
10566
10666
|
|
|
10567
10667
|
/**
|
|
10568
10668
|
* Cancel an ad
|
|
10669
|
+
* Deletes an ad on the platform while keeping its history, and removes empty parents only when they were created through this API.
|
|
10670
|
+
*
|
|
10569
10671
|
* Deletes the ad on the platform and marks it as cancelled in the database. The ad is preserved for history. OpenAI Ads has no delete API; the ad is archived instead (a terminal state, the closest equivalent).
|
|
10570
10672
|
*
|
|
10571
10673
|
* Only the ad is deleted; a campaign or ad set is never deleted while it still holds another ad. On Meta, when the ad set and campaign were created by Zernio (by `POST /v1/ads/create` or `POST /v1/ads/boost`) and Meta lists no other ad in the ad set (archived ads count), the emptied ad set is deleted too, then the campaign once it holds no other ad set. Parents created outside Zernio, and the parents of an ad imported from the platform, are always kept. On LinkedIn the ad is a creative inside a campaign inside a campaign group: the creative is always removed, the campaign only when Zernio created it and LinkedIn lists no other creative in it that is not archived, canceled or deleted, and the campaign group only when Zernio created it and LinkedIn lists no other campaign in it that is not canceled or deleted (archived campaigns count). If the creative itself cannot be removed the request fails and no parent is touched. To delete a whole campaign on purpose use `DELETE /v1/ads/campaigns/{campaignId}`.
|
|
@@ -10580,6 +10682,8 @@ export const deleteAd = <ThrowOnError extends boolean = false>(options: OptionsL
|
|
|
10580
10682
|
|
|
10581
10683
|
/**
|
|
10582
10684
|
* Pause or resume a single ad
|
|
10685
|
+
* Pauses or resumes a single ad without touching its ad set, campaign or sibling ads.
|
|
10686
|
+
*
|
|
10583
10687
|
* Ad-scoped pause/resume: flips ONLY this ad's own switch (Meta
|
|
10584
10688
|
* `configured_status`, TikTok `operation_status`, Google ad group ad
|
|
10585
10689
|
* status, LinkedIn creative, Pinterest ad), never its parent ad set or
|
|
@@ -10616,7 +10720,10 @@ export const updateAdStatus = <ThrowOnError extends boolean = false>(options: Op
|
|
|
10616
10720
|
|
|
10617
10721
|
/**
|
|
10618
10722
|
* List campaign assets
|
|
10619
|
-
* Lists
|
|
10723
|
+
* Lists the sitelinks, callouts and other assets attached directly to a Google campaign.
|
|
10724
|
+
*
|
|
10725
|
+
* Fresh reads are cached for 10 minutes; exhausted quota may return the last successful read with stale=true. Inherited assets are not included.
|
|
10726
|
+
*
|
|
10620
10727
|
*/
|
|
10621
10728
|
export const listCampaignAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListCampaignAssetsData, ThrowOnError>) => {
|
|
10622
10729
|
return (options?.client ?? client).get<ListCampaignAssetsResponse, ListCampaignAssetsError, ThrowOnError>({
|
|
@@ -10627,7 +10734,10 @@ export const listCampaignAssets = <ThrowOnError extends boolean = false>(options
|
|
|
10627
10734
|
|
|
10628
10735
|
/**
|
|
10629
10736
|
* Attach campaign assets
|
|
10737
|
+
* Adds sitelinks, callouts, structured snippets and images to a Google campaign in one step.
|
|
10738
|
+
*
|
|
10630
10739
|
* Creates and attaches sitelinks, callouts, structured snippets and image assets in one Google mutation. Google shows images only on accounts it deems eligible (account age, policy history, vertical).
|
|
10740
|
+
*
|
|
10631
10741
|
*/
|
|
10632
10742
|
export const attachCampaignAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AttachCampaignAssetsData, ThrowOnError>) => {
|
|
10633
10743
|
return (options?.client ?? client).post<AttachCampaignAssetsResponse, AttachCampaignAssetsError, ThrowOnError>({
|
|
@@ -10638,7 +10748,10 @@ export const attachCampaignAssets = <ThrowOnError extends boolean = false>(optio
|
|
|
10638
10748
|
|
|
10639
10749
|
/**
|
|
10640
10750
|
* Update campaign assets
|
|
10641
|
-
* Edits
|
|
10751
|
+
* Edits a Google campaign's existing assets, such as sitelinks or callouts, in place; the change applies everywhere that asset is used.
|
|
10752
|
+
*
|
|
10753
|
+
* Send updates with assetResourceName and the fields to change. An asset is shared: changes affect every attachment using it. Omitted fields stay unchanged. The operation consumes the Google operations budget and invalidates affected cached lists.
|
|
10754
|
+
*
|
|
10642
10755
|
*/
|
|
10643
10756
|
export const updateCampaignAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateCampaignAssetsData, ThrowOnError>) => {
|
|
10644
10757
|
return (options?.client ?? client).put<UpdateCampaignAssetsResponse, UpdateCampaignAssetsError, ThrowOnError>({
|
|
@@ -10649,7 +10762,10 @@ export const updateCampaignAssets = <ThrowOnError extends boolean = false>(optio
|
|
|
10649
10762
|
|
|
10650
10763
|
/**
|
|
10651
10764
|
* Remove campaign assets
|
|
10652
|
-
*
|
|
10765
|
+
* Detaches assets from a Google campaign without deleting them, so they stay in the account and on anything else they are attached to.
|
|
10766
|
+
*
|
|
10767
|
+
* Google assets cannot be deleted. Other attachments remain. assetResourceNames is retained for compatibility. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
10768
|
+
*
|
|
10653
10769
|
*/
|
|
10654
10770
|
export const removeCampaignAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveCampaignAssetsData, ThrowOnError>) => {
|
|
10655
10771
|
return (options?.client ?? client).delete<RemoveCampaignAssetsResponse, RemoveCampaignAssetsError, ThrowOnError>({
|
|
@@ -10660,7 +10776,10 @@ export const removeCampaignAssets = <ThrowOnError extends boolean = false>(optio
|
|
|
10660
10776
|
|
|
10661
10777
|
/**
|
|
10662
10778
|
* List ad-group assets
|
|
10663
|
-
* Lists
|
|
10779
|
+
* Lists the sitelinks, callouts, snippets and images attached directly to a Google ad group, not those inherited from the campaign or account.
|
|
10780
|
+
*
|
|
10781
|
+
* Fresh reads are cached for 10 minutes; exhausted quota may return the last successful read with stale=true. Inherited assets are not included.
|
|
10782
|
+
*
|
|
10664
10783
|
*/
|
|
10665
10784
|
export const listAdGroupAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdGroupAssetsData, ThrowOnError>) => {
|
|
10666
10785
|
return (options?.client ?? client).get<ListAdGroupAssetsResponse, ListAdGroupAssetsError, ThrowOnError>({
|
|
@@ -10671,7 +10790,10 @@ export const listAdGroupAssets = <ThrowOnError extends boolean = false>(options:
|
|
|
10671
10790
|
|
|
10672
10791
|
/**
|
|
10673
10792
|
* Attach ad-group assets
|
|
10793
|
+
* Creates sitelinks, callouts, structured snippets or image assets and attaches them to a Google ad group in one step.
|
|
10794
|
+
*
|
|
10674
10795
|
* Creates and attaches sitelinks, callouts, structured snippets and image assets in one Google mutation. Google shows images only on accounts it deems eligible (account age, policy history, vertical).
|
|
10796
|
+
*
|
|
10675
10797
|
*/
|
|
10676
10798
|
export const attachAdGroupAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AttachAdGroupAssetsData, ThrowOnError>) => {
|
|
10677
10799
|
return (options?.client ?? client).post<AttachAdGroupAssetsResponse, AttachAdGroupAssetsError, ThrowOnError>({
|
|
@@ -10682,7 +10804,10 @@ export const attachAdGroupAssets = <ThrowOnError extends boolean = false>(option
|
|
|
10682
10804
|
|
|
10683
10805
|
/**
|
|
10684
10806
|
* Update ad-group assets
|
|
10685
|
-
* Edits
|
|
10807
|
+
* Edits a Google ad group's existing assets in place; the change applies everywhere that asset is used.
|
|
10808
|
+
*
|
|
10809
|
+
* Send updates with assetResourceName and the fields to change. An asset is shared: changes affect every attachment using it. Omitted fields stay unchanged. The operation consumes the Google operations budget and invalidates affected cached lists.
|
|
10810
|
+
*
|
|
10686
10811
|
*/
|
|
10687
10812
|
export const updateAdGroupAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdGroupAssetsData, ThrowOnError>) => {
|
|
10688
10813
|
return (options?.client ?? client).put<UpdateAdGroupAssetsResponse, UpdateAdGroupAssetsError, ThrowOnError>({
|
|
@@ -10693,7 +10818,10 @@ export const updateAdGroupAssets = <ThrowOnError extends boolean = false>(option
|
|
|
10693
10818
|
|
|
10694
10819
|
/**
|
|
10695
10820
|
* Remove ad-group assets
|
|
10696
|
-
*
|
|
10821
|
+
* Detaches assets from a Google ad group without deleting them, so they stay in the account and on anything else they are attached to.
|
|
10822
|
+
*
|
|
10823
|
+
* Google assets cannot be deleted. Other attachments remain. assetResourceNames is retained for compatibility. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
10824
|
+
*
|
|
10697
10825
|
*/
|
|
10698
10826
|
export const removeAdGroupAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAdGroupAssetsData, ThrowOnError>) => {
|
|
10699
10827
|
return (options?.client ?? client).delete<RemoveAdGroupAssetsResponse, RemoveAdGroupAssetsError, ThrowOnError>({
|
|
@@ -10704,6 +10832,8 @@ export const removeAdGroupAssets = <ThrowOnError extends boolean = false>(option
|
|
|
10704
10832
|
|
|
10705
10833
|
/**
|
|
10706
10834
|
* Get campaign analytics
|
|
10835
|
+
* Returns a campaign's performance summary and daily timeline, with optional breakdowns by age, gender and other audience dimensions.
|
|
10836
|
+
*
|
|
10707
10837
|
* Returns performance analytics for a whole campaign in one call: summary metrics, a daily
|
|
10708
10838
|
* timeline over the requested date range (summed across the campaign's ads), and optional
|
|
10709
10839
|
* demographic breakdowns. Breakdowns are fetched live from Meta at the campaign level (one call
|
|
@@ -10727,6 +10857,8 @@ export const getCampaignAnalytics = <ThrowOnError extends boolean = false>(optio
|
|
|
10727
10857
|
|
|
10728
10858
|
/**
|
|
10729
10859
|
* Render pre-create ad previews
|
|
10860
|
+
* Shows how a Meta creative will look in each placement before you create the ad, as embeddable previews.
|
|
10861
|
+
*
|
|
10730
10862
|
* Renders how a creative would look per placement BEFORE any ad exists, via Meta's
|
|
10731
10863
|
* `/generatepreviews`. Provide exactly one creative source: `existingCreativeId` or `creativeSpec`.
|
|
10732
10864
|
* Each preview is an HTML `<iframe>` snippet embeddable directly. Unknown `formats` values
|
|
@@ -10742,6 +10874,8 @@ export const generateAdPreviews = <ThrowOnError extends boolean = false>(options
|
|
|
10742
10874
|
|
|
10743
10875
|
/**
|
|
10744
10876
|
* Render previews of an existing ad
|
|
10877
|
+
* Shows how an existing Meta ad looks in each placement, as embeddable previews.
|
|
10878
|
+
*
|
|
10745
10879
|
* Renders an EXISTING ad per placement via Meta's `/{ad_id}/previews`. Each preview is an HTML
|
|
10746
10880
|
* `<iframe>` snippet embeddable directly. Unknown `formats` values return Meta's 400 verbatim.
|
|
10747
10881
|
*
|
|
@@ -10755,6 +10889,8 @@ export const getAdPreviews = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
10755
10889
|
|
|
10756
10890
|
/**
|
|
10757
10891
|
* Read the platform's review verdict for an ad
|
|
10892
|
+
* Shows whether the platform approved an ad, where it may not deliver, and every rejection reason, without re-enabling a paused ad.
|
|
10893
|
+
*
|
|
10758
10894
|
* Reads the ad's review verdict from the platform now: whether it was approved, where it may
|
|
10759
10895
|
* not deliver, and every rejection reason with TikTok's suggestion and the piece of content it
|
|
10760
10896
|
* refers to. Read-only, so it works on a paused ad without re-enabling it.
|
|
@@ -10782,6 +10918,8 @@ export const getAdReview = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
10782
10918
|
|
|
10783
10919
|
/**
|
|
10784
10920
|
* Direct video and image URLs for an ad
|
|
10921
|
+
* Returns fresh, short-lived download links for every image and video a Meta ad uses, including the original media of a boosted Instagram post.
|
|
10922
|
+
*
|
|
10785
10923
|
* Returns the direct signed URLs for every video and image asset used by an ad's live
|
|
10786
10924
|
* creative, normalised across shapes: single image/video, carousel,
|
|
10787
10925
|
* Reels/Story (`object_story_spec.video_data`) and dynamic
|
|
@@ -10807,6 +10945,8 @@ export const getAdMedia = <ThrowOnError extends boolean = false>(options: Option
|
|
|
10807
10945
|
|
|
10808
10946
|
/**
|
|
10809
10947
|
* Generate keyword ideas
|
|
10948
|
+
* Suggests new keywords from seed keywords or a website using Google Keyword Planner, with search volume, competition and bid estimates.
|
|
10949
|
+
*
|
|
10810
10950
|
* Google Ads only. Runs Keyword Planner's generateKeywordIdeas from seed keywords, a seed URL,
|
|
10811
10951
|
* or both, returning idea rows verbatim (avgMonthlySearches, competition, competitionIndex,
|
|
10812
10952
|
* top-of-page bid micros, monthlySearchVolumes). Counters are int64s encoded as strings; bid
|
|
@@ -10822,6 +10962,8 @@ export const generateKeywordIdeas = <ThrowOnError extends boolean = false>(optio
|
|
|
10822
10962
|
|
|
10823
10963
|
/**
|
|
10824
10964
|
* Get historical keyword metrics
|
|
10965
|
+
* Gets historical search volume, competition and bid ranges for up to 1,000 keywords from Google Keyword Planner.
|
|
10966
|
+
*
|
|
10825
10967
|
* Google Ads only. Runs Keyword Planner's generateKeywordHistoricalMetrics for up to 1,000
|
|
10826
10968
|
* exact keywords: historical search volume, competition and top-of-page bid ranges, plus
|
|
10827
10969
|
* averageCpcMicros when includeAverageCpc is set. Rows come back verbatim; counters are int64s
|
|
@@ -10837,7 +10979,9 @@ export const generateKeywordHistoricalMetrics = <ThrowOnError extends boolean =
|
|
|
10837
10979
|
|
|
10838
10980
|
/**
|
|
10839
10981
|
* Flexible live insights query
|
|
10840
|
-
*
|
|
10982
|
+
* Runs a custom performance query against Meta, Google Ads or TikTok and returns the platform's rows as is, for reports the fixed endpoints don't cover.
|
|
10983
|
+
*
|
|
10984
|
+
* The account's platform picks the contract:
|
|
10841
10985
|
*
|
|
10842
10986
|
* **Meta (facebook/instagram)**: forwards caller-chosen `fields`, `breakdowns` and `filtering`
|
|
10843
10987
|
* to any Meta insights node and returns Meta's rows verbatim. `objectId` (required) selects the
|
|
@@ -10888,7 +11032,9 @@ export const queryAdInsights = <ThrowOnError extends boolean = false>(options: O
|
|
|
10888
11032
|
|
|
10889
11033
|
/**
|
|
10890
11034
|
* Submit async insights report
|
|
10891
|
-
*
|
|
11035
|
+
* Starts a background Meta insights report for long date ranges or large accounts where a live query would be too slow.
|
|
11036
|
+
*
|
|
11037
|
+
* Same query surface as GET /v1/ads/insights, but
|
|
10892
11038
|
* in the JSON body; Meta processes the report server-side, which is the right choice for long
|
|
10893
11039
|
* ranges or large accounts where the sync query is slow or rate-limited. Returns a `reportRunId`
|
|
10894
11040
|
* to poll via GET /v1/ads/insights/reports/{reportRunId}.
|
|
@@ -10903,6 +11049,8 @@ export const createAdInsightsReport = <ThrowOnError extends boolean = false>(opt
|
|
|
10903
11049
|
|
|
10904
11050
|
/**
|
|
10905
11051
|
* Poll an async insights report run
|
|
11052
|
+
* Checks progress of a background Meta insights report and returns its results once it has finished.
|
|
11053
|
+
*
|
|
10906
11054
|
* Status and results for a report run created via POST /v1/ads/insights/reports. While the job
|
|
10907
11055
|
* runs, returns `status` and `percentCompletion`. Once `status` is "Job Completed" the response
|
|
10908
11056
|
* also carries a `data` page, cursor-paginated via `limit` / `after`.
|
|
@@ -10917,7 +11065,9 @@ export const getAdInsightsReport = <ThrowOnError extends boolean = false>(option
|
|
|
10917
11065
|
|
|
10918
11066
|
/**
|
|
10919
11067
|
* Get ad analytics
|
|
10920
|
-
* Returns
|
|
11068
|
+
* Returns one ad's performance summary and daily timeline, with optional audience breakdowns on Meta and TikTok.
|
|
11069
|
+
*
|
|
11070
|
+
* Includes summary metrics, a daily timeline
|
|
10921
11071
|
* over the requested date range, and optional demographic breakdowns (Meta and TikTok only).
|
|
10922
11072
|
* If no date range is provided, defaults to the last 90 days. Date range is capped at 730 days max.
|
|
10923
11073
|
*
|
|
@@ -10931,6 +11081,8 @@ export const getAdAnalytics = <ThrowOnError extends boolean = false>(options: Op
|
|
|
10931
11081
|
|
|
10932
11082
|
/**
|
|
10933
11083
|
* Get ad tracking tags
|
|
11084
|
+
* Shows the tracking parameters added to an ad's click URLs, such as UTM tags (not pixels).
|
|
11085
|
+
*
|
|
10934
11086
|
* Unified read of the platform's native click-URL tracking params.
|
|
10935
11087
|
* - Meta (facebook/instagram): the creative's `url_tags` (and template_url_spec).
|
|
10936
11088
|
* - Google (googleads): the campaign's `trackingUrlTemplate` + `finalUrlSuffix`.
|
|
@@ -10952,7 +11104,9 @@ export const getAdTrackingTags = <ThrowOnError extends boolean = false>(options:
|
|
|
10952
11104
|
|
|
10953
11105
|
/**
|
|
10954
11106
|
* Set ad tracking tags
|
|
10955
|
-
*
|
|
11107
|
+
* Sets the tracking parameters added to an ad's click URLs, such as UTM tags, without rebuilding the rest of the ad.
|
|
11108
|
+
*
|
|
11109
|
+
* Send only the fields for the ad's platform:
|
|
10956
11110
|
* - Meta: `urlTags` (array of {key,value}). Meta creatives are immutable, so this rebuilds the
|
|
10957
11111
|
* creative and repoints the ad. By DEFAULT we PRESERVE the existing creative verbatim
|
|
10958
11112
|
* (re-post its object_story_spec + the new url_tags, reusing the image), so you send `urlTags`
|
|
@@ -10975,7 +11129,9 @@ export const updateAdTrackingTags = <ThrowOnError extends boolean = false>(optio
|
|
|
10975
11129
|
|
|
10976
11130
|
/**
|
|
10977
11131
|
* List comments on an ad
|
|
10978
|
-
*
|
|
11132
|
+
* Lists the comments on an ad's post, including dark posts that never ran organically, so you can moderate ad engagement.
|
|
11133
|
+
*
|
|
11134
|
+
* Useful for moderating or analyzing
|
|
10979
11135
|
* engagement on dark posts (ad creatives that never went live organically), which the
|
|
10980
11136
|
* regular GET /v1/inbox/comments/{postId} endpoint cannot serve because dark posts are
|
|
10981
11137
|
* not in Zernio's post database.
|
|
@@ -11126,6 +11282,8 @@ export const listAdsBusinessCenters = <ThrowOnError extends boolean = false>(opt
|
|
|
11126
11282
|
|
|
11127
11283
|
/**
|
|
11128
11284
|
* Ad account change / audit log
|
|
11285
|
+
* Shows who changed what in an ad account and when, as an audit log of edits to campaigns, ad sets and ads.
|
|
11286
|
+
*
|
|
11129
11287
|
* **Google**: reads the customer's `change_event` history, newest first. Google keeps 30 days
|
|
11130
11288
|
* of it, so `since` defaults to 29 days ago and an older `since` returns 400; `until`
|
|
11131
11289
|
* defaults to today. Each change is mapped onto the Meta row shape: `event_type` =
|
|
@@ -11154,7 +11312,9 @@ export const getAdsActivityLog = <ThrowOnError extends boolean = false>(options:
|
|
|
11154
11312
|
|
|
11155
11313
|
/**
|
|
11156
11314
|
* Create reach-frequency prediction
|
|
11157
|
-
*
|
|
11315
|
+
* Quotes the reach or budget for a Meta reach and frequency campaign over a date range, without buying anything.
|
|
11316
|
+
*
|
|
11317
|
+
* This is a QUOTE, nothing is bought and no ad entities are created.
|
|
11158
11318
|
* Provide a date range plus exactly one of `budgetAmount` (Meta predicts reach) or `reach`
|
|
11159
11319
|
* (Meta predicts the budget). The response carries the estimate and its allowed bounds
|
|
11160
11320
|
* (min/max budget and reach). Predictions expire on their own; to buy, reserve one via
|
|
@@ -11165,6 +11325,7 @@ export const getAdsActivityLog = <ThrowOnError extends boolean = false>(options:
|
|
|
11165
11325
|
* omitted, `targeting.placements` is used; when neither is set, placements default to
|
|
11166
11326
|
* Facebook feed (+ Instagram stream when a linked IG professional account resolves).
|
|
11167
11327
|
* Instagram placements require that IG account.
|
|
11328
|
+
*
|
|
11168
11329
|
*/
|
|
11169
11330
|
export const createRfPrediction = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateRfPredictionData, ThrowOnError>) => {
|
|
11170
11331
|
return (options?.client ?? client).post<CreateRfPredictionResponse, CreateRfPredictionError, ThrowOnError>({
|
|
@@ -11175,6 +11336,8 @@ export const createRfPrediction = <ThrowOnError extends boolean = false>(options
|
|
|
11175
11336
|
|
|
11176
11337
|
/**
|
|
11177
11338
|
* Get reach-frequency prediction
|
|
11339
|
+
* Shows a Meta reach and frequency prediction, with its estimate and status.
|
|
11340
|
+
*
|
|
11178
11341
|
*/
|
|
11179
11342
|
export const getRfPrediction = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetRfPredictionData, ThrowOnError>) => {
|
|
11180
11343
|
return (options?.client ?? client).get<GetRfPredictionResponse, GetRfPredictionError, ThrowOnError>({
|
|
@@ -11185,7 +11348,10 @@ export const getRfPrediction = <ThrowOnError extends boolean = false>(options: O
|
|
|
11185
11348
|
|
|
11186
11349
|
/**
|
|
11187
11350
|
* Cancel reach-frequency booking
|
|
11188
|
-
*
|
|
11351
|
+
* Cancels a Meta reach and frequency reservation, releasing its locked price and inventory.
|
|
11352
|
+
*
|
|
11353
|
+
* Unreserved predictions expire on their own.
|
|
11354
|
+
*
|
|
11189
11355
|
*/
|
|
11190
11356
|
export const cancelRfReservation = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CancelRfReservationData, ThrowOnError>) => {
|
|
11191
11357
|
return (options?.client ?? client).delete<CancelRfReservationResponse, CancelRfReservationError, ThrowOnError>({
|
|
@@ -11196,6 +11362,8 @@ export const cancelRfReservation = <ThrowOnError extends boolean = false>(option
|
|
|
11196
11362
|
|
|
11197
11363
|
/**
|
|
11198
11364
|
* Reserve reach-frequency inventory
|
|
11365
|
+
* Locks the quoted price and inventory of a Meta reach and frequency prediction so you can launch a campaign on it.
|
|
11366
|
+
*
|
|
11199
11367
|
* Locks the quoted price + inventory until the returned `expiresAt` and mints a NEW
|
|
11200
11368
|
* prediction id. Pass that RESERVED id (not the original) as `rfPredictionId` on
|
|
11201
11369
|
* POST /v1/ads/create. Release an unused reservation via DELETE.
|
|
@@ -11209,6 +11377,8 @@ export const reserveRfPrediction = <ThrowOnError extends boolean = false>(option
|
|
|
11209
11377
|
|
|
11210
11378
|
/**
|
|
11211
11379
|
* A/B tests and lift studies
|
|
11380
|
+
* Lists the A/B tests and lift studies on a Meta ad account, with their timing and test groups.
|
|
11381
|
+
*
|
|
11212
11382
|
* Lists the ad account's A/B tests and lift studies (Meta's `/act_X/ad_studies`), rows
|
|
11213
11383
|
* returned verbatim. The default projection covers id, name, type, timing and cells with
|
|
11214
11384
|
* split percentages; `fields` is a raw-passthrough override.
|
|
@@ -11244,7 +11414,10 @@ export const getTikTokSmartPlusMaterialReport = <ThrowOnError extends boolean =
|
|
|
11244
11414
|
|
|
11245
11415
|
/**
|
|
11246
11416
|
* List Instagram ad identities
|
|
11417
|
+
* Lists the Instagram accounts a Meta ad connection can run ads as, so you can pick the identity for a new ad.
|
|
11418
|
+
*
|
|
11247
11419
|
* Discovers identities through connected_instagram_accounts, Page linkage and Page-backed identities, with a best-effort business fallback. Business permission errors do not fail discovery. The resolved object uses the same profile-scoped resolver as ad creation; null means no identity was resolved. Format-specific observed-actor fallbacks at creative creation are not predicted.
|
|
11420
|
+
*
|
|
11248
11421
|
*/
|
|
11249
11422
|
export const listAdsInstagramAccounts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdsInstagramAccountsData, ThrowOnError>) => {
|
|
11250
11423
|
return (options?.client ?? client).get<ListAdsInstagramAccountsResponse, ListAdsInstagramAccountsError, ThrowOnError>({
|
|
@@ -11255,7 +11428,10 @@ export const listAdsInstagramAccounts = <ThrowOnError extends boolean = false>(o
|
|
|
11255
11428
|
|
|
11256
11429
|
/**
|
|
11257
11430
|
* List Instagram posts to boost
|
|
11431
|
+
* Lists posts from the Instagram account a Meta ad connection can reach, so you can boost one as an ad.
|
|
11432
|
+
*
|
|
11258
11433
|
* Lists the media of the Instagram account this Meta connection can reach, so an existing Instagram post can be boosted without connecting the Instagram account separately. Each `posts[].id` is the existing-post id to send as `platformPostId` when creating the ad; Meta turns it into `source_instagram_media_id` on the creative. Identity resolution reuses the same resolver as `/v1/ads/instagram-accounts`. `igUserId` is always checked against the identities the connection can reach and is never trusted as sent. When no identity is reachable the endpoint fails instead of returning an empty list, and the two causes stay apart: `403 reconnect_required` means the connection predates Instagram access (Meta then omits `instagram_business_account` from the Page read rather than erroring, so it looks identical to having no data) and the account must be reconnected granting Instagram access, while `422 instagram_business_account_unresolved` means the Page genuinely has no Instagram professional account linked.
|
|
11434
|
+
*
|
|
11259
11435
|
*/
|
|
11260
11436
|
export const listAdsInstagramPosts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdsInstagramPostsData, ThrowOnError>) => {
|
|
11261
11437
|
return (options?.client ?? client).get<ListAdsInstagramPostsResponse, ListAdsInstagramPostsError, ThrowOnError>({
|
|
@@ -11266,7 +11442,10 @@ export const listAdsInstagramPosts = <ThrowOnError extends boolean = false>(opti
|
|
|
11266
11442
|
|
|
11267
11443
|
/**
|
|
11268
11444
|
* List advertisable apps
|
|
11445
|
+
* Lists the mobile apps a Meta ad account can promote, with their platforms and store links, for app install campaigns.
|
|
11446
|
+
*
|
|
11269
11447
|
* Lists applications available to a Meta ad account, their supported platforms and unmodified object store URLs. A listed app still needs a configured mobile platform and store URL to run install promotion.
|
|
11448
|
+
*
|
|
11270
11449
|
*/
|
|
11271
11450
|
export const listAdvertisableApplications = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdvertisableApplicationsData, ThrowOnError>) => {
|
|
11272
11451
|
return (options?.client ?? client).get<ListAdvertisableApplicationsResponse, ListAdvertisableApplicationsError, ThrowOnError>({
|
|
@@ -11277,7 +11456,10 @@ export const listAdvertisableApplications = <ThrowOnError extends boolean = fals
|
|
|
11277
11456
|
|
|
11278
11457
|
/**
|
|
11279
11458
|
* Get iOS 14 campaign limits
|
|
11280
|
-
*
|
|
11459
|
+
* Shows Meta's iOS 14 campaign limits for an app on an ad account (it does not confirm the app is set up for iOS promotion).
|
|
11460
|
+
*
|
|
11461
|
+
* applicationId is sent as Meta app_id. This read does not establish that the application is configured for iOS promotion.
|
|
11462
|
+
*
|
|
11281
11463
|
*/
|
|
11282
11464
|
export const getIosFourteenCampaignLimits = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetIosFourteenCampaignLimitsData, ThrowOnError>) => {
|
|
11283
11465
|
return (options?.client ?? client).get<GetIosFourteenCampaignLimitsResponse, GetIosFourteenCampaignLimitsError, ThrowOnError>({
|
|
@@ -11288,6 +11470,8 @@ export const getIosFourteenCampaignLimits = <ThrowOnError extends boolean = fals
|
|
|
11288
11470
|
|
|
11289
11471
|
/**
|
|
11290
11472
|
* Businesses list
|
|
11473
|
+
* Lists the Meta business portfolios the connected user belongs to, with their verification status.
|
|
11474
|
+
*
|
|
11291
11475
|
* Business Manager portfolios the connected Meta user belongs to (Meta's `/me/businesses`),
|
|
11292
11476
|
* rows returned verbatim (id, name, verification_status, created_time). Token-scoped, so no
|
|
11293
11477
|
* `adAccountId` is needed. For TikTok Business Centers use
|
|
@@ -11302,6 +11486,8 @@ export const listMetaBusinesses = <ThrowOnError extends boolean = false>(options
|
|
|
11302
11486
|
|
|
11303
11487
|
/**
|
|
11304
11488
|
* Business users
|
|
11489
|
+
* Lists the people and system users of a Meta business portfolio, with the ids you need to assign them to Pages or ad accounts.
|
|
11490
|
+
*
|
|
11305
11491
|
* People and system users of a Meta business portfolio, with the business-scoped ids that
|
|
11306
11492
|
* `POST /v1/ads/accounts/users` and `POST /v1/ads/page-users` take. The connected Meta
|
|
11307
11493
|
* user must be an admin of the portfolio.
|
|
@@ -11315,6 +11501,8 @@ export const listMetaBusinessUsers = <ThrowOnError extends boolean = false>(opti
|
|
|
11315
11501
|
|
|
11316
11502
|
/**
|
|
11317
11503
|
* Page users of a business
|
|
11504
|
+
* Lists the people in a business portfolio who are assigned to a Facebook Page it owns or was shared as a partner.
|
|
11505
|
+
*
|
|
11318
11506
|
* People of a business portfolio assigned to a Facebook Page the portfolio owns or was
|
|
11319
11507
|
* granted as a partner (`POST /v1/accounts/{accountId}/business-partners` on the owner side).
|
|
11320
11508
|
*/
|
|
@@ -11327,6 +11515,8 @@ export const listPageUsers = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11327
11515
|
|
|
11328
11516
|
/**
|
|
11329
11517
|
* Assign a user to a Page
|
|
11518
|
+
* Gives a person in your business portfolio tasks on a Facebook Page, such as advertising, so they can run ads for it.
|
|
11519
|
+
*
|
|
11330
11520
|
* Gives a person of the portfolio tasks on a Page the portfolio owns or was granted as a
|
|
11331
11521
|
* partner. Meta does not assign partner admins automatically, so after an owner shares a
|
|
11332
11522
|
* Page the partner calls this for the people whose tokens will advertise for it.
|
|
@@ -11342,6 +11532,8 @@ export const assignPageUser = <ThrowOnError extends boolean = false>(options: Op
|
|
|
11342
11532
|
|
|
11343
11533
|
/**
|
|
11344
11534
|
* Remove a user from a Page
|
|
11535
|
+
* Removes a person's access to a Facebook Page assigned through your business portfolio.
|
|
11536
|
+
*
|
|
11345
11537
|
*/
|
|
11346
11538
|
export const removePageUser = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemovePageUserData, ThrowOnError>) => {
|
|
11347
11539
|
return (options?.client ?? client).delete<RemovePageUserResponse, RemovePageUserError, ThrowOnError>({
|
|
@@ -11352,7 +11544,7 @@ export const removePageUser = <ThrowOnError extends boolean = false>(options: Op
|
|
|
11352
11544
|
|
|
11353
11545
|
/**
|
|
11354
11546
|
* List ad labels
|
|
11355
|
-
* Lists the
|
|
11547
|
+
* Lists the labels used to organise campaigns and ads in an ad account.
|
|
11356
11548
|
*
|
|
11357
11549
|
* - **Meta**: pass `adAccountId=act_<n>`. Rows are Meta's `/act_X/adlabels` returned verbatim
|
|
11358
11550
|
* (id, name, created/updated time), paginated with `limit` / `after`.
|
|
@@ -11360,6 +11552,7 @@ export const removePageUser = <ThrowOnError extends boolean = false>(options: Op
|
|
|
11360
11552
|
* connection has a single customer). Returns every non-removed label as a `GoogleAdLabel`
|
|
11361
11553
|
* in one page (`paging.after` is always null). Reads are cached for 10 minutes; when the
|
|
11362
11554
|
* shared Google quota is exhausted the last successful result is served with `stale: true`.
|
|
11555
|
+
*
|
|
11363
11556
|
*/
|
|
11364
11557
|
export const listAdLabels = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdLabelsData, ThrowOnError>) => {
|
|
11365
11558
|
return (options?.client ?? client).get<ListAdLabelsResponse, ListAdLabelsError, ThrowOnError>({
|
|
@@ -11370,9 +11563,12 @@ export const listAdLabels = <ThrowOnError extends boolean = false>(options: Opti
|
|
|
11370
11563
|
|
|
11371
11564
|
/**
|
|
11372
11565
|
* Create a Google Ads label
|
|
11373
|
-
* Creates a
|
|
11566
|
+
* Creates a Google Ads label you can then attach to campaigns, ad groups, ads and keywords to organize and filter them.
|
|
11567
|
+
*
|
|
11568
|
+
* Attach it to campaigns, ad groups, ads and
|
|
11374
11569
|
* keywords with `POST /v1/ads/labels/{labelId}/assignments`. Label names are unique per
|
|
11375
11570
|
* customer; a duplicate is a 400.
|
|
11571
|
+
*
|
|
11376
11572
|
*/
|
|
11377
11573
|
export const createAdLabel = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdLabelData, ThrowOnError>) => {
|
|
11378
11574
|
return (options?.client ?? client).post<CreateAdLabelResponse, CreateAdLabelError, ThrowOnError>({
|
|
@@ -11383,7 +11579,10 @@ export const createAdLabel = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11383
11579
|
|
|
11384
11580
|
/**
|
|
11385
11581
|
* Update a Google Ads label
|
|
11386
|
-
* Changes
|
|
11582
|
+
* Changes a Google Ads label's name, color or description.
|
|
11583
|
+
*
|
|
11584
|
+
* Only the fields sent are written.
|
|
11585
|
+
*
|
|
11387
11586
|
*/
|
|
11388
11587
|
export const updateAdLabel = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdLabelData, ThrowOnError>) => {
|
|
11389
11588
|
return (options?.client ?? client).patch<UpdateAdLabelResponse, UpdateAdLabelError, ThrowOnError>({
|
|
@@ -11394,7 +11593,10 @@ export const updateAdLabel = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11394
11593
|
|
|
11395
11594
|
/**
|
|
11396
11595
|
* Remove a Google Ads label
|
|
11397
|
-
*
|
|
11596
|
+
* Deletes a Google Ads label and removes it from everything it was attached to.
|
|
11597
|
+
*
|
|
11598
|
+
* Google drops it from every campaign, ad group, ad and keyword it was attached to.
|
|
11599
|
+
*
|
|
11398
11600
|
*/
|
|
11399
11601
|
export const removeAdLabel = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAdLabelData, ThrowOnError>) => {
|
|
11400
11602
|
return (options?.client ?? client).delete<RemoveAdLabelResponse, RemoveAdLabelError, ThrowOnError>({
|
|
@@ -11405,6 +11607,8 @@ export const removeAdLabel = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11405
11607
|
|
|
11406
11608
|
/**
|
|
11407
11609
|
* Attach a Google Ads label
|
|
11610
|
+
* Attaches a Google Ads label to campaigns, ad groups, ads and keywords in one call, skipping any that already have it.
|
|
11611
|
+
*
|
|
11408
11612
|
* Attaches the label to campaigns, ad groups, ads and keywords (Google CampaignLabel,
|
|
11409
11613
|
* AdGroupLabel, AdGroupAdLabel and AdGroupCriterionLabel) in one mutate. Idempotent: a
|
|
11410
11614
|
* target that already carries the label is counted in `unchanged` instead of failing the
|
|
@@ -11421,7 +11625,10 @@ export const attachAdLabel = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11421
11625
|
|
|
11422
11626
|
/**
|
|
11423
11627
|
* Detach a Google Ads label
|
|
11424
|
-
* Removes
|
|
11628
|
+
* Removes a Google Ads label from the campaigns, ad groups, ads or keywords you name, skipping any that do not have it.
|
|
11629
|
+
*
|
|
11630
|
+
* Idempotent; a target without the label is counted in `unchanged`. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
11631
|
+
*
|
|
11425
11632
|
*/
|
|
11426
11633
|
export const detachAdLabel = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DetachAdLabelData, ThrowOnError>) => {
|
|
11427
11634
|
return (options?.client ?? client).delete<DetachAdLabelResponse, DetachAdLabelError, ThrowOnError>({
|
|
@@ -11432,6 +11639,8 @@ export const detachAdLabel = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11432
11639
|
|
|
11433
11640
|
/**
|
|
11434
11641
|
* List high-demand periods
|
|
11642
|
+
* Lists the scheduled budget increases set on a Meta campaign or ad set.
|
|
11643
|
+
*
|
|
11435
11644
|
* Scheduled budget increases (Meta's budget-scheduling API). The Graph edge lives on the
|
|
11436
11645
|
* campaign and ad-set nodes only, so exactly one of `campaignId` / `adSetId` (platform
|
|
11437
11646
|
* ids) is required. Rows returned verbatim (budget_value, budget_value_type, time window,
|
|
@@ -11446,8 +11655,9 @@ export const listHighDemandPeriods = <ThrowOnError extends boolean = false>(opti
|
|
|
11446
11655
|
|
|
11447
11656
|
/**
|
|
11448
11657
|
* Schedule a budget increase
|
|
11449
|
-
*
|
|
11450
|
-
*
|
|
11658
|
+
* Schedules a temporary budget increase on a Meta campaign or ad set for a busy period, like Black Friday or a launch.
|
|
11659
|
+
*
|
|
11660
|
+
* Same target rule as the GET: exactly one of
|
|
11451
11661
|
* `campaignId` / `adSetId`.
|
|
11452
11662
|
*
|
|
11453
11663
|
* Two Meta constraints worth knowing before you call it. `timeStart` / `timeEnd` must
|
|
@@ -11455,6 +11665,7 @@ export const listHighDemandPeriods = <ThrowOnError extends boolean = false>(opti
|
|
|
11455
11665
|
* across its schedules; the second type is rejected with "Can't mix your budget scaling
|
|
11456
11666
|
* selection". Window rules (must sit inside the campaign's run dates, minimum lead time,
|
|
11457
11667
|
* no overlap) are Meta's and its message is forwarded verbatim.
|
|
11668
|
+
*
|
|
11458
11669
|
*/
|
|
11459
11670
|
export const createHighDemandPeriod = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateHighDemandPeriodData, ThrowOnError>) => {
|
|
11460
11671
|
return (options?.client ?? client).post<CreateHighDemandPeriodResponse, CreateHighDemandPeriodError, ThrowOnError>({
|
|
@@ -11465,6 +11676,8 @@ export const createHighDemandPeriod = <ThrowOnError extends boolean = false>(opt
|
|
|
11465
11676
|
|
|
11466
11677
|
/**
|
|
11467
11678
|
* Creative library
|
|
11679
|
+
* Lists the creatives saved in a Meta ad account so you can reuse one in a new ad.
|
|
11680
|
+
*
|
|
11468
11681
|
* Lists the ad account's creative library (Meta's `/act_X/adcreatives`), rows returned
|
|
11469
11682
|
* verbatim. The default projection covers id, name, status, object type, thumbnail,
|
|
11470
11683
|
* object_story_spec / asset_feed_spec and url_tags; `fields` is a raw-passthrough
|
|
@@ -11480,6 +11693,8 @@ export const listAdCreatives = <ThrowOnError extends boolean = false>(options: O
|
|
|
11480
11693
|
|
|
11481
11694
|
/**
|
|
11482
11695
|
* Create a standalone creative
|
|
11696
|
+
* Creates a reusable Meta creative from an image or carousel without creating an ad, ready to attach to ads later.
|
|
11697
|
+
*
|
|
11483
11698
|
* Creates a creative in the library WITHOUT an ad, reusable on the create endpoints via
|
|
11484
11699
|
* `existingCreativeId`. Provide exactly one of `imageUrl` (uploaded server-side),
|
|
11485
11700
|
* `imageHash` (from POST /v1/ads/images or the library list), or `carouselCards` (2-10
|
|
@@ -11496,6 +11711,8 @@ export const createAdCreative = <ThrowOnError extends boolean = false>(options:
|
|
|
11496
11711
|
|
|
11497
11712
|
/**
|
|
11498
11713
|
* Creative details
|
|
11714
|
+
* Shows the details of one Meta creative, such as its content, status and thumbnail.
|
|
11715
|
+
*
|
|
11499
11716
|
* One creative's details, verbatim from Meta. `fields` is a raw-passthrough override of
|
|
11500
11717
|
* the default projection.
|
|
11501
11718
|
*/
|
|
@@ -11508,9 +11725,12 @@ export const getAdCreative = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
11508
11725
|
|
|
11509
11726
|
/**
|
|
11510
11727
|
* Rename a creative
|
|
11511
|
-
* Renames a creative
|
|
11728
|
+
* Renames a Meta creative (Meta does not allow other changes, so make a new creative to change its content).
|
|
11729
|
+
*
|
|
11730
|
+
* Creatives are immutable on Meta beyond `name`. For content changes
|
|
11512
11731
|
* create a new creative (POST /v1/ads/creatives) and swap it onto the ad
|
|
11513
11732
|
* (PUT /v1/ads/{adId} with `creative`).
|
|
11733
|
+
*
|
|
11514
11734
|
*/
|
|
11515
11735
|
export const updateAdCreative = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdCreativeData, ThrowOnError>) => {
|
|
11516
11736
|
return (options?.client ?? client).put<UpdateAdCreativeResponse, UpdateAdCreativeError, ThrowOnError>({
|
|
@@ -11521,8 +11741,11 @@ export const updateAdCreative = <ThrowOnError extends boolean = false>(options:
|
|
|
11521
11741
|
|
|
11522
11742
|
/**
|
|
11523
11743
|
* Delete a creative
|
|
11524
|
-
* Deletes a creative from the library
|
|
11744
|
+
* Deletes a Meta creative from the library, which Meta only allows when no ad uses it.
|
|
11745
|
+
*
|
|
11746
|
+
* Meta only allows deleting creatives not referenced
|
|
11525
11747
|
* by any ad; otherwise its 400 surfaces verbatim.
|
|
11748
|
+
*
|
|
11526
11749
|
*/
|
|
11527
11750
|
export const deleteAdCreative = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdCreativeData, ThrowOnError>) => {
|
|
11528
11751
|
return (options?.client ?? client).delete<DeleteAdCreativeResponse, DeleteAdCreativeError, ThrowOnError>({
|
|
@@ -11533,6 +11756,8 @@ export const deleteAdCreative = <ThrowOnError extends boolean = false>(options:
|
|
|
11533
11756
|
|
|
11534
11757
|
/**
|
|
11535
11758
|
* List value rule sets
|
|
11759
|
+
* Lists a Meta ad account's value rule sets, which raise or lower bids for audience segments you value differently.
|
|
11760
|
+
*
|
|
11536
11761
|
* Lists the ad account's value rule sets (Meta's `/act_X/value_rule_set`). A value rule
|
|
11537
11762
|
* set adjusts the auction bid up or down for audience segments you value differently;
|
|
11538
11763
|
* attach one to an ad set with `valueRuleSetId` on `POST /v1/ads/create` or
|
|
@@ -11560,6 +11785,8 @@ export const listValueRuleSets = <ThrowOnError extends boolean = false>(options:
|
|
|
11560
11785
|
|
|
11561
11786
|
/**
|
|
11562
11787
|
* Create a value rule set
|
|
11788
|
+
* Creates a Meta value rule set that raises or lowers bids for chosen audience segments, ready to attach to ad sets.
|
|
11789
|
+
*
|
|
11563
11790
|
* Creates a value rule set on the ad account (Meta's `POST /act_X/value_rule_set`).
|
|
11564
11791
|
* Attach the returned id to an ad set with `valueRuleSetId` on `POST /v1/ads/create` or
|
|
11565
11792
|
* `PUT /v1/ads/ad-sets/{adSetId}`.
|
|
@@ -11600,6 +11827,8 @@ export const createValueRuleSet = <ThrowOnError extends boolean = false>(options
|
|
|
11600
11827
|
|
|
11601
11828
|
/**
|
|
11602
11829
|
* Read a value rule set
|
|
11830
|
+
* Shows one Meta value rule set with all its rules and criteria, the first step before editing it.
|
|
11831
|
+
*
|
|
11603
11832
|
* Reads one value rule set including every nested rule id and criterion id. This is step
|
|
11604
11833
|
* one of any edit: `PUT` is a full replace, so you need the ids before you can keep the
|
|
11605
11834
|
* objects you are not changing.
|
|
@@ -11617,6 +11846,8 @@ export const getValueRuleSet = <ThrowOnError extends boolean = false>(options: O
|
|
|
11617
11846
|
|
|
11618
11847
|
/**
|
|
11619
11848
|
* Replace a value rule set
|
|
11849
|
+
* Replaces a Meta value rule set with the rules you send, so any rule left out is deleted.
|
|
11850
|
+
*
|
|
11620
11851
|
* **THIS IS A FULL REPLACE, NOT A PATCH.** Meta's update is declarative: the body you
|
|
11621
11852
|
* send becomes the rule set.
|
|
11622
11853
|
*
|
|
@@ -11643,6 +11874,8 @@ export const updateValueRuleSet = <ThrowOnError extends boolean = false>(options
|
|
|
11643
11874
|
|
|
11644
11875
|
/**
|
|
11645
11876
|
* Delete a value rule set
|
|
11877
|
+
* Deletes a Meta value rule set (detach it from ad sets first, since they are not changed here).
|
|
11878
|
+
*
|
|
11646
11879
|
* Deletes the rule set (Meta's `POST /{value-rule-set-id}/delete_rule_set`, a custom
|
|
11647
11880
|
* action edge rather than an HTTP DELETE on its side). Ad sets pointing at it are not
|
|
11648
11881
|
* modified here; detach them first with `valueRulesApplied: false` on
|
|
@@ -11657,7 +11890,10 @@ export const deleteValueRuleSet = <ThrowOnError extends boolean = false>(options
|
|
|
11657
11890
|
|
|
11658
11891
|
/**
|
|
11659
11892
|
* List negative keyword lists
|
|
11893
|
+
* Lists the shared negative keyword lists in a Google Ads account, which you can apply to many campaigns at once.
|
|
11894
|
+
*
|
|
11660
11895
|
* Google Ads shared negative keyword lists (shared_set type NEGATIVE_KEYWORDS). Reads are cached for 10 minutes; quota exhaustion may return the last successful result for up to 7 days with stale=true. Customer selection is limited to this connection and its account scope.
|
|
11896
|
+
*
|
|
11661
11897
|
*/
|
|
11662
11898
|
export const listAdNegativeKeywordLists = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdNegativeKeywordListsData, ThrowOnError>) => {
|
|
11663
11899
|
return (options?.client ?? client).get<ListAdNegativeKeywordListsResponse, ListAdNegativeKeywordListsError, ThrowOnError>({
|
|
@@ -11668,7 +11904,10 @@ export const listAdNegativeKeywordLists = <ThrowOnError extends boolean = false>
|
|
|
11668
11904
|
|
|
11669
11905
|
/**
|
|
11670
11906
|
* Create a negative keyword list
|
|
11907
|
+
* Creates a shared Google Ads negative keyword list, optionally with starting keywords; it is not attached to any campaign yet.
|
|
11908
|
+
*
|
|
11671
11909
|
* Creates one Google Ads shared negative keyword list with optional initial keywords in a single atomic mutation. Daily quota is reserved for every mutate item, so large batches may return 429 before any change. This operation is not idempotent. The list is not attached to any campaign.
|
|
11910
|
+
*
|
|
11672
11911
|
*/
|
|
11673
11912
|
export const createAdNegativeKeywordList = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdNegativeKeywordListData, ThrowOnError>) => {
|
|
11674
11913
|
return (options?.client ?? client).post<CreateAdNegativeKeywordListResponse, CreateAdNegativeKeywordListError, ThrowOnError>({
|
|
@@ -11679,7 +11918,10 @@ export const createAdNegativeKeywordList = <ThrowOnError extends boolean = false
|
|
|
11679
11918
|
|
|
11680
11919
|
/**
|
|
11681
11920
|
* Get a negative keyword list
|
|
11921
|
+
* Shows one shared Google Ads negative keyword list with all of its keywords.
|
|
11922
|
+
*
|
|
11682
11923
|
* Google Ads shared negative keyword lists (shared_set type NEGATIVE_KEYWORDS). Reads are cached for 10 minutes; quota exhaustion may return the last successful result for up to 7 days with stale=true. Customer selection is limited to this connection and its account scope. Includes the keywords and their criterion ids.
|
|
11924
|
+
*
|
|
11683
11925
|
*/
|
|
11684
11926
|
export const getAdNegativeKeywordList = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdNegativeKeywordListData, ThrowOnError>) => {
|
|
11685
11927
|
return (options?.client ?? client).get<GetAdNegativeKeywordListResponse, GetAdNegativeKeywordListError, ThrowOnError>({
|
|
@@ -11690,7 +11932,10 @@ export const getAdNegativeKeywordList = <ThrowOnError extends boolean = false>(o
|
|
|
11690
11932
|
|
|
11691
11933
|
/**
|
|
11692
11934
|
* Rename a negative keyword list
|
|
11693
|
-
* Renames a shared negative keyword list
|
|
11935
|
+
* Renames a shared Google Ads negative keyword list without changing its keywords or the campaigns using it.
|
|
11936
|
+
*
|
|
11937
|
+
* Keywords and campaign associations are unchanged. Use the keywords endpoint to edit the desired keyword set.
|
|
11938
|
+
*
|
|
11694
11939
|
*/
|
|
11695
11940
|
export const updateAdNegativeKeywordList = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdNegativeKeywordListData, ThrowOnError>) => {
|
|
11696
11941
|
return (options?.client ?? client).put<UpdateAdNegativeKeywordListResponse, UpdateAdNegativeKeywordListError, ThrowOnError>({
|
|
@@ -11701,7 +11946,10 @@ export const updateAdNegativeKeywordList = <ThrowOnError extends boolean = false
|
|
|
11701
11946
|
|
|
11702
11947
|
/**
|
|
11703
11948
|
* Delete a negative keyword list
|
|
11704
|
-
*
|
|
11949
|
+
* Deletes a shared Google Ads negative keyword list; detach it from every campaign first.
|
|
11950
|
+
*
|
|
11951
|
+
* Detach it from all campaigns first; an in-use list is rejected. Only NEGATIVE_KEYWORDS shared sets are supported.
|
|
11952
|
+
*
|
|
11705
11953
|
*/
|
|
11706
11954
|
export const deleteAdNegativeKeywordList = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdNegativeKeywordListData, ThrowOnError>) => {
|
|
11707
11955
|
return (options?.client ?? client).delete<DeleteAdNegativeKeywordListResponse, DeleteAdNegativeKeywordListError, ThrowOnError>({
|
|
@@ -11712,7 +11960,10 @@ export const deleteAdNegativeKeywordList = <ThrowOnError extends boolean = false
|
|
|
11712
11960
|
|
|
11713
11961
|
/**
|
|
11714
11962
|
* Replace negative list keywords
|
|
11715
|
-
* Replaces
|
|
11963
|
+
* Replaces all keywords in a shared Google Ads negative keyword list (or clears it), affecting every campaign that uses the list.
|
|
11964
|
+
*
|
|
11965
|
+
* Existing keywords are diffed by normalized text and match type; creates and removals are applied atomically in one mutation. Unchanged criteria retain their ids. Send an empty keywords array to clear the list. Changes affect every campaign using this list. Each create or removal consumes one daily operation; the entire batch must fit the remaining quota.
|
|
11966
|
+
*
|
|
11716
11967
|
*/
|
|
11717
11968
|
export const replaceAdNegativeKeywordListKeywords = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReplaceAdNegativeKeywordListKeywordsData, ThrowOnError>) => {
|
|
11718
11969
|
return (options?.client ?? client).put<ReplaceAdNegativeKeywordListKeywordsResponse, ReplaceAdNegativeKeywordListKeywordsError, ThrowOnError>({
|
|
@@ -11723,7 +11974,10 @@ export const replaceAdNegativeKeywordListKeywords = <ThrowOnError extends boolea
|
|
|
11723
11974
|
|
|
11724
11975
|
/**
|
|
11725
11976
|
* List campaign negative lists
|
|
11726
|
-
*
|
|
11977
|
+
* Lists the shared negative keyword lists attached to a Google campaign, separate from its own campaign-level negatives.
|
|
11978
|
+
*
|
|
11979
|
+
* Google Ads shared negative keyword lists (shared_set type NEGATIVE_KEYWORDS). Reads are cached for 10 minutes; quota exhaustion may return the last successful result for up to 7 days with stale=true. Customer selection is limited to this connection and its account scope.
|
|
11980
|
+
*
|
|
11727
11981
|
*/
|
|
11728
11982
|
export const listCampaignNegativeKeywordLists = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListCampaignNegativeKeywordListsData, ThrowOnError>) => {
|
|
11729
11983
|
return (options?.client ?? client).get<ListCampaignNegativeKeywordListsResponse, ListCampaignNegativeKeywordListsError, ThrowOnError>({
|
|
@@ -11734,7 +11988,10 @@ export const listCampaignNegativeKeywordLists = <ThrowOnError extends boolean =
|
|
|
11734
11988
|
|
|
11735
11989
|
/**
|
|
11736
11990
|
* Replace campaign negative lists
|
|
11737
|
-
* Sets
|
|
11991
|
+
* Sets exactly which shared negative keyword lists apply to a Google campaign, or detaches them all, without changing the lists themselves.
|
|
11992
|
+
*
|
|
11993
|
+
* Send listIds=[] to detach all negative keyword lists. Only campaign_shared_set links are changed; the lists and their keywords are preserved. Every list must belong to the campaign customer and have type NEGATIVE_KEYWORDS.
|
|
11994
|
+
*
|
|
11738
11995
|
*/
|
|
11739
11996
|
export const replaceCampaignNegativeKeywordLists = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReplaceCampaignNegativeKeywordListsData, ThrowOnError>) => {
|
|
11740
11997
|
return (options?.client ?? client).put<ReplaceCampaignNegativeKeywordListsResponse, ReplaceCampaignNegativeKeywordListsError, ThrowOnError>({
|
|
@@ -11745,7 +12002,10 @@ export const replaceCampaignNegativeKeywordLists = <ThrowOnError extends boolean
|
|
|
11745
12002
|
|
|
11746
12003
|
/**
|
|
11747
12004
|
* List account callouts
|
|
11748
|
-
* Lists
|
|
12005
|
+
* Lists the callouts attached at account level in Google Ads, which can show on ads across all campaigns.
|
|
12006
|
+
*
|
|
12007
|
+
* Fresh reads are cached for 10 minutes; exhausted quota may return the last successful read with stale=true. Inherited assets are not included. Preserves Google RMF C.75 account-level callouts.
|
|
12008
|
+
*
|
|
11749
12009
|
*/
|
|
11750
12010
|
export const listAccountCallouts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAccountCalloutsData, ThrowOnError>) => {
|
|
11751
12011
|
return (options?.client ?? client).get<ListAccountCalloutsResponse, ListAccountCalloutsError, ThrowOnError>({
|
|
@@ -11756,7 +12016,10 @@ export const listAccountCallouts = <ThrowOnError extends boolean = false>(option
|
|
|
11756
12016
|
|
|
11757
12017
|
/**
|
|
11758
12018
|
* Add account callouts
|
|
12019
|
+
* Creates callouts and attaches them at account level in Google Ads so they can show on ads across all campaigns.
|
|
12020
|
+
*
|
|
11759
12021
|
* Creates assets and customer_asset links for this Google customer. Links apply at account level.
|
|
12022
|
+
*
|
|
11760
12023
|
*/
|
|
11761
12024
|
export const addAccountCallouts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AddAccountCalloutsData, ThrowOnError>) => {
|
|
11762
12025
|
return (options?.client ?? client).post<AddAccountCalloutsResponse, AddAccountCalloutsError, ThrowOnError>({
|
|
@@ -11767,7 +12030,10 @@ export const addAccountCallouts = <ThrowOnError extends boolean = false>(options
|
|
|
11767
12030
|
|
|
11768
12031
|
/**
|
|
11769
12032
|
* Update account callouts
|
|
11770
|
-
* Edits existing Google
|
|
12033
|
+
* Edits existing Google Ads callouts in place; the change applies everywhere that callout is used.
|
|
12034
|
+
*
|
|
12035
|
+
* Send updates with assetResourceName and the fields to change. An asset is shared: changes affect every attachment using it. Omitted fields stay unchanged. The operation consumes the Google operations budget and invalidates affected cached lists.
|
|
12036
|
+
*
|
|
11771
12037
|
*/
|
|
11772
12038
|
export const updateAccountCallouts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAccountCalloutsData, ThrowOnError>) => {
|
|
11773
12039
|
return (options?.client ?? client).put<UpdateAccountCalloutsResponse, UpdateAccountCalloutsError, ThrowOnError>({
|
|
@@ -11778,7 +12044,10 @@ export const updateAccountCallouts = <ThrowOnError extends boolean = false>(opti
|
|
|
11778
12044
|
|
|
11779
12045
|
/**
|
|
11780
12046
|
* Remove account callout
|
|
12047
|
+
* Detaches a callout from the Google Ads account level, leaving it on any campaigns or ad groups that still use it.
|
|
12048
|
+
*
|
|
11781
12049
|
* Removes the customer_asset attachment only. The underlying shared asset and its campaign or ad-group attachments remain. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
12050
|
+
*
|
|
11782
12051
|
*/
|
|
11783
12052
|
export const removeAccountCallout = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAccountCalloutData, ThrowOnError>) => {
|
|
11784
12053
|
return (options?.client ?? client).delete<RemoveAccountCalloutResponse, RemoveAccountCalloutError, ThrowOnError>({
|
|
@@ -11789,7 +12058,10 @@ export const removeAccountCallout = <ThrowOnError extends boolean = false>(optio
|
|
|
11789
12058
|
|
|
11790
12059
|
/**
|
|
11791
12060
|
* List account sitelinks
|
|
11792
|
-
* Lists
|
|
12061
|
+
* Lists the sitelinks attached at account level in Google Ads, which can show on ads across all campaigns.
|
|
12062
|
+
*
|
|
12063
|
+
* Fresh reads are cached for 10 minutes; exhausted quota may return the last successful read with stale=true. Inherited assets are not included.
|
|
12064
|
+
*
|
|
11793
12065
|
*/
|
|
11794
12066
|
export const listAccountSitelinks = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAccountSitelinksData, ThrowOnError>) => {
|
|
11795
12067
|
return (options?.client ?? client).get<ListAccountSitelinksResponse, ListAccountSitelinksError, ThrowOnError>({
|
|
@@ -11800,7 +12072,10 @@ export const listAccountSitelinks = <ThrowOnError extends boolean = false>(optio
|
|
|
11800
12072
|
|
|
11801
12073
|
/**
|
|
11802
12074
|
* Add account sitelinks
|
|
12075
|
+
* Creates sitelinks and attaches them at account level in Google Ads so they can show on ads across all campaigns.
|
|
12076
|
+
*
|
|
11803
12077
|
* Creates assets and customer_asset links for this Google customer. Links apply at account level.
|
|
12078
|
+
*
|
|
11804
12079
|
*/
|
|
11805
12080
|
export const addAccountSitelinks = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AddAccountSitelinksData, ThrowOnError>) => {
|
|
11806
12081
|
return (options?.client ?? client).post<AddAccountSitelinksResponse, AddAccountSitelinksError, ThrowOnError>({
|
|
@@ -11811,7 +12086,10 @@ export const addAccountSitelinks = <ThrowOnError extends boolean = false>(option
|
|
|
11811
12086
|
|
|
11812
12087
|
/**
|
|
11813
12088
|
* Update account sitelinks
|
|
11814
|
-
* Edits existing Google
|
|
12089
|
+
* Edits existing Google Ads sitelinks in place; the change applies everywhere that sitelink is used.
|
|
12090
|
+
*
|
|
12091
|
+
* Send updates with assetResourceName and the fields to change. An asset is shared: changes affect every attachment using it. Omitted fields stay unchanged. The operation consumes the Google operations budget and invalidates affected cached lists.
|
|
12092
|
+
*
|
|
11815
12093
|
*/
|
|
11816
12094
|
export const updateAccountSitelinks = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAccountSitelinksData, ThrowOnError>) => {
|
|
11817
12095
|
return (options?.client ?? client).put<UpdateAccountSitelinksResponse, UpdateAccountSitelinksError, ThrowOnError>({
|
|
@@ -11822,7 +12100,10 @@ export const updateAccountSitelinks = <ThrowOnError extends boolean = false>(opt
|
|
|
11822
12100
|
|
|
11823
12101
|
/**
|
|
11824
12102
|
* Remove account sitelink
|
|
12103
|
+
* Detaches a sitelink from the Google Ads account level, leaving it on any campaigns or ad groups that still use it.
|
|
12104
|
+
*
|
|
11825
12105
|
* Removes the customer_asset attachment only. The underlying shared asset and its campaign or ad-group attachments remain. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
12106
|
+
*
|
|
11826
12107
|
*/
|
|
11827
12108
|
export const removeAccountSitelink = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAccountSitelinkData, ThrowOnError>) => {
|
|
11828
12109
|
return (options?.client ?? client).delete<RemoveAccountSitelinkResponse, RemoveAccountSitelinkError, ThrowOnError>({
|
|
@@ -11833,7 +12114,10 @@ export const removeAccountSitelink = <ThrowOnError extends boolean = false>(opti
|
|
|
11833
12114
|
|
|
11834
12115
|
/**
|
|
11835
12116
|
* List account snippets
|
|
11836
|
-
* Lists
|
|
12117
|
+
* Lists the structured snippets attached at account level in Google Ads, which can show on ads across all campaigns.
|
|
12118
|
+
*
|
|
12119
|
+
* Fresh reads are cached for 10 minutes; exhausted quota may return the last successful read with stale=true. Inherited assets are not included.
|
|
12120
|
+
*
|
|
11837
12121
|
*/
|
|
11838
12122
|
export const listAccountStructuredSnippets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAccountStructuredSnippetsData, ThrowOnError>) => {
|
|
11839
12123
|
return (options?.client ?? client).get<ListAccountStructuredSnippetsResponse, ListAccountStructuredSnippetsError, ThrowOnError>({
|
|
@@ -11844,7 +12128,10 @@ export const listAccountStructuredSnippets = <ThrowOnError extends boolean = fal
|
|
|
11844
12128
|
|
|
11845
12129
|
/**
|
|
11846
12130
|
* Add account snippets
|
|
12131
|
+
* Creates structured snippets and attaches them at account level in Google Ads so they can show on ads across all campaigns.
|
|
12132
|
+
*
|
|
11847
12133
|
* Creates assets and customer_asset links for this Google customer. Links apply at account level.
|
|
12134
|
+
*
|
|
11848
12135
|
*/
|
|
11849
12136
|
export const addAccountStructuredSnippets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AddAccountStructuredSnippetsData, ThrowOnError>) => {
|
|
11850
12137
|
return (options?.client ?? client).post<AddAccountStructuredSnippetsResponse, AddAccountStructuredSnippetsError, ThrowOnError>({
|
|
@@ -11855,7 +12142,10 @@ export const addAccountStructuredSnippets = <ThrowOnError extends boolean = fals
|
|
|
11855
12142
|
|
|
11856
12143
|
/**
|
|
11857
12144
|
* Update account snippets
|
|
11858
|
-
* Edits existing Google
|
|
12145
|
+
* Edits existing Google Ads structured snippets in place; the change applies everywhere that snippet is used.
|
|
12146
|
+
*
|
|
12147
|
+
* Send updates with assetResourceName and the fields to change. An asset is shared: changes affect every attachment using it. Omitted fields stay unchanged. The operation consumes the Google operations budget and invalidates affected cached lists.
|
|
12148
|
+
*
|
|
11859
12149
|
*/
|
|
11860
12150
|
export const updateAccountStructuredSnippets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAccountStructuredSnippetsData, ThrowOnError>) => {
|
|
11861
12151
|
return (options?.client ?? client).put<UpdateAccountStructuredSnippetsResponse, UpdateAccountStructuredSnippetsError, ThrowOnError>({
|
|
@@ -11866,7 +12156,10 @@ export const updateAccountStructuredSnippets = <ThrowOnError extends boolean = f
|
|
|
11866
12156
|
|
|
11867
12157
|
/**
|
|
11868
12158
|
* Remove account snippet
|
|
12159
|
+
* Detaches a structured snippet from the Google Ads account level, leaving it on any campaigns or ad groups that still use it.
|
|
12160
|
+
*
|
|
11869
12161
|
* Removes the customer_asset attachment only. The underlying shared asset and its campaign or ad-group attachments remain. Fields go in the query string. A JSON body with the same fields is also accepted and, when sent, the query string is ignored.
|
|
12162
|
+
*
|
|
11870
12163
|
*/
|
|
11871
12164
|
export const removeAccountStructuredSnippet = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAccountStructuredSnippetData, ThrowOnError>) => {
|
|
11872
12165
|
return (options?.client ?? client).delete<RemoveAccountStructuredSnippetResponse, RemoveAccountStructuredSnippetError, ThrowOnError>({
|
|
@@ -11877,6 +12170,8 @@ export const removeAccountStructuredSnippet = <ThrowOnError extends boolean = fa
|
|
|
11877
12170
|
|
|
11878
12171
|
/**
|
|
11879
12172
|
* Get manager account hierarchy
|
|
12173
|
+
* Shows the Google Ads manager (MCC) and client account tree for a connection, including pending invitations and link status.
|
|
12174
|
+
*
|
|
11880
12175
|
* Live manager (MCC) and client tree for a Google Ads connection. Starts from every customer the Google user behind the connection can access directly and walks each tree to any depth with `customer_client`, then reads each manager's own client links so every client carries its direct parent, the `managerLinkId` and the link status. Invitations a manager sent that the client has not accepted yet appear as clients with `linkStatus: PENDING` (Google returns no name or currency for them). Refused, canceled and ended links are history and are omitted. `managerLinks` on a root lists the managers linked to that account, including invitations it can still accept with PATCH /v1/ads/accounts/manager-links. A directly accessible account that is also nested in another tree appears only once, inside that tree. `directCustomers` lists every account the Google user accesses directly (the ones this connection can accept or decline invitations for) with their pending invitations, including accounts that are also nested in a tree. Customers Google refuses to read (for example a cancelled account) are listed in `unavailable` with Google's reason instead of failing the call. Up to 50 roots and 50 managers per root are read; `truncated` is true when more exist. Cached for 10 minutes per connection; the response carries `cachedAt` and `stale`. When the connection is scoped to specific ad accounts, client accounts outside that scope are hidden (managers stay visible).
|
|
11881
12176
|
*/
|
|
11882
12177
|
export const getAdAccountHierarchy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdAccountHierarchyData, ThrowOnError>) => {
|
|
@@ -11888,6 +12183,8 @@ export const getAdAccountHierarchy = <ThrowOnError extends boolean = false>(opti
|
|
|
11888
12183
|
|
|
11889
12184
|
/**
|
|
11890
12185
|
* Invite a client account to a manager
|
|
12186
|
+
* Invites a Google Ads account to be managed by one of your manager accounts; the link stays pending until the client accepts.
|
|
12187
|
+
*
|
|
11891
12188
|
* Sends a manager-to-client link invitation from `managerCustomerId` to `clientCustomerId` (Google's CustomerClientLinkService). The manager must be one the connection's Google user reaches, directly or under another manager (see GET /v1/ads/accounts/hierarchy); the client can be any Google Ads account. The link stays `PENDING` until someone with access to the client accepts it in Google Ads or through PATCH on this path. Not idempotent: Google refuses a second invitation while one is pending. Send `validateOnly: true` to have Google check the request without sending anything.
|
|
11892
12189
|
*/
|
|
11893
12190
|
export const inviteAdAccountToManager = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<InviteAdAccountToManagerData, ThrowOnError>) => {
|
|
@@ -11899,6 +12196,8 @@ export const inviteAdAccountToManager = <ThrowOnError extends boolean = false>(o
|
|
|
11899
12196
|
|
|
11900
12197
|
/**
|
|
11901
12198
|
* Accept, decline, cancel or end a manager link
|
|
12199
|
+
* Accepts, declines or cancels a Google Ads manager invitation, or ends an existing manager-client link.
|
|
12200
|
+
*
|
|
11902
12201
|
* Changes one manager-client link, identified by `managerCustomerId`, `clientCustomerId` and `managerLinkId` (all from GET /v1/ads/accounts/hierarchy). `accept` and `decline` answer a pending invitation as the client (CustomerManagerLinkService), so the connection's Google user needs direct access to the client account; access through a manager is not enough, because the link does not exist yet. `cancel` withdraws a pending invitation and `unlink` ends an active link, both as the manager (CustomerClientLinkService). Send `validateOnly: true` to have Google check the change without applying it.
|
|
11903
12202
|
*/
|
|
11904
12203
|
export const updateAdAccountManagerLink = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdAccountManagerLinkData, ThrowOnError>) => {
|
|
@@ -11910,8 +12209,10 @@ export const updateAdAccountManagerLink = <ThrowOnError extends boolean = false>
|
|
|
11910
12209
|
|
|
11911
12210
|
/**
|
|
11912
12211
|
* Ad account users
|
|
11913
|
-
*
|
|
12212
|
+
* Lists the people in a business portfolio assigned to a Meta ad account, with what each can do.
|
|
12213
|
+
*
|
|
11914
12214
|
* Ids are business-scoped user ids (see `GET /v1/ads/businesses/users`).
|
|
12215
|
+
*
|
|
11915
12216
|
*/
|
|
11916
12217
|
export const listAdAccountUsers = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdAccountUsersData, ThrowOnError>) => {
|
|
11917
12218
|
return (options?.client ?? client).get<ListAdAccountUsersResponse, ListAdAccountUsersError, ThrowOnError>({
|
|
@@ -11922,9 +12223,12 @@ export const listAdAccountUsers = <ThrowOnError extends boolean = false>(options
|
|
|
11922
12223
|
|
|
11923
12224
|
/**
|
|
11924
12225
|
* Assign a user to an ad account
|
|
11925
|
-
* Gives a person
|
|
12226
|
+
* Gives a person in your business portfolio access to a Meta ad account, as admin, advertiser, analyst or draft editor.
|
|
12227
|
+
*
|
|
12228
|
+
* `MANAGE` is admin, `ADVERTISE`
|
|
11926
12229
|
* creates and edits ads, `ANALYZE` reads reports, `DRAFT` edits drafts only. Assigning an
|
|
11927
12230
|
* already assigned user replaces their task set.
|
|
12231
|
+
*
|
|
11928
12232
|
*/
|
|
11929
12233
|
export const assignAdAccountUser = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AssignAdAccountUserData, ThrowOnError>) => {
|
|
11930
12234
|
return (options?.client ?? client).post<AssignAdAccountUserResponse, AssignAdAccountUserError, ThrowOnError>({
|
|
@@ -11935,6 +12239,8 @@ export const assignAdAccountUser = <ThrowOnError extends boolean = false>(option
|
|
|
11935
12239
|
|
|
11936
12240
|
/**
|
|
11937
12241
|
* Remove a user from an ad account
|
|
12242
|
+
* Removes a person's access to a Meta ad account assigned through your business portfolio.
|
|
12243
|
+
*
|
|
11938
12244
|
*/
|
|
11939
12245
|
export const removeAdAccountUser = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveAdAccountUserData, ThrowOnError>) => {
|
|
11940
12246
|
return (options?.client ?? client).delete<RemoveAdAccountUserResponse, RemoveAdAccountUserError, ThrowOnError>({
|
|
@@ -11945,6 +12251,8 @@ export const removeAdAccountUser = <ThrowOnError extends boolean = false>(option
|
|
|
11945
12251
|
|
|
11946
12252
|
/**
|
|
11947
12253
|
* Ad account finances
|
|
12254
|
+
* Shows a Meta ad account's balance, total spend, spend cap and funding source.
|
|
12255
|
+
*
|
|
11948
12256
|
* Finances of one Meta ad account: prepaid `balance`, lifetime `amountSpent`, account
|
|
11949
12257
|
* `spendCap` (null = no cap) and the `fundingSource`. Money values are converted from
|
|
11950
12258
|
* Meta's minor units to whole units of `currency`.
|
|
@@ -11958,6 +12266,8 @@ export const getAdAccountFinance = <ThrowOnError extends boolean = false>(option
|
|
|
11958
12266
|
|
|
11959
12267
|
/**
|
|
11960
12268
|
* Read an ad account's campaigns and ad sets live
|
|
12269
|
+
* Reads an ad account's campaigns and ad sets straight from Meta or TikTok, so checks like budget limits see current values.
|
|
12270
|
+
*
|
|
11961
12271
|
* Reads the campaigns and ad sets of one Meta ad account or TikTok advertiser **live from
|
|
11962
12272
|
* the platform**, so it is cheap enough to run before every write: for example a
|
|
11963
12273
|
* per-ad-account spend ceiling that must see the current daily / lifetime budget rather
|
|
@@ -12002,6 +12312,8 @@ export const getAdAccountLiveEntities = <ThrowOnError extends boolean = false>(o
|
|
|
12002
12312
|
|
|
12003
12313
|
/**
|
|
12004
12314
|
* Create Meta ad account
|
|
12315
|
+
* Creates a new Meta ad account in the user's own business portfolio (a payment method must then be added in Ads Manager).
|
|
12316
|
+
*
|
|
12005
12317
|
* Creates a durable Meta ad account in the end user's own business portfolio using
|
|
12006
12318
|
* their connected Meta Ads token. Requires an active metaads accountId, Ads access,
|
|
12007
12319
|
* business_management permission and business admin access. Discover portfolios with
|
|
@@ -12041,6 +12353,8 @@ export const createAdAccount = <ThrowOnError extends boolean = false>(options: O
|
|
|
12041
12353
|
|
|
12042
12354
|
/**
|
|
12043
12355
|
* List ad accounts
|
|
12356
|
+
* Lists the ad accounts a connection can manage, such as Meta ad accounts, TikTok advertisers or Google Ads customers.
|
|
12357
|
+
*
|
|
12044
12358
|
* Returns the platform ad accounts available for the given account (e.g. Meta ad
|
|
12045
12359
|
* accounts, TikTok advertiser IDs, Google Ads customer IDs).
|
|
12046
12360
|
* Meta business-login accounts use their own system-user token. Fresh Meta discovery
|
|
@@ -12066,8 +12380,9 @@ export const listAdAccounts = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12066
12380
|
|
|
12067
12381
|
/**
|
|
12068
12382
|
* Update ad account settings
|
|
12069
|
-
*
|
|
12070
|
-
*
|
|
12383
|
+
* Changes a Meta ad account's name, spend cap or default EU DSA beneficiary and payor.
|
|
12384
|
+
*
|
|
12385
|
+
* Pass any combination of fields.
|
|
12071
12386
|
*
|
|
12072
12387
|
* **Spend cap.** `spendCap` is the total the account may spend before Meta pauses every
|
|
12073
12388
|
* campaign in it, in whole units of the account currency. `spendCap: null` removes the
|
|
@@ -12110,6 +12425,8 @@ export const updateAdAccount = <ThrowOnError extends boolean = false>(options: O
|
|
|
12110
12425
|
|
|
12111
12426
|
/**
|
|
12112
12427
|
* Get ad account DSA defaults
|
|
12428
|
+
* Shows the default EU DSA beneficiary and payor set on a Meta ad account.
|
|
12429
|
+
*
|
|
12113
12430
|
* Returns the default DSA beneficiary and payor currently set on a Meta ad account,
|
|
12114
12431
|
* whether they were set via `PATCH /v1/ads/accounts` or in Meta Ads Manager. Fields
|
|
12115
12432
|
* are omitted when no default is configured. Meta accounts only.
|
|
@@ -12124,6 +12441,8 @@ export const getDsaDefaults = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12124
12441
|
|
|
12125
12442
|
/**
|
|
12126
12443
|
* Get DSA recommendations
|
|
12444
|
+
* Suggests beneficiary and payor names for a Meta ad account's EU DSA disclosures, for your user to pick from.
|
|
12445
|
+
*
|
|
12127
12446
|
* Returns Meta's suggested beneficiary/payor names for an ad account, derived by Meta
|
|
12128
12447
|
* from the account's recent activity. Useful for prefilling `dsaBeneficiary`/`dsaPayor`
|
|
12129
12448
|
* inputs, or the defaults sent to `PATCH /v1/ads/accounts`, in your own UI.
|
|
@@ -12143,8 +12462,9 @@ export const getDsaRecommendations = <ThrowOnError extends boolean = false>(opti
|
|
|
12143
12462
|
|
|
12144
12463
|
/**
|
|
12145
12464
|
* Boost post as ad
|
|
12146
|
-
*
|
|
12147
|
-
*
|
|
12465
|
+
* Turns an already published post into a paid ad that keeps the post's likes and comments, creating the campaign around it.
|
|
12466
|
+
*
|
|
12467
|
+
* By default it provisions the whole hierarchy (campaign, ad
|
|
12148
12468
|
* set, ad).
|
|
12149
12469
|
*
|
|
12150
12470
|
* **Attach shape (Meta).** Send `adSetId` to put the ad under an EXISTING
|
|
@@ -12200,7 +12520,10 @@ export const boostPost = <ThrowOnError extends boolean = false>(options: Options
|
|
|
12200
12520
|
|
|
12201
12521
|
/**
|
|
12202
12522
|
* List Performance Max asset groups
|
|
12203
|
-
*
|
|
12523
|
+
* Lists a Performance Max campaign's asset groups with their linked text, image and YouTube assets.
|
|
12524
|
+
*
|
|
12525
|
+
* campaignId is the platform campaign id returned by creation or the campaign list. The campaign must be visible to the caller. Uses a 10-minute cache, with the last successful response served as stale when Google quota is exhausted. Removed groups and asset links are excluded. Campaign-level brand assets on campaigns with brand guidelines enabled are not included.
|
|
12526
|
+
*
|
|
12204
12527
|
*/
|
|
12205
12528
|
export const listGoogleAssetGroups = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListGoogleAssetGroupsData, ThrowOnError>) => {
|
|
12206
12529
|
return (options?.client ?? client).get<ListGoogleAssetGroupsResponse, ListGoogleAssetGroupsError, ThrowOnError>({
|
|
@@ -12211,7 +12534,10 @@ export const listGoogleAssetGroups = <ThrowOnError extends boolean = false>(opti
|
|
|
12211
12534
|
|
|
12212
12535
|
/**
|
|
12213
12536
|
* Create a Performance Max asset group
|
|
12214
|
-
*
|
|
12537
|
+
* Adds an asset group with its assets and optional product targeting to a Performance Max campaign, or just validates it without creating anything.
|
|
12538
|
+
*
|
|
12539
|
+
* The group, any new assets, their links and an optional listing-group tree are created in one atomic request, so Google checks the asset minimums (for non-retail campaigns) against the whole set. Created PAUSED unless status is ENABLED. validateOnly: true runs Google's validation without creating anything.
|
|
12540
|
+
*
|
|
12215
12541
|
*/
|
|
12216
12542
|
export const createGoogleAssetGroup = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateGoogleAssetGroupData, ThrowOnError>) => {
|
|
12217
12543
|
return (options?.client ?? client).post<CreateGoogleAssetGroupResponse, CreateGoogleAssetGroupError, ThrowOnError>({
|
|
@@ -12222,7 +12548,10 @@ export const createGoogleAssetGroup = <ThrowOnError extends boolean = false>(opt
|
|
|
12222
12548
|
|
|
12223
12549
|
/**
|
|
12224
12550
|
* Get a Performance Max asset group
|
|
12551
|
+
* Shows one Performance Max asset group with its linked assets, ad strength, status and product targeting tree.
|
|
12552
|
+
*
|
|
12225
12553
|
* One asset group with its linked assets, ad strength, primary status and listing-group tree. Uses a 10-minute cache, served stale when Google quota is exhausted; any write below clears it.
|
|
12554
|
+
*
|
|
12226
12555
|
*/
|
|
12227
12556
|
export const getGoogleAssetGroup = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetGoogleAssetGroupData, ThrowOnError>) => {
|
|
12228
12557
|
return (options?.client ?? client).get<GetGoogleAssetGroupResponse, GetGoogleAssetGroupError, ThrowOnError>({
|
|
@@ -12233,7 +12562,10 @@ export const getGoogleAssetGroup = <ThrowOnError extends boolean = false>(option
|
|
|
12233
12562
|
|
|
12234
12563
|
/**
|
|
12235
12564
|
* Update a Performance Max asset group
|
|
12565
|
+
* Changes a Performance Max asset group's name, status, final URLs or display paths.
|
|
12566
|
+
*
|
|
12236
12567
|
* Change the name, status (ENABLED or PAUSED), final URLs or display paths. Only the fields sent are written; null on path1 or path2 clears it. Change assets with the /assets endpoint and product targeting with /listing-group-filters. validateOnly: true validates without writing.
|
|
12568
|
+
*
|
|
12237
12569
|
*/
|
|
12238
12570
|
export const updateGoogleAssetGroup = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateGoogleAssetGroupData, ThrowOnError>) => {
|
|
12239
12571
|
return (options?.client ?? client).patch<UpdateGoogleAssetGroupResponse, UpdateGoogleAssetGroupError, ThrowOnError>({
|
|
@@ -12244,7 +12576,10 @@ export const updateGoogleAssetGroup = <ThrowOnError extends boolean = false>(opt
|
|
|
12244
12576
|
|
|
12245
12577
|
/**
|
|
12246
12578
|
* Remove a Performance Max asset group
|
|
12579
|
+
* Permanently removes an asset group from a Performance Max campaign (this cannot be undone).
|
|
12580
|
+
*
|
|
12247
12581
|
* Removes the asset group on Google (status REMOVED, not reversible). Pass validateOnly=true to validate without removing.
|
|
12582
|
+
*
|
|
12248
12583
|
*/
|
|
12249
12584
|
export const removeGoogleAssetGroup = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveGoogleAssetGroupData, ThrowOnError>) => {
|
|
12250
12585
|
return (options?.client ?? client).delete<RemoveGoogleAssetGroupResponse, RemoveGoogleAssetGroupError, ThrowOnError>({
|
|
@@ -12255,7 +12590,10 @@ export const removeGoogleAssetGroup = <ThrowOnError extends boolean = false>(opt
|
|
|
12255
12590
|
|
|
12256
12591
|
/**
|
|
12257
12592
|
* Link or unlink asset group assets
|
|
12593
|
+
* Links new or existing assets to a Performance Max asset group and unlinks others in one change, keeping unlinked assets in the account library.
|
|
12594
|
+
*
|
|
12258
12595
|
* Link existing assets or new content to the asset group, and unlink assets, in one atomic request. Links are applied before unlinks, so swapping the last asset of a role does not trip Google's per-role minimum. Unlinking removes the link only; the asset stays in the account library. validateOnly: true validates without writing.
|
|
12596
|
+
*
|
|
12259
12597
|
*/
|
|
12260
12598
|
export const editGoogleAssetGroupAssets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EditGoogleAssetGroupAssetsData, ThrowOnError>) => {
|
|
12261
12599
|
return (options?.client ?? client).post<EditGoogleAssetGroupAssetsResponse, EditGoogleAssetGroupAssetsError, ThrowOnError>({
|
|
@@ -12266,7 +12604,10 @@ export const editGoogleAssetGroupAssets = <ThrowOnError extends boolean = false>
|
|
|
12266
12604
|
|
|
12267
12605
|
/**
|
|
12268
12606
|
* Replace an asset group's listing-group tree
|
|
12607
|
+
* Replaces the product targeting tree of a Performance Max retail asset group; only works on campaigns linked to Merchant Center.
|
|
12608
|
+
*
|
|
12269
12609
|
* Replace the product (listing-group) tree of a Performance Max retail asset group. The current tree is removed and the new one created in one atomic request. Read the current tree with GET on the asset group. Requires a campaign linked to Merchant Center; other campaigns return 400 LISTING_SOURCE_NOT_ALLOWED from Google. validateOnly: true validates without writing.
|
|
12610
|
+
*
|
|
12270
12611
|
*/
|
|
12271
12612
|
export const replaceGoogleListingGroupFilters = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReplaceGoogleListingGroupFiltersData, ThrowOnError>) => {
|
|
12272
12613
|
return (options?.client ?? client).put<ReplaceGoogleListingGroupFiltersResponse, ReplaceGoogleListingGroupFiltersError, ThrowOnError>({
|
|
@@ -12277,6 +12618,8 @@ export const replaceGoogleListingGroupFilters = <ThrowOnError extends boolean =
|
|
|
12277
12618
|
|
|
12278
12619
|
/**
|
|
12279
12620
|
* Create standalone ad
|
|
12621
|
+
* Creates a paid ad with your own creative, building the campaign and ad set it needs or adding it to existing ones.
|
|
12622
|
+
*
|
|
12280
12623
|
* Create a paid ad with custom creative across Meta, Google Ads, Pinterest, TikTok, X, LinkedIn, and OpenAI Ads (ChatGPT Ads).
|
|
12281
12624
|
*
|
|
12282
12625
|
* Google Performance Max: set `campaignType: "pmax"` and supply `assetGroup` with
|
|
@@ -12342,6 +12685,8 @@ export const createStandaloneAd = <ThrowOnError extends boolean = false>(options
|
|
|
12342
12685
|
|
|
12343
12686
|
/**
|
|
12344
12687
|
* List submitted leads
|
|
12688
|
+
* Lists the leads submitted through your Meta or LinkedIn lead forms, newest first.
|
|
12689
|
+
*
|
|
12345
12690
|
* Returns submitted Lead Gen leads for your team, newest-first, with keyset pagination on `cursor`. For Meta (default) leads are served from the persisted cache, ingested in real time from the `leadgen` webhook. When `accountId` is a LinkedIn ads account, leads are fetched live from LinkedIn's `leadFormResponses` (LinkedIn has no webhook and enforces 90-day retention, so nothing is persisted) and `adAccountId` is required. Reading LinkedIn responses needs the `r_marketing_leadgen_automation` permission; accounts connected before it was added must reconnect. Requires the Ads add-on.
|
|
12346
12691
|
*
|
|
12347
12692
|
*/
|
|
@@ -12354,7 +12699,9 @@ export const listLeads = <ThrowOnError extends boolean = false>(options?: Option
|
|
|
12354
12699
|
|
|
12355
12700
|
/**
|
|
12356
12701
|
* List lead forms
|
|
12357
|
-
* Lists the
|
|
12702
|
+
* Lists the lead forms on a Facebook Page or LinkedIn Company Page.
|
|
12703
|
+
*
|
|
12704
|
+
* Meta: forms on the connected Facebook Page. Pass either the `metaads` ads connection (the Page is taken from the Facebook account linked to it) or the Facebook account itself. LinkedIn: forms owned by the ad account's Company Page. Pass `adAccountId` (LinkedIn forms are org-owned). Requires the Ads add-on.
|
|
12358
12705
|
*
|
|
12359
12706
|
*/
|
|
12360
12707
|
export const listLeadForms = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListLeadFormsData, ThrowOnError>) => {
|
|
@@ -12366,7 +12713,9 @@ export const listLeadForms = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
12366
12713
|
|
|
12367
12714
|
/**
|
|
12368
12715
|
* Create a lead form
|
|
12369
|
-
* Creates a
|
|
12716
|
+
* Creates a lead form on a Facebook Page or LinkedIn Company Page to collect contact details from ads.
|
|
12717
|
+
*
|
|
12718
|
+
* The form content goes inside `platformSpecificData` for both platforms (the shape is selected by the accountId's platform). Meta: created on the connected Facebook Page (POST /{page-id}/leadgen_forms), where `accountId` may be the `metaads` ads connection (its Page comes from the Facebook account linked to the same profile) or the Facebook account itself; the old top-level Meta fields (questions, thankYou*, contextCard, …) are DEPRECATED but still accepted while platformSpecificData is absent; mixing both shapes is a 400. LinkedIn: created on the ad account's Company Page. NOT idempotent: a retry creates a second form. Meta prefilled question types (EMAIL, PHONE, FULL_NAME, …) must omit label/key; CUSTOM questions require both. LinkedIn exposes only free-text and multiple-choice questions via API (prefilled-from-profile fields are Campaign Manager UI-only). Requires the Ads add-on.
|
|
12370
12719
|
*
|
|
12371
12720
|
*/
|
|
12372
12721
|
export const createLeadForm = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateLeadFormData, ThrowOnError>) => {
|
|
@@ -12378,6 +12727,8 @@ export const createLeadForm = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12378
12727
|
|
|
12379
12728
|
/**
|
|
12380
12729
|
* Get a lead form
|
|
12730
|
+
* Shows a lead form in full, including its questions and thank-you page.
|
|
12731
|
+
*
|
|
12381
12732
|
* Returns the full form, including the thank-you page, so a form can be diffed against what was created. Meta forms are scoped to the Page the accountId manages: a form on any other Page is a 404, never a read.
|
|
12382
12733
|
*
|
|
12383
12734
|
*/
|
|
@@ -12390,7 +12741,10 @@ export const getLeadForm = <ThrowOnError extends boolean = false>(options: Optio
|
|
|
12390
12741
|
|
|
12391
12742
|
/**
|
|
12392
12743
|
* Archive a lead form
|
|
12744
|
+
* Archives a lead form so it can no longer be used (neither Meta nor LinkedIn allows deleting one).
|
|
12745
|
+
*
|
|
12393
12746
|
* Neither platform hard-deletes a form; this archives it (Meta status=ARCHIVED; LinkedIn state=ARCHIVED via PARTIAL_UPDATE). Meta forms must belong to the Page the accountId manages.
|
|
12747
|
+
*
|
|
12394
12748
|
*/
|
|
12395
12749
|
export const archiveLeadForm = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ArchiveLeadFormData, ThrowOnError>) => {
|
|
12396
12750
|
return (options?.client ?? client).delete<ArchiveLeadFormResponse, ArchiveLeadFormError, ThrowOnError>({
|
|
@@ -12401,7 +12755,9 @@ export const archiveLeadForm = <ThrowOnError extends boolean = false>(options: O
|
|
|
12401
12755
|
|
|
12402
12756
|
/**
|
|
12403
12757
|
* List leads for a single form
|
|
12404
|
-
*
|
|
12758
|
+
* Lists the leads submitted through one Meta lead form.
|
|
12759
|
+
*
|
|
12760
|
+
* Serves persisted leads (ingested via the leadgen webhook) when available, falling back to a live Graph read. Accepts a Facebook account or a metaads business-login account with leads_retrieval access to the form; the latter uses its system-user token without a posting parent.
|
|
12405
12761
|
*
|
|
12406
12762
|
*/
|
|
12407
12763
|
export const listFormLeads = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListFormLeadsData, ThrowOnError>) => {
|
|
@@ -12413,6 +12769,8 @@ export const listFormLeads = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
12413
12769
|
|
|
12414
12770
|
/**
|
|
12415
12771
|
* Create a test lead
|
|
12772
|
+
* Submits a test lead to a Meta lead form so you can check your lead retrieval without running ads.
|
|
12773
|
+
*
|
|
12416
12774
|
* Submits a test lead against the form (POST /{form-id}/test_leads) to exercise retrieval without waiting for real ad impressions. Meta allows one test lead per form at a time.
|
|
12417
12775
|
*
|
|
12418
12776
|
*/
|
|
@@ -12425,6 +12783,8 @@ export const createTestLead = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12425
12783
|
|
|
12426
12784
|
/**
|
|
12427
12785
|
* Delete a test lead
|
|
12786
|
+
* Deletes the test lead on a Meta lead form so you can submit a new one (Meta allows only one at a time).
|
|
12787
|
+
*
|
|
12428
12788
|
* Removes a test lead created for the form (DELETE /{leadgen_id}), so a new one can be submitted: Meta keeps one test lead per form and refuses a second until the first is gone. The same test lead appears in Meta's Lead Ads Testing Tool. Meta only deletes test leads; a real lead is refused.
|
|
12429
12789
|
*
|
|
12430
12790
|
*/
|
|
@@ -12437,10 +12797,12 @@ export const deleteTestLead = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12437
12797
|
|
|
12438
12798
|
/**
|
|
12439
12799
|
* Upload an ad image from base64
|
|
12440
|
-
* Uploads
|
|
12441
|
-
*
|
|
12800
|
+
* Uploads an image file to a Meta ad account's library, for creatives that are not hosted at a public URL.
|
|
12801
|
+
*
|
|
12802
|
+
* Returns the image `hash` (Meta's identifier for
|
|
12442
12803
|
* the asset) and the Meta-hosted `url`, which can be used directly as `imageUrl` on the
|
|
12443
12804
|
* create endpoints. Max 30 MB decoded.
|
|
12805
|
+
*
|
|
12444
12806
|
*/
|
|
12445
12807
|
export const uploadAdImage = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UploadAdImageData, ThrowOnError>) => {
|
|
12446
12808
|
return (options?.client ?? client).post<UploadAdImageResponse, UploadAdImageError, ThrowOnError>({
|
|
@@ -12451,6 +12813,8 @@ export const uploadAdImage = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
12451
12813
|
|
|
12452
12814
|
/**
|
|
12453
12815
|
* Ad image library
|
|
12816
|
+
* Lists the images in a Meta ad account's library so you can reuse one in a creative.
|
|
12817
|
+
*
|
|
12454
12818
|
* Lists the ad account's image library (Meta's `/act_X/adimages`), rows returned verbatim.
|
|
12455
12819
|
* The default projection covers hash, url, name, dimensions and status; `fields` is a
|
|
12456
12820
|
* raw-passthrough override. Any `hash` here is reusable wherever Meta accepts
|
|
@@ -12465,6 +12829,8 @@ export const listAdImages = <ThrowOnError extends boolean = false>(options: Opti
|
|
|
12465
12829
|
|
|
12466
12830
|
/**
|
|
12467
12831
|
* Upload an ad video
|
|
12832
|
+
* Uploads a video to a Meta ad account from a URL or file, so you can preview it or use it in ads before any ad exists.
|
|
12833
|
+
*
|
|
12468
12834
|
* Standalone ad-video upload (parallel to POST /v1/ads/images), so a video creative can
|
|
12469
12835
|
* be rendered via POST /v1/ads/preview or attached via `video.id` on POST /v1/ads/create
|
|
12470
12836
|
* before an ad exists.
|
|
@@ -12494,6 +12860,8 @@ export const uploadAdVideo = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
12494
12860
|
|
|
12495
12861
|
/**
|
|
12496
12862
|
* Ad video library
|
|
12863
|
+
* Lists the videos in a Meta ad account's library, including ones uploaded elsewhere, so you can reuse one across ads.
|
|
12864
|
+
*
|
|
12497
12865
|
* Lists the ad account's video library (Meta's `/act_X/advideos`), rows returned verbatim.
|
|
12498
12866
|
* The default projection covers id, title, status, poster frames, length and `source` (the
|
|
12499
12867
|
* playable MP4); `fields` is a raw-passthrough override. Any `id` here is reusable as
|
|
@@ -12519,6 +12887,8 @@ export const listAdVideos = <ThrowOnError extends boolean = false>(options: Opti
|
|
|
12519
12887
|
|
|
12520
12888
|
/**
|
|
12521
12889
|
* Get ad video processing status
|
|
12890
|
+
* Checks whether an uploaded Meta ad video has finished processing and is ready to use in an ad.
|
|
12891
|
+
*
|
|
12522
12892
|
* Reads a video's processing state live from Meta (`GET /{video-id}?fields=status`).
|
|
12523
12893
|
* Poll this after `POST /v1/ads/videos` with `async: true` until `status` is `ready`;
|
|
12524
12894
|
* the video is only usable as `video.id` on the create endpoints from then on.
|
|
@@ -12537,12 +12907,15 @@ export const getAdVideoStatus = <ThrowOnError extends boolean = false>(options:
|
|
|
12537
12907
|
|
|
12538
12908
|
/**
|
|
12539
12909
|
* Delete an ad video
|
|
12540
|
-
* Removes a video from
|
|
12910
|
+
* Removes a video from a Meta ad account's video library.
|
|
12911
|
+
*
|
|
12912
|
+
* Meta's canonical
|
|
12541
12913
|
* `DELETE /{video_id}` fails with code 10 / subcode 1363055 for videos uploaded via
|
|
12542
12914
|
* `/act_X/advideos` even with `ads_management`; this endpoint uses the working
|
|
12543
12915
|
* account-scoped shape `DELETE /act_X/advideos?video_id=<id>` and returns Meta's
|
|
12544
12916
|
* `{success: true}` verbatim. Deleting a video that lives in a different ad account,
|
|
12545
12917
|
* or that Meta has already removed, returns Meta's error verbatim as a 4xx.
|
|
12918
|
+
*
|
|
12546
12919
|
*/
|
|
12547
12920
|
export const deleteAdVideo = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdVideoData, ThrowOnError>) => {
|
|
12548
12921
|
return (options?.client ?? client).delete<DeleteAdVideoResponse, DeleteAdVideoError, ThrowOnError>({
|
|
@@ -12569,6 +12942,8 @@ export const searchAdInterests = <ThrowOnError extends boolean = false>(options:
|
|
|
12569
12942
|
|
|
12570
12943
|
/**
|
|
12571
12944
|
* Search targeting options
|
|
12945
|
+
* Finds targeting options by name, such as locations, interests or behaviors, and returns the ids to use in ad targeting.
|
|
12946
|
+
*
|
|
12572
12947
|
* Resolve a human-readable query into the platform's opaque targeting ids used in
|
|
12573
12948
|
* the `TargetingSpec` (`countries`/`regions`/`cities`/`zips`/`metros` geo keys, and
|
|
12574
12949
|
* `interests`/`behaviors` entity ids) on `POST /v1/ads/create`,
|
|
@@ -12698,6 +13073,8 @@ export const searchAdTargeting = <ThrowOnError extends boolean = false>(options:
|
|
|
12698
13073
|
|
|
12699
13074
|
/**
|
|
12700
13075
|
* Browse targeting categories
|
|
13076
|
+
* Shows Meta's full tree of detailed targeting categories for an ad account, so you can browse options without a keyword.
|
|
13077
|
+
*
|
|
12701
13078
|
* The whole Meta detailed-targeting category tree of one ad account (Meta's
|
|
12702
13079
|
* `GET /act_{ad_account_id}/targetingbrowse`), as one flat list you can render as a
|
|
12703
13080
|
* tree. Use it to show what can be targeted without a keyword; use
|
|
@@ -12746,7 +13123,9 @@ export const browseAdTargeting = <ThrowOnError extends boolean = false>(options:
|
|
|
12746
13123
|
|
|
12747
13124
|
/**
|
|
12748
13125
|
* Search the public Ad Library
|
|
12749
|
-
*
|
|
13126
|
+
* Searches Meta's or LinkedIn's public Ad Library to see what ads other advertisers run, for competitor and market research.
|
|
13127
|
+
*
|
|
13128
|
+
* Meta's Ad Library
|
|
12750
13129
|
* (`GET /ads_archive`) is searched with Zernio's own developer access, so `platform=meta` needs
|
|
12751
13130
|
* no connected account at all. LinkedIn's Ad Library (`GET /rest/adLibrary`) runs on a connected
|
|
12752
13131
|
* `linkedin` / `linkedinads` account, passed as `accountId`. Passing a Meta account as `accountId`
|
|
@@ -12767,6 +13146,7 @@ export const browseAdTargeting = <ThrowOnError extends boolean = false>(options:
|
|
|
12767
13146
|
* `platforms`, `mediaType`, `languages`, `searchType`, `fields`, `since`, `until` are Meta-only;
|
|
12768
13147
|
* `advertiser` is LinkedIn-only. Passing a param the account's platform does not support is a 400
|
|
12769
13148
|
* naming the param.
|
|
13149
|
+
*
|
|
12770
13150
|
*/
|
|
12771
13151
|
export const searchAdLibrary = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<SearchAdLibraryData, ThrowOnError>) => {
|
|
12772
13152
|
return (options?.client ?? client).get<SearchAdLibraryResponse, SearchAdLibraryError, ThrowOnError>({
|
|
@@ -12777,6 +13157,8 @@ export const searchAdLibrary = <ThrowOnError extends boolean = false>(options?:
|
|
|
12777
13157
|
|
|
12778
13158
|
/**
|
|
12779
13159
|
* Estimate audience reach
|
|
13160
|
+
* Estimates how many people a targeting setup would reach before you create a campaign.
|
|
13161
|
+
*
|
|
12780
13162
|
* Returns a normalized pre-flight audience-size estimate for a targeting spec,
|
|
12781
13163
|
* before any campaign is created. Backed by each platform's native reach API
|
|
12782
13164
|
* (Meta `delivery_estimate`, LinkedIn `audienceCounts`, X `audience_summary`,
|
|
@@ -12837,7 +13219,10 @@ export const getLinkedInSupplyForecast = <ThrowOnError extends boolean = false>(
|
|
|
12837
13219
|
|
|
12838
13220
|
/**
|
|
12839
13221
|
* List Meta product catalogs
|
|
12840
|
-
* Lists the Meta
|
|
13222
|
+
* Lists the Meta product catalogs a business portfolio owns or has been shared, for catalog and shopping ads.
|
|
13223
|
+
*
|
|
13224
|
+
* The business comes from `businessId`, else the ad account's owner (`adAccountId`), else the WhatsApp Business Account's owner when `accountId` is a WhatsApp connection, else the only business the Meta login can see. Reads work with scopes customers already granted.
|
|
13225
|
+
*
|
|
12841
13226
|
*/
|
|
12842
13227
|
export const listAdCatalogs = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdCatalogsData, ThrowOnError>) => {
|
|
12843
13228
|
return (options?.client ?? client).get<ListAdCatalogsResponse, ListAdCatalogsError, ThrowOnError>({
|
|
@@ -12848,7 +13233,10 @@ export const listAdCatalogs = <ThrowOnError extends boolean = false>(options: Op
|
|
|
12848
13233
|
|
|
12849
13234
|
/**
|
|
12850
13235
|
* Create a Meta product catalog
|
|
13236
|
+
* Creates a Meta product catalog that can power catalog ads, Instagram and Facebook Shops, and a WhatsApp Business catalog.
|
|
13237
|
+
*
|
|
12851
13238
|
* Creates a Meta Commerce catalog in the business portfolio (resolved like GET). The same catalog serves Advantage+ catalog ads, Instagram/Facebook Shops and the WhatsApp Business catalog: link it to a WhatsApp number with POST /v1/whatsapp/catalogs. Needs catalog_management on the Meta login.
|
|
13239
|
+
*
|
|
12852
13240
|
*/
|
|
12853
13241
|
export const createAdCatalog = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdCatalogData, ThrowOnError>) => {
|
|
12854
13242
|
return (options?.client ?? client).post<CreateAdCatalogResponse, CreateAdCatalogError, ThrowOnError>({
|
|
@@ -12859,6 +13247,8 @@ export const createAdCatalog = <ThrowOnError extends boolean = false>(options: O
|
|
|
12859
13247
|
|
|
12860
13248
|
/**
|
|
12861
13249
|
* Get a product catalog
|
|
13250
|
+
* Shows one Meta product catalog and its details.
|
|
13251
|
+
*
|
|
12862
13252
|
*/
|
|
12863
13253
|
export const getAdCatalog = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdCatalogData, ThrowOnError>) => {
|
|
12864
13254
|
return (options?.client ?? client).get<GetAdCatalogResponse, GetAdCatalogError, ThrowOnError>({
|
|
@@ -12869,7 +13259,10 @@ export const getAdCatalog = <ThrowOnError extends boolean = false>(options: Opti
|
|
|
12869
13259
|
|
|
12870
13260
|
/**
|
|
12871
13261
|
* Delete a product catalog
|
|
12872
|
-
* Deletes
|
|
13262
|
+
* Deletes a Meta product catalog and all its products, removing it from any ads or WhatsApp numbers that use it.
|
|
13263
|
+
*
|
|
13264
|
+
* Ads and WhatsApp numbers that use it lose their catalog.
|
|
13265
|
+
*
|
|
12873
13266
|
*/
|
|
12874
13267
|
export const deleteAdCatalog = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdCatalogData, ThrowOnError>) => {
|
|
12875
13268
|
return (options?.client ?? client).delete<DeleteAdCatalogResponse, DeleteAdCatalogError, ThrowOnError>({
|
|
@@ -12880,7 +13273,10 @@ export const deleteAdCatalog = <ThrowOnError extends boolean = false>(options: O
|
|
|
12880
13273
|
|
|
12881
13274
|
/**
|
|
12882
13275
|
* List a catalog's products
|
|
12883
|
-
*
|
|
13276
|
+
* Lists the products in a Meta catalog, or looks one up by your own SKU.
|
|
13277
|
+
*
|
|
13278
|
+
* Filter by your own `retailerId` to look one up. `price` and `salePrice` come back formatted by Meta (for example "€49.90").
|
|
13279
|
+
*
|
|
12884
13280
|
*/
|
|
12885
13281
|
export const listAdCatalogProducts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdCatalogProductsData, ThrowOnError>) => {
|
|
12886
13282
|
return (options?.client ?? client).get<ListAdCatalogProductsResponse, ListAdCatalogProductsError, ThrowOnError>({
|
|
@@ -12891,7 +13287,10 @@ export const listAdCatalogProducts = <ThrowOnError extends boolean = false>(opti
|
|
|
12891
13287
|
|
|
12892
13288
|
/**
|
|
12893
13289
|
* Add a product to a catalog
|
|
12894
|
-
* Adds
|
|
13290
|
+
* Adds a single product to a Meta catalog, keyed by your own SKU for later lookups and updates.
|
|
13291
|
+
*
|
|
13292
|
+
* `retailerId` is your SKU and stays the handle for later lookups and batch updates. For many products at once use POST /v1/ads/catalogs/{catalogId}/products/batch. Needs catalog_management on the Meta login.
|
|
13293
|
+
*
|
|
12895
13294
|
*/
|
|
12896
13295
|
export const createAdCatalogProduct = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdCatalogProductData, ThrowOnError>) => {
|
|
12897
13296
|
return (options?.client ?? client).post<CreateAdCatalogProductResponse, CreateAdCatalogProductError, ThrowOnError>({
|
|
@@ -12902,7 +13301,10 @@ export const createAdCatalogProduct = <ThrowOnError extends boolean = false>(opt
|
|
|
12902
13301
|
|
|
12903
13302
|
/**
|
|
12904
13303
|
* Create, update or delete products in bulk
|
|
13304
|
+
* Creates, updates or deletes up to 5,000 catalog products in one request, processed in the background by Meta.
|
|
13305
|
+
*
|
|
12905
13306
|
* Up to 5000 CREATE / UPDATE / DELETE requests keyed by `retailerId`, processed asynchronously by Meta. Returns handles; poll GET /v1/ads/catalogs/{catalogId}/batches/{handle} for the outcome and per-item errors. CREATE requests need name, url, imageUrl, price and currency.
|
|
13307
|
+
*
|
|
12906
13308
|
*/
|
|
12907
13309
|
export const batchAdCatalogProducts = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<BatchAdCatalogProductsData, ThrowOnError>) => {
|
|
12908
13310
|
return (options?.client ?? client).post<BatchAdCatalogProductsResponse, BatchAdCatalogProductsError, ThrowOnError>({
|
|
@@ -12913,6 +13315,8 @@ export const batchAdCatalogProducts = <ThrowOnError extends boolean = false>(opt
|
|
|
12913
13315
|
|
|
12914
13316
|
/**
|
|
12915
13317
|
* Get a bulk request's status
|
|
13318
|
+
* Shows whether a bulk catalog product request has finished, with any per-product errors.
|
|
13319
|
+
*
|
|
12916
13320
|
*/
|
|
12917
13321
|
export const getAdCatalogBatch = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdCatalogBatchData, ThrowOnError>) => {
|
|
12918
13322
|
return (options?.client ?? client).get<GetAdCatalogBatchResponse, GetAdCatalogBatchError, ThrowOnError>({
|
|
@@ -12923,6 +13327,8 @@ export const getAdCatalogBatch = <ThrowOnError extends boolean = false>(options:
|
|
|
12923
13327
|
|
|
12924
13328
|
/**
|
|
12925
13329
|
* Get a product
|
|
13330
|
+
* Shows one product from a Meta catalog.
|
|
13331
|
+
*
|
|
12926
13332
|
*/
|
|
12927
13333
|
export const getAdCatalogProduct = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdCatalogProductData, ThrowOnError>) => {
|
|
12928
13334
|
return (options?.client ?? client).get<GetAdCatalogProductResponse, GetAdCatalogProductError, ThrowOnError>({
|
|
@@ -12933,7 +13339,10 @@ export const getAdCatalogProduct = <ThrowOnError extends boolean = false>(option
|
|
|
12933
13339
|
|
|
12934
13340
|
/**
|
|
12935
13341
|
* Update a product
|
|
12936
|
-
*
|
|
13342
|
+
* Changes some fields of a catalog product, such as its price or image, leaving the rest as they are.
|
|
13343
|
+
*
|
|
13344
|
+
* `retailerId` cannot change.
|
|
13345
|
+
*
|
|
12937
13346
|
*/
|
|
12938
13347
|
export const updateAdCatalogProduct = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdCatalogProductData, ThrowOnError>) => {
|
|
12939
13348
|
return (options?.client ?? client).put<UpdateAdCatalogProductResponse, UpdateAdCatalogProductError, ThrowOnError>({
|
|
@@ -12944,6 +13353,8 @@ export const updateAdCatalogProduct = <ThrowOnError extends boolean = false>(opt
|
|
|
12944
13353
|
|
|
12945
13354
|
/**
|
|
12946
13355
|
* Delete a product
|
|
13356
|
+
* Removes one product from a Meta catalog.
|
|
13357
|
+
*
|
|
12947
13358
|
*/
|
|
12948
13359
|
export const deleteAdCatalogProduct = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdCatalogProductData, ThrowOnError>) => {
|
|
12949
13360
|
return (options?.client ?? client).delete<DeleteAdCatalogProductResponse, DeleteAdCatalogProductError, ThrowOnError>({
|
|
@@ -12954,6 +13365,8 @@ export const deleteAdCatalogProduct = <ThrowOnError extends boolean = false>(opt
|
|
|
12954
13365
|
|
|
12955
13366
|
/**
|
|
12956
13367
|
* List a catalog's product feeds
|
|
13368
|
+
* Lists the product feeds that keep a Meta catalog filled from your product files.
|
|
13369
|
+
*
|
|
12957
13370
|
*/
|
|
12958
13371
|
export const listAdCatalogFeeds = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdCatalogFeedsData, ThrowOnError>) => {
|
|
12959
13372
|
return (options?.client ?? client).get<ListAdCatalogFeedsResponse, ListAdCatalogFeedsError, ThrowOnError>({
|
|
@@ -12964,7 +13377,10 @@ export const listAdCatalogFeeds = <ThrowOnError extends boolean = false>(options
|
|
|
12964
13377
|
|
|
12965
13378
|
/**
|
|
12966
13379
|
* Create a product feed
|
|
13380
|
+
* Creates a product feed that imports a CSV, TSV or XML product file into a Meta catalog, on a schedule or on demand.
|
|
13381
|
+
*
|
|
12967
13382
|
* A feed pulls a CSV/TSV/XML product file from a URL. With `schedule` Meta fetches it on a cadence; without it, trigger fetches with POST /v1/ads/catalogs/{catalogId}/feeds/{feedId}/uploads.
|
|
13383
|
+
*
|
|
12968
13384
|
*/
|
|
12969
13385
|
export const createAdCatalogFeed = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdCatalogFeedData, ThrowOnError>) => {
|
|
12970
13386
|
return (options?.client ?? client).post<CreateAdCatalogFeedResponse, CreateAdCatalogFeedError, ThrowOnError>({
|
|
@@ -12975,6 +13391,8 @@ export const createAdCatalogFeed = <ThrowOnError extends boolean = false>(option
|
|
|
12975
13391
|
|
|
12976
13392
|
/**
|
|
12977
13393
|
* List a feed's uploads
|
|
13394
|
+
* Lists a product feed's past file imports so you can check how each one went.
|
|
13395
|
+
*
|
|
12978
13396
|
*/
|
|
12979
13397
|
export const listAdCatalogFeedUploads = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdCatalogFeedUploadsData, ThrowOnError>) => {
|
|
12980
13398
|
return (options?.client ?? client).get<ListAdCatalogFeedUploadsResponse, ListAdCatalogFeedUploadsError, ThrowOnError>({
|
|
@@ -12985,7 +13403,10 @@ export const listAdCatalogFeedUploads = <ThrowOnError extends boolean = false>(o
|
|
|
12985
13403
|
|
|
12986
13404
|
/**
|
|
12987
13405
|
* Fetch a feed file now
|
|
13406
|
+
* Asks Meta to import a product file into a feed right away instead of waiting for its schedule.
|
|
13407
|
+
*
|
|
12988
13408
|
* Asks Meta to fetch the product file at `url` into the feed. Processing is asynchronous: read the outcome with GET uploads.
|
|
13409
|
+
*
|
|
12989
13410
|
*/
|
|
12990
13411
|
export const createAdCatalogFeedUpload = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdCatalogFeedUploadData, ThrowOnError>) => {
|
|
12991
13412
|
return (options?.client ?? client).post<CreateAdCatalogFeedUploadResponse, CreateAdCatalogFeedUploadError, ThrowOnError>({
|
|
@@ -12996,7 +13417,10 @@ export const createAdCatalogFeedUpload = <ThrowOnError extends boolean = false>(
|
|
|
12996
13417
|
|
|
12997
13418
|
/**
|
|
12998
13419
|
* List a catalog's product sets
|
|
12999
|
-
* Lists a Meta
|
|
13420
|
+
* Lists a Meta catalog's product sets, the groups of products a catalog ad promotes.
|
|
13421
|
+
*
|
|
13422
|
+
* Pass the chosen set id, not the parent catalog id, as `promotedObject.productSetId` on POST /v1/ads/create with `goal: catalog_sales`.
|
|
13423
|
+
*
|
|
13000
13424
|
*/
|
|
13001
13425
|
export const listAdCatalogProductSets = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdCatalogProductSetsData, ThrowOnError>) => {
|
|
13002
13426
|
return (options?.client ?? client).get<ListAdCatalogProductSetsResponse, ListAdCatalogProductSetsError, ThrowOnError>({
|
|
@@ -13007,7 +13431,10 @@ export const listAdCatalogProductSets = <ThrowOnError extends boolean = false>(o
|
|
|
13007
13431
|
|
|
13008
13432
|
/**
|
|
13009
13433
|
* Create a product set
|
|
13434
|
+
* Creates a product set, a filtered group of catalog products (by SKU, brand and so on) to promote in catalog ads.
|
|
13435
|
+
*
|
|
13010
13436
|
* A product set is a filter over the catalog, e.g. `{"retailer_id": {"is_any": ["sku-1", "sku-2"]}}` or `{"brand": {"i_contains": "acme"}}` (Meta's product set filter syntax).
|
|
13437
|
+
*
|
|
13011
13438
|
*/
|
|
13012
13439
|
export const createAdCatalogProductSet = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateAdCatalogProductSetData, ThrowOnError>) => {
|
|
13013
13440
|
return (options?.client ?? client).post<CreateAdCatalogProductSetResponse, CreateAdCatalogProductSetError, ThrowOnError>({
|
|
@@ -13018,6 +13445,8 @@ export const createAdCatalogProductSet = <ThrowOnError extends boolean = false>(
|
|
|
13018
13445
|
|
|
13019
13446
|
/**
|
|
13020
13447
|
* Update a product set
|
|
13448
|
+
* Changes a product set's name or the filter that decides which products it includes.
|
|
13449
|
+
*
|
|
13021
13450
|
*/
|
|
13022
13451
|
export const updateAdCatalogProductSet = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateAdCatalogProductSetData, ThrowOnError>) => {
|
|
13023
13452
|
return (options?.client ?? client).put<UpdateAdCatalogProductSetResponse, UpdateAdCatalogProductSetError, ThrowOnError>({
|
|
@@ -13028,6 +13457,8 @@ export const updateAdCatalogProductSet = <ThrowOnError extends boolean = false>(
|
|
|
13028
13457
|
|
|
13029
13458
|
/**
|
|
13030
13459
|
* Delete a product set
|
|
13460
|
+
* Deletes a product set from a Meta catalog.
|
|
13461
|
+
*
|
|
13031
13462
|
*/
|
|
13032
13463
|
export const deleteAdCatalogProductSet = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DeleteAdCatalogProductSetData, ThrowOnError>) => {
|
|
13033
13464
|
return (options?.client ?? client).delete<DeleteAdCatalogProductSetResponse, DeleteAdCatalogProductSetError, ThrowOnError>({
|
|
@@ -13038,7 +13469,10 @@ export const deleteAdCatalogProductSet = <ThrowOnError extends boolean = false>(
|
|
|
13038
13469
|
|
|
13039
13470
|
/**
|
|
13040
13471
|
* List custom audiences
|
|
13041
|
-
*
|
|
13472
|
+
* Lists the custom audiences in an ad account so you can reuse them for targeting.
|
|
13473
|
+
*
|
|
13474
|
+
* Supports Meta, Google, TikTok, Pinterest, LinkedIn, and X.
|
|
13475
|
+
*
|
|
13042
13476
|
*/
|
|
13043
13477
|
export const listAdAudiences = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListAdAudiencesData, ThrowOnError>) => {
|
|
13044
13478
|
return (options?.client ?? client).get<ListAdAudiencesResponse, ListAdAudiencesError, ThrowOnError>({
|
|
@@ -13049,7 +13483,9 @@ export const listAdAudiences = <ThrowOnError extends boolean = false>(options: O
|
|
|
13049
13483
|
|
|
13050
13484
|
/**
|
|
13051
13485
|
* Create custom audience
|
|
13052
|
-
*
|
|
13486
|
+
* Creates a custom audience from a customer list, website visitors, a lookalike, or people who engaged with your content.
|
|
13487
|
+
*
|
|
13488
|
+
* `customer_list` is supported on Meta, Google, X, LinkedIn, TikTok, and Pinterest.
|
|
13053
13489
|
* `website` (pixel/tag visitors) and `lookalike` are supported on Meta, TikTok, Pinterest and Google.
|
|
13054
13490
|
* `meta_engagement` is Meta-only, `tiktok_engagement` TikTok-only, `pinterest_engagement` Pinterest-only;
|
|
13055
13491
|
* `company_list`, `engagement` and `website_retargeting` are LinkedIn-only. A type sent to a platform
|
|
@@ -13097,7 +13533,10 @@ export const createAdAudience = <ThrowOnError extends boolean = false>(options:
|
|
|
13097
13533
|
|
|
13098
13534
|
/**
|
|
13099
13535
|
* Get audience details
|
|
13536
|
+
* Shows a custom audience's details, including its latest data from the ad platform when available.
|
|
13537
|
+
*
|
|
13100
13538
|
* Returns the local audience record and fresh data from Meta (if available).
|
|
13539
|
+
*
|
|
13101
13540
|
*/
|
|
13102
13541
|
export const getAdAudience = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetAdAudienceData, ThrowOnError>) => {
|
|
13103
13542
|
return (options?.client ?? client).get<GetAdAudienceResponse, GetAdAudienceError, ThrowOnError>({
|
|
@@ -13108,7 +13547,9 @@ export const getAdAudience = <ThrowOnError extends boolean = false>(options: Opt
|
|
|
13108
13547
|
|
|
13109
13548
|
/**
|
|
13110
13549
|
* Update an audience
|
|
13111
|
-
*
|
|
13550
|
+
* Renames or redescribes an audience, or replaces a saved targeting audience's rules; platform audience rules cannot change.
|
|
13551
|
+
*
|
|
13552
|
+
* `saved_targeting` audiences accept `name`, `description`, and `spec`
|
|
13112
13553
|
* (full replacement, no merge, Zernio-only, no platform call). Platform audiences
|
|
13113
13554
|
* (uploaded/website/lookalike) accept `name` and `description` only, updated on the
|
|
13114
13555
|
* platform first and then mirrored locally; their rules are immutable, so `spec` returns
|
|
@@ -13126,6 +13567,8 @@ export const updateAdAudience = <ThrowOnError extends boolean = false>(options:
|
|
|
13126
13567
|
|
|
13127
13568
|
/**
|
|
13128
13569
|
* Delete custom audience
|
|
13570
|
+
* Removes a custom audience from its ad platform (archiving it where the platform does not delete).
|
|
13571
|
+
*
|
|
13129
13572
|
* Removes the audience on its ad platform, then deletes the Zernio record. Meta, Google, TikTok,
|
|
13130
13573
|
* LinkedIn list and engagement segments, and X are deleted; Pinterest audiences and LinkedIn
|
|
13131
13574
|
* `website_retargeting` segments are archived, which is how those platforms remove them.
|
|
@@ -13145,7 +13588,9 @@ export const deleteAdAudience = <ThrowOnError extends boolean = false>(options:
|
|
|
13145
13588
|
|
|
13146
13589
|
/**
|
|
13147
13590
|
* Add users to audience
|
|
13148
|
-
*
|
|
13591
|
+
* Uploads customer emails (and phone numbers on Meta) to a customer list audience, hashed before they are sent.
|
|
13592
|
+
*
|
|
13593
|
+
* Data is SHA256-hashed server-side before sending to the platform.
|
|
13149
13594
|
* Email is used on every platform; phone is used on Meta only (other platforms ignore it). On TikTok and Pinterest,
|
|
13150
13595
|
* the first upload also provisions the audience (deferred create). LinkedIn uploads are full-replace. Max 10,000 users per request.
|
|
13151
13596
|
*
|
|
@@ -13193,6 +13638,8 @@ export const replaceAdAudienceCompanies = <ThrowOnError extends boolean = false>
|
|
|
13193
13638
|
|
|
13194
13639
|
/**
|
|
13195
13640
|
* Get Event Match Quality
|
|
13641
|
+
* Shows how well your server-side conversion events match users, with event match quality and coverage for Meta or Pinterest.
|
|
13642
|
+
*
|
|
13196
13643
|
* Reads Meta Event Match Quality (EMQ) and pixel↔CAPI event coverage for a
|
|
13197
13644
|
* pixel/dataset, live from Meta's Dataset Quality API. Web events only (a
|
|
13198
13645
|
* Meta limitation). Other platforms return 405, except Pinterest. Requires the Ads add-on.
|
|
@@ -13212,6 +13659,8 @@ export const getConversionsQuality = <ThrowOnError extends boolean = false>(opti
|
|
|
13212
13659
|
|
|
13213
13660
|
/**
|
|
13214
13661
|
* Send conversion events
|
|
13662
|
+
* Sends conversion events, such as purchases or leads, from your server to an ad platform so it can attribute and optimize ads.
|
|
13663
|
+
*
|
|
13215
13664
|
* Relay one or more conversion events to the target ad platform's native Conversions API.
|
|
13216
13665
|
* Platform is inferred from the provided `accountId`. Requires the Ads add-on.
|
|
13217
13666
|
*
|
|
@@ -13286,6 +13735,8 @@ export const sendConversions = <ThrowOnError extends boolean = false>(options: O
|
|
|
13286
13735
|
|
|
13287
13736
|
/**
|
|
13288
13737
|
* Adjust uploaded conversions
|
|
13738
|
+
* Retracts, restates the value of, or enhances conversions you already sent to Google Ads, for refunds or late customer data.
|
|
13739
|
+
*
|
|
13289
13740
|
* Adjust conversions that were previously uploaded via `POST /v1/ads/conversions`:
|
|
13290
13741
|
* retract them, restate their value, or enhance them with first-party data. Requires
|
|
13291
13742
|
* the Ads add-on.
|
|
@@ -13325,6 +13776,8 @@ export const adjustConversions = <ThrowOnError extends boolean = false>(options:
|
|
|
13325
13776
|
|
|
13326
13777
|
/**
|
|
13327
13778
|
* List conversion actions
|
|
13779
|
+
* Lists the conversion actions in a Google Ads account, with the website tag snippets to install where available.
|
|
13780
|
+
*
|
|
13328
13781
|
* Lists Google Ads conversion actions on the resolved customer, all types by
|
|
13329
13782
|
* default. Each action's `tagSnippets` (global site tag + event snippet) is
|
|
13330
13783
|
* included when Google has them for that action's type, e.g. `WEBPAGE`.
|
|
@@ -13349,6 +13802,8 @@ export const listConversionActions = <ThrowOnError extends boolean = false>(opti
|
|
|
13349
13802
|
|
|
13350
13803
|
/**
|
|
13351
13804
|
* Create website conversion action
|
|
13805
|
+
* Creates a Google Ads website conversion action and returns the tag snippets to install on your site.
|
|
13806
|
+
*
|
|
13352
13807
|
* Creates a `WEBPAGE` conversion action (category `DEFAULT`) and returns it with
|
|
13353
13808
|
* its tag snippets, read back after creation since Google never returns them on
|
|
13354
13809
|
* the create response itself. Invalidates the cached list `GET` on this resource
|
|
@@ -13365,6 +13820,8 @@ export const createConversionAction = <ThrowOnError extends boolean = false>(opt
|
|
|
13365
13820
|
|
|
13366
13821
|
/**
|
|
13367
13822
|
* List account conversion goals
|
|
13823
|
+
* Lists a Google Ads account's default conversion goals, which ones are used for bidding, and the conversion actions in each.
|
|
13824
|
+
*
|
|
13368
13825
|
* Google Ads account-default conversion goals (CustomerConversionGoal), one per
|
|
13369
13826
|
* category and origin, with `biddable` (whether the goal is used for bidding and
|
|
13370
13827
|
* reported in the Conversions column) and the conversion actions that belong to it,
|
|
@@ -13381,6 +13838,8 @@ export const listAdConversionGoals = <ThrowOnError extends boolean = false>(opti
|
|
|
13381
13838
|
|
|
13382
13839
|
/**
|
|
13383
13840
|
* Update account conversion goals
|
|
13841
|
+
* Turns bidding on or off for a Google Ads account's default conversion goals, which campaigns using account goals follow.
|
|
13842
|
+
*
|
|
13384
13843
|
* Sets `biddable` on one or more account-default goals, addressed by category and
|
|
13385
13844
|
* origin, in one mutate. Campaigns that use account-level goals
|
|
13386
13845
|
* (`goalConfigLevel: CUSTOMER`) follow the change. Returns the re-read goal list.
|
|
@@ -13394,6 +13853,8 @@ export const updateAdConversionGoals = <ThrowOnError extends boolean = false>(op
|
|
|
13394
13853
|
|
|
13395
13854
|
/**
|
|
13396
13855
|
* Update a conversion action's settings
|
|
13856
|
+
* Changes a Google Ads conversion action's settings, such as primary or secondary, counting, value and lookback windows, or removes or restores it.
|
|
13857
|
+
*
|
|
13397
13858
|
* Updates a Google Ads conversion action in one mutate, each field sent written on its own
|
|
13398
13859
|
* update mask leaf so omitted fields keep their value. Send at least one field.
|
|
13399
13860
|
*
|
|
@@ -13416,7 +13877,10 @@ export const updateConversionAction = <ThrowOnError extends boolean = false>(opt
|
|
|
13416
13877
|
|
|
13417
13878
|
/**
|
|
13418
13879
|
* List custom conversion goals
|
|
13880
|
+
* Lists the custom conversion goals in a Google Ads account, each a named set of conversion actions a campaign can bid on.
|
|
13881
|
+
*
|
|
13419
13882
|
* Google Ads custom conversion goals (a named set of conversion actions a campaign can bid on). Removed goals are excluded. Cached like the other Google reads.
|
|
13883
|
+
*
|
|
13420
13884
|
*/
|
|
13421
13885
|
export const listCustomConversionGoals = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListCustomConversionGoalsData, ThrowOnError>) => {
|
|
13422
13886
|
return (options?.client ?? client).get<ListCustomConversionGoalsResponse, ListCustomConversionGoalsError, ThrowOnError>({
|
|
@@ -13427,7 +13891,10 @@ export const listCustomConversionGoals = <ThrowOnError extends boolean = false>(
|
|
|
13427
13891
|
|
|
13428
13892
|
/**
|
|
13429
13893
|
* Create a custom conversion goal
|
|
13894
|
+
* Creates a Google Ads custom conversion goal from a set of conversion actions, so a campaign can bid on just those.
|
|
13895
|
+
*
|
|
13430
13896
|
* Creates a custom conversion goal from conversion action ids. Point a campaign at it with `PATCH /v1/ads/campaigns/{campaignId}/conversion-goals`.
|
|
13897
|
+
*
|
|
13431
13898
|
*/
|
|
13432
13899
|
export const createCustomConversionGoal = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateCustomConversionGoalData, ThrowOnError>) => {
|
|
13433
13900
|
return (options?.client ?? client).post<CreateCustomConversionGoalResponse, CreateCustomConversionGoalError, ThrowOnError>({
|
|
@@ -13438,7 +13905,10 @@ export const createCustomConversionGoal = <ThrowOnError extends boolean = false>
|
|
|
13438
13905
|
|
|
13439
13906
|
/**
|
|
13440
13907
|
* Update a custom conversion goal
|
|
13441
|
-
* Renames
|
|
13908
|
+
* Renames a Google Ads custom conversion goal or replaces the conversion actions in it.
|
|
13909
|
+
*
|
|
13910
|
+
* Returns the re-read goal.
|
|
13911
|
+
*
|
|
13442
13912
|
*/
|
|
13443
13913
|
export const updateCustomConversionGoal = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateCustomConversionGoalData, ThrowOnError>) => {
|
|
13444
13914
|
return (options?.client ?? client).patch<UpdateCustomConversionGoalResponse, UpdateCustomConversionGoalError, ThrowOnError>({
|
|
@@ -13449,7 +13919,10 @@ export const updateCustomConversionGoal = <ThrowOnError extends boolean = false>
|
|
|
13449
13919
|
|
|
13450
13920
|
/**
|
|
13451
13921
|
* Remove a custom conversion goal
|
|
13452
|
-
*
|
|
13922
|
+
* Deletes a Google Ads custom conversion goal; switch any campaigns using it to another goal first.
|
|
13923
|
+
*
|
|
13924
|
+
* Google refuses (400) while any campaign still uses it: switch those campaigns to another goal first.
|
|
13925
|
+
*
|
|
13453
13926
|
*/
|
|
13454
13927
|
export const removeCustomConversionGoal = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemoveCustomConversionGoalData, ThrowOnError>) => {
|
|
13455
13928
|
return (options?.client ?? client).delete<RemoveCustomConversionGoalResponse, RemoveCustomConversionGoalError, ThrowOnError>({
|
|
@@ -13460,6 +13933,8 @@ export const removeCustomConversionGoal = <ThrowOnError extends boolean = false>
|
|
|
13460
13933
|
|
|
13461
13934
|
/**
|
|
13462
13935
|
* Get campaign conversion goals
|
|
13936
|
+
* Shows which conversion goals a Google campaign bids on, and whether it follows the account defaults or uses its own or a custom goal.
|
|
13937
|
+
*
|
|
13463
13938
|
* A Google campaign's conversion goals (CampaignConversionGoal, `biddable` per category
|
|
13464
13939
|
* and origin) and its goal config (ConversionGoalCampaignConfig): `goalConfigLevel`
|
|
13465
13940
|
* CUSTOMER means the campaign follows the account-default goals, CAMPAIGN means it uses
|
|
@@ -13474,6 +13949,8 @@ export const getCampaignConversionGoals = <ThrowOnError extends boolean = false>
|
|
|
13474
13949
|
|
|
13475
13950
|
/**
|
|
13476
13951
|
* Update campaign conversion goals
|
|
13952
|
+
* Changes which conversions a Google campaign bids on, switching between account-default goals, its own goals or a custom goal.
|
|
13953
|
+
*
|
|
13477
13954
|
* Sets `biddable` on campaign goals, switches `goalConfigLevel`, and/or points the
|
|
13478
13955
|
* campaign at a custom conversion goal, in one mutate. `customConversionGoalId: null`
|
|
13479
13956
|
* clears it; Google refuses that (400) while the campaign stays at CAMPAIGN level with
|
|
@@ -13489,6 +13966,8 @@ export const updateCampaignConversionGoals = <ThrowOnError extends boolean = fal
|
|
|
13489
13966
|
|
|
13490
13967
|
/**
|
|
13491
13968
|
* List conversion destinations
|
|
13969
|
+
* Lists where an ad account can receive conversion events (pixels, conversion actions or rules), so you know where to send them.
|
|
13970
|
+
*
|
|
13492
13971
|
* Returns the list of pixels (Meta), conversion actions (Google),
|
|
13493
13972
|
* conversion rules (LinkedIn), pixels (OpenAI Ads) or ad accounts
|
|
13494
13973
|
* (Pinterest) accessible to the connected ads account. Use the returned `id` as `destinationId` when
|
|
@@ -13514,7 +13993,9 @@ export const listConversionDestinations = <ThrowOnError extends boolean = false>
|
|
|
13514
13993
|
|
|
13515
13994
|
/**
|
|
13516
13995
|
* Create a conversion destination
|
|
13517
|
-
*
|
|
13996
|
+
* Creates a new place to send conversion events: a Google Ads conversion action or a LinkedIn conversion rule.
|
|
13997
|
+
*
|
|
13998
|
+
* Supported for
|
|
13518
13999
|
* LinkedIn (conversion rule) and Google Ads (conversion action). Meta
|
|
13519
14000
|
* and OpenAI Ads pixels are created via their own tracking-tags flow
|
|
13520
14001
|
* instead (`POST /v1/accounts/{accountId}/tracking-tags`); this endpoint
|
|
@@ -13560,6 +14041,8 @@ export const createConversionDestination = <ThrowOnError extends boolean = false
|
|
|
13560
14041
|
|
|
13561
14042
|
/**
|
|
13562
14043
|
* Get a conversion destination
|
|
14044
|
+
* Shows one LinkedIn conversion rule with its full settings.
|
|
14045
|
+
*
|
|
13563
14046
|
* LinkedIn-only today. Returns the full destination record for one
|
|
13564
14047
|
* conversion rule. The `adAccountId` query parameter is required because
|
|
13565
14048
|
* LinkedIn rules are scoped to a sponsored ad account.
|
|
@@ -13574,6 +14057,8 @@ export const getConversionDestination = <ThrowOnError extends boolean = false>(o
|
|
|
13574
14057
|
|
|
13575
14058
|
/**
|
|
13576
14059
|
* Update a conversion destination
|
|
14060
|
+
* Changes a LinkedIn conversion rule's name, value, attribution windows, or turns it on or off.
|
|
14061
|
+
*
|
|
13577
14062
|
* Partial-update a conversion rule. LinkedIn-only today. Whitelisted
|
|
13578
14063
|
* fields: `name`, `enabled`, attribution windows, `valueType`, `value`,
|
|
13579
14064
|
* `attributionType`. The rule's `type` and parent ad account are
|
|
@@ -13590,6 +14075,8 @@ export const updateConversionDestination = <ThrowOnError extends boolean = false
|
|
|
13590
14075
|
|
|
13591
14076
|
/**
|
|
13592
14077
|
* Delete a conversion destination
|
|
14078
|
+
* Disables a LinkedIn conversion rule, which is how LinkedIn deletes it; the rule can still be read afterwards.
|
|
14079
|
+
*
|
|
13593
14080
|
* LinkedIn-only today. LinkedIn does not expose hard-delete on conversion
|
|
13594
14081
|
* rules; what their UI calls "delete" is the same `enabled: false` flip
|
|
13595
14082
|
* we apply here. The rule remains fetchable via GET with
|
|
@@ -13609,6 +14096,8 @@ export const deleteConversionDestination = <ThrowOnError extends boolean = false
|
|
|
13609
14096
|
|
|
13610
14097
|
/**
|
|
13611
14098
|
* List associated campaigns
|
|
14099
|
+
* Lists the LinkedIn campaigns that track a conversion rule, so you can spot newer campaigns that still need linking.
|
|
14100
|
+
*
|
|
13612
14101
|
* LinkedIn-only today. Returns the campaigns currently associated with
|
|
13613
14102
|
* this conversion rule. Auto-association on rule creation
|
|
13614
14103
|
* runs once at create time; campaigns created after the rule still need
|
|
@@ -13624,7 +14113,9 @@ export const listConversionAssociations = <ThrowOnError extends boolean = false>
|
|
|
13624
14113
|
|
|
13625
14114
|
/**
|
|
13626
14115
|
* Associate campaigns
|
|
13627
|
-
*
|
|
14116
|
+
* Links campaigns to a LinkedIn conversion rule so they track it, reporting which links succeeded or failed.
|
|
14117
|
+
*
|
|
14118
|
+
* Returns a
|
|
13628
14119
|
* per-campaign success/failure result so callers can retry only the
|
|
13629
14120
|
* rows that failed (e.g. wrong campaign type for the rule's objective).
|
|
13630
14121
|
*
|
|
@@ -13638,7 +14129,8 @@ export const addConversionAssociations = <ThrowOnError extends boolean = false>(
|
|
|
13638
14129
|
|
|
13639
14130
|
/**
|
|
13640
14131
|
* Remove associated campaigns
|
|
13641
|
-
*
|
|
14132
|
+
* Unlinks campaigns from a LinkedIn conversion rule so they stop tracking it.
|
|
14133
|
+
*
|
|
13642
14134
|
* Pass `adAccountId` and `campaignIds` as query parameters
|
|
13643
14135
|
* (`campaignIds` is comma-separated). The route also accepts a JSON
|
|
13644
14136
|
* body with the same fields for clients that prefer DELETE-with-body,
|
|
@@ -13656,6 +14148,8 @@ export const removeConversionAssociations = <ThrowOnError extends boolean = fals
|
|
|
13656
14148
|
|
|
13657
14149
|
/**
|
|
13658
14150
|
* Get attribution metrics
|
|
14151
|
+
* Shows a LinkedIn conversion rule's attributed conversions, value, leads and cost over time.
|
|
14152
|
+
*
|
|
13659
14153
|
* LinkedIn-only today. Returns conversion-attribution metrics
|
|
13660
14154
|
* (`externalWebsiteConversions`, `externalWebsitePostClickConversions`,
|
|
13661
14155
|
* `externalWebsitePostViewConversions`, `conversionValueInLocalCurrency`,
|
|
@@ -13742,6 +14236,8 @@ export const sendWhatsAppConversion = <ThrowOnError extends boolean = false>(opt
|
|
|
13742
14236
|
|
|
13743
14237
|
/**
|
|
13744
14238
|
* Create messaging ad
|
|
14239
|
+
* Creates a Meta ad that opens a chat with you on WhatsApp, Messenger or Instagram Direct when someone taps it.
|
|
14240
|
+
*
|
|
13745
14241
|
* Creates a click-to-message ad; `destination` selects where the tapped ad opens a
|
|
13746
14242
|
* conversation: WhatsApp, the Page's Messenger inbox or the linked Instagram account's Direct inbox.
|
|
13747
14243
|
* `destinations` puts two or three of them on one ad set and lets Meta pick the app per viewer.
|
|
@@ -13769,6 +14265,8 @@ export const createMessagingAd = <ThrowOnError extends boolean = false>(options:
|
|
|
13769
14265
|
|
|
13770
14266
|
/**
|
|
13771
14267
|
* Create Click-to-Call ad
|
|
14268
|
+
* Creates a Meta ad with a Call Now button that dials your phone number, optimized for quality calls.
|
|
14269
|
+
*
|
|
13772
14270
|
* Same shape and flow as POST /v1/ads/ctwa, but the CTA is CALL_NOW dialing `phoneNumber`
|
|
13773
14271
|
* via a tel: link. The ad set is destination_type PHONE_CALL optimizing QUALITY_CALL
|
|
13774
14272
|
* and the campaign objective defaults to OUTCOME_LEADS.
|
|
@@ -13817,7 +14315,10 @@ export const createCtwaAd = <ThrowOnError extends boolean = false>(options: Opti
|
|
|
13817
14315
|
|
|
13818
14316
|
/**
|
|
13819
14317
|
* List custom conversions
|
|
14318
|
+
* Lists a Meta ad account's custom conversions, including archived ones.
|
|
14319
|
+
*
|
|
13820
14320
|
* The ad account's Meta custom conversions, including archived ones (`isArchived`).
|
|
14321
|
+
*
|
|
13821
14322
|
*/
|
|
13822
14323
|
export const listCustomConversions = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListCustomConversionsData, ThrowOnError>) => {
|
|
13823
14324
|
return (options?.client ?? client).get<ListCustomConversionsResponse, ListCustomConversionsError, ThrowOnError>({
|
|
@@ -13828,6 +14329,8 @@ export const listCustomConversions = <ThrowOnError extends boolean = false>(opti
|
|
|
13828
14329
|
|
|
13829
14330
|
/**
|
|
13830
14331
|
* Create custom conversion
|
|
14332
|
+
* Creates a Meta custom conversion for ads to optimise toward, reusing an existing one with the same name and pixel.
|
|
14333
|
+
*
|
|
13831
14334
|
* Provision the Meta custom conversion an ads flow optimises toward, and hand back the
|
|
13832
14335
|
* `customConversionId` for `promotedObject.customConversionId` on POST /v1/ads/create.
|
|
13833
14336
|
* Removes the manual "create it in Ads Manager first" step.
|
|
@@ -14456,6 +14959,8 @@ export const startBusinessAgentEvalRun = <ThrowOnError extends boolean = false>(
|
|
|
14456
14959
|
|
|
14457
14960
|
/**
|
|
14458
14961
|
* List tracking tags
|
|
14962
|
+
* Lists the pixels and other measurement tags an ads account can see, so you can inspect or install them.
|
|
14963
|
+
*
|
|
14459
14964
|
* Returns the tracking tags (Meta Pixels, or OpenAI Ads pixels) the
|
|
14460
14965
|
* connected ads account can see. Pass `?adAccountId=act_...` (Meta only)
|
|
14461
14966
|
* to scope the list to a single ad account; omit it to list every pixel
|
|
@@ -14500,6 +15005,8 @@ export const listTrackingTags = <ThrowOnError extends boolean = false>(options:
|
|
|
14500
15005
|
|
|
14501
15006
|
/**
|
|
14502
15007
|
* Create a tracking tag
|
|
15008
|
+
* Creates a measurement pixel on an ad account and returns the snippet to install on your site.
|
|
15009
|
+
*
|
|
14503
15010
|
* Meta: creates a Meta Pixel on the given ad account (`POST /act_{id}/adspixels`,
|
|
14504
15011
|
* where `name` is the only input). Returns the created tag including its
|
|
14505
15012
|
* install `code`. The pixel is owned by the Business Manager that owns the
|
|
@@ -14570,6 +15077,8 @@ export const createTrackingTag = <ThrowOnError extends boolean = false>(options:
|
|
|
14570
15077
|
|
|
14571
15078
|
/**
|
|
14572
15079
|
* Get a tracking tag
|
|
15080
|
+
* Shows one pixel or measurement tag in full, including its install snippet, when it last fired and its conversion events.
|
|
15081
|
+
*
|
|
14573
15082
|
* Returns the full tag record including the base-code `code` snippet,
|
|
14574
15083
|
* `lastFiredTime`, `ownerBusinessId`, `isUnavailable`, etc. Meta only
|
|
14575
15084
|
* (platform `metaads`); other platforms return 501.
|
|
@@ -14612,6 +15121,8 @@ export const getTrackingTag = <ThrowOnError extends boolean = false>(options: Op
|
|
|
14612
15121
|
|
|
14613
15122
|
/**
|
|
14614
15123
|
* Update a tracking tag
|
|
15124
|
+
* Changes a pixel's settings, such as its name or automatic matching, on platforms that allow edits.
|
|
15125
|
+
*
|
|
14615
15126
|
* Partial-update a pixel. Whitelisted fields: `name` (rename),
|
|
14616
15127
|
* `enableAutomaticMatching`, `automaticMatchingFields`,
|
|
14617
15128
|
* `firstPartyCookieStatus`, `dataUseSetting`. At least one is required.
|
|
@@ -14667,6 +15178,8 @@ export const updateTrackingTag = <ThrowOnError extends boolean = false>(options:
|
|
|
14667
15178
|
|
|
14668
15179
|
/**
|
|
14669
15180
|
* List accounts it is shared with
|
|
15181
|
+
* Lists the other ad accounts a pixel is shared with.
|
|
15182
|
+
*
|
|
14670
15183
|
* Meta (`metaads`) and LinkedIn (`linkedinads`); other platforms return 501.
|
|
14671
15184
|
*
|
|
14672
15185
|
* LinkedIn (`linkedinads`): the ad accounts this connection can see that hold access to the
|
|
@@ -14686,8 +15199,9 @@ export const listTrackingTagSharedAccounts = <ThrowOnError extends boolean = fal
|
|
|
14686
15199
|
|
|
14687
15200
|
/**
|
|
14688
15201
|
* Share with an ad account
|
|
14689
|
-
* Shares
|
|
14690
|
-
*
|
|
15202
|
+
* Shares a pixel with another ad account so its campaigns and audiences can use it.
|
|
15203
|
+
*
|
|
15204
|
+
* Requires that you administer both the pixel's owning
|
|
14691
15205
|
* Business Manager and the target ad account; a pixel on a personal
|
|
14692
15206
|
* (non-BM) ad account can't be shared (Meta will reject the call). Meta
|
|
14693
15207
|
* and LinkedIn; other platforms return 501.
|
|
@@ -14712,6 +15226,8 @@ export const addTrackingTagSharedAccount = <ThrowOnError extends boolean = false
|
|
|
14712
15226
|
|
|
14713
15227
|
/**
|
|
14714
15228
|
* Stop sharing with an account
|
|
15229
|
+
* Stops sharing a pixel with an ad account.
|
|
15230
|
+
*
|
|
14715
15231
|
* `adAccountId` may be passed as a query parameter (recommended) or as a
|
|
14716
15232
|
* JSON body field for clients that can send DELETE bodies. Meta and
|
|
14717
15233
|
* LinkedIn; other platforms return 501.
|
|
@@ -14732,6 +15248,8 @@ export const removeTrackingTagSharedAccount = <ThrowOnError extends boolean = fa
|
|
|
14732
15248
|
|
|
14733
15249
|
/**
|
|
14734
15250
|
* Install on a Shopify store or WordPress site
|
|
15251
|
+
* Installs a pixel on a connected Shopify store or WordPress site, so store visits and purchases are reported without editing the theme.
|
|
15252
|
+
*
|
|
14735
15253
|
* Puts the Meta pixel on a connected Shopify store's storefront and checkout through
|
|
14736
15254
|
* Zernio's Shopify web pixel (a Shopify app pixel, no theme edits). The store then sends
|
|
14737
15255
|
* PageView, ViewContent, AddToCart, Search, InitiateCheckout, AddPaymentInfo and Purchase
|
|
@@ -14820,6 +15338,8 @@ export const installTrackingTagOnStore = <ThrowOnError extends boolean = false>(
|
|
|
14820
15338
|
|
|
14821
15339
|
/**
|
|
14822
15340
|
* Get store install status
|
|
15341
|
+
* Shows whether a tracking tag is live on your Shopify store or WordPress site, and whether a WordPress install would be blocked.
|
|
15342
|
+
*
|
|
14823
15343
|
* Whether this tag is the one the Shopify store fires for its platform. `installedTagId`
|
|
14824
15344
|
* names the tag of that platform the store currently fires, which can be a different tag,
|
|
14825
15345
|
* and `tags` lists every Zernio tag on the store (all platforms).
|
|
@@ -14841,7 +15361,9 @@ export const getTrackingTagStoreInstall = <ThrowOnError extends boolean = false>
|
|
|
14841
15361
|
|
|
14842
15362
|
/**
|
|
14843
15363
|
* Remove from a Shopify store or WordPress site
|
|
14844
|
-
* Removes
|
|
15364
|
+
* Removes a tracking tag from your Shopify store or WordPress site, leaving other platforms' tags and hand-added pixel code in place.
|
|
15365
|
+
*
|
|
15366
|
+
* Idempotent: nothing installed returns 200 with
|
|
14845
15367
|
* `installed: false`. If the store fires a different tag of the same platform, nothing is
|
|
14846
15368
|
* removed and the call answers 409 `invalid_resource_state`. Shopify: other platforms'
|
|
14847
15369
|
* tags stay; the web pixel itself is deleted once no tag remains.
|
|
@@ -14859,6 +15381,8 @@ export const removeTrackingTagFromStore = <ThrowOnError extends boolean = false>
|
|
|
14859
15381
|
|
|
14860
15382
|
/**
|
|
14861
15383
|
* List conversion events
|
|
15384
|
+
* Lists the conversion events tied to a tracking tag, such as Google conversion actions or Meta custom conversions.
|
|
15385
|
+
*
|
|
14862
15386
|
* The tag's conversion events, on platforms where each conversion is its own object:
|
|
14863
15387
|
* Google conversion actions, LinkedIn conversion rules, X web event tags, OpenAI event
|
|
14864
15388
|
* settings, TikTok pixel events, Meta custom conversions, Pinterest advertiser defined
|
|
@@ -14911,7 +15435,9 @@ export const listTrackingTagEvents = <ThrowOnError extends boolean = false>(opti
|
|
|
14911
15435
|
|
|
14912
15436
|
/**
|
|
14913
15437
|
* Create a conversion event
|
|
14914
|
-
* Creates a conversion event
|
|
15438
|
+
* Creates a conversion event on a tracking tag, such as a purchase or lead, so ads can measure and optimise toward it.
|
|
15439
|
+
*
|
|
15440
|
+
* Pass the platform's own event type in `type`
|
|
14915
15441
|
* (e.g. Google `PURCHASE`, LinkedIn `ADD_TO_CART`, X `CHECKOUT_INITIATED`) or a neutral
|
|
14916
15442
|
* `siteEvent` the platform maps to its closest type. Each platform stores a subset of the
|
|
14917
15443
|
* optional fields; sending one it does not store answers 400 naming the supported fields.
|
|
@@ -14991,6 +15517,8 @@ export const createTrackingTagEvent = <ThrowOnError extends boolean = false>(opt
|
|
|
14991
15517
|
|
|
14992
15518
|
/**
|
|
14993
15519
|
* Update a conversion event
|
|
15520
|
+
* Changes a conversion event's settings, such as its name or default value, where the platform allows edits.
|
|
15521
|
+
*
|
|
14994
15522
|
* Partial update; at least one field. A field the platform does not store answers 400.
|
|
14995
15523
|
*
|
|
14996
15524
|
* OpenAI Ads answers 501: OpenAI documents only list and create for event settings, and
|
|
@@ -15028,7 +15556,9 @@ export const updateTrackingTagEvent = <ThrowOnError extends boolean = false>(opt
|
|
|
15028
15556
|
|
|
15029
15557
|
/**
|
|
15030
15558
|
* Delete a conversion event
|
|
15031
|
-
* Removes
|
|
15559
|
+
* Removes a conversion event from a tracking tag, or archives or disables it on platforms that have no hard delete.
|
|
15560
|
+
*
|
|
15561
|
+
* Platforms without a hard delete archive or disable it
|
|
15032
15562
|
* instead; `state` in the response says which (`deleted`, `archived`, `disabled`).
|
|
15033
15563
|
*
|
|
15034
15564
|
* OpenAI Ads answers 501: there is no delete or archive route for event settings
|
|
@@ -15066,7 +15596,9 @@ export const deleteTrackingTagEvent = <ThrowOnError extends boolean = false>(opt
|
|
|
15066
15596
|
|
|
15067
15597
|
/**
|
|
15068
15598
|
* List tag users
|
|
15069
|
-
*
|
|
15599
|
+
* Lists the people and system users in the owning Meta business who have access to a pixel.
|
|
15600
|
+
*
|
|
15601
|
+
* Platforms without
|
|
15070
15602
|
* tag user assignment answer 501.
|
|
15071
15603
|
*
|
|
15072
15604
|
* Meta: the pixel's assigned users in its owning Business Manager. A pixel on a personal ad
|
|
@@ -15084,7 +15616,9 @@ export const listTrackingTagUsers = <ThrowOnError extends boolean = false>(optio
|
|
|
15084
15616
|
|
|
15085
15617
|
/**
|
|
15086
15618
|
* Assign a user to a tag
|
|
15087
|
-
* Gives a
|
|
15619
|
+
* Gives a person in the owning Meta business access to a pixel, or replaces the tasks they already have on it.
|
|
15620
|
+
*
|
|
15621
|
+
* Assigning an already assigned user
|
|
15088
15622
|
* replaces their task set.
|
|
15089
15623
|
*
|
|
15090
15624
|
* Meta: `tasks` are `AA_ANALYZE`, `ADVERTISE`, `ANALYZE`, `EDIT`, `UPLOAD`; `userId` is the
|
|
@@ -15117,7 +15651,9 @@ export const removeTrackingTagUser = <ThrowOnError extends boolean = false>(opti
|
|
|
15117
15651
|
|
|
15118
15652
|
/**
|
|
15119
15653
|
* List partner businesses of a tag
|
|
15120
|
-
*
|
|
15654
|
+
* Lists the partner businesses a Meta pixel is shared with (read-only, sharing with new partners is not supported).
|
|
15655
|
+
*
|
|
15656
|
+
* Read-only. Platforms without partner sharing
|
|
15121
15657
|
* answer 501.
|
|
15122
15658
|
*
|
|
15123
15659
|
* Meta: the pixel's shared agencies. Sharing a pixel with a new partner is not available:
|
|
@@ -15134,7 +15670,9 @@ export const listTrackingTagPartners = <ThrowOnError extends boolean = false>(op
|
|
|
15134
15670
|
|
|
15135
15671
|
/**
|
|
15136
15672
|
* Get tag diagnostics
|
|
15137
|
-
*
|
|
15673
|
+
* Shows Meta's health checks for a pixel, such as events missing parameters or product ids that do not match your catalogs.
|
|
15674
|
+
*
|
|
15675
|
+
* Platforms without tag diagnostics answer 501.
|
|
15138
15676
|
*
|
|
15139
15677
|
* Meta: the pixel's checks from Events Manager (`da_checks`), e.g. whether events miss
|
|
15140
15678
|
* parameters or their content ids do not match the pixel's catalogs.
|
|
@@ -15149,8 +15687,9 @@ export const getTrackingTagDiagnostics = <ThrowOnError extends boolean = false>(
|
|
|
15149
15687
|
|
|
15150
15688
|
/**
|
|
15151
15689
|
* Get aggregated event stats
|
|
15152
|
-
*
|
|
15153
|
-
*
|
|
15690
|
+
* Shows event counts or health for a tracking tag so you can confirm it is firing, where the platform reports them.
|
|
15691
|
+
*
|
|
15692
|
+
* Meta: aggregated counts (`GET /{pixel_id}/stats`), rows passed
|
|
15154
15693
|
* through as-is; their shape depends on the `aggregation` requested.
|
|
15155
15694
|
* Platforms without a stats API answer 501.
|
|
15156
15695
|
*
|
|
@@ -16422,7 +16961,10 @@ export const listTikTokAdPixels = <ThrowOnError extends boolean = false>(options
|
|
|
16422
16961
|
|
|
16423
16962
|
/**
|
|
16424
16963
|
* List partnership ad content
|
|
16425
|
-
*
|
|
16964
|
+
* Lists a creator's Instagram posts you can run as Partnership Ads, looked up by creator or post link (private beta).
|
|
16965
|
+
*
|
|
16966
|
+
* Lists creator Instagram posts available to the advertiser for Partnership Ads. Supply creatorUsername or postUrl. Requires instagram_branded_content_ads_brand permission and an advertiser Instagram Business Account.
|
|
16967
|
+
*
|
|
16426
16968
|
*/
|
|
16427
16969
|
export const listPartnershipAdContent = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListPartnershipAdContentData, ThrowOnError>) => {
|
|
16428
16970
|
return (options?.client ?? client).get<ListPartnershipAdContentResponse, ListPartnershipAdContentError, ThrowOnError>({
|
|
@@ -16433,7 +16975,10 @@ export const listPartnershipAdContent = <ThrowOnError extends boolean = false>(o
|
|
|
16433
16975
|
|
|
16434
16976
|
/**
|
|
16435
16977
|
* List partnership permissions
|
|
16436
|
-
*
|
|
16978
|
+
* Lists the creators who have granted, or have pending, permission for your Instagram account to run Partnership Ads with them (private beta).
|
|
16979
|
+
*
|
|
16980
|
+
* Lists granted or pending creator permissions for the advertiser Instagram Business Account. Requires instagram_branded_content_ads_brand permission.
|
|
16981
|
+
*
|
|
16437
16982
|
*/
|
|
16438
16983
|
export const listPartnershipAdPermissions = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListPartnershipAdPermissionsData, ThrowOnError>) => {
|
|
16439
16984
|
return (options?.client ?? client).get<ListPartnershipAdPermissionsResponse, ListPartnershipAdPermissionsError, ThrowOnError>({
|
|
@@ -16444,7 +16989,10 @@ export const listPartnershipAdPermissions = <ThrowOnError extends boolean = fals
|
|
|
16444
16989
|
|
|
16445
16990
|
/**
|
|
16446
16991
|
* Set partnership permission
|
|
16447
|
-
*
|
|
16992
|
+
* Asks a creator for permission to run Partnership Ads with their content, or revokes it (private beta).
|
|
16993
|
+
*
|
|
16994
|
+
* Requests permission from a creator or revokes it when revoke is true. Requests require the creator to approve in Instagram. Requires instagram_branded_content_ads_brand permission.
|
|
16995
|
+
*
|
|
16448
16996
|
*/
|
|
16449
16997
|
export const setPartnershipAdPermission = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<SetPartnershipAdPermissionData, ThrowOnError>) => {
|
|
16450
16998
|
return (options?.client ?? client).post<SetPartnershipAdPermissionResponse, SetPartnershipAdPermissionError, ThrowOnError>({
|