@zinn-digital/sdk 0.1.1382 → 0.1.1385
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/generated/schema.d.ts +46 -11
- package/package.json +1 -1
|
@@ -17426,8 +17426,8 @@ export interface paths {
|
|
|
17426
17426
|
cookie?: never;
|
|
17427
17427
|
};
|
|
17428
17428
|
/**
|
|
17429
|
-
* Competitor ad groups in every language - thresholds and the last run (za-15).
|
|
17430
|
-
* @description Gated on `ads.view`. On the caller's own connection. The daily audit (Temporal) reads the account's own search terms and proposes, for approval, one ad group `<Rival> alternative` per rival per language market whose searches reach the thresholds, with PHRASE keywords and one responsive search ad copied from an approved ad in that campaign (or the English ad translated in one batched call), with no competitor name in the ad text (docs/1006 §81). Proposals are ordinary approve-first changes (`listAdsChanges`). `enabled` is the competitor switch AND a plan carrying `ads_competitor_groups`. Read from stored rows, never a network call in the request.
|
|
17429
|
+
* Competitor ad groups in every language - thresholds and the last run (za-15, za-71).
|
|
17430
|
+
* @description za-71 (docs/1006 §89): a rival the house table says must not be built (a free host, or a local brand searched off its market) is BLOCKED with EXACT campaign negatives instead, each verdict behind its own customer switch (`block_free_hosts`, `block_off_market`, Recommended on); in the customer's Automatic mode builds and blocks are sent through the change gate (kill switch, good standing) with an Undo, otherwise queued for approval. Gated on `ads.view`. On the caller's own connection. The daily audit (Temporal) reads the account's own search terms and proposes, for approval, one ad group `<Rival> alternative` per rival per language market whose searches reach the thresholds, with PHRASE keywords and one responsive search ad copied from an approved ad in that campaign (or the English ad translated in one batched call), with no competitor name in the ad text (docs/1006 §81). Proposals are ordinary approve-first changes (`listAdsChanges`). `enabled` is the competitor switch AND a plan carrying `ads_competitor_groups`. Read from stored rows, never a network call in the request.
|
|
17431
17431
|
*/
|
|
17432
17432
|
get: operations["getAdsCompetitorGroups"];
|
|
17433
17433
|
put?: never;
|
|
@@ -32338,7 +32338,7 @@ export interface paths {
|
|
|
32338
32338
|
put?: never;
|
|
32339
32339
|
/**
|
|
32340
32340
|
* Record translations the repository committed (batch).
|
|
32341
|
-
* @description i18n fix A (2026-10-16): when a lane commits a translation into the repository after the engine translated the SAME English, the repository's copy wins, and the export (`scripts/i18n-sync.mjs export`) hands it back here so the engine and the repo hold one truth. Each item is accepted only while `source_hash` still equals the string's current English hash; an item whose English moved on (`stale`) or whose string is unknown (`missing`) is reported and left alone, so a changed source keeps re-translating through the ordinary batched pipeline (CLAUDE.md §2.19). An accepted row is `up_to_date`, its `translated_at` is now, and it is attributed `repo` — indistinguishable from any other translation to every consumer. Idempotent: the same text again changes nothing.
|
|
32341
|
+
* @description i18n fix A (2026-10-16): when a lane commits a translation into the repository after the engine translated the SAME English, the repository's copy wins, and the export (`scripts/i18n-sync.mjs export`) hands it back here so the engine and the repo hold one truth. Each item is accepted only while `source_hash` still equals the string's current English hash; an item whose English moved on (`stale`) or whose string is unknown (`missing`) is reported and left alone, so a changed source keeps re-translating through the ordinary batched pipeline (CLAUDE.md §2.19). An accepted row is `up_to_date`, its `translated_at` is now, and it is attributed `repo` — indistinguishable from any other translation to every consumer. Idempotent: the same text again changes nothing. An item whose text drops a required term rendering for its locale (`engine/engine/i18n/term_renderings.py`, e.g. de "Zinn® Managed WordPress") is `refused` and left alone: a pin outranks the repository, exactly as it outranks a new machine answer.
|
|
32342
32342
|
*/
|
|
32343
32343
|
post: operations["recordRepoTranslations"];
|
|
32344
32344
|
delete?: never;
|
|
@@ -46057,7 +46057,7 @@ export interface paths {
|
|
|
46057
46057
|
};
|
|
46058
46058
|
/**
|
|
46059
46059
|
* Read a site's automatic app updates add-on and its window.
|
|
46060
|
-
* @description The paid automatic-updates add-on for the app the site runs (`wordpress_auto_updates`, `woocommerce_auto_updates`, `joomla_auto_updates`, `drupal_auto_updates` or `
|
|
46060
|
+
* @description The paid automatic-updates add-on for the app the site runs (`wordpress_auto_updates`, `woocommerce_auto_updates`, `joomla_auto_updates`, `drupal_auto_updates`, `mediawiki_auto_updates` or `phpbb_auto_updates`, USD 29 a year per site; `nextcloud_auto_updates`, USD 50 a year per site; s1014 row 41): whether it is on sale and on, its price in the caller's currency, the renewal, the quiet window and the last run. Each run takes a safety backup first and rolls back to it when the homepage breaks. WordPress: core, plugins and themes (a held plugin version is never applied). Joomla!: the core only, through Joomla's own console; extensions and templates are not updated. Nextcloud: the server through its own updater, then every app with an update. Drupal: the core only (the newest release of the installed major version, then its database updates); contributed modules and themes are not updated. MediaWiki: the newest stable release with its bundled extensions and skins, then its own update script; extensions the customer added are not updated. phpBB: the newest release of the installed branch with its bundled style, language and extension, then its own `db:migrate`; styles, language packs and extensions the customer added are not updated. Buy it through `purchaseExtra` with `site_id`. Requires `sites.view`.
|
|
46061
46061
|
*/
|
|
46062
46062
|
get: operations["getSiteAppAutoUpdate"];
|
|
46063
46063
|
/**
|
|
@@ -62302,15 +62302,32 @@ export interface components {
|
|
|
62302
62302
|
headlines?: string[];
|
|
62303
62303
|
impressions?: number;
|
|
62304
62304
|
keywords?: string[];
|
|
62305
|
+
/**
|
|
62306
|
+
* @description za-71: a built group, or a blocked rival's campaign negatives.
|
|
62307
|
+
* @enum {string}
|
|
62308
|
+
*/
|
|
62309
|
+
kind?: "group" | "block";
|
|
62305
62310
|
/** @description The market's language code. */
|
|
62306
62311
|
language: string;
|
|
62307
|
-
/** @description
|
|
62312
|
+
/** @description za-71: the EXACT campaign negatives of a block. */
|
|
62313
|
+
negatives?: string[];
|
|
62314
|
+
/** @description Why it waits - noApprovedAd, noLandingPage, gateRefused, noBid (no enabled group bid and no Maximise-clicks ceiling to start the new group on), refused, failed, conflict. */
|
|
62308
62315
|
reason?: string;
|
|
62316
|
+
/** @description Searches of a block the pre-check refused (an enabled keyword's query, or a search that converted); the rest were still sent. */
|
|
62317
|
+
refused?: string[];
|
|
62309
62318
|
rival: string;
|
|
62310
62319
|
/** @enum {string} */
|
|
62311
|
-
source?: "copied" | "translated";
|
|
62312
|
-
/**
|
|
62313
|
-
|
|
62320
|
+
source?: "copied" | "translated" | "written";
|
|
62321
|
+
/**
|
|
62322
|
+
* @description applied = sent by the Automatic mode, with an Undo (za-71).
|
|
62323
|
+
* @enum {string}
|
|
62324
|
+
*/
|
|
62325
|
+
status: "proposed" | "applied" | "waiting" | "refused" | "failed" | "off";
|
|
62326
|
+
/**
|
|
62327
|
+
* @description za-71: why a block blocks.
|
|
62328
|
+
* @enum {string}
|
|
62329
|
+
*/
|
|
62330
|
+
verdict?: "free_host" | "wrong_market";
|
|
62314
62331
|
};
|
|
62315
62332
|
AdsCompetitorGroupsEnvelope: {
|
|
62316
62333
|
data: {
|
|
@@ -62319,6 +62336,8 @@ export interface components {
|
|
|
62319
62336
|
/** @description Proposals waiting for approval. */
|
|
62320
62337
|
pending: number;
|
|
62321
62338
|
settings: {
|
|
62339
|
+
block_free_hosts: components["schemas"]["AdsCompetitorGroupsSwitch"];
|
|
62340
|
+
block_off_market: components["schemas"]["AdsCompetitorGroupsSwitch"];
|
|
62322
62341
|
lookback_days: components["schemas"]["AdsCompetitorGroupsThreshold"];
|
|
62323
62342
|
max_keywords: components["schemas"]["AdsCompetitorGroupsThreshold"];
|
|
62324
62343
|
min_clicks: components["schemas"]["AdsCompetitorGroupsThreshold"];
|
|
@@ -62328,14 +62347,22 @@ export interface components {
|
|
|
62328
62347
|
};
|
|
62329
62348
|
};
|
|
62330
62349
|
AdsCompetitorGroupsPatch: {
|
|
62350
|
+
/** @description za-71: block searches for a free host. null = Recommended (on). */
|
|
62351
|
+
block_free_hosts?: boolean | null;
|
|
62352
|
+
/** @description za-71: block a local brand searched outside its market. null = Recommended (on). */
|
|
62353
|
+
block_off_market?: boolean | null;
|
|
62331
62354
|
lookback_days?: number | null;
|
|
62332
62355
|
max_keywords?: number | null;
|
|
62333
62356
|
min_clicks?: number | null;
|
|
62334
62357
|
min_impressions?: number | null;
|
|
62335
62358
|
};
|
|
62336
62359
|
AdsCompetitorGroupsRun: {
|
|
62360
|
+
/** @description za-71: builds and blocks the Automatic mode sent. */
|
|
62361
|
+
applied?: number;
|
|
62337
62362
|
/** Format: date-time */
|
|
62338
62363
|
at: string;
|
|
62364
|
+
/** @description za-71: blocks decided this run (applied or proposed). */
|
|
62365
|
+
blocked?: number;
|
|
62339
62366
|
/** @description Rival + language pairs that already have a group or a decided proposal. */
|
|
62340
62367
|
covered: number;
|
|
62341
62368
|
groups: components["schemas"]["AdsCompetitorGroup"][];
|
|
@@ -62344,6 +62371,12 @@ export interface components {
|
|
|
62344
62371
|
skipped: string;
|
|
62345
62372
|
waiting: number;
|
|
62346
62373
|
};
|
|
62374
|
+
AdsCompetitorGroupsSwitch: {
|
|
62375
|
+
/** @description True when the customer set it; false = Recommended. */
|
|
62376
|
+
custom: boolean;
|
|
62377
|
+
recommended: boolean;
|
|
62378
|
+
value: boolean;
|
|
62379
|
+
};
|
|
62347
62380
|
AdsCompetitorGroupsThreshold: {
|
|
62348
62381
|
/** @description True when the customer set it; false = Recommended. */
|
|
62349
62382
|
custom: boolean;
|
|
@@ -95958,7 +95991,7 @@ export interface components {
|
|
|
95958
95991
|
total_ms: number;
|
|
95959
95992
|
transaction: string;
|
|
95960
95993
|
};
|
|
95961
|
-
/** @description The paid automatic app updates add-on for one site (s1014 row 41): the code that applies (`wordpress_auto_updates`, `woocommerce_auto_updates`, `joomla_auto_updates`, `nextcloud_auto_updates`, `drupal_auto_updates` or `
|
|
95994
|
+
/** @description The paid automatic app updates add-on for one site (s1014 row 41): the code that applies (`wordpress_auto_updates`, `woocommerce_auto_updates`, `joomla_auto_updates`, `nextcloud_auto_updates`, `drupal_auto_updates`, `mediawiki_auto_updates` or `phpbb_auto_updates`), the window and the last run's outcome. */
|
|
95962
95995
|
SiteAppAutoUpdate: {
|
|
95963
95996
|
/** @description Whether the add-on is on and in good standing now. */
|
|
95964
95997
|
active: boolean;
|
|
@@ -95966,7 +95999,7 @@ export interface components {
|
|
|
95966
95999
|
* @description The app the add-on serves on this site, or null when none is sold for it.
|
|
95967
96000
|
* @enum {string|null}
|
|
95968
96001
|
*/
|
|
95969
|
-
app_key: "wordpress" | "woocommerce" | "joomla" | "nextcloud" | "mediawiki" | "drupal" | null;
|
|
96002
|
+
app_key: "wordpress" | "woocommerce" | "joomla" | "nextcloud" | "phpbb" | "mediawiki" | "drupal" | null;
|
|
95970
96003
|
can_buy: boolean;
|
|
95971
96004
|
/** @description The catalogue code to buy (`<app_key>_auto_updates`). */
|
|
95972
96005
|
code: string | null;
|
|
@@ -162428,7 +162461,7 @@ export interface operations {
|
|
|
162428
162461
|
};
|
|
162429
162462
|
};
|
|
162430
162463
|
responses: {
|
|
162431
|
-
/** @description How many items were recorded, already equal, stale or
|
|
162464
|
+
/** @description How many items were recorded, already equal, stale, unknown or refused. */
|
|
162432
162465
|
200: {
|
|
162433
162466
|
headers: {
|
|
162434
162467
|
[name: string]: unknown;
|
|
@@ -162437,6 +162470,8 @@ export interface operations {
|
|
|
162437
162470
|
"application/json": {
|
|
162438
162471
|
missing: number;
|
|
162439
162472
|
recorded: number;
|
|
162473
|
+
/** @description Items whose text breaks a term rendering pinned for its locale; the engine's row is kept unchanged. */
|
|
162474
|
+
refused: number;
|
|
162440
162475
|
stale: number;
|
|
162441
162476
|
unchanged: number;
|
|
162442
162477
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zinn-digital/sdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1385",
|
|
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>",
|