@zinn-digital/sdk 0.1.1411 → 0.1.1413

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.
@@ -18150,6 +18150,50 @@ export interface paths {
18150
18150
  patch?: never;
18151
18151
  trace?: never;
18152
18152
  };
18153
+ "/v1/ads/connections/{connection_id}/imported": {
18154
+ parameters: {
18155
+ query?: never;
18156
+ header?: never;
18157
+ path: {
18158
+ connection_id: string;
18159
+ };
18160
+ cookie?: never;
18161
+ };
18162
+ /**
18163
+ * The connected Google Ads account's whole structure as last read (za-262).
18164
+ * @description Gated on `ads.view`. Read on Temporal when the account is connected, on Refresh and weekly by the daily audit — never Google in the request. `state` is `notRead` until the first read, `ok` with `import`, or `failed` with `error` (a failed read never shows old figures as current). `import` carries the account's campaigns (status, channel, daily budget in micros, shared budget, bid strategy and its target, Google's bidding-strategy status, ad groups, keywords by match type, ads, negatives, location targets), its conversion actions and totals. Read only: nothing is written to the account. A connection on another network is a `422` `refusal.adsconnect.platformNotSupported`. `history` (za-263) is the account's OWN history read back month by month to the retention edge (400 days) after the first read — `null` until it starts; its figures are the ad-group totals now stored.
18165
+ */
18166
+ get: operations["getAdsImportedAccount"];
18167
+ put?: never;
18168
+ post?: never;
18169
+ delete?: never;
18170
+ options?: never;
18171
+ head?: never;
18172
+ patch?: never;
18173
+ trace?: never;
18174
+ };
18175
+ "/v1/ads/connections/{connection_id}/imported/refresh": {
18176
+ parameters: {
18177
+ query?: never;
18178
+ header?: never;
18179
+ path: {
18180
+ connection_id: string;
18181
+ };
18182
+ cookie?: never;
18183
+ };
18184
+ get?: never;
18185
+ put?: never;
18186
+ /**
18187
+ * Read the connected Google Ads account's structure again now (za-262).
18188
+ * @description Gated on `ads.manage`. Starts one read on Temporal (one per connection per minute) and answers 202; 503 when the workflow could not be started. A disconnected connection is a `422` `refusal.adsconnect.disconnected`.
18189
+ */
18190
+ post: operations["refreshAdsImportedAccount"];
18191
+ delete?: never;
18192
+ options?: never;
18193
+ head?: never;
18194
+ patch?: never;
18195
+ trace?: never;
18196
+ };
18153
18197
  "/v1/ads/connections/{connection_id}/insights": {
18154
18198
  parameters: {
18155
18199
  query?: never;
@@ -63208,7 +63252,7 @@ export interface components {
63208
63252
  headlines?: string[];
63209
63253
  keywords?: string[];
63210
63254
  language: string;
63211
- /** @description Why it waits - noTranslation, tooLong, gateRefused. */
63255
+ /** @description Why it waits - noTranslation, tooLong, gateRefused, noStartBid. */
63212
63256
  reason?: string;
63213
63257
  source_ad_id: string;
63214
63258
  /** @enum {string} */
@@ -63802,6 +63846,89 @@ export interface components {
63802
63846
  AdsHistoryThresholdsInput: components["schemas"]["AdsHistoryThresholds"] & {
63803
63847
  reset?: boolean;
63804
63848
  };
63849
+ /** @description za-262: a connected Google Ads account's structure as read (read only). Money is integer micros of `currency`, never a float; a shared budget is counted once in `enabled_daily_budget_micros`. */
63850
+ AdsImportedAccount: {
63851
+ account_name: string;
63852
+ campaigns: {
63853
+ ad_group_negatives: number;
63854
+ ad_groups: number;
63855
+ ads: number;
63856
+ ads_enabled: number;
63857
+ bid_strategy: string;
63858
+ bid_strategy_status: string;
63859
+ /** @description The budget's resource name (a shared budget is counted once by it). */
63860
+ budget_id: string;
63861
+ budget_shared: boolean;
63862
+ budget_shared_by: number;
63863
+ campaign_negatives: number;
63864
+ channel: string;
63865
+ /** Format: int64 */
63866
+ daily_budget_micros: number;
63867
+ id: string;
63868
+ keywords: number;
63869
+ keywords_by_match: {
63870
+ [key: string]: number;
63871
+ };
63872
+ learning: boolean;
63873
+ location_exclusions: number;
63874
+ location_targets: number;
63875
+ name: string;
63876
+ portfolio: boolean;
63877
+ status: string;
63878
+ /** Format: int64 */
63879
+ target_cpa_micros: number | null;
63880
+ target_roas_pct: number | null;
63881
+ }[];
63882
+ conversion_actions: {
63883
+ category: string;
63884
+ counting: string;
63885
+ id: string;
63886
+ name: string;
63887
+ primary: boolean;
63888
+ status: string;
63889
+ }[];
63890
+ currency: string;
63891
+ optimization_score_pct: number | null;
63892
+ /** Format: date-time */
63893
+ read_at: string;
63894
+ totals: {
63895
+ ad_groups: number;
63896
+ ads: number;
63897
+ campaigns: number;
63898
+ campaigns_enabled: number;
63899
+ conversion_actions: number;
63900
+ /** Format: int64 */
63901
+ enabled_daily_budget_micros: number;
63902
+ keywords: number;
63903
+ learning: number;
63904
+ negatives: number;
63905
+ primary_conversion_actions: number;
63906
+ shared_budgets: number;
63907
+ };
63908
+ };
63909
+ /** @description za-263: the connected account's own history read back on Temporal (month by month, resumable, deferred to Google's reset when the day's op budget is spent). Money in integer micros; conversions in thousandths. */
63910
+ AdsImportedHistory: {
63911
+ /** Format: int64 */
63912
+ clicks: number;
63913
+ /** Format: int64 */
63914
+ conversions_milli: number;
63915
+ /** Format: int64 */
63916
+ cost_micros: number;
63917
+ days_with_data: number;
63918
+ error: string | null;
63919
+ /** Format: date */
63920
+ first_day: string | null;
63921
+ months_read: number;
63922
+ months_total: number;
63923
+ /** @enum {string} */
63924
+ state: "reading" | "done" | "paused";
63925
+ /** Format: int64 */
63926
+ value_micros: number;
63927
+ /** Format: date */
63928
+ window_end: string | null;
63929
+ /** Format: date */
63930
+ window_start: string | null;
63931
+ };
63805
63932
  /** @description One reading of an account, or null before its first audit. `figures` depends on `kind` (docs/1006 §30): money is integer minor units (`*_minor`) or micros (`*_micros`) of the account's currency, never a float; missed clicks and conversions are estimates. */
63806
63933
  AdsInsightReading: {
63807
63934
  /** Format: date */
@@ -139440,6 +139567,89 @@ export interface operations {
139440
139567
  429: components["responses"]["TooManyRequests"];
139441
139568
  };
139442
139569
  };
139570
+ getAdsImportedAccount: {
139571
+ parameters: {
139572
+ query?: never;
139573
+ header?: never;
139574
+ path: {
139575
+ connection_id: string;
139576
+ };
139577
+ cookie?: never;
139578
+ };
139579
+ requestBody?: never;
139580
+ responses: {
139581
+ /** @description The stored reading. */
139582
+ 200: {
139583
+ headers: {
139584
+ [name: string]: unknown;
139585
+ };
139586
+ content: {
139587
+ "application/json": {
139588
+ data: {
139589
+ /** Format: uuid */
139590
+ connection_id: string;
139591
+ error: string | null;
139592
+ history: components["schemas"]["AdsImportedHistory"] | null;
139593
+ import: components["schemas"]["AdsImportedAccount"] | null;
139594
+ /** Format: date-time */
139595
+ read_at: string | null;
139596
+ /** @enum {string} */
139597
+ state: "notRead" | "ok" | "failed";
139598
+ };
139599
+ };
139600
+ };
139601
+ };
139602
+ 401: components["responses"]["Unauthorized"];
139603
+ 403: components["responses"]["Forbidden"];
139604
+ 404: components["responses"]["NotFound"];
139605
+ 422: components["responses"]["UnprocessableEntity"];
139606
+ 429: components["responses"]["TooManyRequests"];
139607
+ };
139608
+ };
139609
+ refreshAdsImportedAccount: {
139610
+ parameters: {
139611
+ query?: never;
139612
+ header?: never;
139613
+ path: {
139614
+ connection_id: string;
139615
+ };
139616
+ cookie?: never;
139617
+ };
139618
+ requestBody?: never;
139619
+ responses: {
139620
+ /** @description Started. */
139621
+ 202: {
139622
+ headers: {
139623
+ [name: string]: unknown;
139624
+ };
139625
+ content: {
139626
+ "application/json": {
139627
+ /** Format: uuid */
139628
+ connection_id: string;
139629
+ started: boolean;
139630
+ };
139631
+ };
139632
+ };
139633
+ 401: components["responses"]["Unauthorized"];
139634
+ 403: components["responses"]["Forbidden"];
139635
+ 404: components["responses"]["NotFound"];
139636
+ 422: components["responses"]["UnprocessableEntity"];
139637
+ 429: components["responses"]["TooManyRequests"];
139638
+ /** @description The read could not be started (Temporal unreachable); try again. */
139639
+ 503: {
139640
+ headers: {
139641
+ [name: string]: unknown;
139642
+ };
139643
+ content: {
139644
+ "application/json": {
139645
+ /** Format: uuid */
139646
+ connection_id: string;
139647
+ started: boolean;
139648
+ };
139649
+ };
139650
+ };
139651
+ };
139652
+ };
139443
139653
  getAdsInsights: {
139444
139654
  parameters: {
139445
139655
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zinn-digital/sdk",
3
- "version": "0.1.1411",
3
+ "version": "0.1.1413",
4
4
  "description": "Typed TypeScript client for the Zinn Digital Platform API, generated from its OpenAPI spec.",
5
5
  "license": "MIT",
6
6
  "author": "Neil Lock \u2014 CEO, Zinn Digital\u00ae Ltd <office@zinndigital.com>",