@zinn-digital/sdk 0.1.1419 → 0.1.1421
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 +1155 -1
- package/package.json +1 -1
|
@@ -15687,6 +15687,49 @@ export interface paths {
|
|
|
15687
15687
|
patch?: never;
|
|
15688
15688
|
trace?: never;
|
|
15689
15689
|
};
|
|
15690
|
+
"/v1/admin/vendor-usage/moz": {
|
|
15691
|
+
parameters: {
|
|
15692
|
+
query?: never;
|
|
15693
|
+
header?: never;
|
|
15694
|
+
path?: never;
|
|
15695
|
+
cookie?: never;
|
|
15696
|
+
};
|
|
15697
|
+
/**
|
|
15698
|
+
* The shared Moz API account's usage, expected figures and plan advice (staff).
|
|
15699
|
+
* @description s1014 MOZ-V2. One Moz account (Growth Medium) serves V1, V2, ZinnHub and launch. An hourly workflow stores a free `quota.lookup` reading; this returns the newest (used / allotted), the daily burn for 14 days and its 7-day average, the projected month-end, each project's EXPECTED monthly rows (a planning figure, never a cap) with what it reported spending (V2's own spend is its call ledger; `used` null = that project has not reported), and an upgrade-or-overage advice computed from the stored plan prices. Requires staff + `platform.seo.manage`.
|
|
15700
|
+
*/
|
|
15701
|
+
get: operations["getMozVendorUsage"];
|
|
15702
|
+
put?: never;
|
|
15703
|
+
post?: never;
|
|
15704
|
+
delete?: never;
|
|
15705
|
+
options?: never;
|
|
15706
|
+
head?: never;
|
|
15707
|
+
patch?: never;
|
|
15708
|
+
trace?: never;
|
|
15709
|
+
};
|
|
15710
|
+
"/v1/admin/vendor-usage/moz/caps/{project}": {
|
|
15711
|
+
parameters: {
|
|
15712
|
+
query?: never;
|
|
15713
|
+
header?: never;
|
|
15714
|
+
path: {
|
|
15715
|
+
/** @example v2 */
|
|
15716
|
+
project: string;
|
|
15717
|
+
};
|
|
15718
|
+
cookie?: never;
|
|
15719
|
+
};
|
|
15720
|
+
get?: never;
|
|
15721
|
+
put?: never;
|
|
15722
|
+
post?: never;
|
|
15723
|
+
delete?: never;
|
|
15724
|
+
options?: never;
|
|
15725
|
+
head?: never;
|
|
15726
|
+
/**
|
|
15727
|
+
* Change one project's expected monthly Moz rows (staff).
|
|
15728
|
+
* @description `monthly_rows` 0-5,000,000 and `alert_percent` 1-100. A planning figure only: nothing stops at it (owner, 2026-11-03: every eligible site is measured; the account-wide alerts are the control). Audit-logged with before and after. Requires staff + `platform.seo.manage`.
|
|
15729
|
+
*/
|
|
15730
|
+
patch: operations["updateMozProjectCap"];
|
|
15731
|
+
trace?: never;
|
|
15732
|
+
};
|
|
15690
15733
|
"/v1/admin/visibility": {
|
|
15691
15734
|
parameters: {
|
|
15692
15735
|
query?: never;
|
|
@@ -20401,6 +20444,82 @@ export interface paths {
|
|
|
20401
20444
|
patch?: never;
|
|
20402
20445
|
trace?: never;
|
|
20403
20446
|
};
|
|
20447
|
+
"/v1/ads/site-tags": {
|
|
20448
|
+
parameters: {
|
|
20449
|
+
query?: never;
|
|
20450
|
+
header?: never;
|
|
20451
|
+
path?: never;
|
|
20452
|
+
cookie?: never;
|
|
20453
|
+
};
|
|
20454
|
+
/**
|
|
20455
|
+
* Install on any site — the organisation's site tags with their install code.
|
|
20456
|
+
* @description Gated on `ads.view` (docs/1006 §84, za-128). One row per non-WordPress site: the network tag ids (Google Ads `AW-…`, GA4 `G-…`, Microsoft UET, Meta pixel), the Google Ads conversion label per outcome kind and the consent default. `install` holds the universal snippet, the Shopify custom-pixel code and the GTM container path, all generated from the same row. `suggested_hosts` are sites already named as an ad account's tracking site that have no tag yet.
|
|
20457
|
+
*/
|
|
20458
|
+
get: operations["listAdsSiteTags"];
|
|
20459
|
+
put?: never;
|
|
20460
|
+
/**
|
|
20461
|
+
* Add a site and mint its public tag key.
|
|
20462
|
+
* @description Gated on `ads.manage`; audit-logged (`ads.site_tag_created`). `site_host` may be pasted as a URL (it is reduced to the host). The `public_key` is in the customer's page source and is NOT a secret: it only selects public tag ids. A second tag for the same host in the organisation is a `409` (`refusal.adsconnect.siteTag.duplicateHost`); a value in the wrong format is a `422` (`refusal.adsconnect.siteTag.*`).
|
|
20463
|
+
*/
|
|
20464
|
+
post: operations["createAdsSiteTag"];
|
|
20465
|
+
delete?: never;
|
|
20466
|
+
options?: never;
|
|
20467
|
+
head?: never;
|
|
20468
|
+
patch?: never;
|
|
20469
|
+
trace?: never;
|
|
20470
|
+
};
|
|
20471
|
+
"/v1/ads/site-tags/{tag_id}": {
|
|
20472
|
+
parameters: {
|
|
20473
|
+
query?: never;
|
|
20474
|
+
header?: never;
|
|
20475
|
+
path: {
|
|
20476
|
+
tag_id: string;
|
|
20477
|
+
};
|
|
20478
|
+
cookie?: never;
|
|
20479
|
+
};
|
|
20480
|
+
/**
|
|
20481
|
+
* One site tag with its install code.
|
|
20482
|
+
* @description Gated on `ads.view` (docs/1006 §84). Another organisation's tag is a `404`.
|
|
20483
|
+
*/
|
|
20484
|
+
get: operations["getAdsSiteTag"];
|
|
20485
|
+
/**
|
|
20486
|
+
* Change a site tag (every install route follows within five minutes).
|
|
20487
|
+
* @description Gated on `ads.manage`; audit-logged (`ads.site_tag_updated`). Only the fields sent change. `version` goes up by one and the cached script is dropped, so the snippet and the Shopify pixel serve the new settings within the edge lifetime (300 s). A GTM container already imported does not change: download and import it again.
|
|
20488
|
+
*/
|
|
20489
|
+
put: operations["updateAdsSiteTag"];
|
|
20490
|
+
post?: never;
|
|
20491
|
+
/**
|
|
20492
|
+
* Remove a site tag; its script answers 404 from then on.
|
|
20493
|
+
* @description Gated on `ads.manage`; audit-logged (`ads.site_tag_deleted`).
|
|
20494
|
+
*/
|
|
20495
|
+
delete: operations["deleteAdsSiteTag"];
|
|
20496
|
+
options?: never;
|
|
20497
|
+
head?: never;
|
|
20498
|
+
patch?: never;
|
|
20499
|
+
trace?: never;
|
|
20500
|
+
};
|
|
20501
|
+
"/v1/ads/site-tags/{tag_id}/gtm-container": {
|
|
20502
|
+
parameters: {
|
|
20503
|
+
query?: never;
|
|
20504
|
+
header?: never;
|
|
20505
|
+
path: {
|
|
20506
|
+
tag_id: string;
|
|
20507
|
+
};
|
|
20508
|
+
cookie?: never;
|
|
20509
|
+
};
|
|
20510
|
+
/**
|
|
20511
|
+
* The Google Tag Manager container to import, built from the same site tag.
|
|
20512
|
+
* @description Gated on `ads.view` (docs/1006 §84). A GTM export (format 2) the customer imports in Admin → Import container (choose Merge): consent defaults on Consent Initialization, the Conversion Linker and Google tag, one Google Ads conversion tag per label (fired by the data-layer event `zinn_<kind>`), Microsoft UET and the Meta pixel (the Meta tags require `ad_storage` consent). The site pushes `{event: "zinn_purchase", zinn: {value_minor, currency, transaction_id}}`.
|
|
20513
|
+
*/
|
|
20514
|
+
get: operations["getAdsSiteTagGtmContainer"];
|
|
20515
|
+
put?: never;
|
|
20516
|
+
post?: never;
|
|
20517
|
+
delete?: never;
|
|
20518
|
+
options?: never;
|
|
20519
|
+
head?: never;
|
|
20520
|
+
patch?: never;
|
|
20521
|
+
trace?: never;
|
|
20522
|
+
};
|
|
20404
20523
|
"/v1/ads/social": {
|
|
20405
20524
|
parameters: {
|
|
20406
20525
|
query?: never;
|
|
@@ -20505,6 +20624,52 @@ export interface paths {
|
|
|
20505
20624
|
patch?: never;
|
|
20506
20625
|
trace?: never;
|
|
20507
20626
|
};
|
|
20627
|
+
"/v1/ads/wordpress/sites": {
|
|
20628
|
+
parameters: {
|
|
20629
|
+
query?: never;
|
|
20630
|
+
header?: never;
|
|
20631
|
+
path?: never;
|
|
20632
|
+
cookie?: never;
|
|
20633
|
+
};
|
|
20634
|
+
/**
|
|
20635
|
+
* The organisation's WordPress sites connected with the Zinn® Ads plugin.
|
|
20636
|
+
* @description Gated on `ads.view` (docs/1006 §102). Connected sites and pairing codes that have not expired yet. Each site says whether Cloudflare fronts it (`cloudflare_detected`, measured by the plugin), its tag mode (`browser` or `zaraz`), whether to offer Zaraz mode, and in Zaraz mode the purchases sent through Zaraz against what the ad networks credited over the latest tracking-check window (`zaraz_health`). Cursor-paged newest first: follow `page.next_cursor` while `page.has_more` is true (there is no cap on the total).
|
|
20637
|
+
*/
|
|
20638
|
+
get: operations["listAdsWordPressSites"];
|
|
20639
|
+
put?: never;
|
|
20640
|
+
/**
|
|
20641
|
+
* Make a one-time code that connects a WordPress site with the Zinn® Ads plugin.
|
|
20642
|
+
* @description Gated on `ads.manage`; audit action `ads.wordpress_pairing_created`. The `code` is shown ONCE (only its SHA-256 hash is stored) and is valid for 30 minutes. The customer pastes it into the plugin's settings page; the plugin redeems it at `claimAdsWordPressSite`.
|
|
20643
|
+
*/
|
|
20644
|
+
post: operations["createAdsWordPressPairing"];
|
|
20645
|
+
delete?: never;
|
|
20646
|
+
options?: never;
|
|
20647
|
+
head?: never;
|
|
20648
|
+
patch?: never;
|
|
20649
|
+
trace?: never;
|
|
20650
|
+
};
|
|
20651
|
+
"/v1/ads/wordpress/sites/{site_id}": {
|
|
20652
|
+
parameters: {
|
|
20653
|
+
query?: never;
|
|
20654
|
+
header?: never;
|
|
20655
|
+
path: {
|
|
20656
|
+
site_id: string;
|
|
20657
|
+
};
|
|
20658
|
+
cookie?: never;
|
|
20659
|
+
};
|
|
20660
|
+
get?: never;
|
|
20661
|
+
put?: never;
|
|
20662
|
+
post?: never;
|
|
20663
|
+
/**
|
|
20664
|
+
* Disconnect a WordPress site (its token stops working at once).
|
|
20665
|
+
* @description Gated on `ads.manage`; audit action `ads.wordpress_site_disconnected`. Another organisation's site answers 404.
|
|
20666
|
+
*/
|
|
20667
|
+
delete: operations["disconnectAdsWordPressSite"];
|
|
20668
|
+
options?: never;
|
|
20669
|
+
head?: never;
|
|
20670
|
+
patch?: never;
|
|
20671
|
+
trace?: never;
|
|
20672
|
+
};
|
|
20508
20673
|
"/v1/affiliate": {
|
|
20509
20674
|
parameters: {
|
|
20510
20675
|
query?: never;
|
|
@@ -40808,6 +40973,148 @@ export interface paths {
|
|
|
40808
40973
|
patch?: never;
|
|
40809
40974
|
trace?: never;
|
|
40810
40975
|
};
|
|
40976
|
+
"/v1/public/ads-tag/{public_key}.js": {
|
|
40977
|
+
parameters: {
|
|
40978
|
+
query?: never;
|
|
40979
|
+
header?: never;
|
|
40980
|
+
path: {
|
|
40981
|
+
public_key: string;
|
|
40982
|
+
};
|
|
40983
|
+
cookie?: never;
|
|
40984
|
+
};
|
|
40985
|
+
/**
|
|
40986
|
+
* The universal Zinn® Ads script for one site (public, cached).
|
|
40987
|
+
* @description Public (docs/1006 §84, za-128): sites load it as `https://zinndigital.com/zat/{public_key}.js`, which the public site's edge caches and fills from here. Answered from the cache, never a database read per page view. Sets Google Consent Mode v2 defaults BEFORE any tag loads, then the configured Google, Microsoft and (only after ad consent) Meta tags, and defines `zinnAds.conversion(kind, {value_minor | amount, currency, id})`, `zinnAds.consent({...})` and `zinnAds.clickIds()`. No personal data. An unknown, removed or switched-off key is a `404` whose body is a JavaScript comment.
|
|
40988
|
+
*/
|
|
40989
|
+
get: operations["getAdsSiteTagScript"];
|
|
40990
|
+
put?: never;
|
|
40991
|
+
post?: never;
|
|
40992
|
+
delete?: never;
|
|
40993
|
+
options?: never;
|
|
40994
|
+
head?: never;
|
|
40995
|
+
patch?: never;
|
|
40996
|
+
trace?: never;
|
|
40997
|
+
};
|
|
40998
|
+
"/v1/public/ads-wordpress/claim": {
|
|
40999
|
+
parameters: {
|
|
41000
|
+
query?: never;
|
|
41001
|
+
header?: never;
|
|
41002
|
+
path?: never;
|
|
41003
|
+
cookie?: never;
|
|
41004
|
+
};
|
|
41005
|
+
get?: never;
|
|
41006
|
+
put?: never;
|
|
41007
|
+
/**
|
|
41008
|
+
* The Zinn® Ads plugin exchanges a one-time code for its site token.
|
|
41009
|
+
* @description ⛔ **No authentication** — the one-time code is the whole authorisation (docs/1006 §102). Unknown, used and expired codes are one answer (422 `codeInvalid`). The `token` is returned ONCE; we keep only its SHA-256 hash. Re-connecting a host that is already connected retires its old token in the same step. Audit action `ads.wordpress_site_connected`.
|
|
41010
|
+
*/
|
|
41011
|
+
post: operations["claimAdsWordPressSite"];
|
|
41012
|
+
delete?: never;
|
|
41013
|
+
options?: never;
|
|
41014
|
+
head?: never;
|
|
41015
|
+
patch?: never;
|
|
41016
|
+
trace?: never;
|
|
41017
|
+
};
|
|
41018
|
+
"/v1/public/ads-wordpress/clicks": {
|
|
41019
|
+
parameters: {
|
|
41020
|
+
query?: never;
|
|
41021
|
+
header?: never;
|
|
41022
|
+
path?: never;
|
|
41023
|
+
cookie?: never;
|
|
41024
|
+
};
|
|
41025
|
+
get?: never;
|
|
41026
|
+
put?: never;
|
|
41027
|
+
/**
|
|
41028
|
+
* The plugin's click-fraud tag sends paid-click visits for scoring.
|
|
41029
|
+
* @description Site token only. Up to 500 visits a batch, the facts an access log holds. Visits that carry a paid-click id (gclid, msclkid, fbclid, ttclid, li_fat_id, twclid, epik) and are older than the 10-minute dwell window are scored by the same click-fraud shield as sites hosted by Zinn® (docs/1006 §15), on the connected host whatever host a visit names. Each click is stored once, so a re-sent batch stores nothing new. Nothing is scored when the organisation switched the shield off.
|
|
41030
|
+
*/
|
|
41031
|
+
post: operations["sendAdsWordPressClicks"];
|
|
41032
|
+
delete?: never;
|
|
41033
|
+
options?: never;
|
|
41034
|
+
head?: never;
|
|
41035
|
+
patch?: never;
|
|
41036
|
+
trace?: never;
|
|
41037
|
+
};
|
|
41038
|
+
"/v1/public/ads-wordpress/heartbeat": {
|
|
41039
|
+
parameters: {
|
|
41040
|
+
query?: never;
|
|
41041
|
+
header?: never;
|
|
41042
|
+
path?: never;
|
|
41043
|
+
cookie?: never;
|
|
41044
|
+
};
|
|
41045
|
+
get?: never;
|
|
41046
|
+
put?: never;
|
|
41047
|
+
/**
|
|
41048
|
+
* The plugin reports in and reads its config.
|
|
41049
|
+
* @description Site token only. Records the plugin and WordPress versions, whether Cloudflare fronts the site, the tag mode and, per UTC day, how many purchases the plugin sent through Zaraz (`zaraz_sent`, running totals; days in the future or older than 35 days are dropped). WPPAID: also each path's own per-day counts, so the dashboard measures the browser path and the server upload apart — `zaraz_delivered` (handed to Zaraz in the visitor's browser), `zaraz_declined` (withheld: no ad consent) and `orders_reported` (paid orders queued for the server upload). A counter not sent keeps what it had. The site calls us; nothing calls the site (§2.56).
|
|
41050
|
+
*/
|
|
41051
|
+
post: operations["adsWordPressHeartbeat"];
|
|
41052
|
+
delete?: never;
|
|
41053
|
+
options?: never;
|
|
41054
|
+
head?: never;
|
|
41055
|
+
patch?: never;
|
|
41056
|
+
trace?: never;
|
|
41057
|
+
};
|
|
41058
|
+
"/v1/public/ads-wordpress/outcomes": {
|
|
41059
|
+
parameters: {
|
|
41060
|
+
query?: never;
|
|
41061
|
+
header?: never;
|
|
41062
|
+
path?: never;
|
|
41063
|
+
cookie?: never;
|
|
41064
|
+
};
|
|
41065
|
+
get?: never;
|
|
41066
|
+
put?: never;
|
|
41067
|
+
/**
|
|
41068
|
+
* The plugin sends the site's paid orders and free trials to the outcome pipeline.
|
|
41069
|
+
* @description Site token only. The same outcome shape and store as the events API (`POST /v1/ads/connections/{connection_id}/outcomes`), for every connection of the site's organisation that is not disconnected, then pushed to the networks within minutes. Only `purchase` and `trial` (a 422 otherwise: a lead is the browser tag's). The reference is forced into the site's own namespace (`<ref_prefix>-<order number>`, the same transaction id the browser tag sends, so the network counts a sale once), the host is the connected site's whatever `outcome_url` says, and the source is `store`. Click ids and the e-mail are stored and forwarded only when an outcome's `consent` is `GRANTED` (the order page's own consent); otherwise they are dropped, whatever the request carries. Idempotent per order: a re-sent order stores nothing new. Audit action `ads.outcomes_received` when something was stored.
|
|
41070
|
+
*/
|
|
41071
|
+
post: operations["sendAdsWordPressOutcomes"];
|
|
41072
|
+
delete?: never;
|
|
41073
|
+
options?: never;
|
|
41074
|
+
head?: never;
|
|
41075
|
+
patch?: never;
|
|
41076
|
+
trace?: never;
|
|
41077
|
+
};
|
|
41078
|
+
"/v1/public/ads-wordpress/refunds": {
|
|
41079
|
+
parameters: {
|
|
41080
|
+
query?: never;
|
|
41081
|
+
header?: never;
|
|
41082
|
+
path?: never;
|
|
41083
|
+
cookie?: never;
|
|
41084
|
+
};
|
|
41085
|
+
get?: never;
|
|
41086
|
+
put?: never;
|
|
41087
|
+
/**
|
|
41088
|
+
* The plugin withdraws or restates orders cancelled, failed or refunded after they were reported.
|
|
41089
|
+
* @description Site token only (WPPAID). An order the plugin reported (only once PAID) and that was then cancelled, failed or refunded in full is withdrawn exactly as the events API's retraction does: not uploaded yet, it never goes; uploaded, the network gets ONE retraction. Refunded in part (`refunded_minor` = refunded so far, with `currency`), the sale is restated to what was kept. The reference is forced into the site's own namespace, so a site can withdraw only its own orders. `not_found` counts references the pipeline does not have yet (the plugin tries again later). Idempotent. Audit action `ads.outcomes_retracted` when something changed.
|
|
41090
|
+
*/
|
|
41091
|
+
post: operations["sendAdsWordPressRefunds"];
|
|
41092
|
+
delete?: never;
|
|
41093
|
+
options?: never;
|
|
41094
|
+
head?: never;
|
|
41095
|
+
patch?: never;
|
|
41096
|
+
trace?: never;
|
|
41097
|
+
};
|
|
41098
|
+
"/v1/public/ads-wordpress/site": {
|
|
41099
|
+
parameters: {
|
|
41100
|
+
query?: never;
|
|
41101
|
+
header?: never;
|
|
41102
|
+
path?: never;
|
|
41103
|
+
cookie?: never;
|
|
41104
|
+
};
|
|
41105
|
+
get?: never;
|
|
41106
|
+
put?: never;
|
|
41107
|
+
post?: never;
|
|
41108
|
+
/**
|
|
41109
|
+
* The plugin's Disconnect button revokes its own site token.
|
|
41110
|
+
* @description Site token only; audit action `ads.wordpress_site_disconnected`.
|
|
41111
|
+
*/
|
|
41112
|
+
delete: operations["disconnectAdsWordPressSelf"];
|
|
41113
|
+
options?: never;
|
|
41114
|
+
head?: never;
|
|
41115
|
+
patch?: never;
|
|
41116
|
+
trace?: never;
|
|
41117
|
+
};
|
|
40811
41118
|
"/v1/public/ads/call-numbers/{pool_key}": {
|
|
40812
41119
|
parameters: {
|
|
40813
41120
|
query?: {
|
|
@@ -66167,6 +66474,84 @@ export interface components {
|
|
|
66167
66474
|
/** @description The address of the site in that language. */
|
|
66168
66475
|
url?: string;
|
|
66169
66476
|
};
|
|
66477
|
+
AdsSiteTag: {
|
|
66478
|
+
/** @enum {string} */
|
|
66479
|
+
consent_default: "denied_eea" | "denied" | "granted";
|
|
66480
|
+
enabled: boolean;
|
|
66481
|
+
ga4_id: string;
|
|
66482
|
+
google_ads_id: string;
|
|
66483
|
+
google_labels: {
|
|
66484
|
+
[key: string]: string;
|
|
66485
|
+
};
|
|
66486
|
+
/** Format: uuid */
|
|
66487
|
+
id: string;
|
|
66488
|
+
install: components["schemas"]["AdsSiteTagInstall"];
|
|
66489
|
+
keep_click_ids: boolean;
|
|
66490
|
+
meta_pixel_id: string;
|
|
66491
|
+
microsoft_uet_id: string;
|
|
66492
|
+
/** Format: uuid */
|
|
66493
|
+
org_id: string;
|
|
66494
|
+
/** @description Public (it is in the page source); never an API credential. */
|
|
66495
|
+
public_key: string;
|
|
66496
|
+
site_host: string;
|
|
66497
|
+
/** Format: date-time */
|
|
66498
|
+
updated_at: string | null;
|
|
66499
|
+
version: number;
|
|
66500
|
+
wait_for_update_ms: number;
|
|
66501
|
+
};
|
|
66502
|
+
AdsSiteTagCreate: components["schemas"]["AdsSiteTagSettings"] & {
|
|
66503
|
+
/**
|
|
66504
|
+
* Format: uuid
|
|
66505
|
+
* @description Required when you manage more than one organisation.
|
|
66506
|
+
*/
|
|
66507
|
+
org_id?: string;
|
|
66508
|
+
};
|
|
66509
|
+
AdsSiteTagInstall: {
|
|
66510
|
+
conversion_example: string;
|
|
66511
|
+
data_layer_example: string;
|
|
66512
|
+
gtm_container_path: string;
|
|
66513
|
+
/** Format: uri */
|
|
66514
|
+
script_url: string;
|
|
66515
|
+
/** @description Code for Shopify admin → Settings → Customer events → Add custom pixel. */
|
|
66516
|
+
shopify_pixel: string;
|
|
66517
|
+
/** @description The two lines to paste into every page's head. */
|
|
66518
|
+
snippet_html: string;
|
|
66519
|
+
};
|
|
66520
|
+
AdsSiteTagList: {
|
|
66521
|
+
items: components["schemas"]["AdsSiteTag"][];
|
|
66522
|
+
suggested_hosts: string[];
|
|
66523
|
+
};
|
|
66524
|
+
/** @description The editable settings of a site tag (za-128, docs/1006 §84). */
|
|
66525
|
+
AdsSiteTagSettings: {
|
|
66526
|
+
/**
|
|
66527
|
+
* @description Ad consent before the visitor's banner answers: denied in the EEA, UK and Switzerland (default), denied everywhere, or granted.
|
|
66528
|
+
* @enum {string}
|
|
66529
|
+
*/
|
|
66530
|
+
consent_default?: "denied_eea" | "denied" | "granted";
|
|
66531
|
+
enabled?: boolean;
|
|
66532
|
+
/** @description GA4 measurement id, G- plus letters/digits; empty for none. */
|
|
66533
|
+
ga4_id?: string;
|
|
66534
|
+
/**
|
|
66535
|
+
* @description Google Ads tag id, AW- plus digits; empty for none.
|
|
66536
|
+
* @example AW-123456789
|
|
66537
|
+
*/
|
|
66538
|
+
google_ads_id?: string;
|
|
66539
|
+
/** @description Google Ads conversion label per outcome kind (purchase, trial, lead, signup, activation, retained7, retained30, upgrade, free_listing). An empty label removes the kind. */
|
|
66540
|
+
google_labels?: {
|
|
66541
|
+
[key: string]: string;
|
|
66542
|
+
};
|
|
66543
|
+
/** @description Keep gclid, gbraid, wbraid, msclkid and fbclid in a first-party cookie for 90 days, only after ad consent. */
|
|
66544
|
+
keep_click_ids?: boolean;
|
|
66545
|
+
/** @description Meta pixel id (digits). Loaded only once ad consent is granted. */
|
|
66546
|
+
meta_pixel_id?: string;
|
|
66547
|
+
/** @description Microsoft Advertising UET tag id (digits). */
|
|
66548
|
+
microsoft_uet_id?: string;
|
|
66549
|
+
/** @example shop.example.com */
|
|
66550
|
+
site_host?: string;
|
|
66551
|
+
/** @description How long Google's tags wait for the banner's answer. */
|
|
66552
|
+
wait_for_update_ms?: number;
|
|
66553
|
+
};
|
|
66554
|
+
AdsSiteTagUpdate: components["schemas"]["AdsSiteTagSettings"];
|
|
66170
66555
|
AdsSocial: {
|
|
66171
66556
|
accounts: {
|
|
66172
66557
|
/** Format: uuid */
|
|
@@ -66629,6 +67014,103 @@ export interface components {
|
|
|
66629
67014
|
endpoints: components["schemas"]["AdsWebhookEndpoint"][];
|
|
66630
67015
|
events: components["schemas"]["AdsWebhookEventName"][];
|
|
66631
67016
|
};
|
|
67017
|
+
/** @description What the Zinn® Ads plugin needs to run. Public ids only, never a credential. */
|
|
67018
|
+
AdsWordPressConfig: {
|
|
67019
|
+
cloudflare_detected: boolean;
|
|
67020
|
+
heartbeat_seconds: number;
|
|
67021
|
+
/** @enum {string} */
|
|
67022
|
+
mode: "browser" | "zaraz";
|
|
67023
|
+
offer_zaraz: boolean;
|
|
67024
|
+
/** @description The site's order-reference prefix: an order's transaction id is `<ref_prefix>-<order number>` in the browser tag and the server-side upload alike. */
|
|
67025
|
+
ref_prefix?: string;
|
|
67026
|
+
shield: {
|
|
67027
|
+
dwell_seconds: number;
|
|
67028
|
+
enabled: boolean;
|
|
67029
|
+
max_hits: number;
|
|
67030
|
+
/**
|
|
67031
|
+
* @description Why the shield may not score this site's clicks now (a site we do not host needs the click-shield add-on; §2.46 good standing). While set, the plugin collects nothing and shows the add-on offer.
|
|
67032
|
+
* @enum {string|null}
|
|
67033
|
+
*/
|
|
67034
|
+
refusal: "clickShieldRequired" | "notInGoodStanding" | null;
|
|
67035
|
+
};
|
|
67036
|
+
site_host: string;
|
|
67037
|
+
/** Format: uuid */
|
|
67038
|
+
site_id: string;
|
|
67039
|
+
/** @description The site's Zinn® Ads tag (the same `AdsSiteTag` "Install on any site" edits; claiming a host creates or links it). Browser mode loads `script_url` and hands each conversion to it. `null` when the tag was deleted or switched off there. */
|
|
67040
|
+
tag?: {
|
|
67041
|
+
public_key: string;
|
|
67042
|
+
/** Format: uri */
|
|
67043
|
+
script_url: string;
|
|
67044
|
+
version: number;
|
|
67045
|
+
} | null;
|
|
67046
|
+
};
|
|
67047
|
+
/** @description One delivery path of a Zaraz-mode site (WPPAID); `short` when more than 10% of at least 5 expected went missing. */
|
|
67048
|
+
AdsWordPressPathHealth: {
|
|
67049
|
+
delivered: number;
|
|
67050
|
+
expected: number;
|
|
67051
|
+
/** @enum {string} */
|
|
67052
|
+
status: "ok" | "short" | "tooFew";
|
|
67053
|
+
};
|
|
67054
|
+
AdsWordPressSite: {
|
|
67055
|
+
/** Format: date-time */
|
|
67056
|
+
claimed_at?: string | null;
|
|
67057
|
+
/**
|
|
67058
|
+
* @description Why this site's paid clicks are not checked now: a site Zinn Digital® does not host needs the click-shield add-on (or a plan that carries it), and the account must be in good standing. The card shows the add-on offer or the billing link instead.
|
|
67059
|
+
* @enum {string|null}
|
|
67060
|
+
*/
|
|
67061
|
+
click_shield_refusal: "clickShieldRequired" | "notInGoodStanding" | null;
|
|
67062
|
+
cloudflare_detected: boolean;
|
|
67063
|
+
/** Format: date-time */
|
|
67064
|
+
created_at?: string | null;
|
|
67065
|
+
/** Format: uuid */
|
|
67066
|
+
id: string;
|
|
67067
|
+
/** Format: date-time */
|
|
67068
|
+
last_seen_at?: string | null;
|
|
67069
|
+
/** @enum {string} */
|
|
67070
|
+
mode: "browser" | "zaraz";
|
|
67071
|
+
offer_zaraz: boolean;
|
|
67072
|
+
/** Format: uuid */
|
|
67073
|
+
org_id: string;
|
|
67074
|
+
/** Format: date-time */
|
|
67075
|
+
pairing_expires_at?: string | null;
|
|
67076
|
+
plugin_version?: string;
|
|
67077
|
+
site_host: string;
|
|
67078
|
+
site_url?: string;
|
|
67079
|
+
/** @enum {string} */
|
|
67080
|
+
status: "pending" | "active";
|
|
67081
|
+
/** @description Whether that tag loads (browser mode sends nothing without it). */
|
|
67082
|
+
tag_enabled?: boolean;
|
|
67083
|
+
/**
|
|
67084
|
+
* Format: uuid
|
|
67085
|
+
* @description The site's tag in "Install on any site" (`null` = none for this host).
|
|
67086
|
+
*/
|
|
67087
|
+
tag_id?: string | null;
|
|
67088
|
+
/** @description The token's last 4 characters. */
|
|
67089
|
+
token_hint?: string;
|
|
67090
|
+
wp_version?: string;
|
|
67091
|
+
/** @description Zaraz-sent purchases vs network-credited, per SITE: compared only when the organisation's credit can be attributed to this site (it is the only connected WordPress site, enabled site tag and recorded sale host in the window); otherwise `cannotAttribute` with `credited` null — never a gap alarm, never a hidden loss. WPPAID: first, each path on its own over the last 7 complete UTC days (`paths`; null for a plugin build that reports no per-path counts) — the browser path (purchases handed to Zaraz vs Zaraz purchases on order pages, less those withheld for want of consent) and the server upload (orders it delivered vs paid orders queued). The ad network de-duplicates the two, so its credit alone hides a Zaraz loss; a short path makes the status `pathShort` and `short_path` names it. */
|
|
67092
|
+
zaraz_health: {
|
|
67093
|
+
credited?: number | null;
|
|
67094
|
+
gap_pct?: number | null;
|
|
67095
|
+
paths?: {
|
|
67096
|
+
browser: components["schemas"]["AdsWordPressPathHealth"];
|
|
67097
|
+
server: components["schemas"]["AdsWordPressPathHealth"];
|
|
67098
|
+
/** Format: date */
|
|
67099
|
+
window_end: string;
|
|
67100
|
+
/** Format: date */
|
|
67101
|
+
window_start: string;
|
|
67102
|
+
} | null;
|
|
67103
|
+
sent?: number | null;
|
|
67104
|
+
/** @enum {string|null} */
|
|
67105
|
+
short_path?: "browser" | "server" | "both" | null;
|
|
67106
|
+
/** @enum {string} */
|
|
67107
|
+
status: "notZaraz" | "noCheck" | "cannotAttribute" | "unreadable" | "tooFew" | "ok" | "gap" | "pathShort";
|
|
67108
|
+
/** Format: date */
|
|
67109
|
+
window_end?: string;
|
|
67110
|
+
/** Format: date */
|
|
67111
|
+
window_start?: string;
|
|
67112
|
+
};
|
|
67113
|
+
};
|
|
66632
67114
|
/** @description One X Ads campaign and its budgets (za-43). Money is micros of `currency` (§2.8). */
|
|
66633
67115
|
AdsXCampaign: {
|
|
66634
67116
|
/** @description ISO 4217 code. */
|
|
@@ -86746,6 +87228,65 @@ export interface components {
|
|
|
86746
87228
|
step: string | null;
|
|
86747
87229
|
to_release: string | null;
|
|
86748
87230
|
};
|
|
87231
|
+
MozProjectCap: {
|
|
87232
|
+
/** @example 80 */
|
|
87233
|
+
alert_percent: number;
|
|
87234
|
+
/** @example V2 */
|
|
87235
|
+
label: string;
|
|
87236
|
+
/** @example 5000 */
|
|
87237
|
+
monthly_rows: number;
|
|
87238
|
+
/** @example v2 */
|
|
87239
|
+
project: string;
|
|
87240
|
+
};
|
|
87241
|
+
/** @description The shared Moz account, as `getMozVendorUsage` reports it (s1014 MOZ-V2). */
|
|
87242
|
+
MozVendorUsage: {
|
|
87243
|
+
advice: {
|
|
87244
|
+
/** @enum {string} */
|
|
87245
|
+
action: "stay" | "upgrade" | "unknown";
|
|
87246
|
+
break_even_rows?: number | null;
|
|
87247
|
+
/** @example USD */
|
|
87248
|
+
currency: string;
|
|
87249
|
+
current_cost_minor?: number | null;
|
|
87250
|
+
plan_key: string;
|
|
87251
|
+
plan_name: string;
|
|
87252
|
+
projected_cost_minor?: number | null;
|
|
87253
|
+
};
|
|
87254
|
+
/** @example 120000 */
|
|
87255
|
+
allotted: number | null;
|
|
87256
|
+
daily: {
|
|
87257
|
+
/** Format: date */
|
|
87258
|
+
day: string;
|
|
87259
|
+
rows: number;
|
|
87260
|
+
}[];
|
|
87261
|
+
daily_burn_avg_7d?: number;
|
|
87262
|
+
period_reset_at?: string | null;
|
|
87263
|
+
plans: {
|
|
87264
|
+
currency: string;
|
|
87265
|
+
is_current: boolean;
|
|
87266
|
+
key: string;
|
|
87267
|
+
monthly_minor: number;
|
|
87268
|
+
name: string;
|
|
87269
|
+
overage_block_rows?: number;
|
|
87270
|
+
overage_minor_per_block?: number | null;
|
|
87271
|
+
rows_included: number;
|
|
87272
|
+
}[];
|
|
87273
|
+
projected_month_end: number | null;
|
|
87274
|
+
projects: {
|
|
87275
|
+
alert_percent: number;
|
|
87276
|
+
label: string;
|
|
87277
|
+
monthly_rows: number;
|
|
87278
|
+
percent: number | null;
|
|
87279
|
+
project: string;
|
|
87280
|
+
used: number | null;
|
|
87281
|
+
}[];
|
|
87282
|
+
read_at: string | null;
|
|
87283
|
+
read_error?: string;
|
|
87284
|
+
read_ok: boolean;
|
|
87285
|
+
spare_rows?: number | null;
|
|
87286
|
+
today_rows?: number;
|
|
87287
|
+
/** @example 4120 */
|
|
87288
|
+
used: number | null;
|
|
87289
|
+
};
|
|
86749
87290
|
/** @description What one manual sync did. */
|
|
86750
87291
|
MyXeroSyncRun: {
|
|
86751
87292
|
connection?: components["schemas"]["XeroConnection"];
|
|
@@ -102107,6 +102648,11 @@ export interface components {
|
|
|
102107
102648
|
* @example -1
|
|
102108
102649
|
*/
|
|
102109
102650
|
citation_flow_delta?: number | null;
|
|
102651
|
+
/**
|
|
102652
|
+
* @description s1014 MOZ-V2 (owner 2026-11-03) — Domain Authority by Moz (https://moz.com/), 1-100, free on every LIVE site whatever the plan: first measured 3 days after the site's own domain first reached us, then every 30 days. Null = not measured yet or Moz had no answer — never 0. Any surface showing it credits "Domain Authority by Moz".
|
|
102653
|
+
* @example 24
|
|
102654
|
+
*/
|
|
102655
|
+
domain_authority?: number | null;
|
|
102110
102656
|
/**
|
|
102111
102657
|
* @description s1006 (owner D42) — Domain Rating by Ahrefs (https://ahrefs.com/), 0-100, on every site whatever the plan: first measured 3 days after the site is added, then monthly. Null = not measured yet or no answer — never 0. Any surface showing it must credit "Domain Rating by Ahrefs" (licence term).
|
|
102112
102658
|
* @example 37
|
|
@@ -102141,6 +102687,13 @@ export interface components {
|
|
|
102141
102687
|
* @enum {string}
|
|
102142
102688
|
*/
|
|
102143
102689
|
index_state: "indexed" | "not_indexed" | "unknown" | "never_checked" | "not_entitled";
|
|
102690
|
+
/** @description When the Moz reading was taken. */
|
|
102691
|
+
moz_measured_at?: string | null;
|
|
102692
|
+
/**
|
|
102693
|
+
* @description Moz Page Authority of the site's homepage, 1-100, from the same reading.
|
|
102694
|
+
* @example 31
|
|
102695
|
+
*/
|
|
102696
|
+
page_authority?: number | null;
|
|
102144
102697
|
/**
|
|
102145
102698
|
* @description Distinct domains linking here. Null when not supplied; `0` is a measurement.
|
|
102146
102699
|
* @example 118
|
|
@@ -102178,6 +102731,11 @@ export interface components {
|
|
|
102178
102731
|
* @enum {string}
|
|
102179
102732
|
*/
|
|
102180
102733
|
seo_state: "measured" | "not_in_index" | "never_fetched" | "not_entitled";
|
|
102734
|
+
/**
|
|
102735
|
+
* @description Moz Spam Score, 0-100 (percent of sites with similar features Moz found penalised), from the same reading. 0 is a real, good reading; null is unmeasured.
|
|
102736
|
+
* @example 1
|
|
102737
|
+
*/
|
|
102738
|
+
spam_score?: number | null;
|
|
102181
102739
|
/**
|
|
102182
102740
|
* @description Trust Flow, 0-100. **Null means the provider did not supply it**; `0` means it measured zero. Only present when `seo_state` is `measured`.
|
|
102183
102741
|
* @example 24
|
|
@@ -135031,6 +135589,62 @@ export interface operations {
|
|
|
135031
135589
|
429: components["responses"]["TooManyRequests"];
|
|
135032
135590
|
};
|
|
135033
135591
|
};
|
|
135592
|
+
getMozVendorUsage: {
|
|
135593
|
+
parameters: {
|
|
135594
|
+
query?: never;
|
|
135595
|
+
header?: never;
|
|
135596
|
+
path?: never;
|
|
135597
|
+
cookie?: never;
|
|
135598
|
+
};
|
|
135599
|
+
requestBody?: never;
|
|
135600
|
+
responses: {
|
|
135601
|
+
/** @description The usage report. */
|
|
135602
|
+
200: {
|
|
135603
|
+
headers: {
|
|
135604
|
+
[name: string]: unknown;
|
|
135605
|
+
};
|
|
135606
|
+
content: {
|
|
135607
|
+
"application/json": components["schemas"]["MozVendorUsage"];
|
|
135608
|
+
};
|
|
135609
|
+
};
|
|
135610
|
+
401: components["responses"]["Unauthorized"];
|
|
135611
|
+
403: components["responses"]["Forbidden"];
|
|
135612
|
+
};
|
|
135613
|
+
};
|
|
135614
|
+
updateMozProjectCap: {
|
|
135615
|
+
parameters: {
|
|
135616
|
+
query?: never;
|
|
135617
|
+
header?: never;
|
|
135618
|
+
path: {
|
|
135619
|
+
/** @example v2 */
|
|
135620
|
+
project: string;
|
|
135621
|
+
};
|
|
135622
|
+
cookie?: never;
|
|
135623
|
+
};
|
|
135624
|
+
requestBody: {
|
|
135625
|
+
content: {
|
|
135626
|
+
"application/json": {
|
|
135627
|
+
alert_percent?: number;
|
|
135628
|
+
monthly_rows?: number;
|
|
135629
|
+
};
|
|
135630
|
+
};
|
|
135631
|
+
};
|
|
135632
|
+
responses: {
|
|
135633
|
+
/** @description The expected figure, as stored. */
|
|
135634
|
+
200: {
|
|
135635
|
+
headers: {
|
|
135636
|
+
[name: string]: unknown;
|
|
135637
|
+
};
|
|
135638
|
+
content: {
|
|
135639
|
+
"application/json": components["schemas"]["MozProjectCap"];
|
|
135640
|
+
};
|
|
135641
|
+
};
|
|
135642
|
+
401: components["responses"]["Unauthorized"];
|
|
135643
|
+
403: components["responses"]["Forbidden"];
|
|
135644
|
+
404: components["responses"]["NotFound"];
|
|
135645
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
135646
|
+
};
|
|
135647
|
+
};
|
|
135034
135648
|
getVisibilitySpend: {
|
|
135035
135649
|
parameters: {
|
|
135036
135650
|
query?: never;
|
|
@@ -144041,6 +144655,166 @@ export interface operations {
|
|
|
144041
144655
|
429: components["responses"]["TooManyRequests"];
|
|
144042
144656
|
};
|
|
144043
144657
|
};
|
|
144658
|
+
listAdsSiteTags: {
|
|
144659
|
+
parameters: {
|
|
144660
|
+
query?: {
|
|
144661
|
+
/** @description Narrow to one of your organisations (default: all you can view). */
|
|
144662
|
+
org_id?: string;
|
|
144663
|
+
};
|
|
144664
|
+
header?: never;
|
|
144665
|
+
path?: never;
|
|
144666
|
+
cookie?: never;
|
|
144667
|
+
};
|
|
144668
|
+
requestBody?: never;
|
|
144669
|
+
responses: {
|
|
144670
|
+
/** @description The site tags (up to 200) and the hosts to suggest. */
|
|
144671
|
+
200: {
|
|
144672
|
+
headers: {
|
|
144673
|
+
[name: string]: unknown;
|
|
144674
|
+
};
|
|
144675
|
+
content: {
|
|
144676
|
+
"application/json": components["schemas"]["AdsSiteTagList"];
|
|
144677
|
+
};
|
|
144678
|
+
};
|
|
144679
|
+
401: components["responses"]["Unauthorized"];
|
|
144680
|
+
403: components["responses"]["Forbidden"];
|
|
144681
|
+
};
|
|
144682
|
+
};
|
|
144683
|
+
createAdsSiteTag: {
|
|
144684
|
+
parameters: {
|
|
144685
|
+
query?: never;
|
|
144686
|
+
header?: never;
|
|
144687
|
+
path?: never;
|
|
144688
|
+
cookie?: never;
|
|
144689
|
+
};
|
|
144690
|
+
requestBody: {
|
|
144691
|
+
content: {
|
|
144692
|
+
"application/json": components["schemas"]["AdsSiteTagCreate"];
|
|
144693
|
+
};
|
|
144694
|
+
};
|
|
144695
|
+
responses: {
|
|
144696
|
+
/** @description The new site tag. */
|
|
144697
|
+
201: {
|
|
144698
|
+
headers: {
|
|
144699
|
+
[name: string]: unknown;
|
|
144700
|
+
};
|
|
144701
|
+
content: {
|
|
144702
|
+
"application/json": components["schemas"]["AdsSiteTag"];
|
|
144703
|
+
};
|
|
144704
|
+
};
|
|
144705
|
+
401: components["responses"]["Unauthorized"];
|
|
144706
|
+
403: components["responses"]["Forbidden"];
|
|
144707
|
+
404: components["responses"]["NotFound"];
|
|
144708
|
+
409: components["responses"]["Conflict"];
|
|
144709
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
144710
|
+
};
|
|
144711
|
+
};
|
|
144712
|
+
getAdsSiteTag: {
|
|
144713
|
+
parameters: {
|
|
144714
|
+
query?: never;
|
|
144715
|
+
header?: never;
|
|
144716
|
+
path: {
|
|
144717
|
+
tag_id: string;
|
|
144718
|
+
};
|
|
144719
|
+
cookie?: never;
|
|
144720
|
+
};
|
|
144721
|
+
requestBody?: never;
|
|
144722
|
+
responses: {
|
|
144723
|
+
/** @description The site tag. */
|
|
144724
|
+
200: {
|
|
144725
|
+
headers: {
|
|
144726
|
+
[name: string]: unknown;
|
|
144727
|
+
};
|
|
144728
|
+
content: {
|
|
144729
|
+
"application/json": components["schemas"]["AdsSiteTag"];
|
|
144730
|
+
};
|
|
144731
|
+
};
|
|
144732
|
+
401: components["responses"]["Unauthorized"];
|
|
144733
|
+
403: components["responses"]["Forbidden"];
|
|
144734
|
+
404: components["responses"]["NotFound"];
|
|
144735
|
+
};
|
|
144736
|
+
};
|
|
144737
|
+
updateAdsSiteTag: {
|
|
144738
|
+
parameters: {
|
|
144739
|
+
query?: never;
|
|
144740
|
+
header?: never;
|
|
144741
|
+
path: {
|
|
144742
|
+
tag_id: string;
|
|
144743
|
+
};
|
|
144744
|
+
cookie?: never;
|
|
144745
|
+
};
|
|
144746
|
+
requestBody: {
|
|
144747
|
+
content: {
|
|
144748
|
+
"application/json": components["schemas"]["AdsSiteTagUpdate"];
|
|
144749
|
+
};
|
|
144750
|
+
};
|
|
144751
|
+
responses: {
|
|
144752
|
+
/** @description The changed site tag. */
|
|
144753
|
+
200: {
|
|
144754
|
+
headers: {
|
|
144755
|
+
[name: string]: unknown;
|
|
144756
|
+
};
|
|
144757
|
+
content: {
|
|
144758
|
+
"application/json": components["schemas"]["AdsSiteTag"];
|
|
144759
|
+
};
|
|
144760
|
+
};
|
|
144761
|
+
401: components["responses"]["Unauthorized"];
|
|
144762
|
+
403: components["responses"]["Forbidden"];
|
|
144763
|
+
404: components["responses"]["NotFound"];
|
|
144764
|
+
409: components["responses"]["Conflict"];
|
|
144765
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
144766
|
+
};
|
|
144767
|
+
};
|
|
144768
|
+
deleteAdsSiteTag: {
|
|
144769
|
+
parameters: {
|
|
144770
|
+
query?: never;
|
|
144771
|
+
header?: never;
|
|
144772
|
+
path: {
|
|
144773
|
+
tag_id: string;
|
|
144774
|
+
};
|
|
144775
|
+
cookie?: never;
|
|
144776
|
+
};
|
|
144777
|
+
requestBody?: never;
|
|
144778
|
+
responses: {
|
|
144779
|
+
/** @description Removed. */
|
|
144780
|
+
204: {
|
|
144781
|
+
headers: {
|
|
144782
|
+
[name: string]: unknown;
|
|
144783
|
+
};
|
|
144784
|
+
content?: never;
|
|
144785
|
+
};
|
|
144786
|
+
401: components["responses"]["Unauthorized"];
|
|
144787
|
+
403: components["responses"]["Forbidden"];
|
|
144788
|
+
404: components["responses"]["NotFound"];
|
|
144789
|
+
};
|
|
144790
|
+
};
|
|
144791
|
+
getAdsSiteTagGtmContainer: {
|
|
144792
|
+
parameters: {
|
|
144793
|
+
query?: never;
|
|
144794
|
+
header?: never;
|
|
144795
|
+
path: {
|
|
144796
|
+
tag_id: string;
|
|
144797
|
+
};
|
|
144798
|
+
cookie?: never;
|
|
144799
|
+
};
|
|
144800
|
+
requestBody?: never;
|
|
144801
|
+
responses: {
|
|
144802
|
+
/** @description The container JSON (sent as an attachment). */
|
|
144803
|
+
200: {
|
|
144804
|
+
headers: {
|
|
144805
|
+
[name: string]: unknown;
|
|
144806
|
+
};
|
|
144807
|
+
content: {
|
|
144808
|
+
"application/json": {
|
|
144809
|
+
[key: string]: unknown;
|
|
144810
|
+
};
|
|
144811
|
+
};
|
|
144812
|
+
};
|
|
144813
|
+
401: components["responses"]["Unauthorized"];
|
|
144814
|
+
403: components["responses"]["Forbidden"];
|
|
144815
|
+
404: components["responses"]["NotFound"];
|
|
144816
|
+
};
|
|
144817
|
+
};
|
|
144044
144818
|
getAdsSocial: {
|
|
144045
144819
|
parameters: {
|
|
144046
144820
|
query?: {
|
|
@@ -144207,6 +144981,97 @@ export interface operations {
|
|
|
144207
144981
|
429: components["responses"]["TooManyRequests"];
|
|
144208
144982
|
};
|
|
144209
144983
|
};
|
|
144984
|
+
listAdsWordPressSites: {
|
|
144985
|
+
parameters: {
|
|
144986
|
+
query?: {
|
|
144987
|
+
/** @description Opaque cursor from a previous page's `page.next_cursor`. */
|
|
144988
|
+
cursor?: components["parameters"]["Cursor"];
|
|
144989
|
+
/** @description Maximum items to return (page size). */
|
|
144990
|
+
limit?: components["parameters"]["Limit"];
|
|
144991
|
+
org_id?: string;
|
|
144992
|
+
};
|
|
144993
|
+
header?: never;
|
|
144994
|
+
path?: never;
|
|
144995
|
+
cookie?: never;
|
|
144996
|
+
};
|
|
144997
|
+
requestBody?: never;
|
|
144998
|
+
responses: {
|
|
144999
|
+
/** @description One page of sites. */
|
|
145000
|
+
200: {
|
|
145001
|
+
headers: {
|
|
145002
|
+
[name: string]: unknown;
|
|
145003
|
+
};
|
|
145004
|
+
content: {
|
|
145005
|
+
"application/json": {
|
|
145006
|
+
data: components["schemas"]["AdsWordPressSite"][];
|
|
145007
|
+
page: components["schemas"]["PageMeta"];
|
|
145008
|
+
};
|
|
145009
|
+
};
|
|
145010
|
+
};
|
|
145011
|
+
401: components["responses"]["Unauthorized"];
|
|
145012
|
+
403: components["responses"]["Forbidden"];
|
|
145013
|
+
429: components["responses"]["TooManyRequests"];
|
|
145014
|
+
};
|
|
145015
|
+
};
|
|
145016
|
+
createAdsWordPressPairing: {
|
|
145017
|
+
parameters: {
|
|
145018
|
+
query?: never;
|
|
145019
|
+
header?: never;
|
|
145020
|
+
path?: never;
|
|
145021
|
+
cookie?: never;
|
|
145022
|
+
};
|
|
145023
|
+
requestBody?: {
|
|
145024
|
+
content: {
|
|
145025
|
+
"application/json": {
|
|
145026
|
+
/** Format: uuid */
|
|
145027
|
+
org_id?: string;
|
|
145028
|
+
};
|
|
145029
|
+
};
|
|
145030
|
+
};
|
|
145031
|
+
responses: {
|
|
145032
|
+
/** @description The pending site and its code. */
|
|
145033
|
+
201: {
|
|
145034
|
+
headers: {
|
|
145035
|
+
[name: string]: unknown;
|
|
145036
|
+
};
|
|
145037
|
+
content: {
|
|
145038
|
+
"application/json": components["schemas"]["AdsWordPressSite"] & {
|
|
145039
|
+
/** @example 7KQ2-M9XD-4RTB */
|
|
145040
|
+
code: string;
|
|
145041
|
+
};
|
|
145042
|
+
};
|
|
145043
|
+
};
|
|
145044
|
+
401: components["responses"]["Unauthorized"];
|
|
145045
|
+
403: components["responses"]["Forbidden"];
|
|
145046
|
+
404: components["responses"]["NotFound"];
|
|
145047
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
145048
|
+
429: components["responses"]["TooManyRequests"];
|
|
145049
|
+
};
|
|
145050
|
+
};
|
|
145051
|
+
disconnectAdsWordPressSite: {
|
|
145052
|
+
parameters: {
|
|
145053
|
+
query?: never;
|
|
145054
|
+
header?: never;
|
|
145055
|
+
path: {
|
|
145056
|
+
site_id: string;
|
|
145057
|
+
};
|
|
145058
|
+
cookie?: never;
|
|
145059
|
+
};
|
|
145060
|
+
requestBody?: never;
|
|
145061
|
+
responses: {
|
|
145062
|
+
/** @description Disconnected. */
|
|
145063
|
+
204: {
|
|
145064
|
+
headers: {
|
|
145065
|
+
[name: string]: unknown;
|
|
145066
|
+
};
|
|
145067
|
+
content?: never;
|
|
145068
|
+
};
|
|
145069
|
+
401: components["responses"]["Unauthorized"];
|
|
145070
|
+
403: components["responses"]["Forbidden"];
|
|
145071
|
+
404: components["responses"]["NotFound"];
|
|
145072
|
+
429: components["responses"]["TooManyRequests"];
|
|
145073
|
+
};
|
|
145074
|
+
};
|
|
144210
145075
|
getAffiliateAccount: {
|
|
144211
145076
|
parameters: {
|
|
144212
145077
|
query?: {
|
|
@@ -177562,6 +178427,271 @@ export interface operations {
|
|
|
177562
178427
|
429: components["responses"]["TooManyRequests"];
|
|
177563
178428
|
};
|
|
177564
178429
|
};
|
|
178430
|
+
getAdsSiteTagScript: {
|
|
178431
|
+
parameters: {
|
|
178432
|
+
query?: never;
|
|
178433
|
+
header?: never;
|
|
178434
|
+
path: {
|
|
178435
|
+
public_key: string;
|
|
178436
|
+
};
|
|
178437
|
+
cookie?: never;
|
|
178438
|
+
};
|
|
178439
|
+
requestBody?: never;
|
|
178440
|
+
responses: {
|
|
178441
|
+
/** @description The script. */
|
|
178442
|
+
200: {
|
|
178443
|
+
headers: {
|
|
178444
|
+
/** @description public, max-age=300, s-maxage=300, stale-while-revalidate=86400 */
|
|
178445
|
+
"Cache-Control"?: string;
|
|
178446
|
+
[name: string]: unknown;
|
|
178447
|
+
};
|
|
178448
|
+
content: {
|
|
178449
|
+
"application/javascript": string;
|
|
178450
|
+
};
|
|
178451
|
+
};
|
|
178452
|
+
/** @description No such site tag (a JavaScript comment). */
|
|
178453
|
+
404: {
|
|
178454
|
+
headers: {
|
|
178455
|
+
[name: string]: unknown;
|
|
178456
|
+
};
|
|
178457
|
+
content: {
|
|
178458
|
+
"application/javascript": string;
|
|
178459
|
+
};
|
|
178460
|
+
};
|
|
178461
|
+
};
|
|
178462
|
+
};
|
|
178463
|
+
claimAdsWordPressSite: {
|
|
178464
|
+
parameters: {
|
|
178465
|
+
query?: never;
|
|
178466
|
+
header?: never;
|
|
178467
|
+
path?: never;
|
|
178468
|
+
cookie?: never;
|
|
178469
|
+
};
|
|
178470
|
+
requestBody: {
|
|
178471
|
+
content: {
|
|
178472
|
+
"application/json": {
|
|
178473
|
+
/** @description A CF-Ray header reached PHP. */
|
|
178474
|
+
cloudflare?: boolean;
|
|
178475
|
+
code: string;
|
|
178476
|
+
plugin_version?: string;
|
|
178477
|
+
/**
|
|
178478
|
+
* Format: uri
|
|
178479
|
+
* @description The site's home_url().
|
|
178480
|
+
*/
|
|
178481
|
+
site_url: string;
|
|
178482
|
+
wp_version?: string;
|
|
178483
|
+
};
|
|
178484
|
+
};
|
|
178485
|
+
};
|
|
178486
|
+
responses: {
|
|
178487
|
+
/** @description Connected. */
|
|
178488
|
+
201: {
|
|
178489
|
+
headers: {
|
|
178490
|
+
[name: string]: unknown;
|
|
178491
|
+
};
|
|
178492
|
+
content: {
|
|
178493
|
+
"application/json": {
|
|
178494
|
+
config: components["schemas"]["AdsWordPressConfig"];
|
|
178495
|
+
/** @description zwp_… — store it; it is never shown again. */
|
|
178496
|
+
token: string;
|
|
178497
|
+
};
|
|
178498
|
+
};
|
|
178499
|
+
};
|
|
178500
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
178501
|
+
429: components["responses"]["TooManyRequests"];
|
|
178502
|
+
};
|
|
178503
|
+
};
|
|
178504
|
+
sendAdsWordPressClicks: {
|
|
178505
|
+
parameters: {
|
|
178506
|
+
query?: never;
|
|
178507
|
+
header?: never;
|
|
178508
|
+
path?: never;
|
|
178509
|
+
cookie?: never;
|
|
178510
|
+
};
|
|
178511
|
+
requestBody: {
|
|
178512
|
+
content: {
|
|
178513
|
+
"application/json": {
|
|
178514
|
+
hits: {
|
|
178515
|
+
/** Format: date-time */
|
|
178516
|
+
at: string;
|
|
178517
|
+
ip: string;
|
|
178518
|
+
method?: string;
|
|
178519
|
+
path?: string;
|
|
178520
|
+
query?: string;
|
|
178521
|
+
status?: number;
|
|
178522
|
+
user_agent?: string;
|
|
178523
|
+
}[];
|
|
178524
|
+
};
|
|
178525
|
+
};
|
|
178526
|
+
};
|
|
178527
|
+
responses: {
|
|
178528
|
+
/** @description What was scored. */
|
|
178529
|
+
200: {
|
|
178530
|
+
headers: {
|
|
178531
|
+
[name: string]: unknown;
|
|
178532
|
+
};
|
|
178533
|
+
content: {
|
|
178534
|
+
"application/json": {
|
|
178535
|
+
clicks: number;
|
|
178536
|
+
received: number;
|
|
178537
|
+
stored: number;
|
|
178538
|
+
suspected: number;
|
|
178539
|
+
};
|
|
178540
|
+
};
|
|
178541
|
+
};
|
|
178542
|
+
401: components["responses"]["Unauthorized"];
|
|
178543
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
178544
|
+
429: components["responses"]["TooManyRequests"];
|
|
178545
|
+
};
|
|
178546
|
+
};
|
|
178547
|
+
adsWordPressHeartbeat: {
|
|
178548
|
+
parameters: {
|
|
178549
|
+
query?: never;
|
|
178550
|
+
header?: never;
|
|
178551
|
+
path?: never;
|
|
178552
|
+
cookie?: never;
|
|
178553
|
+
};
|
|
178554
|
+
requestBody?: {
|
|
178555
|
+
content: {
|
|
178556
|
+
"application/json": {
|
|
178557
|
+
cloudflare?: boolean;
|
|
178558
|
+
/** @enum {string} */
|
|
178559
|
+
mode?: "browser" | "zaraz";
|
|
178560
|
+
/** @description {"YYYY-MM-DD": paid orders queued for the server-side upload} */
|
|
178561
|
+
orders_reported?: {
|
|
178562
|
+
[key: string]: number;
|
|
178563
|
+
};
|
|
178564
|
+
plugin_version?: string;
|
|
178565
|
+
wp_version?: string;
|
|
178566
|
+
/** @description {"YYYY-MM-DD": of those, withheld because the visitor declined ad cookies} */
|
|
178567
|
+
zaraz_declined?: {
|
|
178568
|
+
[key: string]: number;
|
|
178569
|
+
};
|
|
178570
|
+
/** @description {"YYYY-MM-DD": of those, handed to Zaraz in the browser} */
|
|
178571
|
+
zaraz_delivered?: {
|
|
178572
|
+
[key: string]: number;
|
|
178573
|
+
};
|
|
178574
|
+
/** @description {"YYYY-MM-DD": purchases sent through Zaraz that day} */
|
|
178575
|
+
zaraz_sent?: {
|
|
178576
|
+
[key: string]: number;
|
|
178577
|
+
};
|
|
178578
|
+
};
|
|
178579
|
+
};
|
|
178580
|
+
};
|
|
178581
|
+
responses: {
|
|
178582
|
+
/** @description The site's config. */
|
|
178583
|
+
200: {
|
|
178584
|
+
headers: {
|
|
178585
|
+
[name: string]: unknown;
|
|
178586
|
+
};
|
|
178587
|
+
content: {
|
|
178588
|
+
"application/json": components["schemas"]["AdsWordPressConfig"];
|
|
178589
|
+
};
|
|
178590
|
+
};
|
|
178591
|
+
401: components["responses"]["Unauthorized"];
|
|
178592
|
+
429: components["responses"]["TooManyRequests"];
|
|
178593
|
+
};
|
|
178594
|
+
};
|
|
178595
|
+
sendAdsWordPressOutcomes: {
|
|
178596
|
+
parameters: {
|
|
178597
|
+
query?: never;
|
|
178598
|
+
header?: never;
|
|
178599
|
+
path?: never;
|
|
178600
|
+
cookie?: never;
|
|
178601
|
+
};
|
|
178602
|
+
requestBody: {
|
|
178603
|
+
content: {
|
|
178604
|
+
"application/json": {
|
|
178605
|
+
outcomes: components["schemas"]["AdsOutcomeIn"][];
|
|
178606
|
+
};
|
|
178607
|
+
};
|
|
178608
|
+
};
|
|
178609
|
+
responses: {
|
|
178610
|
+
/** @description Nothing new (every outcome was already stored). */
|
|
178611
|
+
200: {
|
|
178612
|
+
headers: {
|
|
178613
|
+
[name: string]: unknown;
|
|
178614
|
+
};
|
|
178615
|
+
content: {
|
|
178616
|
+
"application/json": components["schemas"]["AdsOutcomesIngested"];
|
|
178617
|
+
};
|
|
178618
|
+
};
|
|
178619
|
+
/** @description At least one outcome stored. */
|
|
178620
|
+
201: {
|
|
178621
|
+
headers: {
|
|
178622
|
+
[name: string]: unknown;
|
|
178623
|
+
};
|
|
178624
|
+
content: {
|
|
178625
|
+
"application/json": components["schemas"]["AdsOutcomesIngested"];
|
|
178626
|
+
};
|
|
178627
|
+
};
|
|
178628
|
+
401: components["responses"]["Unauthorized"];
|
|
178629
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
178630
|
+
429: components["responses"]["TooManyRequests"];
|
|
178631
|
+
};
|
|
178632
|
+
};
|
|
178633
|
+
sendAdsWordPressRefunds: {
|
|
178634
|
+
parameters: {
|
|
178635
|
+
query?: never;
|
|
178636
|
+
header?: never;
|
|
178637
|
+
path?: never;
|
|
178638
|
+
cookie?: never;
|
|
178639
|
+
};
|
|
178640
|
+
requestBody: {
|
|
178641
|
+
content: {
|
|
178642
|
+
"application/json": {
|
|
178643
|
+
refunds: {
|
|
178644
|
+
/** @description Required with refunded_minor. */
|
|
178645
|
+
currency?: string;
|
|
178646
|
+
external_ref: string;
|
|
178647
|
+
/** @enum {string} */
|
|
178648
|
+
kind: "purchase" | "trial";
|
|
178649
|
+
/** @description Refunded so far, in minor units (refunded in part). Absent, or a total reaching the order's value in the same currency = withdrawn in full. */
|
|
178650
|
+
refunded_minor?: number;
|
|
178651
|
+
}[];
|
|
178652
|
+
};
|
|
178653
|
+
};
|
|
178654
|
+
};
|
|
178655
|
+
responses: {
|
|
178656
|
+
/** @description What was done, summed over the organisation's ad accounts. */
|
|
178657
|
+
200: {
|
|
178658
|
+
headers: {
|
|
178659
|
+
[name: string]: unknown;
|
|
178660
|
+
};
|
|
178661
|
+
content: {
|
|
178662
|
+
"application/json": {
|
|
178663
|
+
already: number;
|
|
178664
|
+
not_found: number;
|
|
178665
|
+
restated: number;
|
|
178666
|
+
retracted: number;
|
|
178667
|
+
};
|
|
178668
|
+
};
|
|
178669
|
+
};
|
|
178670
|
+
401: components["responses"]["Unauthorized"];
|
|
178671
|
+
422: components["responses"]["UnprocessableEntity"];
|
|
178672
|
+
429: components["responses"]["TooManyRequests"];
|
|
178673
|
+
};
|
|
178674
|
+
};
|
|
178675
|
+
disconnectAdsWordPressSelf: {
|
|
178676
|
+
parameters: {
|
|
178677
|
+
query?: never;
|
|
178678
|
+
header?: never;
|
|
178679
|
+
path?: never;
|
|
178680
|
+
cookie?: never;
|
|
178681
|
+
};
|
|
178682
|
+
requestBody?: never;
|
|
178683
|
+
responses: {
|
|
178684
|
+
/** @description Disconnected. */
|
|
178685
|
+
204: {
|
|
178686
|
+
headers: {
|
|
178687
|
+
[name: string]: unknown;
|
|
178688
|
+
};
|
|
178689
|
+
content?: never;
|
|
178690
|
+
};
|
|
178691
|
+
401: components["responses"]["Unauthorized"];
|
|
178692
|
+
429: components["responses"]["TooManyRequests"];
|
|
178693
|
+
};
|
|
178694
|
+
};
|
|
177565
178695
|
getAdsCallPoolNumber: {
|
|
177566
178696
|
parameters: {
|
|
177567
178697
|
query?: {
|
|
@@ -186184,8 +187314,20 @@ export interface operations {
|
|
|
186184
187314
|
group?: string;
|
|
186185
187315
|
/** @description Maximum items to return (page size). */
|
|
186186
187316
|
limit?: components["parameters"]["Limit"];
|
|
187317
|
+
/** @description Only sites whose newest Moz Domain Authority is at most this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187318
|
+
max_da?: number;
|
|
187319
|
+
/** @description Only sites whose newest Moz homepage Page Authority is at most this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187320
|
+
max_pa?: number;
|
|
187321
|
+
/** @description Only sites whose newest Moz Spam Score (percent) is at most this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187322
|
+
max_spam?: number;
|
|
187323
|
+
/** @description Only sites whose newest Moz Domain Authority is at least this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187324
|
+
min_da?: number;
|
|
187325
|
+
/** @description Only sites whose newest Moz homepage Page Authority is at least this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187326
|
+
min_pa?: number;
|
|
187327
|
+
/** @description Only sites whose newest Moz Spam Score (percent) is at least this. s1014 MOZ-V2. A site Moz has not measured is excluded by any bound on that metric (not measured is never 0). Applied across the whole collection. */
|
|
187328
|
+
min_spam?: number;
|
|
186187
187329
|
/** @description Sort key, optionally `-`-prefixed for descending. Defaults to `-created` (newest first). Sorting is applied across the whole collection and the cursor carries the sort position, so paging a sorted list is exact. An unrecognised key is a 422, never a silent fall back to the default. */
|
|
186188
|
-
ordering?: "domain" | "-domain" | "name" | "-name" | "status" | "-status" | "line" | "-line" | "stack" | "-stack" | "region" | "-region" | "plan" | "-plan" | "created" | "-created" | "authority" | "-authority" | "indexed" | "-indexed";
|
|
187330
|
+
ordering?: "domain" | "-domain" | "name" | "-name" | "status" | "-status" | "line" | "-line" | "stack" | "-stack" | "region" | "-region" | "plan" | "-plan" | "created" | "-created" | "authority" | "-authority" | "indexed" | "-indexed" | "da" | "-da" | "pa" | "-pa" | "spam" | "-spam";
|
|
186189
187331
|
/** @description Restrict to one organization in scope (default — the whole subtree). */
|
|
186190
187332
|
org_id?: components["schemas"]["Uuid"];
|
|
186191
187333
|
/** @description Filter by product line code (e.g. `footprint_free`, `mainstream`). */
|
|
@@ -196418,6 +197560,18 @@ export interface operations {
|
|
|
196418
197560
|
query?: {
|
|
196419
197561
|
/** @description Restrict to the sites in one site group. */
|
|
196420
197562
|
group?: string;
|
|
197563
|
+
/** @description Only sites whose newest Moz Domain Authority is at most this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197564
|
+
max_da?: number;
|
|
197565
|
+
/** @description Only sites whose newest Moz homepage Page Authority is at most this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197566
|
+
max_pa?: number;
|
|
197567
|
+
/** @description Only sites whose newest Moz Spam Score (percent) is at most this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197568
|
+
max_spam?: number;
|
|
197569
|
+
/** @description Only sites whose newest Moz Domain Authority is at least this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197570
|
+
min_da?: number;
|
|
197571
|
+
/** @description Only sites whose newest Moz homepage Page Authority is at least this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197572
|
+
min_pa?: number;
|
|
197573
|
+
/** @description Only sites whose newest Moz Spam Score (percent) is at least this, exactly as `listSites` applies it (s1014 MOZ-V2); an unmeasured site is excluded by any bound. */
|
|
197574
|
+
min_spam?: number;
|
|
196421
197575
|
/** @description Restrict to one organization in the caller's scope. */
|
|
196422
197576
|
org_id?: components["schemas"]["Uuid"];
|
|
196423
197577
|
/** @description Filter by product line code. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zinn-digital/sdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1421",
|
|
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>",
|