@trillboards/api-client 2.2.1 → 3.2.1
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/README.md +74 -3
- package/dist/chunk-JLSS2URG.mjs +18 -0
- package/dist/chunk-JLSS2URG.mjs.map +1 -0
- package/dist/generated.d.mts +2228 -112
- package/dist/generated.d.ts +2228 -112
- package/dist/generated.js +4 -4
- package/dist/generated.js.map +1 -1
- package/dist/generated.mjs +1 -1
- package/dist/index.d.mts +206 -11
- package/dist/index.d.ts +206 -11
- package/dist/index.js +275 -32
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +271 -31
- package/dist/index.mjs.map +1 -1
- package/package.json +5 -1
- package/dist/chunk-EIB4SNHX.mjs +0 -18
- package/dist/chunk-EIB4SNHX.mjs.map +0 -1
package/dist/generated.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AUTO-GENERATED. DO NOT EDIT.
|
|
3
3
|
*
|
|
4
|
-
* Generated from:
|
|
4
|
+
* Generated from: merged partner API, bundled Data API and mounted MCP Zod schemas
|
|
5
5
|
* Generator: trillboards-api-client/scripts/generate.js
|
|
6
6
|
*
|
|
7
7
|
* Re-emit via `npm run generate`.
|
|
@@ -209,15 +209,16 @@ type AudienceExportResponse = {
|
|
|
209
209
|
* Per-device cross-day loyalty feature row emitted by the
|
|
210
210
|
* `audience_loyalty_features` dataset. Keyed by a partner-scoped
|
|
211
211
|
* pseudonymous ID — the same physical device yields a different ID
|
|
212
|
-
* for each partner because the HMAC salt is partner-specific
|
|
213
|
-
*
|
|
212
|
+
* for each partner because the HMAC salt is partner-specific: one salt
|
|
213
|
+
* per partner, whichever API key calls, so the ID is the same ref the
|
|
214
|
+
* partner's device-level files carry.
|
|
214
215
|
*
|
|
215
216
|
*/
|
|
216
217
|
type AudienceLoyaltyFeaturesRow = {
|
|
217
|
-
/** How the cross-day device key was formed. `primary_signal_source` is picked by a fixed precedence (`fixed_mac` > `mdns_vendor_model` > `ble_continuity` > `ble_mac_stable`) and `match_confidence` is a direct relabelling of it (first
|
|
218
|
+
/** How the cross-day device key was formed. `primary_signal_source` is picked by a fixed precedence (`fixed_mac` > `mdns_vendor_model` > `wifi_bssid` > `ble_continuity` > `ble_mac_stable`) and `match_confidence` is a direct relabelling of it (first three `high`, `ble_continuity` `medium`, `ble_mac_stable` `low`) — not a computed probability. `wifi_bssid` marks a device observed over WiFi, whose key is its BSSID. */
|
|
218
219
|
_match_disclosure?: {
|
|
219
220
|
match_confidence?: "high" | "medium" | "low";
|
|
220
|
-
primary_signal_source?: "ble_continuity" | "ble_mac_stable" | "mdns_vendor_model" | "fixed_mac";
|
|
221
|
+
primary_signal_source?: "ble_continuity" | "ble_mac_stable" | "mdns_vendor_model" | "fixed_mac" | "wifi_bssid";
|
|
221
222
|
};
|
|
222
223
|
/** NOT a per-device inference: it is the aggregate audience profile of the first screen in the device's visited screen set that has one, copied onto every device that touched that screen. All six sub-fields are `null` when no visited screen carries a profile. */
|
|
223
224
|
demographic_inference?: {
|
|
@@ -258,7 +259,7 @@ type AudienceLoyaltyFeaturesRow = {
|
|
|
258
259
|
top_hour_of_day?: number;
|
|
259
260
|
/** List of venue_category labels (Bar, Restaurant, etc.) the device was observed at. */
|
|
260
261
|
venue_archetypes?: Array<string>;
|
|
261
|
-
/** Count of raw radio OBSERVATIONS, not of visits — one dwelling device emits many rows per minute.
|
|
262
|
+
/** Count of raw radio OBSERVATIONS, not of visits — one dwelling device emits many rows per minute. */
|
|
262
263
|
visit_count_in_window: number;
|
|
263
264
|
};
|
|
264
265
|
type AudienceMetricsResponse = {
|
|
@@ -388,7 +389,7 @@ type BleScanResultData = {
|
|
|
388
389
|
ibeaconUuid?: string | null;
|
|
389
390
|
/** The Bluetooth SIG assigned company identifier from the advert's Manufacturer Specific Data structure (AD type 0xFF), read little-endian — e.g. 76 (0x004c) Apple, 6 Microsoft, 224 (0x00e0) Google. `null` when the record carries no such structure. One synthetic exception: a Google Fast Pair service-data advert is forced to the Google id even though it has no 0xFF structure. */
|
|
390
391
|
manufacturerCompanyId?: number | null;
|
|
391
|
-
/** The BLE advertiser address exactly as Android reports it, unhashed on the device
|
|
392
|
+
/** The BLE advertiser address exactly as Android reports it, unhashed on the device. It is sent over TLS, and Trillboards stores it as received and as a keyed HMAC-SHA256 hash. On most modern phones this is a resolvable private address that ROTATES roughly every 15 minutes, so it is not a stable device identity; the sibling `addr_type` (`public`/`random`/`anonymous`) is what tells the two apart. */
|
|
392
393
|
rawAddress: string;
|
|
393
394
|
/** Received signal strength in dBm (negative, bounded -120..0). It is the MAXIMUM RSSI across every advertisement from this address inside the scan window — the closest observed reading, not a mean — because the scanner groups repeated adverts per address and keeps the strongest as the representative. */
|
|
394
395
|
rssi: number;
|
|
@@ -402,7 +403,7 @@ type BleScanResultData = {
|
|
|
402
403
|
};
|
|
403
404
|
type CanonicalError = {
|
|
404
405
|
error: {
|
|
405
|
-
/** Stable machine-readable error code. Switch on this, never on `message`. The
|
|
406
|
+
/** Stable machine-readable error code. Switch on this, never on `message`. The 143 CATALOGUED codes are published as the `ErrorCode` schema and served live by `GET /v1/errors`, which is the authority. This field is NOT limited to them: services emit further codes directly, and `ApiError.notFound(resource)` mints `<resource>_not_found` from an arbitrary resource name. Always handle an unrecognised code by falling back to `type`. */
|
|
406
407
|
code: string;
|
|
407
408
|
/** Per-field violations (populated from Zod errors). */
|
|
408
409
|
details?: Array<{
|
|
@@ -458,11 +459,14 @@ type CompletedImpressions = {
|
|
|
458
459
|
/** NUMERIC(18,6). */
|
|
459
460
|
actual_gross_revenue?: number | null;
|
|
460
461
|
ad_id: string;
|
|
462
|
+
advertiser_domain?: string | null;
|
|
461
463
|
bid_request_id?: string | null;
|
|
462
464
|
billable_key?: string | null;
|
|
465
|
+
buyer_seat?: string | null;
|
|
463
466
|
completed_at: string;
|
|
464
|
-
/**
|
|
467
|
+
/** content_sha256 is DECLARED to propagate from vast_requests via request_id but lands on ~1% of rows: PG vast_requests is empty (vastRequestsWriteBuffer defaultDisabled since 2026-06-26), so that lin... */
|
|
465
468
|
content_sha256?: string | null;
|
|
469
|
+
/** chEventParityCron: exact-key repair; created_at/oldest authorized floor; original completed_at CH key; same writer/DLQ before ACK; no delivery debit. All leaf pending indexes must be valid; failed/... */
|
|
466
470
|
created_at: string;
|
|
467
471
|
creative_id?: string | null;
|
|
468
472
|
currency: string;
|
|
@@ -473,31 +477,36 @@ type CompletedImpressions = {
|
|
|
473
477
|
display_mode?: string | null;
|
|
474
478
|
/** NUMERIC(10,2). */
|
|
475
479
|
duration_seconds?: number | null;
|
|
480
|
+
earnings_deal_id?: string | null;
|
|
481
|
+
earnings_deal_type?: string | null;
|
|
482
|
+
earnings_source?: string | null;
|
|
476
483
|
event_clock_skew_seconds?: number | null;
|
|
477
484
|
event_timestamp_clamped?: boolean | null;
|
|
478
485
|
givt_passed?: boolean | null;
|
|
479
|
-
/** JustBaat
|
|
486
|
+
/** JustBaat dedupes issued request keys; Adipolo/VidVerto/others use rendered impression_id with request fallback. Readers/rollups dedupe overlapping vast_event, proof_of_play and approved partner_sdk. */
|
|
480
487
|
id?: number | null;
|
|
481
488
|
impression_id?: string | null;
|
|
482
489
|
/** NUMERIC(12,6). */
|
|
483
490
|
impression_multiplier: number;
|
|
484
491
|
ingestion_path: string;
|
|
492
|
+
/** SDK missing-price is server-pending until signed native pricing; directbillable_ is not authority. Client debit/mirror/pending claims are stripped. Legacy finalization: recorded/native nonnull zero... */
|
|
485
493
|
metadata: Record<string, unknown>;
|
|
486
494
|
normalized_event_timestamp?: string | null;
|
|
487
495
|
play_id?: string | null;
|
|
488
|
-
/**
|
|
496
|
+
/** PG is the canonical completion write; completed_impressions_dist is its CH reporting mirror. pricing_source: 'placement_purchase'=ad_price/goal per play; '*_overdelivered'/'*_zero'=$0; 'config_defa... */
|
|
489
497
|
pricing_source: string;
|
|
490
498
|
quantity_measured_at?: string | null;
|
|
491
499
|
quantity_source?: string | null;
|
|
492
500
|
quantity_source_type?: number | null;
|
|
493
501
|
quantity_vendor?: string | null;
|
|
494
502
|
raw_client_timestamp?: string | null;
|
|
503
|
+
/** owned_direct = signed src or verified SDK. VAST impid, request_id and SDK suffix share one nonce/PG row; completion, exact debit and eligible billing commit together. First authorized write owns CH... */
|
|
495
504
|
request_id?: string | null;
|
|
496
505
|
screen_id?: number | null;
|
|
497
506
|
screen_mongo_id: string;
|
|
498
507
|
serving_tenant_id?: number | null;
|
|
499
508
|
signature?: string | null;
|
|
500
|
-
/** ImpressionController drops rows
|
|
509
|
+
/** ImpressionController drops rows with unknown source_provider (PR #2924); earnings use partner billing policy, not raw counts. Exclude pi_e2e_*, admin-allocation and is_demo_data from revenue. */
|
|
501
510
|
source_provider: string;
|
|
502
511
|
variant_id?: number | null;
|
|
503
512
|
variant_name?: string | null;
|
|
@@ -589,12 +598,14 @@ type CreatePartnerSensingRouteRequest = {
|
|
|
589
598
|
};
|
|
590
599
|
/** Only the JSON literal `false` creates the route disabled — any other value, including `0` and the string `"false"`, creates it enabled. Note the update endpoint inverts this test, so send a real boolean on both. */
|
|
591
600
|
enabled?: boolean;
|
|
592
|
-
/** `threshold` (the default) needs a `condition` and evaluates every incoming observation. `digest` needs a `digest` block instead, sends on a schedule, and rejects `screenFocusRegions
|
|
601
|
+
/** `threshold` (the default) needs a `condition` and evaluates every incoming observation. `digest` needs a `digest` block instead, sends on a schedule, and rejects `screenFocusRegions` and explicit review timing. Only the exact string `digest` selects digest mode; anything else falls back to `threshold`. */
|
|
593
602
|
mode?: "threshold" | "digest";
|
|
594
603
|
/** Operator-supplied label, required, trimmed and capped at 200 characters. It is delivered as `route_name` on every fire and shown in operator surfaces; it is not the alert text. */
|
|
595
604
|
name: string;
|
|
596
605
|
/** Bind to a named Sense Anything profile (stable across redeploys). */
|
|
597
606
|
profileName?: string;
|
|
607
|
+
reviewTimingMode?: SensingRouteReviewTimingMode;
|
|
608
|
+
reviewWaitSeconds?: SensingRouteReviewWaitSeconds;
|
|
598
609
|
/** Optional per-camera rectangles or polygon lassos. Every entry must reference screenMongoIds. Supported only for visual threshold alerts using once_per_episode, on_escalation, or nag_until_resolved cadence; not digest, group-targeted, non-visual, or per_new_entity routes. */
|
|
599
610
|
screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
|
|
600
611
|
/** Screens to watch — all owned by this partner (foreign → 403). Provide EITHER screenMongoIds OR targetGroupId, not both. */
|
|
@@ -650,6 +661,31 @@ type CreativeClassification = {
|
|
|
650
661
|
/** Always `null` in practice: the only writer of the underlying `creative_reviews.thumbnail_url` column has no remaining callers, so nothing populates it. When it did carry a value it was constrained to a Trillboards CDN host, so an off-host thumbnail was dropped rather than passed through. */
|
|
651
662
|
thumbnail_url?: string | null;
|
|
652
663
|
};
|
|
664
|
+
/**
|
|
665
|
+
* Native readiness hint delivered through existing partner SSE and the audited webhook queue. The hint is free; only the canonical reward page uses native paid admission.
|
|
666
|
+
*/
|
|
667
|
+
type CreativeRewardsReadyEvent = {
|
|
668
|
+
data: {
|
|
669
|
+
advertisement_id: string;
|
|
670
|
+
/** Lossless native build stamp. */
|
|
671
|
+
build_stamp: string;
|
|
672
|
+
builder_version: string;
|
|
673
|
+
experiment_id: string;
|
|
674
|
+
from: string;
|
|
675
|
+
notification_id: string;
|
|
676
|
+
object: "creative_reward_ready";
|
|
677
|
+
recovery: "rewind_and_dedupe";
|
|
678
|
+
request_idempotency_key_required: true;
|
|
679
|
+
/** Canonical native reward path plus date scope; never contains credentials or a paid request key. */
|
|
680
|
+
reward_reader_url: string;
|
|
681
|
+
to: string;
|
|
682
|
+
view: "latest_state";
|
|
683
|
+
};
|
|
684
|
+
event: "creative.rewards_ready";
|
|
685
|
+
/** Audited webhook notification ID; SSE data carries the same ID inside data.notification_id. */
|
|
686
|
+
id?: string;
|
|
687
|
+
timestamp: string;
|
|
688
|
+
};
|
|
653
689
|
type DashboardResponse = {
|
|
654
690
|
/** All amounts are integer US cents. `total_earned_cents` is lifetime earner revenue across every status (estimated + confirmed + paid); `available_payout_cents` is only the Net-60-matured payable balance minus anything already reserved, floored at 0; `next_payout_date` is simply the 1st of next month, computed in the handler with no reference to a scheduled transfer. `revenue_share_percent` is 0-100 and reads `60` when no `publisher_payout_rates` rule applies. */
|
|
655
691
|
earnings?: {
|
|
@@ -696,13 +732,157 @@ type DashboardResponse = {
|
|
|
696
732
|
screen_id?: string;
|
|
697
733
|
}>;
|
|
698
734
|
};
|
|
735
|
+
type DataApi_AggregateResponse = {
|
|
736
|
+
aggregations: Array<Record<string, unknown>>;
|
|
737
|
+
group_by: string;
|
|
738
|
+
metric: string;
|
|
739
|
+
time_window: string;
|
|
740
|
+
};
|
|
741
|
+
type DataApi_Error = {
|
|
742
|
+
error: {
|
|
743
|
+
/** Stable machine-readable error code. Switch on this, never on `message`. The 143 CATALOGUED codes are published as the `ErrorCode` schema and served live by `GET /v1/errors`, which is the authority. This field is NOT limited to them: services emit further codes directly, and `ApiError.notFound(resource)` mints `<resource>_not_found` from an arbitrary resource name. Always handle an unrecognised code by falling back to `type`. */
|
|
744
|
+
code: string;
|
|
745
|
+
/** Per-field violations (populated from Zod errors). */
|
|
746
|
+
details?: Array<{
|
|
747
|
+
code?: string;
|
|
748
|
+
message?: string;
|
|
749
|
+
param?: string;
|
|
750
|
+
}>;
|
|
751
|
+
/** Link to the documentation for this error code (https://api.trillboards.com/docs/errors#<code>). */
|
|
752
|
+
doc_url?: string;
|
|
753
|
+
/** Agent-facing hints and suggestions. */
|
|
754
|
+
help?: {
|
|
755
|
+
portal_url?: string;
|
|
756
|
+
suggestions?: Array<string>;
|
|
757
|
+
summary?: string;
|
|
758
|
+
try_next?: string;
|
|
759
|
+
};
|
|
760
|
+
/** Human-readable error message. Safe to surface to end-users. */
|
|
761
|
+
message: string;
|
|
762
|
+
/** Offending parameter name (when applicable). */
|
|
763
|
+
param?: string;
|
|
764
|
+
/** Echoed X-Request-Id for correlation. */
|
|
765
|
+
request_id: string;
|
|
766
|
+
/** Stripe-style error taxonomy (derived from utils/errorCatalog). */
|
|
767
|
+
type: "api_error" | "authentication_error" | "idempotency_error" | "invalid_request_error" | "permission_error" | "rate_limit_error";
|
|
768
|
+
};
|
|
769
|
+
};
|
|
770
|
+
/**
|
|
771
|
+
* The 143 CATALOGUED error codes, generated from utils/errorCatalog.js — the same catalog that backs https://api.trillboards.com/docs/errors. This is the documented registry, NOT the complete set of codes the API can emit: a response `code` is an open string (see `TrillboardsError`). Use this list to recognise a code, never to assume a response cannot carry another.
|
|
772
|
+
*/
|
|
773
|
+
type DataApi_ErrorCode = "AUTH_REQUIRED" | "BRAND_CONFIGURATION_FAILED" | "BRAND_PROFILE_CONFLICT" | "BRAND_PROFILE_NOT_FOUND" | "CREATIVE_ADVERTISEMENT_NOT_OWNED" | "CREATIVE_MODERATION_UNAVAILABLE" | "CREATIVE_NOT_LINKED" | "CREATIVE_NOT_READY" | "CREATIVE_POLICY_CONFLICT" | "CREATIVE_TOO_LARGE" | "EXPERIMENT_COMPLETED" | "EXPERIMENT_NOT_FOUND" | "FEEDBACK_POLICY_REQUIRED" | "IDEMPOTENCY_CONFLICT" | "INVALID_BRAND_RULES" | "INVALID_CREATIVE_URL" | "INVALID_CREATIVE_WEIGHTS" | "INVALID_FEEDBACK_CREATIVE" | "INVALID_FEEDBACK_OBJECTIVE" | "INVALID_FEEDBACK_REQUEST" | "INVALID_POLICY_VERSION" | "INVALID_VARIANTS" | "MEDIA_BUY_NOT_FOUND" | "OPERATION_ALREADY_COMMITTED" | "OPERATION_IN_PROGRESS" | "POLICY_NOT_AVAILABLE" | "SOURCE_CREATIVE_NOT_FOUND" | "UNSUPPORTED_CREATIVE_TYPE" | "VARIANT_IDENTITY_CONFLICT" | "ad_interval_out_of_range" | "allocation_out_of_range" | "analytics_unavailable" | "api_key_expired" | "api_key_owner_missing" | "api_key_revoked" | "array_items_must_be_strings" | "array_too_large" | "auth_error" | "authentication_required" | "batch_size_exceeded" | "blocked_advertisers_too_large" | "blocked_iab_categories_too_large" | "client_ip_required" | "concurrent_request_limit" | "conflict" | "conflicting_lists" | "creative_policy_conflict" | "creative_policy_forbidden" | "daily_quota_exceeded" | "database_error" | "dataset_not_scopable" | "device_already_registered" | "device_identity_missing" | "device_identity_underivable" | "device_not_found" | "device_offline" | "dsp_access_denied" | "error" | "field_must_be_array" | "field_must_be_boolean" | "field_too_long" | "floor_price_out_of_range" | "forbidden" | "idempotency_error" | "idempotency_key_in_use" | "idempotency_key_mismatch" | "insufficient_data" | "insufficient_permissions" | "insufficient_scope" | "internal_error" | "invalid_ad_surface_mode" | "invalid_age_rating" | "invalid_api_key" | "invalid_api_key_format" | "invalid_array_items" | "invalid_creative_policy" | "invalid_currency" | "invalid_dataset" | "invalid_device_id" | "invalid_dimensions" | "invalid_display_mode" | "invalid_field_type" | "invalid_field_value" | "invalid_fingerprint" | "invalid_json" | "invalid_lbar_position" | "invalid_lbar_settings" | "invalid_measures" | "invalid_media_url" | "invalid_order_by" | "invalid_orientation" | "invalid_pip_position" | "invalid_pip_settings" | "invalid_preference_level" | "invalid_preferences" | "invalid_provider" | "invalid_screen_id" | "invalid_segment_rules" | "invalid_sizing_mode" | "invalid_stream_type" | "invalid_webhook_events" | "invalid_webhook_url" | "lbar_settings_must_be_object" | "lbar_size_out_of_range" | "missing_required_field" | "not_found" | "openrtb_auth_failed" | "openrtb_config_missing" | "paired_training_insert_failed" | "paired_training_rate_limit_exceeded" | "partner_inactive" | "pip_margin_out_of_range" | "pip_settings_must_be_object" | "pip_size_ratio_out_of_range" | "preferences_must_be_object" | "preferences_required" | "preset_id_required" | "preset_not_found" | "rate_limit_exceeded" | "resource_locked" | "screen_ids_required" | "screen_not_found" | "screen_not_in_scope" | "sdk_enrich_rate_limit_exceeded" | "sdk_impression_rate_limit_exceeded" | "sdk_qr_beacon_rate_limit_exceeded" | "sdk_qr_scan_rate_limit_exceeded" | "segment_limit_exceeded" | "segment_not_found" | "service_unavailable" | "stale_data" | "stream_content_required" | "stream_not_found" | "tier_insufficient" | "timeout" | "timeout_out_of_range" | "unknown_agent_type" | "unsupported_media_type" | "validation_error" | "webhook_limit_exceeded" | "webhook_not_found" | "webhook_secret_expired" | "webhook_url_unreachable";
|
|
774
|
+
type DataApi_ExampleHealthcheckResponse = {
|
|
775
|
+
/** Echoed X-Request-Id for correlation. */
|
|
776
|
+
request_id?: string;
|
|
777
|
+
service: string;
|
|
778
|
+
/** Always "ok" when the service is reachable. */
|
|
779
|
+
status: "ok";
|
|
780
|
+
version?: string;
|
|
781
|
+
};
|
|
782
|
+
type DataApi_FeedbackRewardQuery = {
|
|
783
|
+
/** Opaque next_cursor from this same date scope; rewind after scan_complete. */
|
|
784
|
+
cursor?: string;
|
|
785
|
+
/** Inclusive first play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
786
|
+
from: string;
|
|
787
|
+
/** Unique caller-owned billing key for this page; committed retries return the receipt, not another read. */
|
|
788
|
+
idempotency_key: string;
|
|
789
|
+
/** Maximum native play states returned on this metered page. */
|
|
790
|
+
limit?: number;
|
|
791
|
+
/** Inclusive last play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
792
|
+
to: string;
|
|
793
|
+
};
|
|
794
|
+
type DataApi_LookalikeResponse = {
|
|
795
|
+
matches: Array<Record<string, unknown>>;
|
|
796
|
+
matches_count: number;
|
|
797
|
+
source_screen_id: string;
|
|
798
|
+
};
|
|
799
|
+
type DataApi_QueryDslBody = {
|
|
800
|
+
/** Dataset name. Defaults to `inference_outcomes`. */
|
|
801
|
+
dataset?: string;
|
|
802
|
+
dimensions?: Array<string>;
|
|
803
|
+
filters?: Array<DataApi_QueryFilter>;
|
|
804
|
+
limit?: number;
|
|
805
|
+
measures?: Array<string>;
|
|
806
|
+
order_by?: Array<DataApi_QueryOrderBy>;
|
|
807
|
+
};
|
|
808
|
+
type DataApi_QueryDslResponse = {
|
|
809
|
+
count: number;
|
|
810
|
+
/** `observation_stream` when it is served from ClickHouse: the population the answer counts and the first instant the dataset holds. */
|
|
811
|
+
coverage?: {
|
|
812
|
+
population: string;
|
|
813
|
+
since: string;
|
|
814
|
+
};
|
|
815
|
+
dataset: string;
|
|
816
|
+
dimensions: Array<string>;
|
|
817
|
+
/** `inference_outcomes` only. The `inference_source` values the query read (`null` when a range filter makes the set unstateable), and whether the camera-only default was applied because the request did not filter on `inference_source`. */
|
|
818
|
+
inference_source?: {
|
|
819
|
+
defaulted: boolean;
|
|
820
|
+
values: Array<string> | null;
|
|
821
|
+
};
|
|
822
|
+
limit: number;
|
|
823
|
+
measures: Array<string>;
|
|
824
|
+
/** `inference_outcomes` only. `measured` when every row read is a camera measurement, `modeled` when every row is a venue-profile estimate, `mixed` when the answer aggregates both. */
|
|
825
|
+
provenance?: "measured" | "modeled" | "mixed";
|
|
826
|
+
/** Result rows. For `inference_outcomes` every row also carries `provenance` (`measured`, `modeled` or `mixed`). */
|
|
827
|
+
rows: Array<Record<string, unknown>>;
|
|
828
|
+
};
|
|
829
|
+
type DataApi_QueryFilter = {
|
|
830
|
+
field: string;
|
|
831
|
+
op?: "eq" | "in" | "gte" | "lte" | "between";
|
|
832
|
+
value?: unknown;
|
|
833
|
+
};
|
|
834
|
+
type DataApi_QueryOrderBy = {
|
|
835
|
+
direction?: "asc" | "desc" | "ASC" | "DESC";
|
|
836
|
+
field: string;
|
|
837
|
+
};
|
|
838
|
+
type DataApi_ScreenAudienceResponse = {
|
|
839
|
+
audience: Record<string, unknown> | null;
|
|
840
|
+
message?: string;
|
|
841
|
+
screen_id: string;
|
|
842
|
+
source?: string;
|
|
843
|
+
};
|
|
844
|
+
type DataApi_ScreenHistoryResponse = {
|
|
845
|
+
count: number;
|
|
846
|
+
metrics: Array<Record<string, unknown>>;
|
|
847
|
+
screen_id: string;
|
|
848
|
+
source?: "camera" | "signal_derived";
|
|
849
|
+
};
|
|
850
|
+
type DataApi_ScreensListResponse = {
|
|
851
|
+
count: number;
|
|
852
|
+
has_more: boolean;
|
|
853
|
+
limit: number;
|
|
854
|
+
next_offset: number | null;
|
|
855
|
+
offset: number;
|
|
856
|
+
screens: Array<Record<string, unknown>>;
|
|
857
|
+
total: number;
|
|
858
|
+
};
|
|
859
|
+
type DataApi_SemanticSearchResponse = {
|
|
860
|
+
query: string;
|
|
861
|
+
results: Array<Record<string, unknown>>;
|
|
862
|
+
results_count: number;
|
|
863
|
+
time_window?: string;
|
|
864
|
+
};
|
|
865
|
+
type DataApi_StatsResponse = {
|
|
866
|
+
active_screens: number;
|
|
867
|
+
embeddings: Record<string, unknown>;
|
|
868
|
+
metrics_last_24h: number;
|
|
869
|
+
partner?: string;
|
|
870
|
+
};
|
|
871
|
+
type DataApi_StreamResponse = {
|
|
872
|
+
/** Server-Sent Events stream. Each event carries `data: <json>` lines per the SSE spec. */
|
|
873
|
+
note?: string;
|
|
874
|
+
};
|
|
875
|
+
type DataApi_UsageResponse = {
|
|
876
|
+
data: Array<Record<string, unknown>>;
|
|
877
|
+
period_days: number;
|
|
878
|
+
};
|
|
699
879
|
/**
|
|
700
880
|
* Per-dataset record counts + date ranges for the partner's screens.
|
|
701
881
|
* Returned by `GET /data-export/summary`.
|
|
702
882
|
*
|
|
703
883
|
*/
|
|
704
884
|
type DataExportSummaryResponse = {
|
|
705
|
-
/** `lookback_days` is `min(?days,
|
|
885
|
+
/** `lookback_days` is `min(?days, 400)` and defaults to 7. `screen_count` is how many screens the export is SCOPED to, not how many hold data. Each `datasets` entry is a `total_records`/`earliest`/`latest` triple, and a dataset whose count query FAILED is reported as `0` with null bounds rather than as an error. */
|
|
706
886
|
data?: {
|
|
707
887
|
/** Map of dataset name to record summary */
|
|
708
888
|
datasets?: Record<string, {
|
|
@@ -710,7 +890,6 @@ type DataExportSummaryResponse = {
|
|
|
710
890
|
latest?: string | null;
|
|
711
891
|
total_records?: number;
|
|
712
892
|
}>;
|
|
713
|
-
k_anonymity_threshold?: number;
|
|
714
893
|
lookback_days?: number;
|
|
715
894
|
screen_count?: number;
|
|
716
895
|
};
|
|
@@ -780,7 +959,7 @@ type Device = {
|
|
|
780
959
|
created_at?: string;
|
|
781
960
|
/** Trillboards-minted 24-char Mongo ObjectId hex for the `earner_screen_devices` row (`mongo_earnerscreen_device_id`). This is NOT the `device_id` you sent at registration — that comes back as `external_device_id`; the batch endpoint calls this same value `trillboard_id`. All three of `device_id`, `fingerprint` and `external_device_id` are accepted as the `{deviceId}` path parameter, resolved in that order. */
|
|
782
961
|
device_id?: string;
|
|
783
|
-
/**
|
|
962
|
+
/** Saved partner category, independent of advertising classification. POST with an existing device_id and PATCH accept category updates. Legacy devices without a saved declaration retain their previous numeric-derived label until explicitly updated. */
|
|
784
963
|
device_type?: string;
|
|
785
964
|
/** Screen display specification. `width`/`height` are pixel resolution; `width_in`/`height_in` are physical inches. Pixel-only inputs are NOT recorded as physical size — pass `width_in`/`height_in` (most accurate) or `ppi` so the server can derive inches from pixels. */
|
|
786
965
|
display?: {
|
|
@@ -806,8 +985,12 @@ type Device = {
|
|
|
806
985
|
fingerprint?: string;
|
|
807
986
|
/** Resolved geo, read from the enriched screen row first and falling back to the raw registration-time device row, with placeholder strings ("City", "Vending Machine Location") filtered out. `lat`/`lng` coalesce as a PAIR — a half-set or null-island (0,0) screen pair is discarded whole in favour of the device's coordinates — and `venue_type` here is the OpenOOH CHILD slug, while `venue.category` carries the parent. `timezone` is the one exception to screen-first: it is read device-first. */
|
|
808
987
|
location?: Record<string, unknown>;
|
|
988
|
+
location_capability?: PartnerLocationCapability;
|
|
989
|
+
/** Stripe-style readiness, the same contract registration returns (see https://api.trillboards.com/docs/monetization-requirements). */
|
|
990
|
+
monetization_status?: "ready" | "limited" | "blocked";
|
|
809
991
|
/** The linked screen's name, falling back to the raw `external_device_id` when the screen has none. Omitting `name` at registration seeds the screen as `Partner Device: <device_id>`, so that literal string is what you get back rather than a null. */
|
|
810
992
|
name?: string;
|
|
993
|
+
requirements?: PartnerMonetizationRequirements;
|
|
811
994
|
/** The linked screen's Mongo ObjectId hex (`earner_screens.mongo_earnerscreen_id`), minted server-side at registration. This — not `device_id` — is the id the non-device partner endpoints take (display settings, screen groups, fleet commands, analytics). Absent when no screen is linked to the device. */
|
|
812
995
|
screen_id?: string;
|
|
813
996
|
/** Provisioning state of the underlying screen row, not a liveness signal — a device that has stopped reporting still reads `approved`. Partner registration stamps `approved` on create (`partnerDeviceRegistrationService.js`), which is what almost every live partner device returns; `pending` is the formatter's fallback when the screen row carries no status of its own. */
|
|
@@ -817,6 +1000,17 @@ type Device = {
|
|
|
817
1000
|
/** OpenOOH classification of the screen, rebuilt from the typed `screen_venue_taxonomy` row. `category` is the PARENT slug and `subcategory` the child, with `openooh_venue_type_id` the unambiguous numeric child id — so a granular input like `hotel` reads back as a parent/child pair, not as what you sent. Empty until classification lands, unless your registration itself carried a resolvable `venue.category`/`subcategory`. */
|
|
818
1001
|
venue?: Record<string, unknown>;
|
|
819
1002
|
};
|
|
1003
|
+
/**
|
|
1004
|
+
* The device-authentication layer's refusal (missing, invalid or replayed device credential).
|
|
1005
|
+
*/
|
|
1006
|
+
type DeviceAuthRefusal = {
|
|
1007
|
+
/** The HTTP status. */
|
|
1008
|
+
code?: number;
|
|
1009
|
+
/** device_token_required, invalid_device_token, device_not_found, device_identity_mismatch, device_token_subject_mismatch, device_screen_mismatch, missing_device_timestamp, missing_device_nonce, stale_device_request, replayed_device_request or replay_guard_unavailable. */
|
|
1010
|
+
error?: string;
|
|
1011
|
+
message?: string;
|
|
1012
|
+
status?: false;
|
|
1013
|
+
};
|
|
820
1014
|
type DeviceCapabilityPayload = {
|
|
821
1015
|
/** Runtime family of the agent (`fire-tv`, `android-tv`, `tablet`, `tablet-lite`, `webos`, `vidaa`, `web-browser`, `brightsign`). It is NOT read from here on the partner path — the server derives `agent_type` from `telemetry.agentType` plus hardware signals, and overrides a self-declared `web-browser` when the model/UA say otherwise, because partner SDKs running in a WebView historically reported `web-browser` for physical DOOH tablets. */
|
|
822
1016
|
agentType?: string | null;
|
|
@@ -913,7 +1107,7 @@ type DeviceSummary = {
|
|
|
913
1107
|
created_at?: string;
|
|
914
1108
|
/** Trillboards-minted 24-char Mongo ObjectId hex for the `earner_screen_devices` row (`mongo_earnerscreen_device_id`). Not the `device_id` you sent at registration — that is returned as `external_device_id`. Accepted as the `{deviceId}` path parameter, as are `fingerprint` and `external_device_id`. */
|
|
915
1109
|
device_id?: string;
|
|
916
|
-
/**
|
|
1110
|
+
/** Saved mutable partner category, independent of advertising classification. Legacy devices without a saved declaration retain their previous numeric-derived label until explicitly updated. */
|
|
917
1111
|
device_type?: string;
|
|
918
1112
|
/** Emits `orientation` (from the screen, defaulting to `landscape`) and `ppi` (from the device row). `width`/`height` still read `dimension_width`/`dimension_height`, columns DROPPED from `earner_screen_devices` by migration `20260527180000`, so they resolve to undefined and are omitted from the JSON entirely — registered pixels now live in `screen_width_px`/`screen_height_px`. Physical inches you send as `width_in`/`height_in` are stored but never echoed here. */
|
|
919
1113
|
display?: Record<string, unknown>;
|
|
@@ -927,8 +1121,12 @@ type DeviceSummary = {
|
|
|
927
1121
|
fingerprint?: string;
|
|
928
1122
|
/** Resolved geo: the enriched screen row first, falling back to the registration-time device row, with placeholder strings coalesced away. `lat`/`lng` coalesce as a pair, `venue_type` is the OpenOOH child slug, and `timezone` alone is read device-first. */
|
|
929
1123
|
location?: Record<string, unknown>;
|
|
1124
|
+
location_capability?: PartnerLocationCapability;
|
|
1125
|
+
/** Stripe-style readiness, the same contract registration returns (see https://api.trillboards.com/docs/monetization-requirements). */
|
|
1126
|
+
monetization_status?: "ready" | "limited" | "blocked";
|
|
930
1127
|
/** The linked screen's name, falling back to the raw `external_device_id` when the screen has none. A registration that omits `name` seeds the screen as `Partner Device: <device_id>`. */
|
|
931
1128
|
name?: string;
|
|
1129
|
+
requirements?: PartnerMonetizationRequirements;
|
|
932
1130
|
/** The linked screen's Mongo ObjectId hex (`earner_screens.mongo_earnerscreen_id`). This is the id every non-device partner endpoint takes — display settings, screen groups, fleet commands, analytics. Absent when no screen is linked. */
|
|
933
1131
|
screen_id?: string;
|
|
934
1132
|
/** The linked screen's `earner_screens.status` verbatim. Partner registration auto-approves, so the live value is `approved` (`deactivated` after a DELETE, `pending` only while no screen is linked) — not the `pending`/`active`/`offline`/`suspended` vocabulary the `Device` schema declares, whose mapper has no production call site. */
|
|
@@ -1159,6 +1357,7 @@ type EarnerScreens = {
|
|
|
1159
1357
|
venue_state?: string | null;
|
|
1160
1358
|
venue_subcategory?: string | null;
|
|
1161
1359
|
waterfall_optimized_at?: string | null;
|
|
1360
|
+
/** waterfall_partners is the ONLY pin store (order + whitelist; screen_partner_settings was never built). Serving reads it only with a screen_header_bidding_config row and ignores it once waterfall_op... */
|
|
1162
1361
|
waterfall_partners: Array<string>;
|
|
1163
1362
|
waterfall_total_timeout_ms?: number | null;
|
|
1164
1363
|
/** physical_size JSONB being split into typed cols (Wave 1 D2): width_inches/height_inches/diagonal_inches from migration 342; physical_size_set_by/physical_size_set_at from PR #4471. JSONB authoritat... */
|
|
@@ -1169,6 +1368,7 @@ type EarningsBreakdownResponse = {
|
|
|
1169
1368
|
breakdown?: Array<{
|
|
1170
1369
|
/** Date or screen_id depending on group_by */
|
|
1171
1370
|
date?: string;
|
|
1371
|
+
earning_sources?: EarningsSources;
|
|
1172
1372
|
earnings_cents?: number;
|
|
1173
1373
|
impressions?: number;
|
|
1174
1374
|
/** Screen ID (when grouped by screen) */
|
|
@@ -1185,9 +1385,11 @@ type EarningsBreakdownResponse = {
|
|
|
1185
1385
|
group_by?: "day" | "week" | "screen";
|
|
1186
1386
|
start?: string;
|
|
1187
1387
|
};
|
|
1188
|
-
/** Integer US cents.
|
|
1388
|
+
/** Integer US cents for the selected period. With source reporting enabled, direct_cents is verified first-party revenue and programmatic_cents is the remainder; earning_sources supplies the business classification. Disabled reporting retains the legacy split. */
|
|
1189
1389
|
summary?: {
|
|
1190
1390
|
direct_cents?: number;
|
|
1391
|
+
earning_source_version?: 1;
|
|
1392
|
+
earning_sources?: EarningsSources;
|
|
1191
1393
|
programmatic_cents?: number;
|
|
1192
1394
|
total_cents?: number;
|
|
1193
1395
|
total_impressions?: number;
|
|
@@ -1224,12 +1426,14 @@ type EarningsData = {
|
|
|
1224
1426
|
type EarningsResponse = {
|
|
1225
1427
|
/** Amount available for immediate payout */
|
|
1226
1428
|
available_for_payout_cents?: number;
|
|
1227
|
-
/**
|
|
1429
|
+
/** Current-month integer US cents. With source reporting enabled, direct_campaigns is verified first-party revenue and programmatic_google is the remaining aggregate, not Google-specific. programmatic_floodgates remains zero. Prefer earning_sources; disabled reporting retains the legacy all-programmatic split. */
|
|
1228
1430
|
breakdown?: {
|
|
1229
1431
|
direct_campaigns?: number;
|
|
1230
1432
|
programmatic_floodgates?: number;
|
|
1231
1433
|
programmatic_google?: number;
|
|
1232
1434
|
};
|
|
1435
|
+
earning_source_version?: 1;
|
|
1436
|
+
earning_sources?: EarningsSources;
|
|
1233
1437
|
/** `amount_cents` is integer US cents and simply repeats `available_for_payout_cents`; `date` is the 1st of next month, computed in the handler with no reference to any scheduled transfer; `stripe_status` is the partner's Connect account status, which must be `active` before a payout request is accepted. */
|
|
1234
1438
|
next_payout_estimate?: {
|
|
1235
1439
|
amount_cents?: number;
|
|
@@ -1247,6 +1451,19 @@ type EarningsResponse = {
|
|
|
1247
1451
|
/** Total earnings since partner started */
|
|
1248
1452
|
total_lifetime_cents?: number;
|
|
1249
1453
|
};
|
|
1454
|
+
/**
|
|
1455
|
+
* Optional reporting breakdown in integer US cents. Components sum to the existing amount. Missing evidence is Unclassified; absence of this object means reporting is unavailable.
|
|
1456
|
+
*/
|
|
1457
|
+
type EarningsSources = {
|
|
1458
|
+
/** Paid first-party portal and offline IO bookings. */
|
|
1459
|
+
direct_bookings: number;
|
|
1460
|
+
/** Verified open-auction delivery outside a private deal. */
|
|
1461
|
+
open_exchange: number;
|
|
1462
|
+
/** Verified delivered DSP/SSP PMP, PG and preferred deals. */
|
|
1463
|
+
programmatic_deals: number;
|
|
1464
|
+
/** Earnings lacking supported allocation evidence. */
|
|
1465
|
+
unclassified: number;
|
|
1466
|
+
};
|
|
1250
1467
|
/**
|
|
1251
1468
|
* Legacy free-text error shape. COLLAPSED onto the shared `LegacyError`
|
|
1252
1469
|
* definition so there is exactly one declaration of this shape across the
|
|
@@ -1256,9 +1473,9 @@ type EarningsResponse = {
|
|
|
1256
1473
|
*/
|
|
1257
1474
|
type Error = LegacyError;
|
|
1258
1475
|
/**
|
|
1259
|
-
* The
|
|
1476
|
+
* The 143 CATALOGUED error codes, generated from utils/errorCatalog.js — the same catalog that backs https://api.trillboards.com/docs/errors. This is the documented registry, NOT the complete set of codes the API can emit: a response `code` is an open string (see `TrillboardsError`). Use this list to recognise a code, never to assume a response cannot carry another.
|
|
1260
1477
|
*/
|
|
1261
|
-
type ErrorCode = "ad_interval_out_of_range" | "allocation_out_of_range" | "analytics_unavailable" | "api_key_expired" | "api_key_owner_missing" | "api_key_revoked" | "array_items_must_be_strings" | "array_too_large" | "auth_error" | "authentication_required" | "batch_size_exceeded" | "blocked_advertisers_too_large" | "blocked_iab_categories_too_large" | "client_ip_required" | "concurrent_request_limit" | "conflict" | "conflicting_lists" | "daily_quota_exceeded" | "database_error" | "dataset_not_scopable" | "device_already_registered" | "device_identity_missing" | "device_identity_underivable" | "device_not_found" | "device_offline" | "dsp_access_denied" | "error" | "field_must_be_array" | "field_must_be_boolean" | "field_too_long" | "floor_price_out_of_range" | "forbidden" | "idempotency_error" | "idempotency_key_in_use" | "idempotency_key_mismatch" | "insufficient_data" | "insufficient_permissions" | "insufficient_scope" | "internal_error" | "invalid_ad_surface_mode" | "invalid_age_rating" | "invalid_api_key" | "invalid_api_key_format" | "invalid_array_items" | "invalid_currency" | "invalid_dataset" | "invalid_device_id" | "invalid_dimensions" | "invalid_display_mode" | "invalid_field_type" | "invalid_field_value" | "invalid_fingerprint" | "invalid_json" | "invalid_lbar_position" | "invalid_lbar_settings" | "invalid_measures" | "invalid_media_url" | "invalid_order_by" | "invalid_orientation" | "invalid_pip_position" | "invalid_pip_settings" | "invalid_preference_level" | "invalid_preferences" | "invalid_provider" | "invalid_screen_id" | "invalid_segment_rules" | "invalid_sizing_mode" | "invalid_stream_type" | "invalid_webhook_events" | "invalid_webhook_url" | "lbar_settings_must_be_object" | "lbar_size_out_of_range" | "missing_required_field" | "not_found" | "openrtb_auth_failed" | "openrtb_config_missing" | "paired_training_insert_failed" | "paired_training_rate_limit_exceeded" | "partner_inactive" | "pip_margin_out_of_range" | "pip_settings_must_be_object" | "pip_size_ratio_out_of_range" | "preferences_must_be_object" | "preferences_required" | "preset_id_required" | "preset_not_found" | "rate_limit_exceeded" | "resource_locked" | "screen_ids_required" | "screen_not_found" | "screen_not_in_scope" | "sdk_enrich_rate_limit_exceeded" | "sdk_impression_rate_limit_exceeded" | "sdk_qr_beacon_rate_limit_exceeded" | "sdk_qr_scan_rate_limit_exceeded" | "segment_limit_exceeded" | "segment_not_found" | "service_unavailable" | "stale_data" | "stream_content_required" | "stream_not_found" | "tier_insufficient" | "timeout" | "timeout_out_of_range" | "unknown_agent_type" | "unsupported_media_type" | "validation_error" | "webhook_limit_exceeded" | "webhook_not_found" | "webhook_secret_expired" | "webhook_url_unreachable";
|
|
1478
|
+
type ErrorCode = "AUTH_REQUIRED" | "BRAND_CONFIGURATION_FAILED" | "BRAND_PROFILE_CONFLICT" | "BRAND_PROFILE_NOT_FOUND" | "CREATIVE_ADVERTISEMENT_NOT_OWNED" | "CREATIVE_MODERATION_UNAVAILABLE" | "CREATIVE_NOT_LINKED" | "CREATIVE_NOT_READY" | "CREATIVE_POLICY_CONFLICT" | "CREATIVE_TOO_LARGE" | "EXPERIMENT_COMPLETED" | "EXPERIMENT_NOT_FOUND" | "FEEDBACK_POLICY_REQUIRED" | "IDEMPOTENCY_CONFLICT" | "INVALID_BRAND_RULES" | "INVALID_CREATIVE_URL" | "INVALID_CREATIVE_WEIGHTS" | "INVALID_FEEDBACK_CREATIVE" | "INVALID_FEEDBACK_OBJECTIVE" | "INVALID_FEEDBACK_REQUEST" | "INVALID_POLICY_VERSION" | "INVALID_VARIANTS" | "MEDIA_BUY_NOT_FOUND" | "OPERATION_ALREADY_COMMITTED" | "OPERATION_IN_PROGRESS" | "POLICY_NOT_AVAILABLE" | "SOURCE_CREATIVE_NOT_FOUND" | "UNSUPPORTED_CREATIVE_TYPE" | "VARIANT_IDENTITY_CONFLICT" | "ad_interval_out_of_range" | "allocation_out_of_range" | "analytics_unavailable" | "api_key_expired" | "api_key_owner_missing" | "api_key_revoked" | "array_items_must_be_strings" | "array_too_large" | "auth_error" | "authentication_required" | "batch_size_exceeded" | "blocked_advertisers_too_large" | "blocked_iab_categories_too_large" | "client_ip_required" | "concurrent_request_limit" | "conflict" | "conflicting_lists" | "creative_policy_conflict" | "creative_policy_forbidden" | "daily_quota_exceeded" | "database_error" | "dataset_not_scopable" | "device_already_registered" | "device_identity_missing" | "device_identity_underivable" | "device_not_found" | "device_offline" | "dsp_access_denied" | "error" | "field_must_be_array" | "field_must_be_boolean" | "field_too_long" | "floor_price_out_of_range" | "forbidden" | "idempotency_error" | "idempotency_key_in_use" | "idempotency_key_mismatch" | "insufficient_data" | "insufficient_permissions" | "insufficient_scope" | "internal_error" | "invalid_ad_surface_mode" | "invalid_age_rating" | "invalid_api_key" | "invalid_api_key_format" | "invalid_array_items" | "invalid_creative_policy" | "invalid_currency" | "invalid_dataset" | "invalid_device_id" | "invalid_dimensions" | "invalid_display_mode" | "invalid_field_type" | "invalid_field_value" | "invalid_fingerprint" | "invalid_json" | "invalid_lbar_position" | "invalid_lbar_settings" | "invalid_measures" | "invalid_media_url" | "invalid_order_by" | "invalid_orientation" | "invalid_pip_position" | "invalid_pip_settings" | "invalid_preference_level" | "invalid_preferences" | "invalid_provider" | "invalid_screen_id" | "invalid_segment_rules" | "invalid_sizing_mode" | "invalid_stream_type" | "invalid_webhook_events" | "invalid_webhook_url" | "lbar_settings_must_be_object" | "lbar_size_out_of_range" | "missing_required_field" | "not_found" | "openrtb_auth_failed" | "openrtb_config_missing" | "paired_training_insert_failed" | "paired_training_rate_limit_exceeded" | "partner_inactive" | "pip_margin_out_of_range" | "pip_settings_must_be_object" | "pip_size_ratio_out_of_range" | "preferences_must_be_object" | "preferences_required" | "preset_id_required" | "preset_not_found" | "rate_limit_exceeded" | "resource_locked" | "screen_ids_required" | "screen_not_found" | "screen_not_in_scope" | "sdk_enrich_rate_limit_exceeded" | "sdk_impression_rate_limit_exceeded" | "sdk_qr_beacon_rate_limit_exceeded" | "sdk_qr_scan_rate_limit_exceeded" | "segment_limit_exceeded" | "segment_not_found" | "service_unavailable" | "stale_data" | "stream_content_required" | "stream_not_found" | "tier_insufficient" | "timeout" | "timeout_out_of_range" | "unknown_agent_type" | "unsupported_media_type" | "validation_error" | "webhook_limit_exceeded" | "webhook_not_found" | "webhook_secret_expired" | "webhook_url_unreachable";
|
|
1262
1479
|
type ErrorCodeResponse = {
|
|
1263
1480
|
code: string;
|
|
1264
1481
|
description: string;
|
|
@@ -1358,6 +1575,269 @@ type ExtendedIdentity = {
|
|
|
1358
1575
|
/** `available` requires `id`; `unavailable` requires `id` to be ABSENT — sending both is a validation failure, and because normalisation is all-or-nothing across the array that single bad element discards every other identity in the same request while the heartbeat still returns 200. */
|
|
1359
1576
|
status: "available" | "unavailable";
|
|
1360
1577
|
};
|
|
1578
|
+
type FeedbackBrand = {
|
|
1579
|
+
advertisement_id: string;
|
|
1580
|
+
brand_name: string;
|
|
1581
|
+
profile_id: string;
|
|
1582
|
+
reactive_enabled: true;
|
|
1583
|
+
stance: "adversarial" | "complementary" | "same_brand" | "intent_capture";
|
|
1584
|
+
};
|
|
1585
|
+
type FeedbackBrandRequest = {
|
|
1586
|
+
/** Native brand reference assets used by creative generation. */
|
|
1587
|
+
brand_assets?: Array<Record<string, unknown>>;
|
|
1588
|
+
/** Optional brand intent supplied to the native creative generator. */
|
|
1589
|
+
brand_intent_text?: string | null;
|
|
1590
|
+
/** Advertiser brand name for the experiment’s native campaign. */
|
|
1591
|
+
brand_name: string;
|
|
1592
|
+
/** Native brand colours, typography, voice, products and required or prohibited elements. */
|
|
1593
|
+
brand_rules: {
|
|
1594
|
+
/** The advertiser brand name, e.g. "Nike". */
|
|
1595
|
+
brand_name: string;
|
|
1596
|
+
/** Elements that MUST appear in every creative, e.g. ["logo top-right","legal disclaimer"]; may be empty. */
|
|
1597
|
+
mandatory_elements: Array<string>;
|
|
1598
|
+
/** Brand colour palette. */
|
|
1599
|
+
palette: {
|
|
1600
|
+
/** Accent colours; may be empty. */
|
|
1601
|
+
accents: Array<string>;
|
|
1602
|
+
/** Primary brand colour (hex or named); empty string if unknown. */
|
|
1603
|
+
primary: string;
|
|
1604
|
+
/** Secondary brand colour; empty string if none. */
|
|
1605
|
+
secondary: string;
|
|
1606
|
+
};
|
|
1607
|
+
/** Key products to feature; may be empty. */
|
|
1608
|
+
products: Array<{
|
|
1609
|
+
/** Short product description; empty string if none. */
|
|
1610
|
+
description: string;
|
|
1611
|
+
/** Product name. */
|
|
1612
|
+
name: string;
|
|
1613
|
+
}>;
|
|
1614
|
+
/** Elements that must NEVER appear, e.g. ["competitor logos","alcohol"]; may be empty. */
|
|
1615
|
+
prohibited_elements: Array<string>;
|
|
1616
|
+
/** Preferred reactive stances for this brand; may be empty. */
|
|
1617
|
+
stance_preferences: Array<"adversarial" | "complementary" | "same_brand" | "intent_capture">;
|
|
1618
|
+
/** Approved taglines / slogans; may be empty. */
|
|
1619
|
+
taglines: Array<string>;
|
|
1620
|
+
/** Typography guidance. */
|
|
1621
|
+
typography: {
|
|
1622
|
+
/** Body typeface / style guidance; empty string if none. */
|
|
1623
|
+
body: string;
|
|
1624
|
+
/** Headline typeface / style guidance; empty string if none. */
|
|
1625
|
+
headline: string;
|
|
1626
|
+
};
|
|
1627
|
+
/** Voice + tone adjectives, e.g. ["confident","playful"]; may be empty. */
|
|
1628
|
+
voice_tone: Array<string>;
|
|
1629
|
+
};
|
|
1630
|
+
/** Optional existing brand profile owned by this advertiser and advertisement. */
|
|
1631
|
+
profile_id?: string;
|
|
1632
|
+
/** Native reactive relationship used to generate or stage this creative. */
|
|
1633
|
+
stance?: "adversarial" | "complementary" | "same_brand" | "intent_capture";
|
|
1634
|
+
};
|
|
1635
|
+
type FeedbackBrandResponse = {
|
|
1636
|
+
data: FeedbackBrand;
|
|
1637
|
+
success: true;
|
|
1638
|
+
};
|
|
1639
|
+
type FeedbackCreateRequest = {
|
|
1640
|
+
/** Exact decimal policy version; zero enrolls an unclaimed native policy. */
|
|
1641
|
+
expected_policy_version?: string;
|
|
1642
|
+
/** Caller-owned key for this exact operation; do not reuse for changed inputs. */
|
|
1643
|
+
idempotency_key: string;
|
|
1644
|
+
/** Your funded native AdCP media buy ID. */
|
|
1645
|
+
media_buy_id: string;
|
|
1646
|
+
/** Name for this funded creative feedback experiment. */
|
|
1647
|
+
name: string;
|
|
1648
|
+
/** Measured objective: gaze share 0–1, gaze overlap milliseconds, or capped mean dwell milliseconds. */
|
|
1649
|
+
objective: "gaze_share" | "gaze_overlap_ms" | "dwell_ms";
|
|
1650
|
+
/** Native package ID within that media buy. */
|
|
1651
|
+
package_id: string;
|
|
1652
|
+
};
|
|
1653
|
+
type FeedbackCreativeReview = {
|
|
1654
|
+
success: boolean;
|
|
1655
|
+
};
|
|
1656
|
+
type FeedbackExperiment = {
|
|
1657
|
+
advertisement_id: string;
|
|
1658
|
+
advertiser_id: string;
|
|
1659
|
+
id: string;
|
|
1660
|
+
media_buy_id: string;
|
|
1661
|
+
name: string;
|
|
1662
|
+
objective: "gaze_share" | "gaze_overlap_ms" | "dwell_ms";
|
|
1663
|
+
package_id: string;
|
|
1664
|
+
policy_mode: "attribution" | "experiment" | "external_agent";
|
|
1665
|
+
policy_version: string;
|
|
1666
|
+
status: string;
|
|
1667
|
+
variants: Array<FeedbackVariant>;
|
|
1668
|
+
};
|
|
1669
|
+
type FeedbackExperimentDetail = FeedbackExperiment & {
|
|
1670
|
+
creatives: Array<FeedbackRecoveredCreative>;
|
|
1671
|
+
creatives_truncated: boolean;
|
|
1672
|
+
};
|
|
1673
|
+
type FeedbackExperimentDetailResponse = {
|
|
1674
|
+
data: FeedbackExperimentDetail;
|
|
1675
|
+
success: true;
|
|
1676
|
+
};
|
|
1677
|
+
type FeedbackExperimentResponse = {
|
|
1678
|
+
data: FeedbackExperiment;
|
|
1679
|
+
success: true;
|
|
1680
|
+
};
|
|
1681
|
+
type FeedbackGenerateRequest = {
|
|
1682
|
+
/** Image aspect ratio, such as 16:9, matched to your booked screens. */
|
|
1683
|
+
aspectRatio?: string;
|
|
1684
|
+
/** Creative direction added to your configured native brand rules. */
|
|
1685
|
+
brief?: string;
|
|
1686
|
+
/** Unique caller-owned generation key; committed retries expose creativeId and renderKey in the receipt. */
|
|
1687
|
+
idempotency_key: string;
|
|
1688
|
+
/** Native reactive relationship used to generate or stage this creative. */
|
|
1689
|
+
stance?: "adversarial" | "complementary" | "same_brand" | "intent_capture";
|
|
1690
|
+
};
|
|
1691
|
+
type FeedbackGenerateResponse = {
|
|
1692
|
+
data: FeedbackGeneratedCreative;
|
|
1693
|
+
success: true;
|
|
1694
|
+
};
|
|
1695
|
+
type FeedbackGeneratedCreative = {
|
|
1696
|
+
brandReviewStatus: string;
|
|
1697
|
+
cdnUrl: string;
|
|
1698
|
+
creativeId: string;
|
|
1699
|
+
deduped: boolean;
|
|
1700
|
+
headline?: string | null;
|
|
1701
|
+
moderationStatus?: string;
|
|
1702
|
+
renderKey: string;
|
|
1703
|
+
status?: string;
|
|
1704
|
+
success: true;
|
|
1705
|
+
usage_receipt: Record<string, unknown>;
|
|
1706
|
+
};
|
|
1707
|
+
/**
|
|
1708
|
+
* Exactly one native image source is required. source_creative_id resolves only within the authenticated partner. Inline bytes require content_type and are validated against the actual image MIME and byte hash by native staging.
|
|
1709
|
+
*/
|
|
1710
|
+
type FeedbackImportRequest = {
|
|
1711
|
+
/** Public HTTPS image URL; provide exactly one image source. */
|
|
1712
|
+
asset_url?: string;
|
|
1713
|
+
/** Actual image MIME; required for inline bytes and checked against decoded content. */
|
|
1714
|
+
content_type?: "image/png" | "image/jpeg" | "image/jpg" | "image/webp";
|
|
1715
|
+
/** Optional headline stored with the native imported creative. */
|
|
1716
|
+
headline?: string;
|
|
1717
|
+
/** Unique caller-owned import key; a committed retry returns the existing usage receipt. */
|
|
1718
|
+
idempotency_key: string;
|
|
1719
|
+
/** Base64 PNG, JPEG or WebP bytes; provide exactly one source and content_type. */
|
|
1720
|
+
image_base64?: string;
|
|
1721
|
+
/** Existing creative ID owned by the authenticated partner; provide exactly one image source. */
|
|
1722
|
+
source_creative_id?: string;
|
|
1723
|
+
/** Native reactive relationship used to generate or stage this creative. */
|
|
1724
|
+
stance?: "adversarial" | "complementary" | "same_brand" | "intent_capture";
|
|
1725
|
+
};
|
|
1726
|
+
type FeedbackPolicyRequest = {
|
|
1727
|
+
/** Exact decimal policy version from the latest experiment; stale updates return 409. */
|
|
1728
|
+
expected_version: string;
|
|
1729
|
+
/** Replacement weights for registered variants; omitted variants are inactive. */
|
|
1730
|
+
weights: Array<{
|
|
1731
|
+
/** Registered native creative ID to assign this weight. */
|
|
1732
|
+
creative_id: string;
|
|
1733
|
+
/** Weight between zero and one; zero disables selection. Eligible weights normalize at serving. */
|
|
1734
|
+
weight: number;
|
|
1735
|
+
}>;
|
|
1736
|
+
};
|
|
1737
|
+
type FeedbackRecoveredCreative = {
|
|
1738
|
+
advertisement_mongo_id: string | null;
|
|
1739
|
+
brand_profile_id: string | null;
|
|
1740
|
+
brand_review_status: string;
|
|
1741
|
+
cdn_url: string;
|
|
1742
|
+
content_sha256: string | null;
|
|
1743
|
+
created_at: string;
|
|
1744
|
+
creative_id: string;
|
|
1745
|
+
headline: string | null;
|
|
1746
|
+
linked_to_experiment_ad: boolean;
|
|
1747
|
+
moderation_status: string | null;
|
|
1748
|
+
render_key: string | null;
|
|
1749
|
+
reviewed_at: string | null;
|
|
1750
|
+
stance: string | null;
|
|
1751
|
+
};
|
|
1752
|
+
type FeedbackRegisterVariantsRequest = {
|
|
1753
|
+
/** Exact decimal policy version from the latest experiment; stale updates return 409. */
|
|
1754
|
+
expected_version: string;
|
|
1755
|
+
/** Approved native variants; identity and bytes remain immutable. */
|
|
1756
|
+
variants: Array<{
|
|
1757
|
+
/** Approved native generated or imported creative ID. */
|
|
1758
|
+
creative_id: string;
|
|
1759
|
+
/** Your model version associated with this immutable variant. */
|
|
1760
|
+
model_version?: string;
|
|
1761
|
+
/** Stable model variant identity within this experiment. */
|
|
1762
|
+
variant_id: string;
|
|
1763
|
+
}>;
|
|
1764
|
+
};
|
|
1765
|
+
type FeedbackReviewRequest = {
|
|
1766
|
+
/** Owned native creative ID awaiting your explicit brand review. */
|
|
1767
|
+
creative_id: string;
|
|
1768
|
+
/** Approve or reject brand use; global AI moderation remains a separate gate. */
|
|
1769
|
+
decision: "approve" | "reject";
|
|
1770
|
+
};
|
|
1771
|
+
type FeedbackReviewResponse = {
|
|
1772
|
+
data: FeedbackCreativeReview;
|
|
1773
|
+
success: true;
|
|
1774
|
+
};
|
|
1775
|
+
type FeedbackRewardQuery = {
|
|
1776
|
+
/** Opaque next_cursor from this same date scope; rewind after scan_complete. */
|
|
1777
|
+
cursor?: string;
|
|
1778
|
+
/** Inclusive first play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
1779
|
+
from: string;
|
|
1780
|
+
/** Unique caller-owned billing key for this page; committed retries return the receipt, not another read. */
|
|
1781
|
+
idempotency_key: string;
|
|
1782
|
+
/** Maximum native play states returned on this metered page. */
|
|
1783
|
+
limit?: number;
|
|
1784
|
+
/** Inclusive last play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
1785
|
+
to: string;
|
|
1786
|
+
};
|
|
1787
|
+
type FeedbackRewardRow = {
|
|
1788
|
+
action: "upsert" | "retract";
|
|
1789
|
+
ad_id: string | null;
|
|
1790
|
+
build_stamp: string;
|
|
1791
|
+
builder_version: string;
|
|
1792
|
+
/** Four ordered strings: play_date, screen_mongo_id, play_source, play_key. */
|
|
1793
|
+
canonical_key: Array<string>;
|
|
1794
|
+
content_sha256: string;
|
|
1795
|
+
/** Lossless issued v1 JSON snapshot; empty string when unissued. Contains variant_id and creative_policy_version. */
|
|
1796
|
+
creative_feedback: string;
|
|
1797
|
+
creative_id: string | null;
|
|
1798
|
+
dwell_capped_ms_mean: number | null;
|
|
1799
|
+
dwell_overlap_ms: number | null;
|
|
1800
|
+
dwell_windows_n: number | null;
|
|
1801
|
+
gaze_face_rows_n: number | null;
|
|
1802
|
+
gaze_overlap_ms: number | null;
|
|
1803
|
+
/** Measured gaze share, 0–1; NULL when not measured. */
|
|
1804
|
+
gaze_pct_on_screen: number | null;
|
|
1805
|
+
gaze_seconds: number | null;
|
|
1806
|
+
gaze_windows_n: number | null;
|
|
1807
|
+
play_completed_at: string | null;
|
|
1808
|
+
play_date: string;
|
|
1809
|
+
play_key: string;
|
|
1810
|
+
play_source: string;
|
|
1811
|
+
play_started_at: string | null;
|
|
1812
|
+
request_id: string | null;
|
|
1813
|
+
reward_revision_id: string;
|
|
1814
|
+
screen_mongo_id: string;
|
|
1815
|
+
superseded: number;
|
|
1816
|
+
};
|
|
1817
|
+
type FeedbackRewards = {
|
|
1818
|
+
experiment_id: string;
|
|
1819
|
+
next_cursor: string | null;
|
|
1820
|
+
objective: "gaze_share" | "gaze_overlap_ms" | "dwell_ms";
|
|
1821
|
+
rewind_next_poll: boolean;
|
|
1822
|
+
rows: Array<FeedbackRewardRow>;
|
|
1823
|
+
scan_complete: boolean;
|
|
1824
|
+
usage_receipt: Record<string, unknown>;
|
|
1825
|
+
view: "latest_state";
|
|
1826
|
+
};
|
|
1827
|
+
type FeedbackRewardsResponse = {
|
|
1828
|
+
data: FeedbackRewards;
|
|
1829
|
+
success: true;
|
|
1830
|
+
};
|
|
1831
|
+
type FeedbackStopRequest = {
|
|
1832
|
+
/** Exact decimal policy version from the latest experiment; stale updates return 409. */
|
|
1833
|
+
expected_version: string;
|
|
1834
|
+
};
|
|
1835
|
+
type FeedbackVariant = {
|
|
1836
|
+
content_sha256?: string | null;
|
|
1837
|
+
creative_id: string;
|
|
1838
|
+
model_version?: string | null;
|
|
1839
|
+
variant_id: string;
|
|
1840
|
+
};
|
|
1361
1841
|
/**
|
|
1362
1842
|
* A fleet-command job: one batch that fanned a device command across a screen group's
|
|
1363
1843
|
* members. Poll via GET /fleet-commands/{id}.
|
|
@@ -1494,7 +1974,7 @@ type HttpProbeResult = {
|
|
|
1494
1974
|
*/
|
|
1495
1975
|
type HybridError = {
|
|
1496
1976
|
error?: {
|
|
1497
|
-
/** Stable machine-readable error code. Switch on this, never on `message`. The
|
|
1977
|
+
/** Stable machine-readable error code. Switch on this, never on `message`. The 143 CATALOGUED codes are published as the `ErrorCode` schema and served live by `GET /v1/errors`, which is the authority. This field is NOT limited to them: services emit further codes directly, and `ApiError.notFound(resource)` mints `<resource>_not_found` from an arbitrary resource name. Always handle an unrecognised code by falling back to `type`. */
|
|
1498
1978
|
code?: string;
|
|
1499
1979
|
param?: string | null;
|
|
1500
1980
|
type?: ErrorType;
|
|
@@ -1543,6 +2023,265 @@ type LegacyError = {
|
|
|
1543
2023
|
message?: string;
|
|
1544
2024
|
success?: boolean;
|
|
1545
2025
|
};
|
|
2026
|
+
type Mcp_create_media_buy_Args = {
|
|
2027
|
+
brand?: {
|
|
2028
|
+
domain?: string;
|
|
2029
|
+
name?: string;
|
|
2030
|
+
[key: string]: unknown;
|
|
2031
|
+
};
|
|
2032
|
+
buy_spec?: {
|
|
2033
|
+
audience_profile?: Record<string, unknown>;
|
|
2034
|
+
budget?: {
|
|
2035
|
+
bid_cpm?: number;
|
|
2036
|
+
daily_usd?: number;
|
|
2037
|
+
total_usd?: number;
|
|
2038
|
+
};
|
|
2039
|
+
geo?: {
|
|
2040
|
+
city?: string;
|
|
2041
|
+
country?: string;
|
|
2042
|
+
lat?: number;
|
|
2043
|
+
lng?: number;
|
|
2044
|
+
radius_km?: number;
|
|
2045
|
+
state?: string;
|
|
2046
|
+
};
|
|
2047
|
+
schedule?: {
|
|
2048
|
+
days?: Array<number>;
|
|
2049
|
+
end_date?: string;
|
|
2050
|
+
hours?: Array<number>;
|
|
2051
|
+
start_date?: string;
|
|
2052
|
+
};
|
|
2053
|
+
screen_ids?: Array<string>;
|
|
2054
|
+
venue_types?: Array<string>;
|
|
2055
|
+
};
|
|
2056
|
+
buyer_ref?: string;
|
|
2057
|
+
context?: Record<string, unknown>;
|
|
2058
|
+
creative?: {
|
|
2059
|
+
duration_seconds?: number;
|
|
2060
|
+
type?: "video" | "image" | "vast";
|
|
2061
|
+
url?: string;
|
|
2062
|
+
};
|
|
2063
|
+
end_time?: string;
|
|
2064
|
+
idempotency_key?: string;
|
|
2065
|
+
name?: string;
|
|
2066
|
+
packages?: Array<{
|
|
2067
|
+
bid_price?: number;
|
|
2068
|
+
budget?: number | {
|
|
2069
|
+
amount?: number;
|
|
2070
|
+
currency?: string;
|
|
2071
|
+
[key: string]: unknown;
|
|
2072
|
+
};
|
|
2073
|
+
impressions?: number;
|
|
2074
|
+
pricing_option_id?: string;
|
|
2075
|
+
product_id?: string;
|
|
2076
|
+
targeting_overlay?: Record<string, unknown>;
|
|
2077
|
+
[key: string]: unknown;
|
|
2078
|
+
}>;
|
|
2079
|
+
start_time?: string;
|
|
2080
|
+
total_budget?: {
|
|
2081
|
+
amount?: number;
|
|
2082
|
+
currency?: string;
|
|
2083
|
+
[key: string]: unknown;
|
|
2084
|
+
};
|
|
2085
|
+
[key: string]: unknown;
|
|
2086
|
+
};
|
|
2087
|
+
type Mcp_discover_inventory_Args = {
|
|
2088
|
+
audience_profile?: {
|
|
2089
|
+
income?: "high" | "upper_mid" | "mid" | "lower_mid" | "low";
|
|
2090
|
+
lifestyle?: string;
|
|
2091
|
+
min_attention?: number;
|
|
2092
|
+
};
|
|
2093
|
+
limit?: number;
|
|
2094
|
+
location?: {
|
|
2095
|
+
city?: string;
|
|
2096
|
+
lat?: number;
|
|
2097
|
+
lng?: number;
|
|
2098
|
+
radius_km?: number;
|
|
2099
|
+
state?: string;
|
|
2100
|
+
};
|
|
2101
|
+
venue_types?: Array<string>;
|
|
2102
|
+
};
|
|
2103
|
+
type Mcp_get_media_buy_delivery_Args = {
|
|
2104
|
+
breakdown_by?: Array<"screen" | "venue" | "hour" | "audience_segment">;
|
|
2105
|
+
dimensions?: Array<"screen" | "venue" | "hour" | "audience_segment" | "creative" | "day">;
|
|
2106
|
+
media_buy_id: string;
|
|
2107
|
+
[key: string]: unknown;
|
|
2108
|
+
};
|
|
2109
|
+
type Mcp_get_media_buys_Args = {
|
|
2110
|
+
context?: Record<string, unknown>;
|
|
2111
|
+
include_snapshot?: boolean;
|
|
2112
|
+
media_buy_ids?: Array<string>;
|
|
2113
|
+
pagination?: {
|
|
2114
|
+
cursor?: string;
|
|
2115
|
+
max_results?: number;
|
|
2116
|
+
};
|
|
2117
|
+
status_filter?: "pending_creatives" | "pending_start" | "active" | "paused" | "completed" | "rejected" | "canceled" | Array<"pending_creatives" | "pending_start" | "active" | "paused" | "completed" | "rejected" | "canceled">;
|
|
2118
|
+
[key: string]: unknown;
|
|
2119
|
+
};
|
|
2120
|
+
type Mcp_get_products_Args = {
|
|
2121
|
+
audience_profile?: {
|
|
2122
|
+
income?: string;
|
|
2123
|
+
lifestyle?: string;
|
|
2124
|
+
min_attention?: number;
|
|
2125
|
+
};
|
|
2126
|
+
brief?: string;
|
|
2127
|
+
buying_mode?: "brief" | "wholesale" | "refine";
|
|
2128
|
+
filters?: {
|
|
2129
|
+
budget_range?: {
|
|
2130
|
+
currency?: string;
|
|
2131
|
+
max?: number;
|
|
2132
|
+
min?: number;
|
|
2133
|
+
};
|
|
2134
|
+
channels?: Array<string>;
|
|
2135
|
+
countries?: Array<string>;
|
|
2136
|
+
delivery_type?: string;
|
|
2137
|
+
format_types?: Array<string>;
|
|
2138
|
+
venue_types?: Array<string>;
|
|
2139
|
+
[key: string]: unknown;
|
|
2140
|
+
};
|
|
2141
|
+
market?: string;
|
|
2142
|
+
pagination?: {
|
|
2143
|
+
cursor?: string;
|
|
2144
|
+
max_results?: number;
|
|
2145
|
+
};
|
|
2146
|
+
venue_types?: Array<string>;
|
|
2147
|
+
[key: string]: unknown;
|
|
2148
|
+
};
|
|
2149
|
+
type Mcp_list_accounts_Args = {
|
|
2150
|
+
account?: {
|
|
2151
|
+
account_id?: string;
|
|
2152
|
+
brand?: {
|
|
2153
|
+
brand_id?: string;
|
|
2154
|
+
domain: string;
|
|
2155
|
+
};
|
|
2156
|
+
operator?: string;
|
|
2157
|
+
sandbox?: boolean;
|
|
2158
|
+
};
|
|
2159
|
+
context?: Record<string, unknown>;
|
|
2160
|
+
pagination?: {
|
|
2161
|
+
cursor?: string;
|
|
2162
|
+
max_results?: number;
|
|
2163
|
+
};
|
|
2164
|
+
sandbox?: boolean;
|
|
2165
|
+
status?: "active" | "pending_approval" | "rejected" | "payment_required" | "suspended" | "closed";
|
|
2166
|
+
[key: string]: unknown;
|
|
2167
|
+
};
|
|
2168
|
+
type Mcp_sync_accounts_Args = {
|
|
2169
|
+
accounts: Array<{
|
|
2170
|
+
account?: {
|
|
2171
|
+
account_id?: string;
|
|
2172
|
+
brand?: {
|
|
2173
|
+
brand_id?: string;
|
|
2174
|
+
domain: string;
|
|
2175
|
+
};
|
|
2176
|
+
operator?: string;
|
|
2177
|
+
sandbox?: boolean;
|
|
2178
|
+
};
|
|
2179
|
+
billing?: "operator" | "agent" | "advertiser";
|
|
2180
|
+
billing_entity?: Record<string, unknown>;
|
|
2181
|
+
brand?: {
|
|
2182
|
+
brand_id?: string;
|
|
2183
|
+
domain: string;
|
|
2184
|
+
};
|
|
2185
|
+
notification_configs?: Array<Record<string, unknown>>;
|
|
2186
|
+
operator?: string;
|
|
2187
|
+
payment_terms?: "net_15" | "net_30" | "net_45" | "net_60" | "net_90" | "prepay";
|
|
2188
|
+
preferred_reporting_protocol?: string;
|
|
2189
|
+
sandbox?: boolean;
|
|
2190
|
+
}>;
|
|
2191
|
+
context?: Record<string, unknown>;
|
|
2192
|
+
delete_missing?: boolean;
|
|
2193
|
+
dry_run?: boolean;
|
|
2194
|
+
idempotency_key: string;
|
|
2195
|
+
push_notification_config?: Record<string, unknown>;
|
|
2196
|
+
[key: string]: unknown;
|
|
2197
|
+
};
|
|
2198
|
+
type Mcp_sync_creatives_Args = {
|
|
2199
|
+
account?: {
|
|
2200
|
+
account_id?: string;
|
|
2201
|
+
brand?: {
|
|
2202
|
+
brand_id?: string;
|
|
2203
|
+
domain: string;
|
|
2204
|
+
};
|
|
2205
|
+
operator?: string;
|
|
2206
|
+
sandbox?: boolean;
|
|
2207
|
+
};
|
|
2208
|
+
assignments?: Array<{
|
|
2209
|
+
creative_id: string;
|
|
2210
|
+
media_buy_id?: string;
|
|
2211
|
+
package_id?: string;
|
|
2212
|
+
[key: string]: unknown;
|
|
2213
|
+
}>;
|
|
2214
|
+
context?: Record<string, unknown>;
|
|
2215
|
+
creative_ids?: Array<string>;
|
|
2216
|
+
creatives: Array<{
|
|
2217
|
+
assets?: Record<string, unknown>;
|
|
2218
|
+
creative_id?: string;
|
|
2219
|
+
duration_seconds?: number;
|
|
2220
|
+
file_size_mb?: number;
|
|
2221
|
+
format_id?: {
|
|
2222
|
+
agent_url: string;
|
|
2223
|
+
duration_ms?: number;
|
|
2224
|
+
height?: number;
|
|
2225
|
+
id: string;
|
|
2226
|
+
width?: number;
|
|
2227
|
+
} | string;
|
|
2228
|
+
format_kind?: string;
|
|
2229
|
+
height?: number;
|
|
2230
|
+
name?: string;
|
|
2231
|
+
type?: "video" | "image" | "vast";
|
|
2232
|
+
url?: string;
|
|
2233
|
+
width?: number;
|
|
2234
|
+
[key: string]: unknown;
|
|
2235
|
+
}>;
|
|
2236
|
+
delete_missing?: boolean;
|
|
2237
|
+
dry_run?: boolean;
|
|
2238
|
+
ext?: Record<string, unknown>;
|
|
2239
|
+
idempotency_key?: string;
|
|
2240
|
+
media_buy_id?: string;
|
|
2241
|
+
push_notification_config?: Record<string, unknown>;
|
|
2242
|
+
validation_mode?: string;
|
|
2243
|
+
[key: string]: unknown;
|
|
2244
|
+
};
|
|
2245
|
+
type Mcp_update_media_buy_Args = {
|
|
2246
|
+
account?: Record<string, unknown>;
|
|
2247
|
+
canceled?: boolean;
|
|
2248
|
+
cancellation_reason?: string;
|
|
2249
|
+
context?: Record<string, unknown>;
|
|
2250
|
+
end_time?: string;
|
|
2251
|
+
ext?: Record<string, unknown>;
|
|
2252
|
+
idempotency_key?: string;
|
|
2253
|
+
invoice_recipient?: Record<string, unknown>;
|
|
2254
|
+
media_buy_id: string;
|
|
2255
|
+
new_packages?: Array<Record<string, unknown>>;
|
|
2256
|
+
packages?: Array<{
|
|
2257
|
+
creative_assignments?: Array<{
|
|
2258
|
+
creative_id: string;
|
|
2259
|
+
[key: string]: unknown;
|
|
2260
|
+
}>;
|
|
2261
|
+
package_id: string;
|
|
2262
|
+
targeting_overlay?: Record<string, unknown> | null;
|
|
2263
|
+
[key: string]: unknown;
|
|
2264
|
+
}>;
|
|
2265
|
+
paused?: boolean;
|
|
2266
|
+
push_notification_config?: Record<string, unknown>;
|
|
2267
|
+
reporting_webhook?: Record<string, unknown>;
|
|
2268
|
+
revision?: number;
|
|
2269
|
+
start_time?: string | string;
|
|
2270
|
+
updates?: {
|
|
2271
|
+
budget?: {
|
|
2272
|
+
bid_cpm?: number;
|
|
2273
|
+
daily_usd?: number;
|
|
2274
|
+
total_usd?: number;
|
|
2275
|
+
};
|
|
2276
|
+
end_date?: string;
|
|
2277
|
+
name?: string;
|
|
2278
|
+
screen_ids?: Array<string>;
|
|
2279
|
+
start_date?: string;
|
|
2280
|
+
status?: "active" | "paused" | "cancelled";
|
|
2281
|
+
targeting?: Record<string, unknown>;
|
|
2282
|
+
};
|
|
2283
|
+
[key: string]: unknown;
|
|
2284
|
+
};
|
|
1546
2285
|
type MdnsNetworkDevice = {
|
|
1547
2286
|
/** The responder's IP address as a string — the first IPv4 address if it has one, otherwise any address. A record that resolves to no address is dropped rather than emitted with a null host, so in practice this is always populated. It is also what seeds the HTTP-probe target list for the same discovery cycle. */
|
|
1548
2287
|
host?: string | null;
|
|
@@ -1569,7 +2308,7 @@ type MdnsNetworkDevice = {
|
|
|
1569
2308
|
type MeasurementMethodology = {
|
|
1570
2309
|
/** Prose description of the happy-path pipeline: edge capture, buffered ingest, `signal_observations`, a 30-minute device-resolution pass into `resolved_device_observations`, then a 30-minute transition pass. Names the stores only — never infrastructure or source locations. */
|
|
1571
2310
|
canonical_path?: string;
|
|
1572
|
-
/** What each screen observes and
|
|
2311
|
+
/** What each screen observes and sends. */
|
|
1573
2312
|
capture_stack?: Record<string, unknown>;
|
|
1574
2313
|
/** Cross-day identity, including measured coverage (1.6% of identifiable BLE rows). An earlier revision said ~31%; that graded the presence of stable_payload_hash and ignored the sanitizer the identity expression applies, and it is withdrawn. */
|
|
1575
2314
|
cross_day_matching?: Record<string, unknown>;
|
|
@@ -1585,15 +2324,13 @@ type MeasurementMethodology = {
|
|
|
1585
2324
|
fallback_path?: string;
|
|
1586
2325
|
/** How identifiers are keyed, and what erasure means. */
|
|
1587
2326
|
hashing?: Record<string, unknown>;
|
|
1588
|
-
/** The counting UNIT. Reach and unique-device counts are counts of
|
|
2327
|
+
/** The counting UNIT. Reach and unique-device counts are counts of distinct canonical BLE keys (identifiers); one device contributes several identifiers per window and the number grows with the window. Carries the measured identifiers-per-device per fleet type and the controlled comparison it was derived from. */
|
|
1589
2328
|
identifier_inflation?: Record<string, unknown>;
|
|
1590
2329
|
/** Alignment against MRC OOH Phase 2. `mrc_status_accredited` is the machine-readable answer and is **false until an MRC grant reference exists** — read that boolean rather than parsing the English `status` line. Also carries the monotonic qualification chain (`in_range` through `cross_screen`) and the interval method (Wilson score for proportions, 200-sample bootstrap for medians). */
|
|
1591
2330
|
mrc_ooh_phase2_alignment: Record<string, unknown>;
|
|
1592
2331
|
/** Version markers for the edge parsers that produced the disclosed fields — `ble_advertisement_parser`, `mdns_txt_extractor`, and the integer `heartbeat_payload_schema`. Hand-maintained constants, bumped when a parser changes. */
|
|
1593
2332
|
parser_versions?: Record<string, unknown>;
|
|
1594
|
-
/**
|
|
1595
|
-
privacy_gates: Record<string, unknown>;
|
|
1596
|
-
/** Per-store retention in days. */
|
|
2333
|
+
/** Per-store retention in days in active systems; `basis` states how each is counted and what the encrypted archive keeps. */
|
|
1597
2334
|
retention: Record<string, unknown>;
|
|
1598
2335
|
/** Tables a reviewer re-derives every published count from. */
|
|
1599
2336
|
source_tables: Array<string>;
|
|
@@ -1820,6 +2557,25 @@ type PartnerDeviceHeartbeatBody = {
|
|
|
1820
2557
|
wifiSsidHash?: string | null;
|
|
1821
2558
|
[key: string]: unknown;
|
|
1822
2559
|
};
|
|
2560
|
+
/**
|
|
2561
|
+
* A play reported by the partner SDK's reportPlay. The PartnerPlay body without screen_id (the screen is the device's binding), plus the Trillboards impression id.
|
|
2562
|
+
*/
|
|
2563
|
+
type PartnerDevicePlay = {
|
|
2564
|
+
/** Optional ad/line identifier; defaults to the sha-keyed creative. */
|
|
2565
|
+
ad_id?: string;
|
|
2566
|
+
/** When the play completed (device clock), within the last 7 days and at most 5 minutes ahead of the server clock. */
|
|
2567
|
+
completed_at: string;
|
|
2568
|
+
/** The classification reference from POST /creatives — `sha256:<hex>` or the bare 64-char content hash. */
|
|
2569
|
+
creative_ref: string;
|
|
2570
|
+
/** Play duration in seconds (default 30). */
|
|
2571
|
+
duration_seconds?: number;
|
|
2572
|
+
/** The Trillboards impression id, when the host played an ad Trillboards served. The Trillboards record of that play is then kept and this report is not counted twice. */
|
|
2573
|
+
impression_id?: string;
|
|
2574
|
+
/** Your unique id for this play (idempotency key, shared with POST /v1/partner/plays). */
|
|
2575
|
+
play_id: string;
|
|
2576
|
+
/** Optional request identifier. */
|
|
2577
|
+
request_id?: string;
|
|
2578
|
+
};
|
|
1823
2579
|
/**
|
|
1824
2580
|
* Request body accepted by the single-device registration endpoints
|
|
1825
2581
|
* (`@trillboards/api-client` `PartnerDeviceRegistrationInput`). Additional
|
|
@@ -1831,8 +2587,8 @@ type PartnerDeviceRegistrationInput = {
|
|
|
1831
2587
|
device_id?: string;
|
|
1832
2588
|
/** Legacy SDK alias for the device identifier, retained for backwards compatibility. */
|
|
1833
2589
|
device_name?: string;
|
|
1834
|
-
/**
|
|
1835
|
-
device_type?:
|
|
2590
|
+
/** Mutable partner category stored independently of advertising classification. Defaults to other on a new device; omission on an existing device preserves its value. Unsupported categories return HTTP 400. */
|
|
2591
|
+
device_type?: "tv" | "tablet" | "display" | "kiosk" | "other" | "mobile" | "connected_tv" | "digital_signage" | "vending_machine";
|
|
1836
2592
|
/** Display specification (pixel resolution and/or physical size). */
|
|
1837
2593
|
display?: Record<string, unknown>;
|
|
1838
2594
|
display_settings?: PartnerRegistrationDisplaySettings;
|
|
@@ -1949,7 +2705,7 @@ type PartnerHeartbeatRequest = {
|
|
|
1949
2705
|
last_vast_response_at?: string;
|
|
1950
2706
|
/** Current GPS fix for a moving screen. Processed only for screens whose `mobility_type` is `mobile` or `semi_mobile` (declare it at registration or via PATCH /device/{deviceId}), OR for any screen still missing coordinates (a one-time self-heal that also kicks off venue classification). Static screens with valid coordinates ignore it. Updates live geo-targeting, geofencing and analytics. Fully optional — omit it on stationary screens. */
|
|
1951
2707
|
location?: {
|
|
1952
|
-
/** Horizontal accuracy radius in meters
|
|
2708
|
+
/** Horizontal accuracy radius in meters, stored as the device reports it. */
|
|
1953
2709
|
accuracy_m?: number;
|
|
1954
2710
|
/** Up to 200 fixes recorded while the device was offline, replayed as a historical track. Timestamps MUST be in ascending order — a non-chronological batch is rejected with HTTP 400. Only the top-level `location` updates the live serving position. */
|
|
1955
2711
|
buffered_locations?: Array<{
|
|
@@ -1970,7 +2726,7 @@ type PartnerHeartbeatRequest = {
|
|
|
1970
2726
|
source?: "gps" | "gps_buffered";
|
|
1971
2727
|
/** Ground speed in meters per second. Omit if unavailable. */
|
|
1972
2728
|
speed_mps?: number;
|
|
1973
|
-
/** Unix epoch milliseconds of the on-device fix. Send the device clock value
|
|
2729
|
+
/** Unix epoch milliseconds of the on-device fix. Send the device clock value. A fix whose timestamp is more than 60 s ahead of the server's clock, or more than 6 h behind it, is kept without a fix time. A position jump implying > 320 km/h between consecutive fixes is rejected. */
|
|
1974
2730
|
timestamp?: number;
|
|
1975
2731
|
};
|
|
1976
2732
|
/** Alternate namespace for telemetry keys (legacy support). */
|
|
@@ -2093,6 +2849,21 @@ type PartnerHeartbeatTelemetry = {
|
|
|
2093
2849
|
webview_chromium_major?: number;
|
|
2094
2850
|
[key: string]: unknown;
|
|
2095
2851
|
};
|
|
2852
|
+
/**
|
|
2853
|
+
* What a rider did with the screen, reported by the partner SDK's reportInteraction. (partner, device, interaction_id) is the event's identity.
|
|
2854
|
+
*/
|
|
2855
|
+
type PartnerInteraction = {
|
|
2856
|
+
/** The creative on screen, as the host names it. */
|
|
2857
|
+
creative_id?: string;
|
|
2858
|
+
/** The host app's id for this interaction (idempotency key, per device). */
|
|
2859
|
+
interaction_id: string;
|
|
2860
|
+
/** When it happened (device clock), within the last 7 days and at most 5 minutes ahead of the server clock. */
|
|
2861
|
+
occurred_at: string;
|
|
2862
|
+
/** Milliseconds into the creative's playback when it happened. */
|
|
2863
|
+
t_ms?: number;
|
|
2864
|
+
/** What happened. Never a programmatic ad-lifecycle event (those are POST /device/{deviceId}/programmatic-event). */
|
|
2865
|
+
type: "tap" | "qr_shown" | "qr_scanned" | "dwell_prompt";
|
|
2866
|
+
};
|
|
2096
2867
|
type PartnerLBarContent = {
|
|
2097
2868
|
/** The venue name rendered in the L-bar; empty string when unset. One of only three scalar keys (`enabled`, `business_name`, `current_promotion`) the PUT copies straight across — every other key here is an object that gets shallow-merged. */
|
|
2098
2869
|
business_name?: string;
|
|
@@ -2145,6 +2916,30 @@ type PartnerLBarSettings = {
|
|
|
2145
2916
|
/** The screen's resolved pacing contract, present only on the PUT response. `policy_version` is `v1` and every interval is in MILLISECONDS (`paid_interval_ms`, `self_promo_interval_ms`, `image_ad_total_ms`, `image_ad_min_ms`); it also carries `max_paid_share` (null unless a loop share cap is enabled), `surface_policy`, `schedule_policy`, `pip_settings` and `lbar_settings`. */
|
|
2146
2917
|
playback_policy?: Record<string, unknown>;
|
|
2147
2918
|
};
|
|
2919
|
+
/**
|
|
2920
|
+
* Where the screen's location comes from, and, per rail, whether that rail
|
|
2921
|
+
* has the location it needs. Location is a readiness capability, never a
|
|
2922
|
+
* registration rule: a device without one is registered, and this says
|
|
2923
|
+
* which rails serve it until a position arrives. `monetization_status` is
|
|
2924
|
+
* computed over `inventory_feed` and `geo_targeted_demand`.
|
|
2925
|
+
*
|
|
2926
|
+
*/
|
|
2927
|
+
type PartnerLocationCapability = {
|
|
2928
|
+
/** `precise` — the screen or its device has coordinates; `fleet_market` — none of its own, your account's declared fleet market location lists it; `none`. */
|
|
2929
|
+
position?: "precise" | "fleet_market" | "none";
|
|
2930
|
+
rails?: {
|
|
2931
|
+
geo_targeted_demand?: PartnerLocationRail;
|
|
2932
|
+
inventory_feed?: PartnerLocationRail;
|
|
2933
|
+
visit_attribution?: PartnerLocationRail;
|
|
2934
|
+
};
|
|
2935
|
+
};
|
|
2936
|
+
type PartnerLocationRail = {
|
|
2937
|
+
/** Where a ready rail's location comes from; null when blocked. Only `inventory_feed` reads `fleet_market`. */
|
|
2938
|
+
location_source?: "screen" | "device" | "fleet_market" | null | null;
|
|
2939
|
+
/** Why a blocked rail has no location; null when ready. See https://api.trillboards.com/docs/monetization-requirements#location-capability. */
|
|
2940
|
+
reason?: "awaiting_device_gps" | "no_location_provided" | "city_without_state" | "geocode_failed" | "screen_position_pending" | "country_unknown" | "country_not_supported" | null | null;
|
|
2941
|
+
status?: "ready" | "blocked";
|
|
2942
|
+
};
|
|
2148
2943
|
/**
|
|
2149
2944
|
* Stripe-style monetization requirements (account.requirements analogue).
|
|
2150
2945
|
* Returned on device register / update / get / batch so bulk partners can
|
|
@@ -2413,6 +3208,29 @@ type PartnerStats = {
|
|
|
2413
3208
|
/** Integer US cents. Recomputed daily as `SUM(earner_revenue) * 100` across ALL of the partner's non-demo `programmatic_earnings_daily` rows, with no payable-source filter and no Net-60 maturity gate — so it can exceed `EarningsResponse.total_lifetime_cents`, which applies the payable filter. */
|
|
2414
3209
|
total_revenue_cents?: number;
|
|
2415
3210
|
};
|
|
3211
|
+
/**
|
|
3212
|
+
* One taxi-meter state change reported by the partner SDK's setTripState. (partner, device, trip_id, event_seq) is the event's identity.
|
|
3213
|
+
*/
|
|
3214
|
+
type PartnerTripState = {
|
|
3215
|
+
/** The host's destination text or zone. */
|
|
3216
|
+
destination?: string;
|
|
3217
|
+
/** The event's position in the trip. Increases within a trip; a retry re-sends the same value (idempotency key with trip_id, per device). */
|
|
3218
|
+
event_seq: number;
|
|
3219
|
+
/** Fare so far, in the smallest currency unit. */
|
|
3220
|
+
fare_cents?: number;
|
|
3221
|
+
/** true while the meter runs (a hired trip). */
|
|
3222
|
+
meter_on: boolean;
|
|
3223
|
+
/** Riders the host counted. */
|
|
3224
|
+
passenger_count?: number;
|
|
3225
|
+
/** The host's payment type (stored trimmed and lowercased). */
|
|
3226
|
+
payment_type?: string;
|
|
3227
|
+
/** When the meter changed state (device clock), within the last 7 days and at most 5 minutes ahead of the server clock. */
|
|
3228
|
+
state_at: string;
|
|
3229
|
+
/** Tip, in the smallest currency unit. */
|
|
3230
|
+
tip_cents?: number;
|
|
3231
|
+
/** The host app's trip id. Unique per device, not per partner. */
|
|
3232
|
+
trip_id: string;
|
|
3233
|
+
};
|
|
2416
3234
|
/**
|
|
2417
3235
|
* Canonical INT-PK identity for partner variants (e.g. adipolo_lower_floor_tablet). Wave 2 of pristine-state refactor. variant_name TEXT remains as the wire-format alternate-key indefinitely.
|
|
2418
3236
|
*/
|
|
@@ -2985,7 +3803,7 @@ type SensingRoute = {
|
|
|
2985
3803
|
} | null;
|
|
2986
3804
|
/** Whether the evaluator considers this route at all. A disabled route keeps its condition, actions and screen set and is simply skipped by every hot-path read; deleting a route also sets this `false` (rows are soft-deleted, never removed). */
|
|
2987
3805
|
enabled?: boolean;
|
|
2988
|
-
/** `threshold` evaluates `condition` against each incoming observation. `digest` ignores the condition and instead sends a scheduled aggregate driven by the `digest.nextRunAt` cursor; focus regions are rejected on digest routes. */
|
|
3806
|
+
/** `threshold` evaluates `condition` against each incoming observation. `digest` ignores the condition and instead sends a scheduled aggregate driven by the `digest.nextRunAt` cursor; focus regions and explicit review timing are rejected on digest routes. */
|
|
2989
3807
|
mode?: "threshold" | "digest";
|
|
2990
3808
|
/** Operator-supplied label, trimmed and capped at 200 characters. It is delivered verbatim as `route_name` on every fire but is not the alert text — the human-readable message is composed separately from the screen's sensing intent. */
|
|
2991
3809
|
name?: string;
|
|
@@ -2997,9 +3815,11 @@ type SensingRoute = {
|
|
|
2997
3815
|
partnerId?: string;
|
|
2998
3816
|
/** Binds the route to a sensing profile BY NAME, never by `profile_id` — redeploying a profile mints a fresh `profile_id` per screen, which would orphan the binding. `null` means unbound; when set, the route stays dormant on any screen whose active profile has a different name. */
|
|
2999
3817
|
profileName?: string | null;
|
|
3818
|
+
reviewTimingMode?: SensingRouteReviewTimingMode;
|
|
3819
|
+
reviewWaitSeconds?: SensingRouteReviewWaitSeconds;
|
|
3000
3820
|
/** Server-minted immutable id: the literal prefix `rt_` followed by a UUID. Webhook consumers should key on this rather than `route_name`, which the owner can rename at any time. */
|
|
3001
3821
|
routeId?: string;
|
|
3002
|
-
/** Per-camera areas, at most one entry per screen
|
|
3822
|
+
/** Per-camera areas, at most one entry per screen. The legacy cloud path converts geometry into prompt text and is not geometrically enforced (measured 2026-08-25 on gemini-3.1-flash-lite). The retained local connector masks actual pixels separately for each declared scope; original unmasked JPEGs remain alert evidence. Retained installation and model accuracy require separate qualification. */
|
|
3003
3823
|
screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
|
|
3004
3824
|
/** The screens this route watches — deduped and capped at 250. For a group-targeted route these are the group's LIVE members resolved at read time, not a stored set, so the list can change between two GETs without any edit. */
|
|
3005
3825
|
screenMongoIds?: Array<string>;
|
|
@@ -3044,6 +3864,14 @@ type SensingRouteCondition = {
|
|
|
3044
3864
|
/** The threshold value (numeric, string, or boolean depending on the field). */
|
|
3045
3865
|
value?: number | string | boolean;
|
|
3046
3866
|
};
|
|
3867
|
+
/**
|
|
3868
|
+
* Threshold-alert timing. NULL preserves legacy behavior; immediate adds no check delay; wait_recheck requires distinct first/follow-up positive images at least reviewWaitSeconds apart on capture time, not uninterrupted activity or message grouping.
|
|
3869
|
+
*/
|
|
3870
|
+
type SensingRouteReviewTimingMode = "immediate" | "wait_recheck" | null | null;
|
|
3871
|
+
/**
|
|
3872
|
+
* Whole seconds before a fresh follow-up check. Required only for wait_recheck; must be NULL for immediate or unspecified timing. These two settings must be updated together.
|
|
3873
|
+
*/
|
|
3874
|
+
type SensingRouteReviewWaitSeconds = number | null;
|
|
3047
3875
|
/**
|
|
3048
3876
|
* A normalized camera area used only by this alert. The rectangle is the compatibility bounding box; optional ordered points define the exact lasso perimeter. Omitted cameras use the whole view.
|
|
3049
3877
|
*/
|
|
@@ -3203,6 +4031,8 @@ type Transaction = {
|
|
|
3203
4031
|
created_at?: string;
|
|
3204
4032
|
/** For an `earning` row, the `YYYY-MM-DD` accounting period the aggregate covers. For a `payout` row it is the payout record's creation timestamp, so it carries a time component despite the declared `date` format. */
|
|
3205
4033
|
date?: string;
|
|
4034
|
+
earning_source_version?: 1;
|
|
4035
|
+
earning_sources?: EarningsSources;
|
|
3206
4036
|
/** Synthetic and namespaced by origin, never a ledger primary key: earnings rows are `daily_<YYYY-MM-DD>` (one per accounting day, not per impression); payouts are `admin_batch:<ledger_id>`, `earner_withdrawal:<withdrawal_id>` or `legacy_transfer:<id>`. */
|
|
3207
4037
|
id?: string;
|
|
3208
4038
|
/** Number of impressions (for earning transactions) */
|
|
@@ -3219,7 +4049,7 @@ type Transaction = {
|
|
|
3219
4049
|
*/
|
|
3220
4050
|
type TrillboardsError = {
|
|
3221
4051
|
error: {
|
|
3222
|
-
/** Stable machine-readable error code. Switch on this, never on `message`. The
|
|
4052
|
+
/** Stable machine-readable error code. Switch on this, never on `message`. The 143 CATALOGUED codes are published as the `ErrorCode` schema and served live by `GET /v1/errors`, which is the authority. This field is NOT limited to them: services emit further codes directly, and `ApiError.notFound(resource)` mints `<resource>_not_found` from an arbitrary resource name. Always handle an unrecognised code by falling back to `type`. */
|
|
3223
4053
|
code: string;
|
|
3224
4054
|
/** Per-field violations (populated from Zod errors). */
|
|
3225
4055
|
details?: Array<{
|
|
@@ -3246,7 +4076,7 @@ type TrillboardsError = {
|
|
|
3246
4076
|
};
|
|
3247
4077
|
};
|
|
3248
4078
|
/**
|
|
3249
|
-
* Partial, non-clobbering update — include only the fields to change.
|
|
4079
|
+
* Partial, non-clobbering update — include only the fields to change. Update reviewTimingMode and reviewWaitSeconds together; omit both to preserve existing timing. Explicit timing cannot be added to a digest, and changing to a digest clears the prior event check timing.
|
|
3250
4080
|
*/
|
|
3251
4081
|
type UpdatePartnerSensingRouteRequest = {
|
|
3252
4082
|
/** REPLACES the entire action list (1..10 entries); the existing rows are deleted and reinserted. Omit the key to leave actions untouched — there is no way to add or remove a single action. */
|
|
@@ -3275,6 +4105,8 @@ type UpdatePartnerSensingRouteRequest = {
|
|
|
3275
4105
|
name?: string;
|
|
3276
4106
|
/** Rebinds the route to a different named sensing profile; send `null` (or an empty/whitespace string) to unbind it. Always a profile NAME — a `profile_id` is re-minted on every redeploy and would orphan the binding. */
|
|
3277
4107
|
profileName?: string | null;
|
|
4108
|
+
reviewTimingMode?: SensingRouteReviewTimingMode;
|
|
4109
|
+
reviewWaitSeconds?: SensingRouteReviewWaitSeconds;
|
|
3278
4110
|
/** Replace all selected rectangles or polygon lassos for the route; send [] to return every camera to whole view. Entries must target the route's explicit screenMongoIds. */
|
|
3279
4111
|
screenFocusRegions?: Array<SensingRouteScreenFocusRegion>;
|
|
3280
4112
|
/** REPLACES the watched screen set (1..250, deduped); mutually exclusive with `targetGroupId` in one request. Focus regions for cameras that survive the swap are PRESERVED unless you also send `screenFocusRegions` (including `[]` to clear them). */
|
|
@@ -3333,7 +4165,7 @@ type Webhook = {
|
|
|
3333
4165
|
/** When webhook was created */
|
|
3334
4166
|
created_at?: string;
|
|
3335
4167
|
/** Subscribed event types */
|
|
3336
|
-
events?: Array<"device.online" | "device.offline" | "impression.recorded" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
4168
|
+
events?: Array<"device.online" | "device.offline" | "impression.recorded" | "creative.rewards_ready" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
3337
4169
|
/** Total failed deliveries */
|
|
3338
4170
|
failure_count?: number;
|
|
3339
4171
|
/** Last time webhook was triggered */
|
|
@@ -3414,7 +4246,7 @@ type WifiScanResult = {
|
|
|
3414
4246
|
channelWidthMhz?: number | null;
|
|
3415
4247
|
/** Centre frequency of the AP's PRIMARY 20 MHz channel in MHz (2400-7200 accepted, covering 2.4/5/6 GHz) — not the centre of a wider bonded channel. Convert to a channel number yourself; the wire carries only the frequency. */
|
|
3416
4248
|
frequencyMhz: number;
|
|
3417
|
-
/** The AP's BSSID exactly as Android reports it, unhashed on the device
|
|
4249
|
+
/** The AP's BSSID exactly as Android reports it, unhashed on the device; Trillboards stores it as received and as a keyed HMAC-SHA256 hash. Rows are de-duplicated by BSSID keeping the strongest reading, and the literal `02:00:00:00:00:00` — Android's redaction placeholder for a caller without location permission — is dropped rather than forwarded, so a permission-less device produces an empty list, not a list of placeholders. */
|
|
3418
4250
|
rawBssid: string;
|
|
3419
4251
|
/** AP signal level in dBm (negative, bounded -120..0), from `ScanResult.level`. Note the wire key the Android agent actually sends is `signal_dbm`, not a snake_case form of this name — a mismatch of exactly this kind left the ClickHouse `rssi` column NULL on 100% of Wi-Fi rows until 2026-08-08. */
|
|
3420
4252
|
signalStrengthDbm: number;
|
|
@@ -3428,8 +4260,177 @@ interface queryChangelogOperation {
|
|
|
3428
4260
|
readonly path: "/v1/changelog";
|
|
3429
4261
|
readonly method: "GET";
|
|
3430
4262
|
request: never;
|
|
4263
|
+
params: Record<string, unknown>;
|
|
4264
|
+
query: {
|
|
4265
|
+
/** Only entries dated on or after this date (YYYY-MM-DD). Unreleased entries always included. */
|
|
4266
|
+
since?: string;
|
|
4267
|
+
/** Filter by change category: "breaking" (changed+removed), "additive" (added), "deprecation" (deprecated), "fix" (fixed). Comma-separated for multiple. */
|
|
4268
|
+
type?: string;
|
|
4269
|
+
};
|
|
3431
4270
|
response: ChangelogResponse;
|
|
3432
4271
|
}
|
|
4272
|
+
/**
|
|
4273
|
+
* Aggregate audience analytics for a time window.
|
|
4274
|
+
* GET /v1/data/aggregate
|
|
4275
|
+
*/
|
|
4276
|
+
interface dataApiAggregateOperation {
|
|
4277
|
+
readonly path: "/v1/data/aggregate";
|
|
4278
|
+
readonly method: "GET";
|
|
4279
|
+
request: never;
|
|
4280
|
+
params: Record<string, unknown>;
|
|
4281
|
+
query: {
|
|
4282
|
+
/** Dimension to group aggregations by. */
|
|
4283
|
+
group_by?: "venue_type" | "daypart" | "day_of_week" | "income_estimated_level" | "primary_mood";
|
|
4284
|
+
/** Metric to aggregate on. */
|
|
4285
|
+
metric?: "avg_face_count" | "avg_attention" | "income_confidence" | "max_face_count";
|
|
4286
|
+
/** Relative time window (e.g. "24h", "7d"). */
|
|
4287
|
+
since?: string;
|
|
4288
|
+
};
|
|
4289
|
+
response: DataApi_AggregateResponse;
|
|
4290
|
+
}
|
|
4291
|
+
/**
|
|
4292
|
+
* Find screens with similar audience profiles.
|
|
4293
|
+
* GET /v1/data/lookalike
|
|
4294
|
+
*/
|
|
4295
|
+
interface dataApiLookalikeScreensOperation {
|
|
4296
|
+
readonly path: "/v1/data/lookalike";
|
|
4297
|
+
readonly method: "GET";
|
|
4298
|
+
request: never;
|
|
4299
|
+
params: Record<string, unknown>;
|
|
4300
|
+
query: {
|
|
4301
|
+
limit?: number;
|
|
4302
|
+
min_similarity?: number;
|
|
4303
|
+
/** Internal screen identifier. */
|
|
4304
|
+
screen_id: string;
|
|
4305
|
+
};
|
|
4306
|
+
response: DataApi_LookalikeResponse;
|
|
4307
|
+
}
|
|
4308
|
+
/**
|
|
4309
|
+
* Composable query DSL over approved datasets.
|
|
4310
|
+
* POST /v1/data/query
|
|
4311
|
+
*/
|
|
4312
|
+
interface dataApiQueryDslOperation {
|
|
4313
|
+
readonly path: "/v1/data/query";
|
|
4314
|
+
readonly method: "POST";
|
|
4315
|
+
request: DataApi_QueryDslBody;
|
|
4316
|
+
params: Record<string, unknown>;
|
|
4317
|
+
query: Record<string, unknown>;
|
|
4318
|
+
response: DataApi_QueryDslResponse;
|
|
4319
|
+
}
|
|
4320
|
+
/**
|
|
4321
|
+
* List screens visible to the caller.
|
|
4322
|
+
* GET /v1/data/screens
|
|
4323
|
+
*/
|
|
4324
|
+
interface dataApiListScreensOperation {
|
|
4325
|
+
readonly path: "/v1/data/screens";
|
|
4326
|
+
readonly method: "GET";
|
|
4327
|
+
request: never;
|
|
4328
|
+
params: Record<string, unknown>;
|
|
4329
|
+
query: {
|
|
4330
|
+
/** ISO-3166 alpha-2 country code. */
|
|
4331
|
+
country?: string;
|
|
4332
|
+
limit?: number;
|
|
4333
|
+
offset?: number;
|
|
4334
|
+
/** Filter by venue taxonomy type (e.g. bar, restaurant). */
|
|
4335
|
+
venue_type?: string;
|
|
4336
|
+
};
|
|
4337
|
+
response: DataApi_ScreensListResponse;
|
|
4338
|
+
}
|
|
4339
|
+
/**
|
|
4340
|
+
* Real-time audience snapshot for a screen.
|
|
4341
|
+
* GET /v1/data/screens/{screenId}/audience
|
|
4342
|
+
*/
|
|
4343
|
+
interface dataApiScreenAudienceLiveOperation {
|
|
4344
|
+
readonly path: "/v1/data/screens/{screenId}/audience";
|
|
4345
|
+
readonly method: "GET";
|
|
4346
|
+
request: never;
|
|
4347
|
+
params: {
|
|
4348
|
+
/** Internal screen identifier. */
|
|
4349
|
+
screenId: string;
|
|
4350
|
+
};
|
|
4351
|
+
query: Record<string, unknown>;
|
|
4352
|
+
response: DataApi_ScreenAudienceResponse;
|
|
4353
|
+
}
|
|
4354
|
+
/**
|
|
4355
|
+
* Historical audience_metrics rows for a screen.
|
|
4356
|
+
* GET /v1/data/screens/{screenId}/history
|
|
4357
|
+
*/
|
|
4358
|
+
interface dataApiScreenAudienceHistoryOperation {
|
|
4359
|
+
readonly path: "/v1/data/screens/{screenId}/history";
|
|
4360
|
+
readonly method: "GET";
|
|
4361
|
+
request: never;
|
|
4362
|
+
params: {
|
|
4363
|
+
/** Internal screen identifier. */
|
|
4364
|
+
screenId: string;
|
|
4365
|
+
};
|
|
4366
|
+
query: {
|
|
4367
|
+
limit?: number;
|
|
4368
|
+
/** ISO-8601 start timestamp. */
|
|
4369
|
+
since?: string;
|
|
4370
|
+
/** ISO-8601 end timestamp. */
|
|
4371
|
+
until?: string;
|
|
4372
|
+
};
|
|
4373
|
+
response: DataApi_ScreenHistoryResponse;
|
|
4374
|
+
}
|
|
4375
|
+
/**
|
|
4376
|
+
* Similarity search over scene embeddings.
|
|
4377
|
+
* GET /v1/data/semantic-search
|
|
4378
|
+
*/
|
|
4379
|
+
interface dataApiSemanticSearchOperation {
|
|
4380
|
+
readonly path: "/v1/data/semantic-search";
|
|
4381
|
+
readonly method: "GET";
|
|
4382
|
+
request: never;
|
|
4383
|
+
params: Record<string, unknown>;
|
|
4384
|
+
query: {
|
|
4385
|
+
limit?: number;
|
|
4386
|
+
min_similarity?: number;
|
|
4387
|
+
q: string;
|
|
4388
|
+
/** Relative time window (e.g. "24h", "7d"). */
|
|
4389
|
+
since?: string;
|
|
4390
|
+
};
|
|
4391
|
+
response: DataApi_SemanticSearchResponse;
|
|
4392
|
+
}
|
|
4393
|
+
/**
|
|
4394
|
+
* Platform-wide counters.
|
|
4395
|
+
* GET /v1/data/stats
|
|
4396
|
+
*/
|
|
4397
|
+
interface dataApiStatsOperation {
|
|
4398
|
+
readonly path: "/v1/data/stats";
|
|
4399
|
+
readonly method: "GET";
|
|
4400
|
+
request: never;
|
|
4401
|
+
params: Record<string, unknown>;
|
|
4402
|
+
query: Record<string, unknown>;
|
|
4403
|
+
response: DataApi_StatsResponse;
|
|
4404
|
+
}
|
|
4405
|
+
/**
|
|
4406
|
+
* Server-Sent Events stream of live audience/observation events.
|
|
4407
|
+
* GET /v1/data/stream
|
|
4408
|
+
*/
|
|
4409
|
+
interface dataApiStreamOperation {
|
|
4410
|
+
readonly path: "/v1/data/stream";
|
|
4411
|
+
readonly method: "GET";
|
|
4412
|
+
request: never;
|
|
4413
|
+
params: Record<string, unknown>;
|
|
4414
|
+
query: {
|
|
4415
|
+
observation_family?: string;
|
|
4416
|
+
venue_type?: string;
|
|
4417
|
+
};
|
|
4418
|
+
response: unknown;
|
|
4419
|
+
}
|
|
4420
|
+
/**
|
|
4421
|
+
* API usage for the authenticated key (billing dashboard).
|
|
4422
|
+
* GET /v1/data/usage
|
|
4423
|
+
*/
|
|
4424
|
+
interface dataApiUsageOperation {
|
|
4425
|
+
readonly path: "/v1/data/usage";
|
|
4426
|
+
readonly method: "GET";
|
|
4427
|
+
request: never;
|
|
4428
|
+
params: Record<string, unknown>;
|
|
4429
|
+
query: {
|
|
4430
|
+
days?: number;
|
|
4431
|
+
};
|
|
4432
|
+
response: DataApi_UsageResponse;
|
|
4433
|
+
}
|
|
3433
4434
|
/**
|
|
3434
4435
|
* List all error codes
|
|
3435
4436
|
* GET /v1/errors
|
|
@@ -3438,6 +4439,8 @@ interface listErrorCodesOperation {
|
|
|
3438
4439
|
readonly path: "/v1/errors";
|
|
3439
4440
|
readonly method: "GET";
|
|
3440
4441
|
request: never;
|
|
4442
|
+
params: Record<string, unknown>;
|
|
4443
|
+
query: Record<string, unknown>;
|
|
3441
4444
|
response: ErrorListResponse;
|
|
3442
4445
|
}
|
|
3443
4446
|
/**
|
|
@@ -3448,8 +4451,28 @@ interface getErrorCodeOperation {
|
|
|
3448
4451
|
readonly path: "/v1/errors/{code}";
|
|
3449
4452
|
readonly method: "GET";
|
|
3450
4453
|
request: never;
|
|
4454
|
+
params: {
|
|
4455
|
+
/** A stable error code from the catalog. See GET /v1/errors for the full list. */
|
|
4456
|
+
code: string;
|
|
4457
|
+
};
|
|
4458
|
+
query: Record<string, unknown>;
|
|
3451
4459
|
response: ErrorCodeResponse;
|
|
3452
4460
|
}
|
|
4461
|
+
/**
|
|
4462
|
+
* Example healthcheck (Phase 3 pipeline proof)
|
|
4463
|
+
* GET /v1/example/healthcheck
|
|
4464
|
+
*/
|
|
4465
|
+
interface exampleHealthcheckOperation {
|
|
4466
|
+
readonly path: "/v1/example/healthcheck";
|
|
4467
|
+
readonly method: "GET";
|
|
4468
|
+
request: never;
|
|
4469
|
+
params: Record<string, unknown>;
|
|
4470
|
+
query: {
|
|
4471
|
+
/** When `true`, include diagnostic fields in the response. */
|
|
4472
|
+
verbose?: "true" | "false";
|
|
4473
|
+
};
|
|
4474
|
+
response: DataApi_ExampleHealthcheckResponse;
|
|
4475
|
+
}
|
|
3453
4476
|
/**
|
|
3454
4477
|
* List self-promo ads
|
|
3455
4478
|
* GET /v1/partner/ads/self-promo
|
|
@@ -3458,6 +4481,8 @@ interface listPartnerSelfPromoAdsOperation {
|
|
|
3458
4481
|
readonly path: "/v1/partner/ads/self-promo";
|
|
3459
4482
|
readonly method: "GET";
|
|
3460
4483
|
request: never;
|
|
4484
|
+
params: Record<string, unknown>;
|
|
4485
|
+
query: Record<string, unknown>;
|
|
3461
4486
|
response: {
|
|
3462
4487
|
data?: Array<PartnerSelfPromoAd>;
|
|
3463
4488
|
success?: boolean;
|
|
@@ -3471,6 +4496,8 @@ interface createPartnerSelfPromoAdOperation {
|
|
|
3471
4496
|
readonly path: "/v1/partner/ads/self-promo";
|
|
3472
4497
|
readonly method: "POST";
|
|
3473
4498
|
request: PartnerSelfPromoCreate;
|
|
4499
|
+
params: Record<string, unknown>;
|
|
4500
|
+
query: Record<string, unknown>;
|
|
3474
4501
|
response: {
|
|
3475
4502
|
data?: PartnerSelfPromoAd;
|
|
3476
4503
|
success?: boolean;
|
|
@@ -3485,6 +4512,8 @@ interface listPartnerSelfPromoPlacementsOperation {
|
|
|
3485
4512
|
readonly path: "/v1/partner/ads/self-promo/placements";
|
|
3486
4513
|
readonly method: "GET";
|
|
3487
4514
|
request: never;
|
|
4515
|
+
params: Record<string, unknown>;
|
|
4516
|
+
query: Record<string, unknown>;
|
|
3488
4517
|
response: {
|
|
3489
4518
|
data?: Array<PartnerSelfPromoPlacement>;
|
|
3490
4519
|
success?: boolean;
|
|
@@ -3503,6 +4532,8 @@ interface schedulePartnerSelfPromoOperation {
|
|
|
3503
4532
|
screen_ids: Array<string>;
|
|
3504
4533
|
start_date?: string;
|
|
3505
4534
|
};
|
|
4535
|
+
params: Record<string, unknown>;
|
|
4536
|
+
query: Record<string, unknown>;
|
|
3506
4537
|
response: {
|
|
3507
4538
|
success?: boolean;
|
|
3508
4539
|
};
|
|
@@ -3515,6 +4546,8 @@ interface createPartnerSelfPromoUploadOperation {
|
|
|
3515
4546
|
readonly path: "/v1/partner/ads/self-promo/upload";
|
|
3516
4547
|
readonly method: "POST";
|
|
3517
4548
|
request: never;
|
|
4549
|
+
params: Record<string, unknown>;
|
|
4550
|
+
query: Record<string, unknown>;
|
|
3518
4551
|
response: {
|
|
3519
4552
|
data?: PartnerSelfPromoAd;
|
|
3520
4553
|
success?: boolean;
|
|
@@ -3529,6 +4562,10 @@ interface disableSelfPromoAdOperation {
|
|
|
3529
4562
|
readonly path: "/v1/partner/ads/self-promo/{ad_id}/disable";
|
|
3530
4563
|
readonly method: "POST";
|
|
3531
4564
|
request: never;
|
|
4565
|
+
params: {
|
|
4566
|
+
ad_id: string;
|
|
4567
|
+
};
|
|
4568
|
+
query: Record<string, unknown>;
|
|
3532
4569
|
response: {
|
|
3533
4570
|
ad_id?: string;
|
|
3534
4571
|
status?: "disabled";
|
|
@@ -3555,6 +4592,8 @@ interface registerAgentOperation {
|
|
|
3555
4592
|
/** Mint an AdCP **sandbox account** (`account.sandbox` in `get_adcp_capabilities`). Media buys made with the returned key validate end to end — screen resolution, published CPM/floor, flight parsing, derived impression goal, every error path — and return a well-formed response marked `sandbox: true`, but persist **no advertisements and no placements**. Nothing can serve, deliver, bill, or pay a venue. Use this for conformance and no-spend testing; register without it for a live account. */
|
|
3556
4593
|
sandbox?: boolean;
|
|
3557
4594
|
};
|
|
4595
|
+
params: Record<string, unknown>;
|
|
4596
|
+
query: Record<string, unknown>;
|
|
3558
4597
|
response: {
|
|
3559
4598
|
/** The AdCP **account** this key is bound to. Distinct from the `sandbox` block below, which describes auto-provisioned test SCREENS (supply); this is the account-level buying contract (demand) declared as `account.sandbox` in `get_adcp_capabilities`. */
|
|
3560
4599
|
account?: {
|
|
@@ -3609,6 +4648,11 @@ interface getAnalyticsOperation {
|
|
|
3609
4648
|
readonly path: "/v1/partner/analytics";
|
|
3610
4649
|
readonly method: "GET";
|
|
3611
4650
|
request: never;
|
|
4651
|
+
params: Record<string, unknown>;
|
|
4652
|
+
query: {
|
|
4653
|
+
end_date?: string;
|
|
4654
|
+
start_date?: string;
|
|
4655
|
+
};
|
|
3612
4656
|
response: {
|
|
3613
4657
|
data?: {
|
|
3614
4658
|
devices_by_status?: Array<Record<string, unknown>>;
|
|
@@ -3640,6 +4684,11 @@ interface getAudienceContinuityOperation {
|
|
|
3640
4684
|
readonly path: "/v1/partner/analytics/audience-continuity";
|
|
3641
4685
|
readonly method: "GET";
|
|
3642
4686
|
request: never;
|
|
4687
|
+
params: Record<string, unknown>;
|
|
4688
|
+
query: {
|
|
4689
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4690
|
+
windowMinutes?: number;
|
|
4691
|
+
};
|
|
3643
4692
|
response: {
|
|
3644
4693
|
data?: {
|
|
3645
4694
|
confidence?: string;
|
|
@@ -3657,6 +4706,10 @@ interface getAudienceProfileOperation {
|
|
|
3657
4706
|
readonly path: "/v1/partner/analytics/audience-profile";
|
|
3658
4707
|
readonly method: "GET";
|
|
3659
4708
|
request: never;
|
|
4709
|
+
params: Record<string, unknown>;
|
|
4710
|
+
query: {
|
|
4711
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4712
|
+
};
|
|
3660
4713
|
response: {
|
|
3661
4714
|
data?: {
|
|
3662
4715
|
sampleSize?: number;
|
|
@@ -3673,6 +4726,10 @@ interface getBleSummaryOperation {
|
|
|
3673
4726
|
readonly path: "/v1/partner/analytics/ble-summary";
|
|
3674
4727
|
readonly method: "GET";
|
|
3675
4728
|
request: never;
|
|
4729
|
+
params: Record<string, unknown>;
|
|
4730
|
+
query: {
|
|
4731
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4732
|
+
};
|
|
3676
4733
|
response: {
|
|
3677
4734
|
data?: {
|
|
3678
4735
|
totalObservations?: number;
|
|
@@ -3689,6 +4746,14 @@ interface getContentPerformanceOperation {
|
|
|
3689
4746
|
readonly path: "/v1/partner/analytics/content-performance";
|
|
3690
4747
|
readonly method: "GET";
|
|
3691
4748
|
request: never;
|
|
4749
|
+
params: Record<string, unknown>;
|
|
4750
|
+
query: {
|
|
4751
|
+
groupBy?: "canonical" | "wrapper";
|
|
4752
|
+
includeUnclassified?: boolean;
|
|
4753
|
+
limit?: number;
|
|
4754
|
+
offset?: number;
|
|
4755
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4756
|
+
};
|
|
3692
4757
|
response: {
|
|
3693
4758
|
data?: {
|
|
3694
4759
|
byScreen?: Record<string, unknown>;
|
|
@@ -3726,6 +4791,12 @@ interface searchCreativeCatalogOperation {
|
|
|
3726
4791
|
readonly path: "/v1/partner/analytics/creative-catalog";
|
|
3727
4792
|
readonly method: "GET";
|
|
3728
4793
|
request: never;
|
|
4794
|
+
params: Record<string, unknown>;
|
|
4795
|
+
query: {
|
|
4796
|
+
limit?: number;
|
|
4797
|
+
offset?: number;
|
|
4798
|
+
q?: string;
|
|
4799
|
+
};
|
|
3729
4800
|
response: {
|
|
3730
4801
|
data?: {
|
|
3731
4802
|
creatives?: Array<{
|
|
@@ -3753,6 +4824,14 @@ interface getCreativeScenesOperation {
|
|
|
3753
4824
|
readonly path: "/v1/partner/analytics/creative-scenes";
|
|
3754
4825
|
readonly method: "GET";
|
|
3755
4826
|
request: never;
|
|
4827
|
+
params: Record<string, unknown>;
|
|
4828
|
+
query: {
|
|
4829
|
+
adId: string;
|
|
4830
|
+
cursor?: string;
|
|
4831
|
+
limit?: number;
|
|
4832
|
+
screenId: string;
|
|
4833
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4834
|
+
};
|
|
3756
4835
|
response: {
|
|
3757
4836
|
data?: {
|
|
3758
4837
|
adId?: string;
|
|
@@ -3773,6 +4852,10 @@ interface getCrossScreenFlowOperation {
|
|
|
3773
4852
|
readonly path: "/v1/partner/analytics/cross-screen-flow";
|
|
3774
4853
|
readonly method: "GET";
|
|
3775
4854
|
request: never;
|
|
4855
|
+
params: Record<string, unknown>;
|
|
4856
|
+
query: {
|
|
4857
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4858
|
+
};
|
|
3776
4859
|
response: {
|
|
3777
4860
|
data?: {
|
|
3778
4861
|
edges?: Array<Record<string, unknown>>;
|
|
@@ -3789,6 +4872,12 @@ interface getPartnerAnalyticsDashboardOperation {
|
|
|
3789
4872
|
readonly path: "/v1/partner/analytics/dashboard";
|
|
3790
4873
|
readonly method: "GET";
|
|
3791
4874
|
request: never;
|
|
4875
|
+
params: Record<string, unknown>;
|
|
4876
|
+
query: {
|
|
4877
|
+
endDate?: string;
|
|
4878
|
+
period?: "7d" | "30d" | "90d" | "custom";
|
|
4879
|
+
startDate?: string;
|
|
4880
|
+
};
|
|
3792
4881
|
response: {
|
|
3793
4882
|
data?: {
|
|
3794
4883
|
ads?: Record<string, unknown>;
|
|
@@ -3819,6 +4908,10 @@ interface getDeviceSuiteSignatureOperation {
|
|
|
3819
4908
|
readonly path: "/v1/partner/analytics/device-suite-signature";
|
|
3820
4909
|
readonly method: "GET";
|
|
3821
4910
|
request: never;
|
|
4911
|
+
params: Record<string, unknown>;
|
|
4912
|
+
query: {
|
|
4913
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4914
|
+
};
|
|
3822
4915
|
response: {
|
|
3823
4916
|
data?: {
|
|
3824
4917
|
deviceTypes?: Array<Record<string, unknown>>;
|
|
@@ -3835,6 +4928,13 @@ interface exportPartnerAnalyticsOperation {
|
|
|
3835
4928
|
readonly path: "/v1/partner/analytics/export";
|
|
3836
4929
|
readonly method: "GET";
|
|
3837
4930
|
request: never;
|
|
4931
|
+
params: Record<string, unknown>;
|
|
4932
|
+
query: {
|
|
4933
|
+
endDate?: string;
|
|
4934
|
+
period?: "7d" | "30d" | "90d" | "custom";
|
|
4935
|
+
startDate?: string;
|
|
4936
|
+
type?: "summary" | "daily-breakdown" | "screen-breakdown";
|
|
4937
|
+
};
|
|
3838
4938
|
response: unknown;
|
|
3839
4939
|
}
|
|
3840
4940
|
/**
|
|
@@ -3845,6 +4945,12 @@ interface exportPartnerAdsByDayOperation {
|
|
|
3845
4945
|
readonly path: "/v1/partner/analytics/export/ads-by-day";
|
|
3846
4946
|
readonly method: "GET";
|
|
3847
4947
|
request: never;
|
|
4948
|
+
params: Record<string, unknown>;
|
|
4949
|
+
query: {
|
|
4950
|
+
endDate: string;
|
|
4951
|
+
format?: "csv" | "json";
|
|
4952
|
+
startDate: string;
|
|
4953
|
+
};
|
|
3848
4954
|
response: {
|
|
3849
4955
|
data?: Array<{
|
|
3850
4956
|
ad_name?: string;
|
|
@@ -3869,6 +4975,10 @@ interface getFleetHourlyOperation {
|
|
|
3869
4975
|
readonly path: "/v1/partner/analytics/fleet-hourly";
|
|
3870
4976
|
readonly method: "GET";
|
|
3871
4977
|
request: never;
|
|
4978
|
+
params: Record<string, unknown>;
|
|
4979
|
+
query: {
|
|
4980
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
4981
|
+
};
|
|
3872
4982
|
response: {
|
|
3873
4983
|
data?: {
|
|
3874
4984
|
hours?: Array<Record<string, unknown>>;
|
|
@@ -3885,6 +4995,10 @@ interface getHaloFunnelOperation {
|
|
|
3885
4995
|
readonly path: "/v1/partner/analytics/halo-funnel";
|
|
3886
4996
|
readonly method: "GET";
|
|
3887
4997
|
request: never;
|
|
4998
|
+
params: Record<string, unknown>;
|
|
4999
|
+
query: {
|
|
5000
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5001
|
+
};
|
|
3888
5002
|
response: {
|
|
3889
5003
|
data?: {
|
|
3890
5004
|
stages?: Array<Record<string, unknown>>;
|
|
@@ -3900,6 +5014,10 @@ interface getLoyaltyClockOperation {
|
|
|
3900
5014
|
readonly path: "/v1/partner/analytics/loyalty-clock";
|
|
3901
5015
|
readonly method: "GET";
|
|
3902
5016
|
request: never;
|
|
5017
|
+
params: Record<string, unknown>;
|
|
5018
|
+
query: {
|
|
5019
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5020
|
+
};
|
|
3903
5021
|
response: {
|
|
3904
5022
|
data?: {
|
|
3905
5023
|
hours?: Array<{
|
|
@@ -3922,6 +5040,10 @@ interface getNetworkSummaryOperation {
|
|
|
3922
5040
|
readonly path: "/v1/partner/analytics/network-summary";
|
|
3923
5041
|
readonly method: "GET";
|
|
3924
5042
|
request: never;
|
|
5043
|
+
params: Record<string, unknown>;
|
|
5044
|
+
query: {
|
|
5045
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5046
|
+
};
|
|
3925
5047
|
response: {
|
|
3926
5048
|
data?: {
|
|
3927
5049
|
dataAvailable?: boolean;
|
|
@@ -3940,6 +5062,11 @@ interface getNetworkTrendOperation {
|
|
|
3940
5062
|
readonly path: "/v1/partner/analytics/network-trend";
|
|
3941
5063
|
readonly method: "GET";
|
|
3942
5064
|
request: never;
|
|
5065
|
+
params: Record<string, unknown>;
|
|
5066
|
+
query: {
|
|
5067
|
+
interval?: "1h" | "1d";
|
|
5068
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5069
|
+
};
|
|
3943
5070
|
response: {
|
|
3944
5071
|
data?: {
|
|
3945
5072
|
interval?: string;
|
|
@@ -3950,13 +5077,17 @@ interface getNetworkTrendOperation {
|
|
|
3950
5077
|
};
|
|
3951
5078
|
}
|
|
3952
5079
|
/**
|
|
3953
|
-
*
|
|
5080
|
+
* Cross-screen proximity-graph summary
|
|
3954
5081
|
* GET /v1/partner/analytics/proximity-summary
|
|
3955
5082
|
*/
|
|
3956
5083
|
interface getProximitySummaryOperation {
|
|
3957
5084
|
readonly path: "/v1/partner/analytics/proximity-summary";
|
|
3958
5085
|
readonly method: "GET";
|
|
3959
5086
|
request: never;
|
|
5087
|
+
params: Record<string, unknown>;
|
|
5088
|
+
query: {
|
|
5089
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5090
|
+
};
|
|
3960
5091
|
response: {
|
|
3961
5092
|
data?: {
|
|
3962
5093
|
continuityEdges?: Array<Record<string, unknown>>;
|
|
@@ -3978,6 +5109,10 @@ interface getRevenueAttentionCorrelationOperation {
|
|
|
3978
5109
|
readonly path: "/v1/partner/analytics/revenue-attention-correlation";
|
|
3979
5110
|
readonly method: "GET";
|
|
3980
5111
|
request: never;
|
|
5112
|
+
params: Record<string, unknown>;
|
|
5113
|
+
query: {
|
|
5114
|
+
timeRange?: "today" | "last_7d" | "last_30d";
|
|
5115
|
+
};
|
|
3981
5116
|
response: {
|
|
3982
5117
|
data?: {
|
|
3983
5118
|
points?: Array<Record<string, unknown>>;
|
|
@@ -3994,6 +5129,11 @@ interface getSceneFeedOperation {
|
|
|
3994
5129
|
readonly path: "/v1/partner/analytics/scene-feed";
|
|
3995
5130
|
readonly method: "GET";
|
|
3996
5131
|
request: never;
|
|
5132
|
+
params: Record<string, unknown>;
|
|
5133
|
+
query: {
|
|
5134
|
+
limit?: number;
|
|
5135
|
+
offset?: number;
|
|
5136
|
+
};
|
|
3997
5137
|
response: {
|
|
3998
5138
|
data?: {
|
|
3999
5139
|
/** Distinct calendar days with observations over the last 90 days. */
|
|
@@ -4018,6 +5158,8 @@ interface getSceneIntelligenceOperation {
|
|
|
4018
5158
|
readonly path: "/v1/partner/analytics/scene-intelligence";
|
|
4019
5159
|
readonly method: "GET";
|
|
4020
5160
|
request: never;
|
|
5161
|
+
params: Record<string, unknown>;
|
|
5162
|
+
query: Record<string, unknown>;
|
|
4021
5163
|
response: {
|
|
4022
5164
|
data?: {
|
|
4023
5165
|
/** Present on EVERY response, success included. A field that appeared only on failure would make its absence the signal, and an absent field is indistinguishable from an old client or a version skew. */
|
|
@@ -4040,6 +5182,8 @@ interface rotateApiKeyOperation {
|
|
|
4040
5182
|
readonly path: "/v1/partner/api-key/rotate";
|
|
4041
5183
|
readonly method: "POST";
|
|
4042
5184
|
request: never;
|
|
5185
|
+
params: Record<string, unknown>;
|
|
5186
|
+
query: Record<string, unknown>;
|
|
4043
5187
|
response: {
|
|
4044
5188
|
data?: {
|
|
4045
5189
|
/** New API key — shown only once! */
|
|
@@ -4060,6 +5204,10 @@ interface getAudienceAnalyticsOperation {
|
|
|
4060
5204
|
readonly path: "/v1/partner/audience-analytics";
|
|
4061
5205
|
readonly method: "GET";
|
|
4062
5206
|
request: never;
|
|
5207
|
+
params: Record<string, unknown>;
|
|
5208
|
+
query: {
|
|
5209
|
+
period?: "24h" | "7d" | "30d";
|
|
5210
|
+
};
|
|
4063
5211
|
response: AudienceAnalyticsResponse;
|
|
4064
5212
|
}
|
|
4065
5213
|
/**
|
|
@@ -4070,6 +5218,14 @@ interface exportAudienceDataOperation {
|
|
|
4070
5218
|
readonly path: "/v1/partner/audience-export";
|
|
4071
5219
|
readonly method: "GET";
|
|
4072
5220
|
request: never;
|
|
5221
|
+
params: Record<string, unknown>;
|
|
5222
|
+
query: {
|
|
5223
|
+
aggregation?: "hourly" | "daily" | "weekly";
|
|
5224
|
+
end_date?: string;
|
|
5225
|
+
format?: "json" | "csv";
|
|
5226
|
+
screen_ids: string;
|
|
5227
|
+
start_date?: string;
|
|
5228
|
+
};
|
|
4073
5229
|
response: AudienceExportResponse;
|
|
4074
5230
|
}
|
|
4075
5231
|
/**
|
|
@@ -4080,6 +5236,11 @@ interface getAudienceHeatmapOperation {
|
|
|
4080
5236
|
readonly path: "/v1/partner/audience/heatmap";
|
|
4081
5237
|
readonly method: "GET";
|
|
4082
5238
|
request: never;
|
|
5239
|
+
params: Record<string, unknown>;
|
|
5240
|
+
query: {
|
|
5241
|
+
days?: number;
|
|
5242
|
+
screen_ids?: string;
|
|
5243
|
+
};
|
|
4083
5244
|
response: {
|
|
4084
5245
|
cells?: number;
|
|
4085
5246
|
heatmap?: Array<Record<string, unknown>>;
|
|
@@ -4097,6 +5258,10 @@ interface getLiveAudienceOperation {
|
|
|
4097
5258
|
readonly path: "/v1/partner/audience/live/{screenId}";
|
|
4098
5259
|
readonly method: "GET";
|
|
4099
5260
|
request: never;
|
|
5261
|
+
params: {
|
|
5262
|
+
screenId: string;
|
|
5263
|
+
};
|
|
5264
|
+
query: Record<string, unknown>;
|
|
4100
5265
|
response: {
|
|
4101
5266
|
/** Null when screen is offline */
|
|
4102
5267
|
audience?: {
|
|
@@ -4131,6 +5296,15 @@ interface getLookalikeScreensOperation {
|
|
|
4131
5296
|
readonly path: "/v1/partner/audience/lookalikes/{screenId}";
|
|
4132
5297
|
readonly method: "GET";
|
|
4133
5298
|
request: never;
|
|
5299
|
+
params: {
|
|
5300
|
+
screenId: string;
|
|
5301
|
+
};
|
|
5302
|
+
query: {
|
|
5303
|
+
country?: string;
|
|
5304
|
+
limit?: number;
|
|
5305
|
+
min_similarity?: number;
|
|
5306
|
+
venue_type?: string;
|
|
5307
|
+
};
|
|
4134
5308
|
response: {
|
|
4135
5309
|
filters?: {
|
|
4136
5310
|
country?: string | null;
|
|
@@ -4152,6 +5326,14 @@ interface predictScreenAudienceOperation {
|
|
|
4152
5326
|
readonly path: "/v1/partner/audience/predict/{screenId}";
|
|
4153
5327
|
readonly method: "GET";
|
|
4154
5328
|
request: never;
|
|
5329
|
+
params: {
|
|
5330
|
+
screenId: string;
|
|
5331
|
+
};
|
|
5332
|
+
query: {
|
|
5333
|
+
day: number;
|
|
5334
|
+
hour: number;
|
|
5335
|
+
lookback_days?: number;
|
|
5336
|
+
};
|
|
4155
5337
|
response: {
|
|
4156
5338
|
day_of_week?: number;
|
|
4157
5339
|
hour_utc?: number;
|
|
@@ -4173,6 +5355,10 @@ interface getResolvedHouseholdReachOperation {
|
|
|
4173
5355
|
readonly path: "/v1/partner/audience/resolved-household-reach/{campaignId}";
|
|
4174
5356
|
readonly method: "GET";
|
|
4175
5357
|
request: never;
|
|
5358
|
+
params: {
|
|
5359
|
+
campaignId: string;
|
|
5360
|
+
};
|
|
5361
|
+
query: Record<string, unknown>;
|
|
4176
5362
|
response: {
|
|
4177
5363
|
audience_composition?: Array<Record<string, unknown>>;
|
|
4178
5364
|
campaign_id?: string;
|
|
@@ -4192,6 +5378,8 @@ interface listAudienceSegmentsOperation {
|
|
|
4192
5378
|
readonly path: "/v1/partner/audience/segments";
|
|
4193
5379
|
readonly method: "GET";
|
|
4194
5380
|
request: never;
|
|
5381
|
+
params: Record<string, unknown>;
|
|
5382
|
+
query: Record<string, unknown>;
|
|
4195
5383
|
response: {
|
|
4196
5384
|
data?: Array<AudienceSegment>;
|
|
4197
5385
|
has_more?: boolean;
|
|
@@ -4220,6 +5408,8 @@ interface createAudienceSegmentOperation {
|
|
|
4220
5408
|
value: unknown;
|
|
4221
5409
|
}>;
|
|
4222
5410
|
};
|
|
5411
|
+
params: Record<string, unknown>;
|
|
5412
|
+
query: Record<string, unknown>;
|
|
4223
5413
|
response: AudienceSegment;
|
|
4224
5414
|
}
|
|
4225
5415
|
/**
|
|
@@ -4230,6 +5420,10 @@ interface deleteAudienceSegmentOperation {
|
|
|
4230
5420
|
readonly path: "/v1/partner/audience/segments/{segmentId}";
|
|
4231
5421
|
readonly method: "DELETE";
|
|
4232
5422
|
request: never;
|
|
5423
|
+
params: {
|
|
5424
|
+
segmentId: string;
|
|
5425
|
+
};
|
|
5426
|
+
query: Record<string, unknown>;
|
|
4233
5427
|
response: {
|
|
4234
5428
|
deleted?: boolean;
|
|
4235
5429
|
id?: string;
|
|
@@ -4245,6 +5439,10 @@ interface getAudienceSegmentOperation {
|
|
|
4245
5439
|
readonly path: "/v1/partner/audience/segments/{segmentId}";
|
|
4246
5440
|
readonly method: "GET";
|
|
4247
5441
|
request: never;
|
|
5442
|
+
params: {
|
|
5443
|
+
segmentId: string;
|
|
5444
|
+
};
|
|
5445
|
+
query: Record<string, unknown>;
|
|
4248
5446
|
response: AudienceSegment;
|
|
4249
5447
|
}
|
|
4250
5448
|
/**
|
|
@@ -4264,6 +5462,10 @@ interface updateAudienceSegmentOperation {
|
|
|
4264
5462
|
value?: unknown;
|
|
4265
5463
|
}>;
|
|
4266
5464
|
};
|
|
5465
|
+
params: {
|
|
5466
|
+
segmentId: string;
|
|
5467
|
+
};
|
|
5468
|
+
query: Record<string, unknown>;
|
|
4267
5469
|
response: AudienceSegment;
|
|
4268
5470
|
}
|
|
4269
5471
|
/**
|
|
@@ -4274,6 +5476,13 @@ interface matchAudienceSegmentOperation {
|
|
|
4274
5476
|
readonly path: "/v1/partner/audience/segments/{segmentId}/match";
|
|
4275
5477
|
readonly method: "POST";
|
|
4276
5478
|
request: never;
|
|
5479
|
+
params: {
|
|
5480
|
+
segmentId: string;
|
|
5481
|
+
};
|
|
5482
|
+
query: {
|
|
5483
|
+
limit?: number;
|
|
5484
|
+
own_screens_only?: "true" | "false";
|
|
5485
|
+
};
|
|
4277
5486
|
response: {
|
|
4278
5487
|
matched_count?: number;
|
|
4279
5488
|
matches?: Array<Record<string, unknown>>;
|
|
@@ -4292,6 +5501,12 @@ interface estimateSegmentReachOperation {
|
|
|
4292
5501
|
readonly path: "/v1/partner/audience/segments/{segmentId}/reach";
|
|
4293
5502
|
readonly method: "POST";
|
|
4294
5503
|
request: never;
|
|
5504
|
+
params: {
|
|
5505
|
+
segmentId: string;
|
|
5506
|
+
};
|
|
5507
|
+
query: {
|
|
5508
|
+
own_screens_only?: "true" | "false";
|
|
5509
|
+
};
|
|
4295
5510
|
response: {
|
|
4296
5511
|
country_breakdown?: Record<string, number>;
|
|
4297
5512
|
estimated_daily_cpm?: number;
|
|
@@ -4322,6 +5537,10 @@ interface generateSegmentVastTagOperation {
|
|
|
4322
5537
|
duration?: number;
|
|
4323
5538
|
own_screens_only?: boolean;
|
|
4324
5539
|
};
|
|
5540
|
+
params: {
|
|
5541
|
+
segmentId: string;
|
|
5542
|
+
};
|
|
5543
|
+
query: Record<string, unknown>;
|
|
4325
5544
|
response: {
|
|
4326
5545
|
creative?: {
|
|
4327
5546
|
click_through?: string | null;
|
|
@@ -4345,6 +5564,8 @@ interface getAudienceStatsOperation {
|
|
|
4345
5564
|
readonly path: "/v1/partner/audience/stats";
|
|
4346
5565
|
readonly method: "GET";
|
|
4347
5566
|
request: never;
|
|
5567
|
+
params: Record<string, unknown>;
|
|
5568
|
+
query: Record<string, unknown>;
|
|
4348
5569
|
response: {
|
|
4349
5570
|
data_access_tier?: "basic" | "developer" | "enterprise";
|
|
4350
5571
|
newest_data?: string | null;
|
|
@@ -4364,6 +5585,8 @@ interface cancelBillingSubscriptionOperation {
|
|
|
4364
5585
|
readonly path: "/v1/partner/billing/cancel";
|
|
4365
5586
|
readonly method: "POST";
|
|
4366
5587
|
request: never;
|
|
5588
|
+
params: Record<string, unknown>;
|
|
5589
|
+
query: Record<string, unknown>;
|
|
4367
5590
|
response: {
|
|
4368
5591
|
effective_at?: string;
|
|
4369
5592
|
status?: "canceled" | "scheduled_for_cancellation";
|
|
@@ -4380,17 +5603,27 @@ interface purchaseCreditsOperation {
|
|
|
4380
5603
|
/** Credit purchase tier */
|
|
4381
5604
|
tier: "tier_500" | "tier_2000" | "tier_5000";
|
|
4382
5605
|
};
|
|
5606
|
+
params: Record<string, unknown>;
|
|
5607
|
+
query: Record<string, unknown>;
|
|
4383
5608
|
response: {
|
|
4384
5609
|
/** Amount charged in cents */
|
|
4385
5610
|
charged_cents?: number;
|
|
4386
|
-
/**
|
|
4387
|
-
|
|
4388
|
-
/**
|
|
5611
|
+
/** Present when Stripe confirmation requires action; handle as a secret */
|
|
5612
|
+
client_secret?: string;
|
|
5613
|
+
/** Verified credit added in exact decimal cents; zero until capture settles */
|
|
5614
|
+
credits_added_cents?: string;
|
|
5615
|
+
/** Legacy field name: additional credit as a percentage of the charged amount */
|
|
4389
5616
|
discount_pct?: number;
|
|
4390
5617
|
object?: string;
|
|
5618
|
+
/** Durable purchase operation identifier */
|
|
5619
|
+
operation_id?: string;
|
|
4391
5620
|
/** Stripe PaymentIntent ID */
|
|
4392
5621
|
payment_intent_id?: string;
|
|
4393
5622
|
request_id?: string;
|
|
5623
|
+
/** Complete Stripe confirmation before credit can settle */
|
|
5624
|
+
requires_action?: boolean;
|
|
5625
|
+
/** Native Stripe PaymentIntent status */
|
|
5626
|
+
status?: string;
|
|
4394
5627
|
};
|
|
4395
5628
|
}
|
|
4396
5629
|
/**
|
|
@@ -4407,11 +5640,15 @@ interface createCreditCheckoutOperation {
|
|
|
4407
5640
|
success_url?: string;
|
|
4408
5641
|
tier: "tier_500" | "tier_2000" | "tier_5000";
|
|
4409
5642
|
};
|
|
5643
|
+
params: Record<string, unknown>;
|
|
5644
|
+
query: Record<string, unknown>;
|
|
4410
5645
|
response: {
|
|
4411
5646
|
/** Stripe Checkout URL — redirect user here */
|
|
4412
5647
|
checkout_url?: string;
|
|
4413
5648
|
message?: string;
|
|
4414
5649
|
object?: string;
|
|
5650
|
+
/** Durable credit-purchase operation identifier */
|
|
5651
|
+
operation_id?: string;
|
|
4415
5652
|
request_id?: string;
|
|
4416
5653
|
/** Stripe Checkout session ID */
|
|
4417
5654
|
session_id?: string;
|
|
@@ -4425,6 +5662,8 @@ interface listBillingPlansOperation {
|
|
|
4425
5662
|
readonly path: "/v1/partner/billing/plans";
|
|
4426
5663
|
readonly method: "GET";
|
|
4427
5664
|
request: never;
|
|
5665
|
+
params: Record<string, unknown>;
|
|
5666
|
+
query: Record<string, unknown>;
|
|
4428
5667
|
response: {
|
|
4429
5668
|
plans?: Array<{
|
|
4430
5669
|
included_ads?: number;
|
|
@@ -4446,6 +5685,8 @@ interface setupBillingOperation {
|
|
|
4446
5685
|
/** Stripe payment method token obtained from Stripe.js or Stripe Elements */
|
|
4447
5686
|
payment_method_id: string;
|
|
4448
5687
|
};
|
|
5688
|
+
params: Record<string, unknown>;
|
|
5689
|
+
query: Record<string, unknown>;
|
|
4449
5690
|
response: {
|
|
4450
5691
|
billing_status?: string;
|
|
4451
5692
|
message?: string;
|
|
@@ -4464,6 +5705,8 @@ interface createBillingSubscriptionOperation {
|
|
|
4464
5705
|
request: {
|
|
4465
5706
|
tier: "developer" | "enterprise";
|
|
4466
5707
|
};
|
|
5708
|
+
params: Record<string, unknown>;
|
|
5709
|
+
query: Record<string, unknown>;
|
|
4467
5710
|
response: {
|
|
4468
5711
|
checkout_url?: string | null;
|
|
4469
5712
|
status?: "active" | "requires_payment";
|
|
@@ -4477,6 +5720,8 @@ interface getBillingSubscriptionOperation {
|
|
|
4477
5720
|
readonly path: "/v1/partner/billing/subscription";
|
|
4478
5721
|
readonly method: "GET";
|
|
4479
5722
|
request: never;
|
|
5723
|
+
params: Record<string, unknown>;
|
|
5724
|
+
query: Record<string, unknown>;
|
|
4480
5725
|
response: {
|
|
4481
5726
|
current_period_end?: string;
|
|
4482
5727
|
status?: "active" | "past_due" | "canceled" | "trialing";
|
|
@@ -4492,6 +5737,8 @@ interface getBillingUsageOperation {
|
|
|
4492
5737
|
readonly path: "/v1/partner/billing/usage";
|
|
4493
5738
|
readonly method: "GET";
|
|
4494
5739
|
request: never;
|
|
5740
|
+
params: Record<string, unknown>;
|
|
5741
|
+
query: Record<string, unknown>;
|
|
4495
5742
|
response: {
|
|
4496
5743
|
ads_served?: number;
|
|
4497
5744
|
audience_api_calls?: number;
|
|
@@ -4509,28 +5756,37 @@ interface getBillingUsageSummaryOperation {
|
|
|
4509
5756
|
readonly path: "/v1/partner/billing/usage-summary";
|
|
4510
5757
|
readonly method: "GET";
|
|
4511
5758
|
request: never;
|
|
4512
|
-
|
|
4513
|
-
|
|
4514
|
-
|
|
4515
|
-
|
|
4516
|
-
|
|
4517
|
-
|
|
4518
|
-
/**
|
|
4519
|
-
|
|
4520
|
-
|
|
4521
|
-
|
|
4522
|
-
|
|
4523
|
-
|
|
4524
|
-
|
|
4525
|
-
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
5759
|
+
params: Record<string, unknown>;
|
|
5760
|
+
query: Record<string, unknown>;
|
|
5761
|
+
response: {
|
|
5762
|
+
billing_status: "free" | "none" | "active" | "suspended";
|
|
5763
|
+
/** Committed credit balance in cents, with eight decimal places */
|
|
5764
|
+
credit_balance_cents: string;
|
|
5765
|
+
/** Credit held by in-flight reservations, in cents with eight decimal places */
|
|
5766
|
+
credit_reserved_cents: string;
|
|
5767
|
+
object: string;
|
|
5768
|
+
/** Partner billing account identifier */
|
|
5769
|
+
partner_mongo_id: string;
|
|
5770
|
+
/** Exclusive end of the current UTC calendar month */
|
|
5771
|
+
period_end: string;
|
|
5772
|
+
period_start: string;
|
|
5773
|
+
products: Record<string, {
|
|
5774
|
+
meters: Record<string, {
|
|
5775
|
+
cost_cents: string;
|
|
5776
|
+
free_quantity: string;
|
|
5777
|
+
legacy_unknown_cents: string;
|
|
5778
|
+
paid_quantity: string;
|
|
5779
|
+
postpaid_cents: string;
|
|
5780
|
+
prepaid_cents: string;
|
|
5781
|
+
/** Total quantity in the published meter unit */
|
|
5782
|
+
total_quantity: string;
|
|
4529
5783
|
}>;
|
|
5784
|
+
/** Product cost in cents with eight decimal places */
|
|
5785
|
+
total_cost_cents: string;
|
|
4530
5786
|
}>;
|
|
4531
|
-
request_id
|
|
4532
|
-
/**
|
|
4533
|
-
total_cost_cents
|
|
5787
|
+
request_id: string;
|
|
5788
|
+
/** Period cost in cents with eight decimal places */
|
|
5789
|
+
total_cost_cents: string;
|
|
4534
5790
|
};
|
|
4535
5791
|
}
|
|
4536
5792
|
/**
|
|
@@ -4541,6 +5797,8 @@ interface stripeWebhookCallbackOperation {
|
|
|
4541
5797
|
readonly path: "/v1/partner/billing/webhook";
|
|
4542
5798
|
readonly method: "POST";
|
|
4543
5799
|
request: Record<string, unknown>;
|
|
5800
|
+
params: Record<string, unknown>;
|
|
5801
|
+
query: Record<string, unknown>;
|
|
4544
5802
|
response: unknown;
|
|
4545
5803
|
}
|
|
4546
5804
|
/**
|
|
@@ -4551,6 +5809,10 @@ interface getConnectDashboardOperation {
|
|
|
4551
5809
|
readonly path: "/v1/partner/connect/dashboard";
|
|
4552
5810
|
readonly method: "GET";
|
|
4553
5811
|
request: never;
|
|
5812
|
+
params: Record<string, unknown>;
|
|
5813
|
+
query: {
|
|
5814
|
+
period?: "7d" | "30d" | "90d";
|
|
5815
|
+
};
|
|
4554
5816
|
response: {
|
|
4555
5817
|
data?: {
|
|
4556
5818
|
charts?: {
|
|
@@ -4618,6 +5880,11 @@ interface getConnectEarningsChartOperation {
|
|
|
4618
5880
|
readonly path: "/v1/partner/connect/earnings";
|
|
4619
5881
|
readonly method: "GET";
|
|
4620
5882
|
request: never;
|
|
5883
|
+
params: Record<string, unknown>;
|
|
5884
|
+
query: {
|
|
5885
|
+
group_by?: "day" | "week";
|
|
5886
|
+
period?: "7d" | "30d" | "90d";
|
|
5887
|
+
};
|
|
4621
5888
|
response: {
|
|
4622
5889
|
data?: {
|
|
4623
5890
|
chart?: Array<{
|
|
@@ -4651,6 +5918,10 @@ interface getConnectScreenHealthOperation {
|
|
|
4651
5918
|
readonly path: "/v1/partner/connect/health";
|
|
4652
5919
|
readonly method: "GET";
|
|
4653
5920
|
request: never;
|
|
5921
|
+
params: Record<string, unknown>;
|
|
5922
|
+
query: {
|
|
5923
|
+
status?: "online" | "offline" | "all";
|
|
5924
|
+
};
|
|
4654
5925
|
response: {
|
|
4655
5926
|
data?: {
|
|
4656
5927
|
checked_at?: string;
|
|
@@ -4694,6 +5965,8 @@ interface listContentPresetsOperation {
|
|
|
4694
5965
|
readonly path: "/v1/partner/content-presets";
|
|
4695
5966
|
readonly method: "GET";
|
|
4696
5967
|
request: never;
|
|
5968
|
+
params: Record<string, unknown>;
|
|
5969
|
+
query: Record<string, unknown>;
|
|
4697
5970
|
response: {
|
|
4698
5971
|
data?: Array<ContentPreset>;
|
|
4699
5972
|
has_more?: boolean;
|
|
@@ -4710,8 +5983,170 @@ interface getContentPresetOperation {
|
|
|
4710
5983
|
readonly path: "/v1/partner/content-presets/{presetId}";
|
|
4711
5984
|
readonly method: "GET";
|
|
4712
5985
|
request: never;
|
|
5986
|
+
params: {
|
|
5987
|
+
presetId: string;
|
|
5988
|
+
};
|
|
5989
|
+
query: Record<string, unknown>;
|
|
4713
5990
|
response: ContentPreset;
|
|
4714
5991
|
}
|
|
5992
|
+
/**
|
|
5993
|
+
* Create an experiment on a funded native media-buy placement
|
|
5994
|
+
* POST /v1/partner/creative-experiments
|
|
5995
|
+
*/
|
|
5996
|
+
interface createCreativeFeedbackExperimentOperation {
|
|
5997
|
+
readonly path: "/v1/partner/creative-experiments";
|
|
5998
|
+
readonly method: "POST";
|
|
5999
|
+
request: FeedbackCreateRequest;
|
|
6000
|
+
params: Record<string, unknown>;
|
|
6001
|
+
query: Record<string, unknown>;
|
|
6002
|
+
response: FeedbackExperimentResponse;
|
|
6003
|
+
}
|
|
6004
|
+
/**
|
|
6005
|
+
* Read your native experiment, policy and latest 500 owned creative recovery records
|
|
6006
|
+
* GET /v1/partner/creative-experiments/{experiment_id}
|
|
6007
|
+
*/
|
|
6008
|
+
interface getCreativeFeedbackExperimentOperation {
|
|
6009
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}";
|
|
6010
|
+
readonly method: "GET";
|
|
6011
|
+
request: never;
|
|
6012
|
+
params: {
|
|
6013
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6014
|
+
experiment_id: string;
|
|
6015
|
+
};
|
|
6016
|
+
query: Record<string, unknown>;
|
|
6017
|
+
response: FeedbackExperimentDetailResponse;
|
|
6018
|
+
}
|
|
6019
|
+
/**
|
|
6020
|
+
* Configure your native brand profile and enable its booked reactive campaign
|
|
6021
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/brand
|
|
6022
|
+
*/
|
|
6023
|
+
interface configureCreativeFeedbackBrandOperation {
|
|
6024
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/brand";
|
|
6025
|
+
readonly method: "POST";
|
|
6026
|
+
request: FeedbackBrandRequest;
|
|
6027
|
+
params: {
|
|
6028
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6029
|
+
experiment_id: string;
|
|
6030
|
+
};
|
|
6031
|
+
query: Record<string, unknown>;
|
|
6032
|
+
response: FeedbackBrandResponse;
|
|
6033
|
+
}
|
|
6034
|
+
/**
|
|
6035
|
+
* Generate a native brand creative for explicit review and moderation
|
|
6036
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/creatives/generate
|
|
6037
|
+
*/
|
|
6038
|
+
interface generateCreativeFeedbackCreativeOperation {
|
|
6039
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/creatives/generate";
|
|
6040
|
+
readonly method: "POST";
|
|
6041
|
+
request: FeedbackGenerateRequest;
|
|
6042
|
+
params: {
|
|
6043
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6044
|
+
experiment_id: string;
|
|
6045
|
+
};
|
|
6046
|
+
query: Record<string, unknown>;
|
|
6047
|
+
response: FeedbackGenerateResponse;
|
|
6048
|
+
}
|
|
6049
|
+
/**
|
|
6050
|
+
* Import an AI model’s image through native bytes, moderation and brand review
|
|
6051
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/creatives/import
|
|
6052
|
+
*/
|
|
6053
|
+
interface importCreativeFeedbackCreativeOperation {
|
|
6054
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/creatives/import";
|
|
6055
|
+
readonly method: "POST";
|
|
6056
|
+
request: FeedbackImportRequest;
|
|
6057
|
+
params: {
|
|
6058
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6059
|
+
experiment_id: string;
|
|
6060
|
+
};
|
|
6061
|
+
query: Record<string, unknown>;
|
|
6062
|
+
response: FeedbackGenerateResponse;
|
|
6063
|
+
}
|
|
6064
|
+
/**
|
|
6065
|
+
* Approve or reject your generated creative using native brand review
|
|
6066
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/creatives/review
|
|
6067
|
+
*/
|
|
6068
|
+
interface reviewCreativeFeedbackCreativeOperation {
|
|
6069
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/creatives/review";
|
|
6070
|
+
readonly method: "POST";
|
|
6071
|
+
request: FeedbackReviewRequest;
|
|
6072
|
+
params: {
|
|
6073
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6074
|
+
experiment_id: string;
|
|
6075
|
+
};
|
|
6076
|
+
query: Record<string, unknown>;
|
|
6077
|
+
response: FeedbackReviewResponse;
|
|
6078
|
+
}
|
|
6079
|
+
/**
|
|
6080
|
+
* Replace native creative weights at the expected policy version
|
|
6081
|
+
* PUT /v1/partner/creative-experiments/{experiment_id}/policy
|
|
6082
|
+
*/
|
|
6083
|
+
interface updateCreativeFeedbackPolicyOperation {
|
|
6084
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/policy";
|
|
6085
|
+
readonly method: "PUT";
|
|
6086
|
+
request: FeedbackPolicyRequest;
|
|
6087
|
+
params: {
|
|
6088
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6089
|
+
experiment_id: string;
|
|
6090
|
+
};
|
|
6091
|
+
query: Record<string, unknown>;
|
|
6092
|
+
response: FeedbackExperimentResponse;
|
|
6093
|
+
}
|
|
6094
|
+
/**
|
|
6095
|
+
* Read a metered page of latest measured native play states
|
|
6096
|
+
* GET /v1/partner/creative-experiments/{experiment_id}/rewards
|
|
6097
|
+
*/
|
|
6098
|
+
interface getCreativeFeedbackRewardsOperation {
|
|
6099
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/rewards";
|
|
6100
|
+
readonly method: "GET";
|
|
6101
|
+
request: never;
|
|
6102
|
+
params: {
|
|
6103
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6104
|
+
experiment_id: string;
|
|
6105
|
+
};
|
|
6106
|
+
query: {
|
|
6107
|
+
/** Opaque next_cursor from this same date scope; rewind after scan_complete. */
|
|
6108
|
+
cursor?: string;
|
|
6109
|
+
/** Inclusive first play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
6110
|
+
from: string;
|
|
6111
|
+
/** Unique caller-owned billing key for this page; committed retries return the receipt, not another read. */
|
|
6112
|
+
idempotency_key: string;
|
|
6113
|
+
/** Maximum native play states returned on this metered page. */
|
|
6114
|
+
limit?: number;
|
|
6115
|
+
/** Inclusive last play date, YYYY-MM-DD; date range is at most 31 days. */
|
|
6116
|
+
to: string;
|
|
6117
|
+
};
|
|
6118
|
+
response: FeedbackRewardsResponse;
|
|
6119
|
+
}
|
|
6120
|
+
/**
|
|
6121
|
+
* Stop the native experiment at the expected policy version
|
|
6122
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/stop
|
|
6123
|
+
*/
|
|
6124
|
+
interface stopCreativeFeedbackExperimentOperation {
|
|
6125
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/stop";
|
|
6126
|
+
readonly method: "POST";
|
|
6127
|
+
request: FeedbackStopRequest;
|
|
6128
|
+
params: {
|
|
6129
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6130
|
+
experiment_id: string;
|
|
6131
|
+
};
|
|
6132
|
+
query: Record<string, unknown>;
|
|
6133
|
+
response: FeedbackExperimentResponse;
|
|
6134
|
+
}
|
|
6135
|
+
/**
|
|
6136
|
+
* Register approved native generated creative variants
|
|
6137
|
+
* POST /v1/partner/creative-experiments/{experiment_id}/variants
|
|
6138
|
+
*/
|
|
6139
|
+
interface registerCreativeFeedbackVariantsOperation {
|
|
6140
|
+
readonly path: "/v1/partner/creative-experiments/{experiment_id}/variants";
|
|
6141
|
+
readonly method: "POST";
|
|
6142
|
+
request: FeedbackRegisterVariantsRequest;
|
|
6143
|
+
params: {
|
|
6144
|
+
/** Native experiment ID returned by create_creative_experiment. */
|
|
6145
|
+
experiment_id: string;
|
|
6146
|
+
};
|
|
6147
|
+
query: Record<string, unknown>;
|
|
6148
|
+
response: FeedbackExperimentResponse;
|
|
6149
|
+
}
|
|
4715
6150
|
/**
|
|
4716
6151
|
* Submit a creative for classification
|
|
4717
6152
|
* POST /v1/partner/creatives
|
|
@@ -4725,6 +6160,8 @@ interface submitPartnerCreativeOperation {
|
|
|
4725
6160
|
/** Public http(s) URL of the creative image or video. Must resolve to a public address — private/internal/cloud-metadata addresses are rejected. */
|
|
4726
6161
|
media_url: string;
|
|
4727
6162
|
};
|
|
6163
|
+
params: Record<string, unknown>;
|
|
6164
|
+
query: Record<string, unknown>;
|
|
4728
6165
|
response: CreativeClassification;
|
|
4729
6166
|
}
|
|
4730
6167
|
/**
|
|
@@ -4735,6 +6172,10 @@ interface getPartnerCreativeOperation {
|
|
|
4735
6172
|
readonly path: "/v1/partner/creatives/{ref}";
|
|
4736
6173
|
readonly method: "GET";
|
|
4737
6174
|
request: never;
|
|
6175
|
+
params: {
|
|
6176
|
+
ref: string;
|
|
6177
|
+
};
|
|
6178
|
+
query: Record<string, unknown>;
|
|
4738
6179
|
response: CreativeClassification;
|
|
4739
6180
|
}
|
|
4740
6181
|
/**
|
|
@@ -4745,6 +6186,8 @@ interface getDashboardOperation {
|
|
|
4745
6186
|
readonly path: "/v1/partner/dashboard";
|
|
4746
6187
|
readonly method: "GET";
|
|
4747
6188
|
request: never;
|
|
6189
|
+
params: Record<string, unknown>;
|
|
6190
|
+
query: Record<string, unknown>;
|
|
4748
6191
|
response: {
|
|
4749
6192
|
data?: DashboardResponse;
|
|
4750
6193
|
success?: boolean;
|
|
@@ -4758,7 +6201,37 @@ interface exportProximityGraphEdgesOperation {
|
|
|
4758
6201
|
readonly path: "/v1/partner/data-export/proximity-graph-edges";
|
|
4759
6202
|
readonly method: "GET";
|
|
4760
6203
|
request: never;
|
|
4761
|
-
|
|
6204
|
+
params: Record<string, unknown>;
|
|
6205
|
+
query: {
|
|
6206
|
+
cursor?: string;
|
|
6207
|
+
days?: number;
|
|
6208
|
+
limit?: number;
|
|
6209
|
+
};
|
|
6210
|
+
response: {
|
|
6211
|
+
data?: {
|
|
6212
|
+
limit: number;
|
|
6213
|
+
lookback_days: number;
|
|
6214
|
+
/** The `cursor` of the next page, or `null` on the last page. */
|
|
6215
|
+
next_cursor: string | null;
|
|
6216
|
+
rows: Array<{
|
|
6217
|
+
destination_screen_id: string;
|
|
6218
|
+
/** Distinct transitions from the source screen to the destination screen. */
|
|
6219
|
+
edge_count: number;
|
|
6220
|
+
/** Median minutes between the source and destination sightings. */
|
|
6221
|
+
lag_p50: number;
|
|
6222
|
+
source_screen_id: string;
|
|
6223
|
+
/** Distinct devices behind those transitions. */
|
|
6224
|
+
unique_devices: number;
|
|
6225
|
+
}>;
|
|
6226
|
+
/** Number of edges in this page. */
|
|
6227
|
+
total: number;
|
|
6228
|
+
/** `true` when more edges follow this page: pass `next_cursor` back as `cursor`. */
|
|
6229
|
+
truncated: boolean;
|
|
6230
|
+
/** The UTC second the window ends at (`YYYY-MM-DD HH:MM:SS`), pinned by the first page. */
|
|
6231
|
+
window_end: string;
|
|
6232
|
+
};
|
|
6233
|
+
success?: boolean;
|
|
6234
|
+
};
|
|
4762
6235
|
}
|
|
4763
6236
|
/**
|
|
4764
6237
|
* List available datasets and per-dataset record counts
|
|
@@ -4768,6 +6241,10 @@ interface getDataExportSummaryOperation {
|
|
|
4768
6241
|
readonly path: "/v1/partner/data-export/summary";
|
|
4769
6242
|
readonly method: "GET";
|
|
4770
6243
|
request: never;
|
|
6244
|
+
params: Record<string, unknown>;
|
|
6245
|
+
query: {
|
|
6246
|
+
days?: number;
|
|
6247
|
+
};
|
|
4771
6248
|
response: DataExportSummaryResponse;
|
|
4772
6249
|
}
|
|
4773
6250
|
/**
|
|
@@ -4778,9 +6255,16 @@ interface exportDatasetOperation {
|
|
|
4778
6255
|
readonly path: "/v1/partner/data-export/{dataset}";
|
|
4779
6256
|
readonly method: "GET";
|
|
4780
6257
|
request: never;
|
|
6258
|
+
params: {
|
|
6259
|
+
dataset: "audience_metrics" | "signal_audience" | "attention_ledger" | "impression_ledger" | "waterfall_events" | "intent_signals" | "audience_loyalty_features" | "screen_metadata";
|
|
6260
|
+
};
|
|
6261
|
+
query: {
|
|
6262
|
+
days?: number;
|
|
6263
|
+
limit?: number;
|
|
6264
|
+
offset?: number;
|
|
6265
|
+
};
|
|
4781
6266
|
response: {
|
|
4782
6267
|
data?: {
|
|
4783
|
-
k_anonymity_threshold?: number;
|
|
4784
6268
|
lookback_days?: number;
|
|
4785
6269
|
/** Row shape depends on the requested `dataset`. For `audience_loyalty_features` see `AudienceLoyaltyFeaturesRow`. For other datasets the row shape is documented per-dataset in the Trillboards data dictionary. */
|
|
4786
6270
|
rows?: Array<AudienceLoyaltyFeaturesRow | Record<string, unknown>>;
|
|
@@ -4798,47 +6282,51 @@ interface getGeohashAudiencePanelOperation {
|
|
|
4798
6282
|
readonly path: "/v1/partner/data/geohash-audience-panel";
|
|
4799
6283
|
readonly method: "GET";
|
|
4800
6284
|
request: never;
|
|
6285
|
+
params: Record<string, unknown>;
|
|
6286
|
+
query: {
|
|
6287
|
+
date?: string;
|
|
6288
|
+
geohash_prefix?: string;
|
|
6289
|
+
limit?: number;
|
|
6290
|
+
offset?: number;
|
|
6291
|
+
venue_category?: string;
|
|
6292
|
+
};
|
|
4801
6293
|
response: {
|
|
4802
6294
|
data?: {
|
|
4803
|
-
/** True when the daily epsilon budget cannot accommodate this request. `rows` is empty in this case; no epsilon is deducted. */
|
|
4804
|
-
budget_exhausted?: boolean;
|
|
4805
6295
|
/** Day exported (UTC). */
|
|
4806
6296
|
date: string;
|
|
4807
|
-
/**
|
|
4808
|
-
|
|
4809
|
-
/**
|
|
4810
|
-
|
|
4811
|
-
|
|
4812
|
-
|
|
4813
|
-
|
|
4814
|
-
|
|
4815
|
-
|
|
4816
|
-
};
|
|
4817
|
-
/** UUID partner_id (from `partners.partner_id`, migration 030). */
|
|
4818
|
-
partner_id: string;
|
|
4819
|
-
/** Noised per-row aggregates (k-anon-filtered + Laplace-perturbed). */
|
|
6297
|
+
/** Rows per page this response was read with. */
|
|
6298
|
+
limit: number;
|
|
6299
|
+
/** The `offset` of the next page, or `null` on the last page. */
|
|
6300
|
+
next_offset: number | null;
|
|
6301
|
+
/** Rows skipped before this page. */
|
|
6302
|
+
offset: number;
|
|
6303
|
+
/** Integer partner_id (`partners.partner_id`). */
|
|
6304
|
+
partner_id: number;
|
|
6305
|
+
/** Per-row aggregates, every cell with its counts. */
|
|
4820
6306
|
rows: Array<{
|
|
4821
|
-
/**
|
|
4822
|
-
avg_attention: number;
|
|
4823
|
-
/**
|
|
4824
|
-
avg_dwell_seconds: number;
|
|
4825
|
-
/**
|
|
4826
|
-
avg_face_count: number;
|
|
6307
|
+
/** Average attention score. `null`: not measured in this panel, which is built from radio pings; camera-measured attention is in the camera datasets. */
|
|
6308
|
+
avg_attention: number | null;
|
|
6309
|
+
/** Average dwell seconds. `null`: not measured in this panel, which is built from radio pings; camera-measured dwell is in the camera datasets. */
|
|
6310
|
+
avg_dwell_seconds: number | null;
|
|
6311
|
+
/** Average face count per observation. `null`: not measured in this panel, which is built from radio pings; camera-measured faces are in the camera datasets. */
|
|
6312
|
+
avg_face_count: number | null;
|
|
4827
6313
|
/** 6-character geohash bucket. */
|
|
4828
6314
|
geohash6: string;
|
|
4829
6315
|
/** Hour bucket as the integer hour (0..23) cast to string. */
|
|
4830
6316
|
hour: string;
|
|
4831
6317
|
/** Income tier bucket (e.g. `low`, `mid`, `high`). */
|
|
4832
6318
|
income_tier: string;
|
|
4833
|
-
/**
|
|
6319
|
+
/** Observation count. */
|
|
4834
6320
|
observation_count: number;
|
|
4835
6321
|
/** Distinct screen count contributing to this bucket. */
|
|
4836
6322
|
screen_count: number;
|
|
4837
|
-
/**
|
|
6323
|
+
/** Unique-device count. */
|
|
4838
6324
|
unique_devices: number;
|
|
4839
6325
|
/** Venue category from `screens_live.venue_category`. */
|
|
4840
6326
|
venue_category: string;
|
|
4841
6327
|
}>;
|
|
6328
|
+
/** `true` when more cells follow this page: request `next_offset`. */
|
|
6329
|
+
truncated: boolean;
|
|
4842
6330
|
};
|
|
4843
6331
|
success?: boolean;
|
|
4844
6332
|
};
|
|
@@ -4851,40 +6339,47 @@ interface getOutcomeAttributionOperation {
|
|
|
4851
6339
|
readonly path: "/v1/partner/data/outcome-attribution";
|
|
4852
6340
|
readonly method: "GET";
|
|
4853
6341
|
request: never;
|
|
6342
|
+
params: Record<string, unknown>;
|
|
6343
|
+
query: {
|
|
6344
|
+
creative_id?: string;
|
|
6345
|
+
cursor?: string;
|
|
6346
|
+
days?: number;
|
|
6347
|
+
grain?: "person" | "device";
|
|
6348
|
+
limit?: number;
|
|
6349
|
+
};
|
|
4854
6350
|
response: {
|
|
4855
6351
|
data?: {
|
|
4856
|
-
/** DP epsilon charged to the partner's daily budget for this call (0 if refunded). */
|
|
4857
|
-
epsilon_used: number;
|
|
4858
6352
|
/** The reach grain applied (echoes the `grain` query param; defaults to `person`). */
|
|
4859
6353
|
grain: "person" | "device";
|
|
4860
|
-
/**
|
|
4861
|
-
|
|
6354
|
+
/** Rows per page this response was read with. */
|
|
6355
|
+
limit: number;
|
|
4862
6356
|
/** The validated lookback window used. */
|
|
4863
6357
|
lookback_days: number;
|
|
4864
|
-
/**
|
|
4865
|
-
|
|
4866
|
-
|
|
4867
|
-
epsilon_spent_before?: number;
|
|
4868
|
-
};
|
|
4869
|
-
/** Noised per-(creative, screen) outcome aggregates (k-anon-filtered + Laplace-perturbed). */
|
|
6358
|
+
/** The `cursor` of the next page, or `null` on the last page. */
|
|
6359
|
+
next_cursor: string | null;
|
|
6360
|
+
/** Per-(creative, screen) outcome aggregates, every cell with its counts. */
|
|
4870
6361
|
rows: Array<{
|
|
4871
|
-
/**
|
|
6362
|
+
/** Average exposures per reach-identity within the (creative, screen) cell (count of detail rows / distinct reach keys). A frequency over PEOPLE under person grain, over devices under device grain. */
|
|
4872
6363
|
avg_frequency: number;
|
|
4873
6364
|
/** Creative identifier from `completed_impressions.creative_id`. */
|
|
4874
6365
|
creative_id: string;
|
|
4875
|
-
/**
|
|
6366
|
+
/** Count of exposed identities also seen on another screen. */
|
|
4876
6367
|
cross_screen_devices: number;
|
|
4877
|
-
/**
|
|
6368
|
+
/** Count of distinct devices exposed to the creative on the screen. */
|
|
4878
6369
|
exposed_devices: number;
|
|
4879
|
-
/** returned_devices / exposed_devices
|
|
6370
|
+
/** returned_devices / exposed_devices. */
|
|
4880
6371
|
return_rate: number;
|
|
4881
|
-
/**
|
|
6372
|
+
/** Count of exposed devices that returned (≤ exposed_devices). */
|
|
4882
6373
|
returned_devices: number;
|
|
4883
6374
|
/** The partner's own screen identifier. */
|
|
4884
6375
|
screen_mongo_id: string;
|
|
4885
6376
|
}>;
|
|
4886
|
-
/** Number of rows
|
|
6377
|
+
/** Number of rows in this page. */
|
|
4887
6378
|
total: number;
|
|
6379
|
+
/** `true` when more cells follow this page: pass `next_cursor` back as `cursor`. */
|
|
6380
|
+
truncated: boolean;
|
|
6381
|
+
/** The UTC date the window ends on, pinned by the first page; the window is `window_end - lookback_days` through `window_end`. */
|
|
6382
|
+
window_end: string;
|
|
4888
6383
|
};
|
|
4889
6384
|
success?: boolean;
|
|
4890
6385
|
};
|
|
@@ -4903,7 +6398,8 @@ interface registerDeviceOperation {
|
|
|
4903
6398
|
description?: string;
|
|
4904
6399
|
/** Your internal device identifier */
|
|
4905
6400
|
device_id: string;
|
|
4906
|
-
|
|
6401
|
+
/** Mutable partner category; defaults to other only on a new registration. Omit it to preserve an existing device's category. */
|
|
6402
|
+
device_type?: "tv" | "tablet" | "display" | "kiosk" | "other" | "mobile" | "connected_tv" | "digital_signage" | "vending_machine";
|
|
4907
6403
|
/** Screen display specification. `width`/`height` are pixel resolution; `width_in`/`height_in` are physical inches. For accurate floor pricing we need physical inches — pass `width_in` + `height_in` if you've measured the screen, OR `ppi` so the server can derive inches from the pixel resolution. Pixel-only inputs (no `ppi`, no `*_in`) will NOT be recorded as physical size; they're still used for orientation detection and DSP slot dimensions. */
|
|
4908
6404
|
display?: {
|
|
4909
6405
|
/** Display resolution height in pixels (e.g. 1080) */
|
|
@@ -4969,10 +6465,14 @@ interface registerDeviceOperation {
|
|
|
4969
6465
|
subcategory?: string;
|
|
4970
6466
|
};
|
|
4971
6467
|
};
|
|
6468
|
+
params: Record<string, unknown>;
|
|
6469
|
+
query: Record<string, unknown>;
|
|
4972
6470
|
response: {
|
|
4973
6471
|
data?: {
|
|
4974
6472
|
/** Our internal device ID */
|
|
4975
6473
|
device_id?: string;
|
|
6474
|
+
/** Saved partner category, independent of advertising classification. */
|
|
6475
|
+
device_type?: "tv" | "tablet" | "display" | "kiosk" | "other" | "mobile" | "connected_tv" | "digital_signage" | "vending_machine";
|
|
4976
6476
|
/** Load this URL in your WebView */
|
|
4977
6477
|
embed_url?: string;
|
|
4978
6478
|
/** Enrichment completion state */
|
|
@@ -4981,7 +6481,8 @@ interface registerDeviceOperation {
|
|
|
4981
6481
|
external_device_id?: string;
|
|
4982
6482
|
/** Device fingerprint for SDK */
|
|
4983
6483
|
fingerprint?: string;
|
|
4984
|
-
|
|
6484
|
+
location_capability?: PartnerLocationCapability;
|
|
6485
|
+
/** Stripe-style readiness. `ready` — the screen has its own coordinates and its venue is classified. `limited` — servable, but not on every rail: the venue is not yet classified, or the screen has no position of its own and is listed in inventory feeds at your fleet's market location. `blocked` — no rail has a location, or classification permanently failed. A device is never refused registration for missing location. */
|
|
4985
6486
|
monetization_status?: "ready" | "limited" | "blocked";
|
|
4986
6487
|
requirements?: PartnerMonetizationRequirements;
|
|
4987
6488
|
/** Linked screen ID */
|
|
@@ -5000,6 +6501,10 @@ interface deleteDeviceOperation {
|
|
|
5000
6501
|
readonly path: "/v1/partner/device/{deviceId}";
|
|
5001
6502
|
readonly method: "DELETE";
|
|
5002
6503
|
request: never;
|
|
6504
|
+
params: {
|
|
6505
|
+
deviceId: string;
|
|
6506
|
+
};
|
|
6507
|
+
query: Record<string, unknown>;
|
|
5003
6508
|
response: {
|
|
5004
6509
|
message?: string;
|
|
5005
6510
|
success?: boolean;
|
|
@@ -5013,6 +6518,10 @@ interface getDeviceOperation {
|
|
|
5013
6518
|
readonly path: "/v1/partner/device/{deviceId}";
|
|
5014
6519
|
readonly method: "GET";
|
|
5015
6520
|
request: never;
|
|
6521
|
+
params: {
|
|
6522
|
+
deviceId: string;
|
|
6523
|
+
};
|
|
6524
|
+
query: Record<string, unknown>;
|
|
5016
6525
|
response: {
|
|
5017
6526
|
data?: Device;
|
|
5018
6527
|
success?: boolean;
|
|
@@ -5030,6 +6539,8 @@ interface updateDeviceOperation {
|
|
|
5030
6539
|
custom_metadata?: Record<string, unknown>;
|
|
5031
6540
|
/** Screen or venue description */
|
|
5032
6541
|
description?: string;
|
|
6542
|
+
/** Mutable partner category. Omit it to preserve the current value; changing it does not alter advertising classification. */
|
|
6543
|
+
device_type?: "tv" | "tablet" | "display" | "kiosk" | "other" | "mobile" | "connected_tv" | "digital_signage" | "vending_machine";
|
|
5033
6544
|
/** Screen display specification. `width`/`height` are pixels; pass `width_in`/`height_in` (inches) or `ppi` to record physical screen size for floor pricing. See POST /device for full unit semantics. */
|
|
5034
6545
|
display?: {
|
|
5035
6546
|
/** Display resolution height in pixels */
|
|
@@ -5092,6 +6603,10 @@ interface updateDeviceOperation {
|
|
|
5092
6603
|
subcategory?: string;
|
|
5093
6604
|
};
|
|
5094
6605
|
};
|
|
6606
|
+
params: {
|
|
6607
|
+
deviceId: string;
|
|
6608
|
+
};
|
|
6609
|
+
query: Record<string, unknown>;
|
|
5095
6610
|
response: {
|
|
5096
6611
|
data?: Device;
|
|
5097
6612
|
message?: string;
|
|
@@ -5106,6 +6621,20 @@ interface getAdsForDeviceOperation {
|
|
|
5106
6621
|
readonly path: "/v1/partner/device/{deviceId}/ads";
|
|
5107
6622
|
readonly method: "GET";
|
|
5108
6623
|
request: never;
|
|
6624
|
+
params: {
|
|
6625
|
+
deviceId: string;
|
|
6626
|
+
};
|
|
6627
|
+
query: {
|
|
6628
|
+
autoplay?: boolean;
|
|
6629
|
+
ipd?: string;
|
|
6630
|
+
lang?: string;
|
|
6631
|
+
muted?: boolean;
|
|
6632
|
+
orientation?: "portrait" | "landscape";
|
|
6633
|
+
slot_h?: number;
|
|
6634
|
+
slot_w?: number;
|
|
6635
|
+
test?: "1" | "true";
|
|
6636
|
+
ua?: string;
|
|
6637
|
+
};
|
|
5109
6638
|
response: {
|
|
5110
6639
|
data?: {
|
|
5111
6640
|
ads?: Array<Ad>;
|
|
@@ -5159,6 +6688,11 @@ interface ackDeviceCommandOperation {
|
|
|
5159
6688
|
/** Acknowledgment status */
|
|
5160
6689
|
status?: string;
|
|
5161
6690
|
};
|
|
6691
|
+
params: {
|
|
6692
|
+
commandId: string;
|
|
6693
|
+
deviceId: string;
|
|
6694
|
+
};
|
|
6695
|
+
query: Record<string, unknown>;
|
|
5162
6696
|
response: {
|
|
5163
6697
|
message?: string;
|
|
5164
6698
|
success?: boolean;
|
|
@@ -5172,6 +6706,10 @@ interface getDeviceHeartbeatOperation {
|
|
|
5172
6706
|
readonly path: "/v1/partner/device/{deviceId}/heartbeat";
|
|
5173
6707
|
readonly method: "GET";
|
|
5174
6708
|
request: never;
|
|
6709
|
+
params: {
|
|
6710
|
+
deviceId: string;
|
|
6711
|
+
};
|
|
6712
|
+
query: Record<string, unknown>;
|
|
5175
6713
|
response: PartnerHeartbeatQueryResponse;
|
|
5176
6714
|
}
|
|
5177
6715
|
/**
|
|
@@ -5182,8 +6720,58 @@ interface heartbeatOperation {
|
|
|
5182
6720
|
readonly path: "/v1/partner/device/{deviceId}/heartbeat";
|
|
5183
6721
|
readonly method: "POST";
|
|
5184
6722
|
request: PartnerHeartbeatRequest | PartnerDeviceHeartbeatBody;
|
|
6723
|
+
params: {
|
|
6724
|
+
deviceId: string;
|
|
6725
|
+
};
|
|
6726
|
+
query: Record<string, unknown>;
|
|
5185
6727
|
response: PartnerHeartbeatResponse;
|
|
5186
6728
|
}
|
|
6729
|
+
/**
|
|
6730
|
+
* Report a rider interaction from the partner SDK (reportInteraction)
|
|
6731
|
+
* POST /v1/partner/device/{deviceId}/interactions
|
|
6732
|
+
*/
|
|
6733
|
+
interface recordPartnerDeviceInteractionOperation {
|
|
6734
|
+
readonly path: "/v1/partner/device/{deviceId}/interactions";
|
|
6735
|
+
readonly method: "POST";
|
|
6736
|
+
request: PartnerInteraction;
|
|
6737
|
+
params: {
|
|
6738
|
+
deviceId: string;
|
|
6739
|
+
};
|
|
6740
|
+
query: Record<string, unknown>;
|
|
6741
|
+
response: {
|
|
6742
|
+
data: {
|
|
6743
|
+
interaction_id: string;
|
|
6744
|
+
/** The screen this device is bound to. */
|
|
6745
|
+
screen_id: string;
|
|
6746
|
+
status: "accepted" | "duplicate";
|
|
6747
|
+
type: "tap" | "qr_shown" | "qr_scanned" | "dwell_prompt";
|
|
6748
|
+
};
|
|
6749
|
+
success: true;
|
|
6750
|
+
};
|
|
6751
|
+
}
|
|
6752
|
+
/**
|
|
6753
|
+
* Report a play from the partner SDK (reportPlay)
|
|
6754
|
+
* POST /v1/partner/device/{deviceId}/plays
|
|
6755
|
+
*/
|
|
6756
|
+
interface recordPartnerDevicePlayOperation {
|
|
6757
|
+
readonly path: "/v1/partner/device/{deviceId}/plays";
|
|
6758
|
+
readonly method: "POST";
|
|
6759
|
+
request: PartnerDevicePlay;
|
|
6760
|
+
params: {
|
|
6761
|
+
deviceId: string;
|
|
6762
|
+
};
|
|
6763
|
+
query: Record<string, unknown>;
|
|
6764
|
+
response: {
|
|
6765
|
+
data: {
|
|
6766
|
+
content_sha256: string;
|
|
6767
|
+
play_id: string;
|
|
6768
|
+
/** The screen this device is bound to. */
|
|
6769
|
+
screen_id: string;
|
|
6770
|
+
status: "accepted" | "duplicate";
|
|
6771
|
+
};
|
|
6772
|
+
success: true;
|
|
6773
|
+
};
|
|
6774
|
+
}
|
|
5187
6775
|
/**
|
|
5188
6776
|
* Record programmatic ad event (Server-side Analytics)
|
|
5189
6777
|
* POST /v1/partner/device/{deviceId}/programmatic-event
|
|
@@ -5203,10 +6791,37 @@ interface recordProgrammaticEventOperation {
|
|
|
5203
6791
|
slot_width?: number;
|
|
5204
6792
|
variant_name?: string;
|
|
5205
6793
|
};
|
|
6794
|
+
params: {
|
|
6795
|
+
deviceId: string;
|
|
6796
|
+
};
|
|
6797
|
+
query: Record<string, unknown>;
|
|
5206
6798
|
response: {
|
|
5207
6799
|
success?: boolean;
|
|
5208
6800
|
};
|
|
5209
6801
|
}
|
|
6802
|
+
/**
|
|
6803
|
+
* Report a taxi-meter state change from the partner SDK (setTripState)
|
|
6804
|
+
* POST /v1/partner/device/{deviceId}/trips
|
|
6805
|
+
*/
|
|
6806
|
+
interface recordPartnerDeviceTripStateOperation {
|
|
6807
|
+
readonly path: "/v1/partner/device/{deviceId}/trips";
|
|
6808
|
+
readonly method: "POST";
|
|
6809
|
+
request: PartnerTripState;
|
|
6810
|
+
params: {
|
|
6811
|
+
deviceId: string;
|
|
6812
|
+
};
|
|
6813
|
+
query: Record<string, unknown>;
|
|
6814
|
+
response: {
|
|
6815
|
+
data: {
|
|
6816
|
+
event_seq: number;
|
|
6817
|
+
/** The screen this device is bound to. */
|
|
6818
|
+
screen_id: string;
|
|
6819
|
+
status: "accepted" | "duplicate";
|
|
6820
|
+
trip_id: string;
|
|
6821
|
+
};
|
|
6822
|
+
success: true;
|
|
6823
|
+
};
|
|
6824
|
+
}
|
|
5210
6825
|
/**
|
|
5211
6826
|
* List all devices
|
|
5212
6827
|
* GET /v1/partner/devices
|
|
@@ -5215,6 +6830,12 @@ interface listDevicesOperation {
|
|
|
5215
6830
|
readonly path: "/v1/partner/devices";
|
|
5216
6831
|
readonly method: "GET";
|
|
5217
6832
|
request: never;
|
|
6833
|
+
params: Record<string, unknown>;
|
|
6834
|
+
query: {
|
|
6835
|
+
limit?: number;
|
|
6836
|
+
offset?: number;
|
|
6837
|
+
status?: "pending" | "active" | "offline" | "suspended";
|
|
6838
|
+
};
|
|
5218
6839
|
response: {
|
|
5219
6840
|
data?: {
|
|
5220
6841
|
devices?: Array<DeviceSummary>;
|
|
@@ -5269,6 +6890,8 @@ interface registerDeviceV2Operation {
|
|
|
5269
6890
|
/** The device's real WebView User-Agent. Must include a Build fingerprint and be unique per device. */
|
|
5270
6891
|
ua: string;
|
|
5271
6892
|
};
|
|
6893
|
+
params: Record<string, unknown>;
|
|
6894
|
+
query: Record<string, unknown>;
|
|
5272
6895
|
response: {
|
|
5273
6896
|
data?: {
|
|
5274
6897
|
device_id?: string;
|
|
@@ -5312,10 +6935,15 @@ interface registerDevicesBatchOperation {
|
|
|
5312
6935
|
venue?: Record<string, unknown>;
|
|
5313
6936
|
}>;
|
|
5314
6937
|
};
|
|
6938
|
+
params: Record<string, unknown>;
|
|
6939
|
+
query: Record<string, unknown>;
|
|
5315
6940
|
response: {
|
|
5316
6941
|
devices?: Array<{
|
|
5317
6942
|
device_id?: string;
|
|
5318
6943
|
fingerprint?: string;
|
|
6944
|
+
location_capability?: PartnerLocationCapability;
|
|
6945
|
+
monetization_status?: "ready" | "limited" | "blocked";
|
|
6946
|
+
requirements?: PartnerMonetizationRequirements;
|
|
5319
6947
|
screen_id?: string;
|
|
5320
6948
|
status?: string;
|
|
5321
6949
|
trillboard_id?: string;
|
|
@@ -5323,6 +6951,8 @@ interface registerDevicesBatchOperation {
|
|
|
5323
6951
|
errors?: Array<{
|
|
5324
6952
|
device_id?: string;
|
|
5325
6953
|
error?: string;
|
|
6954
|
+
/** Stable code, e.g. DEVICE_ID_CLAIMED (409 — a device that already reports to Trillboards under this id is registered to another account), REGISTRATION_CHECK_UNAVAILABLE (503 — retry), INVALID_COUNTRY (400). */
|
|
6955
|
+
error_code?: string;
|
|
5326
6956
|
status?: string;
|
|
5327
6957
|
}>;
|
|
5328
6958
|
success?: boolean;
|
|
@@ -5345,6 +6975,8 @@ interface batchUpdateDeviceOrientationOperation {
|
|
|
5345
6975
|
device_ids: Array<string>;
|
|
5346
6976
|
screen_orientation: "portrait" | "landscape" | "mixed" | "unknown";
|
|
5347
6977
|
};
|
|
6978
|
+
params: Record<string, unknown>;
|
|
6979
|
+
query: Record<string, unknown>;
|
|
5348
6980
|
response: {
|
|
5349
6981
|
matched_devices?: number;
|
|
5350
6982
|
missing_device_ids?: Array<string>;
|
|
@@ -5364,6 +6996,8 @@ interface reconcileDevicesOperation {
|
|
|
5364
6996
|
/** Your device external IDs to reconcile. */
|
|
5365
6997
|
external_ids: Array<string>;
|
|
5366
6998
|
};
|
|
6999
|
+
params: Record<string, unknown>;
|
|
7000
|
+
query: Record<string, unknown>;
|
|
5367
7001
|
response: {
|
|
5368
7002
|
duplicate?: Array<Record<string, unknown>>;
|
|
5369
7003
|
malformed?: Array<Record<string, unknown>>;
|
|
@@ -5391,6 +7025,8 @@ interface partnerDocsBrowserOperation {
|
|
|
5391
7025
|
readonly path: "/v1/partner/docs";
|
|
5392
7026
|
readonly method: "GET";
|
|
5393
7027
|
request: never;
|
|
7028
|
+
params: Record<string, unknown>;
|
|
7029
|
+
query: Record<string, unknown>;
|
|
5394
7030
|
response: unknown;
|
|
5395
7031
|
}
|
|
5396
7032
|
/**
|
|
@@ -5401,6 +7037,8 @@ interface getEarningsOperation {
|
|
|
5401
7037
|
readonly path: "/v1/partner/earnings";
|
|
5402
7038
|
readonly method: "GET";
|
|
5403
7039
|
request: never;
|
|
7040
|
+
params: Record<string, unknown>;
|
|
7041
|
+
query: Record<string, unknown>;
|
|
5404
7042
|
response: {
|
|
5405
7043
|
data?: EarningsResponse;
|
|
5406
7044
|
success?: boolean;
|
|
@@ -5414,6 +7052,12 @@ interface getEarningsBreakdownOperation {
|
|
|
5414
7052
|
readonly path: "/v1/partner/earnings/breakdown";
|
|
5415
7053
|
readonly method: "GET";
|
|
5416
7054
|
request: never;
|
|
7055
|
+
params: Record<string, unknown>;
|
|
7056
|
+
query: {
|
|
7057
|
+
end_date?: string;
|
|
7058
|
+
group_by?: "day" | "week" | "screen";
|
|
7059
|
+
start_date?: string;
|
|
7060
|
+
};
|
|
5417
7061
|
response: {
|
|
5418
7062
|
data?: EarningsBreakdownResponse;
|
|
5419
7063
|
success?: boolean;
|
|
@@ -5430,6 +7074,8 @@ interface requestPayoutOperation {
|
|
|
5430
7074
|
/** Amount to payout in cents (optional, defaults to available balance) */
|
|
5431
7075
|
amount_cents?: number;
|
|
5432
7076
|
};
|
|
7077
|
+
params: Record<string, unknown>;
|
|
7078
|
+
query: Record<string, unknown>;
|
|
5433
7079
|
response: {
|
|
5434
7080
|
data?: PayoutResponse;
|
|
5435
7081
|
message?: string;
|
|
@@ -5444,6 +7090,12 @@ interface getTransactionsOperation {
|
|
|
5444
7090
|
readonly path: "/v1/partner/earnings/transactions";
|
|
5445
7091
|
readonly method: "GET";
|
|
5446
7092
|
request: never;
|
|
7093
|
+
params: Record<string, unknown>;
|
|
7094
|
+
query: {
|
|
7095
|
+
limit?: number;
|
|
7096
|
+
offset?: number;
|
|
7097
|
+
type?: "all" | "earning" | "payout";
|
|
7098
|
+
};
|
|
5447
7099
|
response: {
|
|
5448
7100
|
data?: {
|
|
5449
7101
|
pagination?: Pagination;
|
|
@@ -5460,6 +7112,8 @@ interface getActiveSSEConnectionsOperation {
|
|
|
5460
7112
|
readonly path: "/v1/partner/events/connections";
|
|
5461
7113
|
readonly method: "GET";
|
|
5462
7114
|
request: never;
|
|
7115
|
+
params: Record<string, unknown>;
|
|
7116
|
+
query: Record<string, unknown>;
|
|
5463
7117
|
response: {
|
|
5464
7118
|
connections?: Array<{
|
|
5465
7119
|
connected_at?: string;
|
|
@@ -5480,6 +7134,10 @@ interface subscribeToEventsOperation {
|
|
|
5480
7134
|
readonly path: "/v1/partner/events/stream";
|
|
5481
7135
|
readonly method: "GET";
|
|
5482
7136
|
request: never;
|
|
7137
|
+
params: Record<string, unknown>;
|
|
7138
|
+
query: {
|
|
7139
|
+
events?: string;
|
|
7140
|
+
};
|
|
5483
7141
|
response: unknown;
|
|
5484
7142
|
}
|
|
5485
7143
|
/**
|
|
@@ -5490,6 +7148,10 @@ interface getFleetCommandOperation {
|
|
|
5490
7148
|
readonly path: "/v1/partner/fleet-commands/{id}";
|
|
5491
7149
|
readonly method: "GET";
|
|
5492
7150
|
request: never;
|
|
7151
|
+
params: {
|
|
7152
|
+
id: string;
|
|
7153
|
+
};
|
|
7154
|
+
query: Record<string, unknown>;
|
|
5493
7155
|
response: {
|
|
5494
7156
|
data?: {
|
|
5495
7157
|
fleet_command?: FleetCommand;
|
|
@@ -5505,10 +7167,17 @@ interface getFleetAnalyticsOperation {
|
|
|
5505
7167
|
readonly path: "/v1/partner/fleet/analytics";
|
|
5506
7168
|
readonly method: "GET";
|
|
5507
7169
|
request: never;
|
|
7170
|
+
params: Record<string, unknown>;
|
|
7171
|
+
query: Record<string, unknown>;
|
|
5508
7172
|
response: {
|
|
5509
7173
|
data?: {
|
|
5510
|
-
/** Average attention score (0-1) */
|
|
7174
|
+
/** Average attention score (0-1) over the fleet's audience windows in the last 24 hours. Omitted when it was not measured — no screen in scope had an audience window, or the audience read failed (see `avg_attention_outcome`); never a `0` that stands in for a missing measurement. */
|
|
5511
7175
|
avg_attention?: number;
|
|
7176
|
+
/** Whether the attention average above was measured. `kind: ok` — the read ran (the average is omitted only when no screen had an audience window); `kind: unavailable` — the audience read failed, so the average is omitted. Independent of the other fields, which are served either way. */
|
|
7177
|
+
avg_attention_outcome?: {
|
|
7178
|
+
kind?: "ok" | "unavailable";
|
|
7179
|
+
message?: string;
|
|
7180
|
+
};
|
|
5512
7181
|
/** Average CPM in dollars */
|
|
5513
7182
|
avg_cpm?: number;
|
|
5514
7183
|
/** Fill rate percentage (0-100) */
|
|
@@ -5541,6 +7210,8 @@ interface pushFleetCommandOperation {
|
|
|
5541
7210
|
venueType?: string;
|
|
5542
7211
|
};
|
|
5543
7212
|
};
|
|
7213
|
+
params: Record<string, unknown>;
|
|
7214
|
+
query: Record<string, unknown>;
|
|
5544
7215
|
response: {
|
|
5545
7216
|
data?: {
|
|
5546
7217
|
errors?: Array<{
|
|
@@ -5563,6 +7234,8 @@ interface getFleetOverviewOperation {
|
|
|
5563
7234
|
readonly path: "/v1/partner/fleet/overview";
|
|
5564
7235
|
readonly method: "GET";
|
|
5565
7236
|
request: never;
|
|
7237
|
+
params: Record<string, unknown>;
|
|
7238
|
+
query: Record<string, unknown>;
|
|
5566
7239
|
response: {
|
|
5567
7240
|
data?: {
|
|
5568
7241
|
countries?: Record<string, number>;
|
|
@@ -5602,6 +7275,8 @@ interface updateFleetSettingsOperation {
|
|
|
5602
7275
|
};
|
|
5603
7276
|
};
|
|
5604
7277
|
};
|
|
7278
|
+
params: Record<string, unknown>;
|
|
7279
|
+
query: Record<string, unknown>;
|
|
5605
7280
|
response: {
|
|
5606
7281
|
data?: {
|
|
5607
7282
|
errors?: Array<Record<string, unknown>>;
|
|
@@ -5619,6 +7294,24 @@ interface recordImpressionGetOperation {
|
|
|
5619
7294
|
readonly path: "/v1/partner/impression";
|
|
5620
7295
|
readonly method: "GET";
|
|
5621
7296
|
request: never;
|
|
7297
|
+
params: Record<string, unknown>;
|
|
7298
|
+
query: {
|
|
7299
|
+
adid: string;
|
|
7300
|
+
aid?: string;
|
|
7301
|
+
completed?: boolean;
|
|
7302
|
+
did?: string;
|
|
7303
|
+
display_area_ratio?: number;
|
|
7304
|
+
display_mode?: "fullscreen" | "l-bar" | "pip";
|
|
7305
|
+
duration?: number;
|
|
7306
|
+
impid: string;
|
|
7307
|
+
lbar_position?: "bottom" | "right";
|
|
7308
|
+
lbar_size?: number;
|
|
7309
|
+
lbar_slot_count?: number;
|
|
7310
|
+
lbar_slot_index?: number;
|
|
7311
|
+
sid?: string;
|
|
7312
|
+
sig?: string;
|
|
7313
|
+
sig_ts?: number;
|
|
7314
|
+
};
|
|
5622
7315
|
response: {
|
|
5623
7316
|
duplicate?: boolean;
|
|
5624
7317
|
message?: string;
|
|
@@ -5649,6 +7342,8 @@ interface recordImpressionPostOperation {
|
|
|
5649
7342
|
sig?: string;
|
|
5650
7343
|
sig_ts?: number;
|
|
5651
7344
|
};
|
|
7345
|
+
params: Record<string, unknown>;
|
|
7346
|
+
query: Record<string, unknown>;
|
|
5652
7347
|
response: {
|
|
5653
7348
|
duplicate?: boolean;
|
|
5654
7349
|
message?: string;
|
|
@@ -5683,6 +7378,8 @@ interface recordImpressionsBatchOperation {
|
|
|
5683
7378
|
timestamp?: string;
|
|
5684
7379
|
}>;
|
|
5685
7380
|
};
|
|
7381
|
+
params: Record<string, unknown>;
|
|
7382
|
+
query: Record<string, unknown>;
|
|
5686
7383
|
response: {
|
|
5687
7384
|
data?: {
|
|
5688
7385
|
errors?: Array<{
|
|
@@ -5704,6 +7401,8 @@ interface getPartnerInfoOperation {
|
|
|
5704
7401
|
readonly path: "/v1/partner/info";
|
|
5705
7402
|
readonly method: "GET";
|
|
5706
7403
|
request: never;
|
|
7404
|
+
params: Record<string, unknown>;
|
|
7405
|
+
query: Record<string, unknown>;
|
|
5707
7406
|
response: {
|
|
5708
7407
|
data?: Partner;
|
|
5709
7408
|
success?: boolean;
|
|
@@ -5717,6 +7416,8 @@ interface listIntentCategoriesOperation {
|
|
|
5717
7416
|
readonly path: "/v1/partner/intent/categories";
|
|
5718
7417
|
readonly method: "GET";
|
|
5719
7418
|
request: never;
|
|
7419
|
+
params: Record<string, unknown>;
|
|
7420
|
+
query: Record<string, unknown>;
|
|
5720
7421
|
response: {
|
|
5721
7422
|
count?: number;
|
|
5722
7423
|
data?: Array<{
|
|
@@ -5740,6 +7441,10 @@ interface getIntentCategoryOperation {
|
|
|
5740
7441
|
readonly path: "/v1/partner/intent/categories/{categoryId}";
|
|
5741
7442
|
readonly method: "GET";
|
|
5742
7443
|
request: never;
|
|
7444
|
+
params: {
|
|
7445
|
+
categoryId: string;
|
|
7446
|
+
};
|
|
7447
|
+
query: Record<string, unknown>;
|
|
5743
7448
|
response: {
|
|
5744
7449
|
description?: string;
|
|
5745
7450
|
iab_segments?: Array<Record<string, unknown>>;
|
|
@@ -5760,6 +7465,10 @@ interface getIntentPricingOperation {
|
|
|
5760
7465
|
readonly path: "/v1/partner/intent/pricing/{screenId}";
|
|
5761
7466
|
readonly method: "GET";
|
|
5762
7467
|
request: never;
|
|
7468
|
+
params: {
|
|
7469
|
+
screenId: string;
|
|
7470
|
+
};
|
|
7471
|
+
query: Record<string, unknown>;
|
|
5763
7472
|
response: {
|
|
5764
7473
|
category_match?: {
|
|
5765
7474
|
category_id?: string;
|
|
@@ -5798,6 +7507,10 @@ interface getMeasurementMethodologyOperation {
|
|
|
5798
7507
|
readonly path: "/v1/partner/measurement-methodology";
|
|
5799
7508
|
readonly method: "GET";
|
|
5800
7509
|
request: never;
|
|
7510
|
+
params: Record<string, unknown>;
|
|
7511
|
+
query: {
|
|
7512
|
+
format?: "json";
|
|
7513
|
+
};
|
|
5801
7514
|
response: MeasurementMethodology;
|
|
5802
7515
|
}
|
|
5803
7516
|
/**
|
|
@@ -5808,6 +7521,8 @@ interface getMeasurementMethodologyJsonOperation {
|
|
|
5808
7521
|
readonly path: "/v1/partner/measurement-methodology.json";
|
|
5809
7522
|
readonly method: "GET";
|
|
5810
7523
|
request: never;
|
|
7524
|
+
params: Record<string, unknown>;
|
|
7525
|
+
query: Record<string, unknown>;
|
|
5811
7526
|
response: MeasurementMethodology;
|
|
5812
7527
|
}
|
|
5813
7528
|
/**
|
|
@@ -5818,6 +7533,8 @@ interface getNetworkConfigOperation {
|
|
|
5818
7533
|
readonly path: "/v1/partner/network-config";
|
|
5819
7534
|
readonly method: "GET";
|
|
5820
7535
|
request: never;
|
|
7536
|
+
params: Record<string, unknown>;
|
|
7537
|
+
query: Record<string, unknown>;
|
|
5821
7538
|
response: {
|
|
5822
7539
|
network_config?: PartnerNetworkConfig;
|
|
5823
7540
|
object?: string;
|
|
@@ -5832,6 +7549,8 @@ interface patchNetworkConfigOperation {
|
|
|
5832
7549
|
readonly path: "/v1/partner/network-config";
|
|
5833
7550
|
readonly method: "PATCH";
|
|
5834
7551
|
request: PartnerNetworkConfigUpdate;
|
|
7552
|
+
params: Record<string, unknown>;
|
|
7553
|
+
query: Record<string, unknown>;
|
|
5835
7554
|
response: {
|
|
5836
7555
|
network_config?: PartnerNetworkConfig;
|
|
5837
7556
|
object?: string;
|
|
@@ -5846,6 +7565,8 @@ interface updateNetworkConfigOperation {
|
|
|
5846
7565
|
readonly path: "/v1/partner/network-config";
|
|
5847
7566
|
readonly method: "PUT";
|
|
5848
7567
|
request: PartnerNetworkConfigUpdate;
|
|
7568
|
+
params: Record<string, unknown>;
|
|
7569
|
+
query: Record<string, unknown>;
|
|
5849
7570
|
response: {
|
|
5850
7571
|
network_config?: PartnerNetworkConfig;
|
|
5851
7572
|
object?: string;
|
|
@@ -5860,6 +7581,10 @@ interface getNetworkTrendsOperation {
|
|
|
5860
7581
|
readonly path: "/v1/partner/network/trends";
|
|
5861
7582
|
readonly method: "GET";
|
|
5862
7583
|
request: never;
|
|
7584
|
+
params: Record<string, unknown>;
|
|
7585
|
+
query: {
|
|
7586
|
+
days?: number;
|
|
7587
|
+
};
|
|
5863
7588
|
response: {
|
|
5864
7589
|
audience_shift?: Array<Record<string, unknown>>;
|
|
5865
7590
|
days?: number;
|
|
@@ -5874,6 +7599,8 @@ interface partnerPingOperation {
|
|
|
5874
7599
|
readonly path: "/v1/partner/ping";
|
|
5875
7600
|
readonly method: "GET";
|
|
5876
7601
|
request: never;
|
|
7602
|
+
params: Record<string, unknown>;
|
|
7603
|
+
query: Record<string, unknown>;
|
|
5877
7604
|
response: {
|
|
5878
7605
|
ok?: boolean;
|
|
5879
7606
|
service?: string;
|
|
@@ -5887,6 +7614,8 @@ interface partnerPingAuthOperation {
|
|
|
5887
7614
|
readonly path: "/v1/partner/ping/auth";
|
|
5888
7615
|
readonly method: "GET";
|
|
5889
7616
|
request: never;
|
|
7617
|
+
params: Record<string, unknown>;
|
|
7618
|
+
query: Record<string, unknown>;
|
|
5890
7619
|
response: {
|
|
5891
7620
|
ok?: boolean;
|
|
5892
7621
|
partner_id?: string;
|
|
@@ -5901,6 +7630,8 @@ interface recordPartnerPlayOperation {
|
|
|
5901
7630
|
readonly path: "/v1/partner/plays";
|
|
5902
7631
|
readonly method: "POST";
|
|
5903
7632
|
request: PartnerPlay;
|
|
7633
|
+
params: Record<string, unknown>;
|
|
7634
|
+
query: Record<string, unknown>;
|
|
5904
7635
|
response: {
|
|
5905
7636
|
content_sha256?: string;
|
|
5906
7637
|
object?: string;
|
|
@@ -5918,6 +7649,8 @@ interface recordPartnerPlaysBatchOperation {
|
|
|
5918
7649
|
request: {
|
|
5919
7650
|
plays: Array<PartnerPlay>;
|
|
5920
7651
|
};
|
|
7652
|
+
params: Record<string, unknown>;
|
|
7653
|
+
query: Record<string, unknown>;
|
|
5921
7654
|
response: {
|
|
5922
7655
|
accepted?: number;
|
|
5923
7656
|
duplicate?: number;
|
|
@@ -5938,6 +7671,8 @@ interface getPricingOperation {
|
|
|
5938
7671
|
readonly path: "/v1/partner/pricing";
|
|
5939
7672
|
readonly method: "GET";
|
|
5940
7673
|
request: never;
|
|
7674
|
+
params: Record<string, unknown>;
|
|
7675
|
+
query: Record<string, unknown>;
|
|
5941
7676
|
response: {
|
|
5942
7677
|
agent_register_url?: string;
|
|
5943
7678
|
billing_setup_url?: string;
|
|
@@ -6041,6 +7776,8 @@ interface recordProgrammaticEventLegacyAliasOperation {
|
|
|
6041
7776
|
type?: "ad_started" | "ad_ended" | "no_fill" | "error";
|
|
6042
7777
|
variant_name?: string;
|
|
6043
7778
|
};
|
|
7779
|
+
params: Record<string, unknown>;
|
|
7780
|
+
query: Record<string, unknown>;
|
|
6044
7781
|
response: {
|
|
6045
7782
|
success?: boolean;
|
|
6046
7783
|
};
|
|
@@ -6065,6 +7802,8 @@ interface quickStartOperation {
|
|
|
6065
7802
|
/** Optional legacy classification. Omit for the default self-serve Partner API key. */
|
|
6066
7803
|
partner_type?: string;
|
|
6067
7804
|
};
|
|
7805
|
+
params: Record<string, unknown>;
|
|
7806
|
+
query: Record<string, unknown>;
|
|
6068
7807
|
response: {
|
|
6069
7808
|
data?: {
|
|
6070
7809
|
credentials?: {
|
|
@@ -6132,6 +7871,8 @@ interface registerPartnerOperation {
|
|
|
6132
7871
|
/** URL-safe identifier (lowercase, no spaces) */
|
|
6133
7872
|
slug: string;
|
|
6134
7873
|
};
|
|
7874
|
+
params: Record<string, unknown>;
|
|
7875
|
+
query: Record<string, unknown>;
|
|
6135
7876
|
response: {
|
|
6136
7877
|
data?: {
|
|
6137
7878
|
/** Store this securely - only shown once. This ONE self-serve Partner API key authenticates the general Partner API surface in this spec AND the CTV Measurement SDK ingestion surface (`/v2/sdk/*`, `/v2/csi`) — it carries `sdk:*` and `mcp:tools` by default, so no separate CTV or MCP key is issued. Reuse it during OpenRTB onboarding to add buyer capabilities. */
|
|
@@ -6171,6 +7912,8 @@ interface generateSandboxEventOperation {
|
|
|
6171
7912
|
/** Target sandbox screen (auto-selects first if omitted) */
|
|
6172
7913
|
screen_id?: string;
|
|
6173
7914
|
};
|
|
7915
|
+
params: Record<string, unknown>;
|
|
7916
|
+
query: Record<string, unknown>;
|
|
6174
7917
|
response: {
|
|
6175
7918
|
/** Event payload (varies by event type) */
|
|
6176
7919
|
data?: Record<string, unknown>;
|
|
@@ -6192,6 +7935,8 @@ interface resetSandboxOperation {
|
|
|
6192
7935
|
readonly path: "/v1/partner/sandbox/reset";
|
|
6193
7936
|
readonly method: "POST";
|
|
6194
7937
|
request: never;
|
|
7938
|
+
params: Record<string, unknown>;
|
|
7939
|
+
query: Record<string, unknown>;
|
|
6195
7940
|
response: {
|
|
6196
7941
|
events_cleared?: number;
|
|
6197
7942
|
object?: string;
|
|
@@ -6213,6 +7958,8 @@ interface createSandboxScreenOperation {
|
|
|
6213
7958
|
/** Override venue type */
|
|
6214
7959
|
venue_type?: string;
|
|
6215
7960
|
};
|
|
7961
|
+
params: Record<string, unknown>;
|
|
7962
|
+
query: Record<string, unknown>;
|
|
6216
7963
|
response: {
|
|
6217
7964
|
audience?: {
|
|
6218
7965
|
avg_dwell_time_sec?: number;
|
|
@@ -6249,6 +7996,8 @@ interface getSandboxStatusOperation {
|
|
|
6249
7996
|
readonly path: "/v1/partner/sandbox/status";
|
|
6250
7997
|
readonly method: "GET";
|
|
6251
7998
|
request: never;
|
|
7999
|
+
params: Record<string, unknown>;
|
|
8000
|
+
query: Record<string, unknown>;
|
|
6252
8001
|
response: {
|
|
6253
8002
|
last_activity?: string | null;
|
|
6254
8003
|
object?: string;
|
|
@@ -6277,6 +8026,11 @@ interface listScreenGroupsOperation {
|
|
|
6277
8026
|
readonly path: "/v1/partner/screen-groups";
|
|
6278
8027
|
readonly method: "GET";
|
|
6279
8028
|
request: never;
|
|
8029
|
+
params: Record<string, unknown>;
|
|
8030
|
+
query: {
|
|
8031
|
+
limit?: number;
|
|
8032
|
+
offset?: number;
|
|
8033
|
+
};
|
|
6280
8034
|
response: {
|
|
6281
8035
|
data?: {
|
|
6282
8036
|
has_more?: boolean;
|
|
@@ -6298,6 +8052,8 @@ interface createScreenGroupOperation {
|
|
|
6298
8052
|
name: string;
|
|
6299
8053
|
screen_ids?: Array<string>;
|
|
6300
8054
|
};
|
|
8055
|
+
params: Record<string, unknown>;
|
|
8056
|
+
query: Record<string, unknown>;
|
|
6301
8057
|
response: {
|
|
6302
8058
|
data?: {
|
|
6303
8059
|
screen_group?: ScreenGroup;
|
|
@@ -6313,6 +8069,10 @@ interface deleteScreenGroupOperation {
|
|
|
6313
8069
|
readonly path: "/v1/partner/screen-groups/{groupId}";
|
|
6314
8070
|
readonly method: "DELETE";
|
|
6315
8071
|
request: never;
|
|
8072
|
+
params: {
|
|
8073
|
+
groupId: string;
|
|
8074
|
+
};
|
|
8075
|
+
query: Record<string, unknown>;
|
|
6316
8076
|
response: {
|
|
6317
8077
|
data?: {
|
|
6318
8078
|
deleted?: boolean;
|
|
@@ -6330,6 +8090,10 @@ interface getScreenGroupOperation {
|
|
|
6330
8090
|
readonly path: "/v1/partner/screen-groups/{groupId}";
|
|
6331
8091
|
readonly method: "GET";
|
|
6332
8092
|
request: never;
|
|
8093
|
+
params: {
|
|
8094
|
+
groupId: string;
|
|
8095
|
+
};
|
|
8096
|
+
query: Record<string, unknown>;
|
|
6333
8097
|
response: {
|
|
6334
8098
|
data?: {
|
|
6335
8099
|
screen_group?: ScreenGroup;
|
|
@@ -6348,6 +8112,10 @@ interface updateScreenGroupOperation {
|
|
|
6348
8112
|
description?: string;
|
|
6349
8113
|
name?: string;
|
|
6350
8114
|
};
|
|
8115
|
+
params: {
|
|
8116
|
+
groupId: string;
|
|
8117
|
+
};
|
|
8118
|
+
query: Record<string, unknown>;
|
|
6351
8119
|
response: {
|
|
6352
8120
|
data?: {
|
|
6353
8121
|
screen_group?: ScreenGroup;
|
|
@@ -6363,6 +8131,10 @@ interface getScreenGroupAnalyticsOperation {
|
|
|
6363
8131
|
readonly path: "/v1/partner/screen-groups/{groupId}/analytics";
|
|
6364
8132
|
readonly method: "GET";
|
|
6365
8133
|
request: never;
|
|
8134
|
+
params: {
|
|
8135
|
+
groupId: string;
|
|
8136
|
+
};
|
|
8137
|
+
query: Record<string, unknown>;
|
|
6366
8138
|
response: {
|
|
6367
8139
|
/** Fleet analytics scoped to the group's live member screens — the same payload as GET /fleet/analytics (which also returns an average attention score alongside the fields below). */
|
|
6368
8140
|
data?: {
|
|
@@ -6389,6 +8161,10 @@ interface createScreenGroupCommandOperation {
|
|
|
6389
8161
|
type: "reload" | "update_settings" | "restart" | "screenshot" | "clear_cache" | "update_content" | "refresh_ads" | "update_config" | "get_state" | "show_ad" | "play_ad";
|
|
6390
8162
|
};
|
|
6391
8163
|
};
|
|
8164
|
+
params: {
|
|
8165
|
+
groupId: string;
|
|
8166
|
+
};
|
|
8167
|
+
query: Record<string, unknown>;
|
|
6392
8168
|
response: {
|
|
6393
8169
|
data?: {
|
|
6394
8170
|
fleet_command?: FleetCommand;
|
|
@@ -6404,6 +8180,10 @@ interface getScreenGroupContentPolicyOperation {
|
|
|
6404
8180
|
readonly path: "/v1/partner/screen-groups/{groupId}/content-policy";
|
|
6405
8181
|
readonly method: "GET";
|
|
6406
8182
|
request: never;
|
|
8183
|
+
params: {
|
|
8184
|
+
groupId: string;
|
|
8185
|
+
};
|
|
8186
|
+
query: Record<string, unknown>;
|
|
6407
8187
|
response: {
|
|
6408
8188
|
data?: {
|
|
6409
8189
|
content_policy?: ScreenGroupContentPolicy;
|
|
@@ -6419,6 +8199,10 @@ interface updateScreenGroupContentPolicyOperation {
|
|
|
6419
8199
|
readonly path: "/v1/partner/screen-groups/{groupId}/content-policy";
|
|
6420
8200
|
readonly method: "PUT";
|
|
6421
8201
|
request: ScreenGroupContentPolicyInput;
|
|
8202
|
+
params: {
|
|
8203
|
+
groupId: string;
|
|
8204
|
+
};
|
|
8205
|
+
query: Record<string, unknown>;
|
|
6422
8206
|
response: {
|
|
6423
8207
|
data?: {
|
|
6424
8208
|
content_policy?: ScreenGroupContentPolicy;
|
|
@@ -6436,6 +8220,10 @@ interface removeScreenGroupMembersOperation {
|
|
|
6436
8220
|
request: {
|
|
6437
8221
|
screen_ids: Array<string>;
|
|
6438
8222
|
};
|
|
8223
|
+
params: {
|
|
8224
|
+
groupId: string;
|
|
8225
|
+
};
|
|
8226
|
+
query: Record<string, unknown>;
|
|
6439
8227
|
response: {
|
|
6440
8228
|
data?: {
|
|
6441
8229
|
removed?: number;
|
|
@@ -6451,6 +8239,13 @@ interface listScreenGroupMembersOperation {
|
|
|
6451
8239
|
readonly path: "/v1/partner/screen-groups/{groupId}/members";
|
|
6452
8240
|
readonly method: "GET";
|
|
6453
8241
|
request: never;
|
|
8242
|
+
params: {
|
|
8243
|
+
groupId: string;
|
|
8244
|
+
};
|
|
8245
|
+
query: {
|
|
8246
|
+
limit?: number;
|
|
8247
|
+
offset?: number;
|
|
8248
|
+
};
|
|
6454
8249
|
response: {
|
|
6455
8250
|
data?: {
|
|
6456
8251
|
data?: Array<{
|
|
@@ -6473,6 +8268,10 @@ interface addScreenGroupMembersOperation {
|
|
|
6473
8268
|
request: {
|
|
6474
8269
|
screen_ids: Array<string>;
|
|
6475
8270
|
};
|
|
8271
|
+
params: {
|
|
8272
|
+
groupId: string;
|
|
8273
|
+
};
|
|
8274
|
+
query: Record<string, unknown>;
|
|
6476
8275
|
response: {
|
|
6477
8276
|
data?: {
|
|
6478
8277
|
added?: number;
|
|
@@ -6492,6 +8291,10 @@ interface getScreenGroupSensingConfigOperation {
|
|
|
6492
8291
|
readonly path: "/v1/partner/screen-groups/{groupId}/sensing-config";
|
|
6493
8292
|
readonly method: "GET";
|
|
6494
8293
|
request: never;
|
|
8294
|
+
params: {
|
|
8295
|
+
groupId: string;
|
|
8296
|
+
};
|
|
8297
|
+
query: Record<string, unknown>;
|
|
6495
8298
|
response: {
|
|
6496
8299
|
data?: {
|
|
6497
8300
|
sensing_config?: ScreenGroupSensingConfig;
|
|
@@ -6507,6 +8310,10 @@ interface updateScreenGroupSensingConfigOperation {
|
|
|
6507
8310
|
readonly path: "/v1/partner/screen-groups/{groupId}/sensing-config";
|
|
6508
8311
|
readonly method: "PUT";
|
|
6509
8312
|
request: ScreenGroupSensingConfigInput;
|
|
8313
|
+
params: {
|
|
8314
|
+
groupId: string;
|
|
8315
|
+
};
|
|
8316
|
+
query: Record<string, unknown>;
|
|
6510
8317
|
response: {
|
|
6511
8318
|
data?: {
|
|
6512
8319
|
sensing_config?: ScreenGroupSensingConfig;
|
|
@@ -6522,6 +8329,10 @@ interface getScreenAudienceSegmentsOperation {
|
|
|
6522
8329
|
readonly path: "/v1/partner/screen/{external_code}/audience-segments";
|
|
6523
8330
|
readonly method: "GET";
|
|
6524
8331
|
request: never;
|
|
8332
|
+
params: {
|
|
8333
|
+
external_code: string;
|
|
8334
|
+
};
|
|
8335
|
+
query: Record<string, unknown>;
|
|
6525
8336
|
response: {
|
|
6526
8337
|
external_code?: string;
|
|
6527
8338
|
segtax_4?: Array<{
|
|
@@ -6548,6 +8359,8 @@ interface batchUpdateContentPreferencesOperation {
|
|
|
6548
8359
|
/** Array of screen IDs to update */
|
|
6549
8360
|
screen_ids: Array<string>;
|
|
6550
8361
|
};
|
|
8362
|
+
params: Record<string, unknown>;
|
|
8363
|
+
query: Record<string, unknown>;
|
|
6551
8364
|
response: BatchResult;
|
|
6552
8365
|
}
|
|
6553
8366
|
/**
|
|
@@ -6561,6 +8374,8 @@ interface batchUpdateDisplaySettingsOperation {
|
|
|
6561
8374
|
screen_ids: Array<string>;
|
|
6562
8375
|
settings: DisplaySettingsInput;
|
|
6563
8376
|
};
|
|
8377
|
+
params: Record<string, unknown>;
|
|
8378
|
+
query: Record<string, unknown>;
|
|
6564
8379
|
response: BatchResult;
|
|
6565
8380
|
}
|
|
6566
8381
|
/**
|
|
@@ -6574,6 +8389,8 @@ interface batchUpdateProgrammaticSettingsOperation {
|
|
|
6574
8389
|
screen_ids: Array<string>;
|
|
6575
8390
|
settings: ProgrammaticSettingsInput;
|
|
6576
8391
|
};
|
|
8392
|
+
params: Record<string, unknown>;
|
|
8393
|
+
query: Record<string, unknown>;
|
|
6577
8394
|
response: BatchResult;
|
|
6578
8395
|
}
|
|
6579
8396
|
/**
|
|
@@ -6584,6 +8401,12 @@ interface resolvePartnerScreenOperation {
|
|
|
6584
8401
|
readonly path: "/v1/partner/screens/resolve";
|
|
6585
8402
|
readonly method: "GET";
|
|
6586
8403
|
request: never;
|
|
8404
|
+
params: Record<string, unknown>;
|
|
8405
|
+
query: {
|
|
8406
|
+
device_id?: string;
|
|
8407
|
+
external_device_id?: string;
|
|
8408
|
+
fingerprint?: string;
|
|
8409
|
+
};
|
|
6587
8410
|
response: {
|
|
6588
8411
|
data?: {
|
|
6589
8412
|
device_id?: string;
|
|
@@ -6602,6 +8425,12 @@ interface getScreenAnalyticsOperation {
|
|
|
6602
8425
|
readonly path: "/v1/partner/screens/{screenId}/analytics";
|
|
6603
8426
|
readonly method: "GET";
|
|
6604
8427
|
request: never;
|
|
8428
|
+
params: {
|
|
8429
|
+
screenId: string;
|
|
8430
|
+
};
|
|
8431
|
+
query: {
|
|
8432
|
+
period?: "7d" | "30d" | "90d";
|
|
8433
|
+
};
|
|
6605
8434
|
response: {
|
|
6606
8435
|
data?: ScreenAnalyticsResponse;
|
|
6607
8436
|
success?: boolean;
|
|
@@ -6615,6 +8444,10 @@ interface getPartnerScreenAtmosphereOperation {
|
|
|
6615
8444
|
readonly path: "/v1/partner/screens/{screenId}/analytics/atmosphere";
|
|
6616
8445
|
readonly method: "GET";
|
|
6617
8446
|
request: never;
|
|
8447
|
+
params: {
|
|
8448
|
+
screenId: string;
|
|
8449
|
+
};
|
|
8450
|
+
query: Record<string, unknown>;
|
|
6618
8451
|
response: {
|
|
6619
8452
|
data?: {
|
|
6620
8453
|
crowdDensity?: string | null;
|
|
@@ -6636,6 +8469,14 @@ interface getPartnerScreenIntelligenceOperation {
|
|
|
6636
8469
|
readonly path: "/v1/partner/screens/{screenId}/analytics/intelligence";
|
|
6637
8470
|
readonly method: "GET";
|
|
6638
8471
|
request: never;
|
|
8472
|
+
params: {
|
|
8473
|
+
screenId: string;
|
|
8474
|
+
};
|
|
8475
|
+
query: {
|
|
8476
|
+
from: string;
|
|
8477
|
+
interval?: "5min" | "15min" | "1h" | "1d";
|
|
8478
|
+
to: string;
|
|
8479
|
+
};
|
|
6639
8480
|
response: {
|
|
6640
8481
|
data?: {
|
|
6641
8482
|
dedup?: {
|
|
@@ -6666,6 +8507,10 @@ interface getPartnerScreenTasteProfileOperation {
|
|
|
6666
8507
|
readonly path: "/v1/partner/screens/{screenId}/analytics/taste-profile";
|
|
6667
8508
|
readonly method: "GET";
|
|
6668
8509
|
request: never;
|
|
8510
|
+
params: {
|
|
8511
|
+
screenId: string;
|
|
8512
|
+
};
|
|
8513
|
+
query: Record<string, unknown>;
|
|
6669
8514
|
response: {
|
|
6670
8515
|
data?: {
|
|
6671
8516
|
computedAt?: string | null;
|
|
@@ -6691,6 +8536,12 @@ interface getPartnerScreenTrafficOperation {
|
|
|
6691
8536
|
readonly path: "/v1/partner/screens/{screenId}/analytics/traffic";
|
|
6692
8537
|
readonly method: "GET";
|
|
6693
8538
|
request: never;
|
|
8539
|
+
params: {
|
|
8540
|
+
screenId: string;
|
|
8541
|
+
};
|
|
8542
|
+
query: {
|
|
8543
|
+
days?: number;
|
|
8544
|
+
};
|
|
6694
8545
|
response: {
|
|
6695
8546
|
data?: {
|
|
6696
8547
|
busyScore?: number;
|
|
@@ -6708,6 +8559,10 @@ interface getPartnerScreenVASOperation {
|
|
|
6708
8559
|
readonly path: "/v1/partner/screens/{screenId}/analytics/vas";
|
|
6709
8560
|
readonly method: "GET";
|
|
6710
8561
|
request: never;
|
|
8562
|
+
params: {
|
|
8563
|
+
screenId: string;
|
|
8564
|
+
};
|
|
8565
|
+
query: Record<string, unknown>;
|
|
6711
8566
|
response: {
|
|
6712
8567
|
data?: {
|
|
6713
8568
|
avgAttentionScore?: number;
|
|
@@ -6734,6 +8589,10 @@ interface applyContentPresetOperation {
|
|
|
6734
8589
|
/** ID of the preset to apply */
|
|
6735
8590
|
preset_id: string;
|
|
6736
8591
|
};
|
|
8592
|
+
params: {
|
|
8593
|
+
screenId: string;
|
|
8594
|
+
};
|
|
8595
|
+
query: Record<string, unknown>;
|
|
6737
8596
|
response: ContentPreferencesResponse & {
|
|
6738
8597
|
preset_applied?: string;
|
|
6739
8598
|
};
|
|
@@ -6746,6 +8605,13 @@ interface getAudienceMetricsOperation {
|
|
|
6746
8605
|
readonly path: "/v1/partner/screens/{screenId}/audience-metrics";
|
|
6747
8606
|
readonly method: "GET";
|
|
6748
8607
|
request: never;
|
|
8608
|
+
params: {
|
|
8609
|
+
screenId: string;
|
|
8610
|
+
};
|
|
8611
|
+
query: {
|
|
8612
|
+
include_history?: boolean;
|
|
8613
|
+
period?: "1h" | "6h" | "24h";
|
|
8614
|
+
};
|
|
6749
8615
|
response: AudienceMetricsResponse;
|
|
6750
8616
|
}
|
|
6751
8617
|
/**
|
|
@@ -6756,6 +8622,10 @@ interface getContentPreferencesOperation {
|
|
|
6756
8622
|
readonly path: "/v1/partner/screens/{screenId}/content-preferences";
|
|
6757
8623
|
readonly method: "GET";
|
|
6758
8624
|
request: never;
|
|
8625
|
+
params: {
|
|
8626
|
+
screenId: string;
|
|
8627
|
+
};
|
|
8628
|
+
query: Record<string, unknown>;
|
|
6759
8629
|
response: ContentPreferencesResponse;
|
|
6760
8630
|
}
|
|
6761
8631
|
/**
|
|
@@ -6766,6 +8636,10 @@ interface patchContentPreferencesOperation {
|
|
|
6766
8636
|
readonly path: "/v1/partner/screens/{screenId}/content-preferences";
|
|
6767
8637
|
readonly method: "PATCH";
|
|
6768
8638
|
request: ContentPreferencesInput;
|
|
8639
|
+
params: {
|
|
8640
|
+
screenId: string;
|
|
8641
|
+
};
|
|
8642
|
+
query: Record<string, unknown>;
|
|
6769
8643
|
response: ContentPreferencesResponse;
|
|
6770
8644
|
}
|
|
6771
8645
|
/**
|
|
@@ -6776,6 +8650,10 @@ interface updateContentPreferencesOperation {
|
|
|
6776
8650
|
readonly path: "/v1/partner/screens/{screenId}/content-preferences";
|
|
6777
8651
|
readonly method: "PUT";
|
|
6778
8652
|
request: ContentPreferencesInput;
|
|
8653
|
+
params: {
|
|
8654
|
+
screenId: string;
|
|
8655
|
+
};
|
|
8656
|
+
query: Record<string, unknown>;
|
|
6779
8657
|
response: ContentPreferencesResponse;
|
|
6780
8658
|
}
|
|
6781
8659
|
/**
|
|
@@ -6786,6 +8664,10 @@ interface listPartnerDefaultStreamsOperation {
|
|
|
6786
8664
|
readonly path: "/v1/partner/screens/{screenId}/default-streams";
|
|
6787
8665
|
readonly method: "GET";
|
|
6788
8666
|
request: never;
|
|
8667
|
+
params: {
|
|
8668
|
+
screenId: string;
|
|
8669
|
+
};
|
|
8670
|
+
query: Record<string, unknown>;
|
|
6789
8671
|
response: {
|
|
6790
8672
|
data?: {
|
|
6791
8673
|
current?: PartnerDefaultStream;
|
|
@@ -6802,6 +8684,10 @@ interface createPartnerDefaultStreamOperation {
|
|
|
6802
8684
|
readonly path: "/v1/partner/screens/{screenId}/default-streams";
|
|
6803
8685
|
readonly method: "POST";
|
|
6804
8686
|
request: PartnerDefaultStreamCreate;
|
|
8687
|
+
params: {
|
|
8688
|
+
screenId: string;
|
|
8689
|
+
};
|
|
8690
|
+
query: Record<string, unknown>;
|
|
6805
8691
|
response: {
|
|
6806
8692
|
data?: PartnerDefaultStream;
|
|
6807
8693
|
success?: boolean;
|
|
@@ -6815,6 +8701,10 @@ interface createPartnerDefaultStreamImagesOperation {
|
|
|
6815
8701
|
readonly path: "/v1/partner/screens/{screenId}/default-streams/images";
|
|
6816
8702
|
readonly method: "POST";
|
|
6817
8703
|
request: never;
|
|
8704
|
+
params: {
|
|
8705
|
+
screenId: string;
|
|
8706
|
+
};
|
|
8707
|
+
query: Record<string, unknown>;
|
|
6818
8708
|
response: {
|
|
6819
8709
|
data?: PartnerDefaultStream;
|
|
6820
8710
|
success?: boolean;
|
|
@@ -6830,6 +8720,10 @@ interface reorderPartnerDefaultStreamsOperation {
|
|
|
6830
8720
|
request: {
|
|
6831
8721
|
order: Array<string>;
|
|
6832
8722
|
};
|
|
8723
|
+
params: {
|
|
8724
|
+
screenId: string;
|
|
8725
|
+
};
|
|
8726
|
+
query: Record<string, unknown>;
|
|
6833
8727
|
response: {
|
|
6834
8728
|
success?: boolean;
|
|
6835
8729
|
};
|
|
@@ -6842,6 +8736,10 @@ interface createPartnerDefaultStreamUploadOperation {
|
|
|
6842
8736
|
readonly path: "/v1/partner/screens/{screenId}/default-streams/upload";
|
|
6843
8737
|
readonly method: "POST";
|
|
6844
8738
|
request: never;
|
|
8739
|
+
params: {
|
|
8740
|
+
screenId: string;
|
|
8741
|
+
};
|
|
8742
|
+
query: Record<string, unknown>;
|
|
6845
8743
|
response: {
|
|
6846
8744
|
data?: PartnerDefaultStream;
|
|
6847
8745
|
success?: boolean;
|
|
@@ -6855,6 +8753,11 @@ interface deletePartnerDefaultStreamOperation {
|
|
|
6855
8753
|
readonly path: "/v1/partner/screens/{screenId}/default-streams/{streamId}";
|
|
6856
8754
|
readonly method: "DELETE";
|
|
6857
8755
|
request: never;
|
|
8756
|
+
params: {
|
|
8757
|
+
screenId: string;
|
|
8758
|
+
streamId: string;
|
|
8759
|
+
};
|
|
8760
|
+
query: Record<string, unknown>;
|
|
6858
8761
|
response: {
|
|
6859
8762
|
success?: boolean;
|
|
6860
8763
|
};
|
|
@@ -6867,6 +8770,11 @@ interface updatePartnerDefaultStreamOperation {
|
|
|
6867
8770
|
readonly path: "/v1/partner/screens/{screenId}/default-streams/{streamId}";
|
|
6868
8771
|
readonly method: "PUT";
|
|
6869
8772
|
request: PartnerDefaultStreamUpdate;
|
|
8773
|
+
params: {
|
|
8774
|
+
screenId: string;
|
|
8775
|
+
streamId: string;
|
|
8776
|
+
};
|
|
8777
|
+
query: Record<string, unknown>;
|
|
6870
8778
|
response: {
|
|
6871
8779
|
data?: PartnerDefaultStream;
|
|
6872
8780
|
success?: boolean;
|
|
@@ -6880,6 +8788,12 @@ interface getScreenDemographicsOperation {
|
|
|
6880
8788
|
readonly path: "/v1/partner/screens/{screenId}/demographics";
|
|
6881
8789
|
readonly method: "GET";
|
|
6882
8790
|
request: never;
|
|
8791
|
+
params: {
|
|
8792
|
+
screenId: string;
|
|
8793
|
+
};
|
|
8794
|
+
query: {
|
|
8795
|
+
period?: "24h" | "7d" | "30d";
|
|
8796
|
+
};
|
|
6883
8797
|
response: DemographicsResponse;
|
|
6884
8798
|
}
|
|
6885
8799
|
/**
|
|
@@ -6890,6 +8804,10 @@ interface getDisplaySettingsOperation {
|
|
|
6890
8804
|
readonly path: "/v1/partner/screens/{screenId}/display-settings";
|
|
6891
8805
|
readonly method: "GET";
|
|
6892
8806
|
request: never;
|
|
8807
|
+
params: {
|
|
8808
|
+
screenId: string;
|
|
8809
|
+
};
|
|
8810
|
+
query: Record<string, unknown>;
|
|
6893
8811
|
response: DisplaySettingsResponse;
|
|
6894
8812
|
}
|
|
6895
8813
|
/**
|
|
@@ -6900,6 +8818,10 @@ interface patchDisplaySettingsOperation {
|
|
|
6900
8818
|
readonly path: "/v1/partner/screens/{screenId}/display-settings";
|
|
6901
8819
|
readonly method: "PATCH";
|
|
6902
8820
|
request: DisplaySettingsInput;
|
|
8821
|
+
params: {
|
|
8822
|
+
screenId: string;
|
|
8823
|
+
};
|
|
8824
|
+
query: Record<string, unknown>;
|
|
6903
8825
|
response: DisplaySettingsResponse;
|
|
6904
8826
|
}
|
|
6905
8827
|
/**
|
|
@@ -6910,6 +8832,10 @@ interface updateDisplaySettingsOperation {
|
|
|
6910
8832
|
readonly path: "/v1/partner/screens/{screenId}/display-settings";
|
|
6911
8833
|
readonly method: "PUT";
|
|
6912
8834
|
request: DisplaySettingsInput;
|
|
8835
|
+
params: {
|
|
8836
|
+
screenId: string;
|
|
8837
|
+
};
|
|
8838
|
+
query: Record<string, unknown>;
|
|
6913
8839
|
response: DisplaySettingsResponse;
|
|
6914
8840
|
}
|
|
6915
8841
|
/**
|
|
@@ -6920,6 +8846,10 @@ interface getPartnerLBarSettingsOperation {
|
|
|
6920
8846
|
readonly path: "/v1/partner/screens/{screenId}/l-bar";
|
|
6921
8847
|
readonly method: "GET";
|
|
6922
8848
|
request: never;
|
|
8849
|
+
params: {
|
|
8850
|
+
screenId: string;
|
|
8851
|
+
};
|
|
8852
|
+
query: Record<string, unknown>;
|
|
6923
8853
|
response: {
|
|
6924
8854
|
data?: PartnerLBarSettings;
|
|
6925
8855
|
success?: boolean;
|
|
@@ -6936,6 +8866,10 @@ interface updatePartnerLBarSettingsOperation {
|
|
|
6936
8866
|
display_preferences?: PartnerLBarDisplayPreferences;
|
|
6937
8867
|
l_bar_content?: PartnerLBarContent;
|
|
6938
8868
|
};
|
|
8869
|
+
params: {
|
|
8870
|
+
screenId: string;
|
|
8871
|
+
};
|
|
8872
|
+
query: Record<string, unknown>;
|
|
6939
8873
|
response: {
|
|
6940
8874
|
data?: PartnerLBarSettings;
|
|
6941
8875
|
success?: boolean;
|
|
@@ -6954,6 +8888,10 @@ interface updatePartnerLBarLiveUpdatesOperation {
|
|
|
6954
8888
|
queue_number?: string;
|
|
6955
8889
|
wait_time_minutes?: number;
|
|
6956
8890
|
};
|
|
8891
|
+
params: {
|
|
8892
|
+
screenId: string;
|
|
8893
|
+
};
|
|
8894
|
+
query: Record<string, unknown>;
|
|
6957
8895
|
response: {
|
|
6958
8896
|
success?: boolean;
|
|
6959
8897
|
};
|
|
@@ -6966,6 +8904,10 @@ interface getProgrammaticSettingsOperation {
|
|
|
6966
8904
|
readonly path: "/v1/partner/screens/{screenId}/programmatic-settings";
|
|
6967
8905
|
readonly method: "GET";
|
|
6968
8906
|
request: never;
|
|
8907
|
+
params: {
|
|
8908
|
+
screenId: string;
|
|
8909
|
+
};
|
|
8910
|
+
query: Record<string, unknown>;
|
|
6969
8911
|
response: ProgrammaticSettingsResponse;
|
|
6970
8912
|
}
|
|
6971
8913
|
/**
|
|
@@ -6976,6 +8918,10 @@ interface patchProgrammaticSettingsOperation {
|
|
|
6976
8918
|
readonly path: "/v1/partner/screens/{screenId}/programmatic-settings";
|
|
6977
8919
|
readonly method: "PATCH";
|
|
6978
8920
|
request: ProgrammaticSettingsInput;
|
|
8921
|
+
params: {
|
|
8922
|
+
screenId: string;
|
|
8923
|
+
};
|
|
8924
|
+
query: Record<string, unknown>;
|
|
6979
8925
|
response: ProgrammaticSettingsResponse;
|
|
6980
8926
|
}
|
|
6981
8927
|
/**
|
|
@@ -6986,6 +8932,10 @@ interface updateProgrammaticSettingsOperation {
|
|
|
6986
8932
|
readonly path: "/v1/partner/screens/{screenId}/programmatic-settings";
|
|
6987
8933
|
readonly method: "PUT";
|
|
6988
8934
|
request: ProgrammaticSettingsInput;
|
|
8935
|
+
params: {
|
|
8936
|
+
screenId: string;
|
|
8937
|
+
};
|
|
8938
|
+
query: Record<string, unknown>;
|
|
6989
8939
|
response: ProgrammaticSettingsResponse;
|
|
6990
8940
|
}
|
|
6991
8941
|
/**
|
|
@@ -6996,6 +8946,10 @@ interface getResolvedContentPolicyOperation {
|
|
|
6996
8946
|
readonly path: "/v1/partner/screens/{screenId}/resolved-content-policy";
|
|
6997
8947
|
readonly method: "GET";
|
|
6998
8948
|
request: never;
|
|
8949
|
+
params: {
|
|
8950
|
+
screenId: string;
|
|
8951
|
+
};
|
|
8952
|
+
query: Record<string, unknown>;
|
|
6999
8953
|
response: {
|
|
7000
8954
|
data?: ResolvedContentPolicy;
|
|
7001
8955
|
success?: boolean;
|
|
@@ -7009,6 +8963,10 @@ interface getResolvedSensingConfigOperation {
|
|
|
7009
8963
|
readonly path: "/v1/partner/screens/{screenId}/resolved-sensing-config";
|
|
7010
8964
|
readonly method: "GET";
|
|
7011
8965
|
request: never;
|
|
8966
|
+
params: {
|
|
8967
|
+
screenId: string;
|
|
8968
|
+
};
|
|
8969
|
+
query: Record<string, unknown>;
|
|
7012
8970
|
response: {
|
|
7013
8971
|
data?: ResolvedSensingConfig;
|
|
7014
8972
|
success?: boolean;
|
|
@@ -7022,6 +8980,14 @@ interface getScreenSensingChipsOperation {
|
|
|
7022
8980
|
readonly path: "/v1/partner/screens/{screenId}/sensing/chips";
|
|
7023
8981
|
readonly method: "GET";
|
|
7024
8982
|
request: never;
|
|
8983
|
+
params: {
|
|
8984
|
+
screenId: string;
|
|
8985
|
+
};
|
|
8986
|
+
query: {
|
|
8987
|
+
days?: number;
|
|
8988
|
+
limit?: number;
|
|
8989
|
+
offset?: number;
|
|
8990
|
+
};
|
|
7025
8991
|
response: {
|
|
7026
8992
|
data?: {
|
|
7027
8993
|
/** The custom field_keys this screen senses (from its active profile) */
|
|
@@ -7052,6 +9018,10 @@ interface interpretScreenSensingIntentOperation {
|
|
|
7052
9018
|
/** Natural-language description of what to sense */
|
|
7053
9019
|
intent: string;
|
|
7054
9020
|
};
|
|
9021
|
+
params: {
|
|
9022
|
+
screenId: string;
|
|
9023
|
+
};
|
|
9024
|
+
query: Record<string, unknown>;
|
|
7055
9025
|
response: {
|
|
7056
9026
|
data?: {
|
|
7057
9027
|
/** The generated profile — pass to /sensing/profile to deploy */
|
|
@@ -7072,6 +9042,10 @@ interface deployScreenSensingProfileOperation {
|
|
|
7072
9042
|
/** The sensing profile object returned by interpret-intent */
|
|
7073
9043
|
profile: Record<string, unknown>;
|
|
7074
9044
|
};
|
|
9045
|
+
params: {
|
|
9046
|
+
screenId: string;
|
|
9047
|
+
};
|
|
9048
|
+
query: Record<string, unknown>;
|
|
7075
9049
|
response: {
|
|
7076
9050
|
data?: {
|
|
7077
9051
|
command?: Record<string, unknown>;
|
|
@@ -7088,6 +9062,10 @@ interface getScreenSensingSettingsOperation {
|
|
|
7088
9062
|
readonly path: "/v1/partner/screens/{screenId}/sensing/settings";
|
|
7089
9063
|
readonly method: "GET";
|
|
7090
9064
|
request: never;
|
|
9065
|
+
params: {
|
|
9066
|
+
screenId: string;
|
|
9067
|
+
};
|
|
9068
|
+
query: Record<string, unknown>;
|
|
7091
9069
|
response: {
|
|
7092
9070
|
data?: SensingSettingsResponse;
|
|
7093
9071
|
success?: boolean;
|
|
@@ -7103,6 +9081,10 @@ interface updateScreenSensingSettingsOperation {
|
|
|
7103
9081
|
request: {
|
|
7104
9082
|
performance_mode: SensingPerformanceMode;
|
|
7105
9083
|
};
|
|
9084
|
+
params: {
|
|
9085
|
+
screenId: string;
|
|
9086
|
+
};
|
|
9087
|
+
query: Record<string, unknown>;
|
|
7106
9088
|
response: {
|
|
7107
9089
|
data?: {
|
|
7108
9090
|
command?: Record<string, unknown>;
|
|
@@ -7120,6 +9102,10 @@ interface listPartnerSensingRoutesOperation {
|
|
|
7120
9102
|
readonly path: "/v1/partner/sensing/routes";
|
|
7121
9103
|
readonly method: "GET";
|
|
7122
9104
|
request: never;
|
|
9105
|
+
params: Record<string, unknown>;
|
|
9106
|
+
query: {
|
|
9107
|
+
includeDisabled?: boolean;
|
|
9108
|
+
};
|
|
7123
9109
|
response: {
|
|
7124
9110
|
data?: {
|
|
7125
9111
|
routes?: Array<SensingRoute>;
|
|
@@ -7135,6 +9121,8 @@ interface createPartnerSensingRouteOperation {
|
|
|
7135
9121
|
readonly path: "/v1/partner/sensing/routes";
|
|
7136
9122
|
readonly method: "POST";
|
|
7137
9123
|
request: CreatePartnerSensingRouteRequest;
|
|
9124
|
+
params: Record<string, unknown>;
|
|
9125
|
+
query: Record<string, unknown>;
|
|
7138
9126
|
response: {
|
|
7139
9127
|
data?: {
|
|
7140
9128
|
route?: SensingRoute;
|
|
@@ -7150,6 +9138,10 @@ interface deletePartnerSensingRouteOperation {
|
|
|
7150
9138
|
readonly path: "/v1/partner/sensing/routes/{routeId}";
|
|
7151
9139
|
readonly method: "DELETE";
|
|
7152
9140
|
request: never;
|
|
9141
|
+
params: {
|
|
9142
|
+
routeId: string;
|
|
9143
|
+
};
|
|
9144
|
+
query: Record<string, unknown>;
|
|
7153
9145
|
response: {
|
|
7154
9146
|
data?: {
|
|
7155
9147
|
routeId?: string;
|
|
@@ -7165,6 +9157,10 @@ interface getPartnerSensingRouteOperation {
|
|
|
7165
9157
|
readonly path: "/v1/partner/sensing/routes/{routeId}";
|
|
7166
9158
|
readonly method: "GET";
|
|
7167
9159
|
request: never;
|
|
9160
|
+
params: {
|
|
9161
|
+
routeId: string;
|
|
9162
|
+
};
|
|
9163
|
+
query: Record<string, unknown>;
|
|
7168
9164
|
response: {
|
|
7169
9165
|
data?: {
|
|
7170
9166
|
route?: SensingRoute;
|
|
@@ -7180,6 +9176,10 @@ interface updatePartnerSensingRouteOperation {
|
|
|
7180
9176
|
readonly path: "/v1/partner/sensing/routes/{routeId}";
|
|
7181
9177
|
readonly method: "PATCH";
|
|
7182
9178
|
request: UpdatePartnerSensingRouteRequest;
|
|
9179
|
+
params: {
|
|
9180
|
+
routeId: string;
|
|
9181
|
+
};
|
|
9182
|
+
query: Record<string, unknown>;
|
|
7183
9183
|
response: {
|
|
7184
9184
|
data?: {
|
|
7185
9185
|
route?: SensingRoute;
|
|
@@ -7195,6 +9195,8 @@ interface createStripeConnectAccountOperation {
|
|
|
7195
9195
|
readonly path: "/v1/partner/stripe/connect";
|
|
7196
9196
|
readonly method: "POST";
|
|
7197
9197
|
request: never;
|
|
9198
|
+
params: Record<string, unknown>;
|
|
9199
|
+
query: Record<string, unknown>;
|
|
7198
9200
|
response: {
|
|
7199
9201
|
data?: {
|
|
7200
9202
|
account_id?: string;
|
|
@@ -7217,6 +9219,8 @@ interface getStripeLoginLinkOperation {
|
|
|
7217
9219
|
readonly path: "/v1/partner/stripe/login-link";
|
|
7218
9220
|
readonly method: "GET";
|
|
7219
9221
|
request: never;
|
|
9222
|
+
params: Record<string, unknown>;
|
|
9223
|
+
query: Record<string, unknown>;
|
|
7220
9224
|
response: {
|
|
7221
9225
|
data?: {
|
|
7222
9226
|
account_id?: string;
|
|
@@ -7234,6 +9238,8 @@ interface getStripeOnboardingLinkOperation {
|
|
|
7234
9238
|
readonly path: "/v1/partner/stripe/onboarding-link";
|
|
7235
9239
|
readonly method: "GET";
|
|
7236
9240
|
request: never;
|
|
9241
|
+
params: Record<string, unknown>;
|
|
9242
|
+
query: Record<string, unknown>;
|
|
7237
9243
|
response: {
|
|
7238
9244
|
data?: {
|
|
7239
9245
|
account_id?: string;
|
|
@@ -7259,6 +9265,8 @@ interface requestStripePayoutOperation {
|
|
|
7259
9265
|
/** Deduplication key to prevent duplicate payouts */
|
|
7260
9266
|
idempotency_key?: string;
|
|
7261
9267
|
};
|
|
9268
|
+
params: Record<string, unknown>;
|
|
9269
|
+
query: Record<string, unknown>;
|
|
7262
9270
|
response: {
|
|
7263
9271
|
data?: {
|
|
7264
9272
|
amount_cents?: number;
|
|
@@ -7283,6 +9291,10 @@ interface getStripePayoutHistoryOperation {
|
|
|
7283
9291
|
readonly path: "/v1/partner/stripe/payouts";
|
|
7284
9292
|
readonly method: "GET";
|
|
7285
9293
|
request: never;
|
|
9294
|
+
params: Record<string, unknown>;
|
|
9295
|
+
query: {
|
|
9296
|
+
limit?: number;
|
|
9297
|
+
};
|
|
7286
9298
|
response: {
|
|
7287
9299
|
data?: {
|
|
7288
9300
|
has_more?: boolean;
|
|
@@ -7307,6 +9319,8 @@ interface getStripeAccountStatusOperation {
|
|
|
7307
9319
|
readonly path: "/v1/partner/stripe/status";
|
|
7308
9320
|
readonly method: "GET";
|
|
7309
9321
|
request: never;
|
|
9322
|
+
params: Record<string, unknown>;
|
|
9323
|
+
query: Record<string, unknown>;
|
|
7310
9324
|
response: {
|
|
7311
9325
|
data?: {
|
|
7312
9326
|
account_id?: string | null;
|
|
@@ -7335,6 +9349,8 @@ interface handleStripeWebhookOperation {
|
|
|
7335
9349
|
readonly path: "/v1/partner/stripe/webhook";
|
|
7336
9350
|
readonly method: "POST";
|
|
7337
9351
|
request: Record<string, unknown>;
|
|
9352
|
+
params: Record<string, unknown>;
|
|
9353
|
+
query: Record<string, unknown>;
|
|
7338
9354
|
response: {
|
|
7339
9355
|
event_type?: string;
|
|
7340
9356
|
received?: boolean;
|
|
@@ -7348,6 +9364,10 @@ interface listTeamMembersOperation {
|
|
|
7348
9364
|
readonly path: "/v1/partner/team";
|
|
7349
9365
|
readonly method: "GET";
|
|
7350
9366
|
request: never;
|
|
9367
|
+
params: Record<string, unknown>;
|
|
9368
|
+
query: {
|
|
9369
|
+
status?: "active" | "pending" | "all";
|
|
9370
|
+
};
|
|
7351
9371
|
response: {
|
|
7352
9372
|
data?: {
|
|
7353
9373
|
members?: Array<TeamMember>;
|
|
@@ -7371,6 +9391,8 @@ interface acceptInvitationOperation {
|
|
|
7371
9391
|
/** Invitation token from email link */
|
|
7372
9392
|
token: string;
|
|
7373
9393
|
};
|
|
9394
|
+
params: Record<string, unknown>;
|
|
9395
|
+
query: Record<string, unknown>;
|
|
7374
9396
|
response: {
|
|
7375
9397
|
data?: {
|
|
7376
9398
|
partner?: {
|
|
@@ -7401,6 +9423,8 @@ interface inviteTeamMemberOperation {
|
|
|
7401
9423
|
/** Role to assign to the team member */
|
|
7402
9424
|
role?: "admin" | "viewer";
|
|
7403
9425
|
};
|
|
9426
|
+
params: Record<string, unknown>;
|
|
9427
|
+
query: Record<string, unknown>;
|
|
7404
9428
|
response: {
|
|
7405
9429
|
data?: TeamInviteResponse;
|
|
7406
9430
|
message?: string;
|
|
@@ -7415,6 +9439,10 @@ interface getInvitationByTokenOperation {
|
|
|
7415
9439
|
readonly path: "/v1/partner/team/invite/{token}";
|
|
7416
9440
|
readonly method: "GET";
|
|
7417
9441
|
request: never;
|
|
9442
|
+
params: {
|
|
9443
|
+
token: string;
|
|
9444
|
+
};
|
|
9445
|
+
query: Record<string, unknown>;
|
|
7418
9446
|
response: {
|
|
7419
9447
|
data?: {
|
|
7420
9448
|
email?: string;
|
|
@@ -7437,6 +9465,10 @@ interface resendInvitationOperation {
|
|
|
7437
9465
|
readonly path: "/v1/partner/team/{membershipId}/resend";
|
|
7438
9466
|
readonly method: "POST";
|
|
7439
9467
|
request: never;
|
|
9468
|
+
params: {
|
|
9469
|
+
membershipId: string;
|
|
9470
|
+
};
|
|
9471
|
+
query: Record<string, unknown>;
|
|
7440
9472
|
response: {
|
|
7441
9473
|
data?: {
|
|
7442
9474
|
email?: string;
|
|
@@ -7454,6 +9486,10 @@ interface removeTeamMemberOperation {
|
|
|
7454
9486
|
readonly path: "/v1/partner/team/{userId}";
|
|
7455
9487
|
readonly method: "DELETE";
|
|
7456
9488
|
request: never;
|
|
9489
|
+
params: {
|
|
9490
|
+
userId: string;
|
|
9491
|
+
};
|
|
9492
|
+
query: Record<string, unknown>;
|
|
7457
9493
|
response: {
|
|
7458
9494
|
message?: string;
|
|
7459
9495
|
success?: boolean;
|
|
@@ -7469,6 +9505,10 @@ interface changeTeamMemberRoleOperation {
|
|
|
7469
9505
|
request: {
|
|
7470
9506
|
role: "admin" | "viewer";
|
|
7471
9507
|
};
|
|
9508
|
+
params: {
|
|
9509
|
+
userId: string;
|
|
9510
|
+
};
|
|
9511
|
+
query: Record<string, unknown>;
|
|
7472
9512
|
response: {
|
|
7473
9513
|
data?: {
|
|
7474
9514
|
new_role?: string;
|
|
@@ -7488,6 +9528,8 @@ interface getTrackingPublicKeyOperation {
|
|
|
7488
9528
|
readonly path: "/v1/partner/tracking/.well-known/public-key";
|
|
7489
9529
|
readonly method: "GET";
|
|
7490
9530
|
request: never;
|
|
9531
|
+
params: Record<string, unknown>;
|
|
9532
|
+
query: Record<string, unknown>;
|
|
7491
9533
|
response: {
|
|
7492
9534
|
data?: {
|
|
7493
9535
|
/** Signature algorithm (ed25519 for public key, sha256 for HMAC fallback) */
|
|
@@ -7535,6 +9577,8 @@ interface recordTrackingBatchOperation {
|
|
|
7535
9577
|
timestamp?: string;
|
|
7536
9578
|
}>;
|
|
7537
9579
|
};
|
|
9580
|
+
params: Record<string, unknown>;
|
|
9581
|
+
query: Record<string, unknown>;
|
|
7538
9582
|
response: {
|
|
7539
9583
|
data?: {
|
|
7540
9584
|
/** Number of duplicate impressions skipped */
|
|
@@ -7569,6 +9613,11 @@ interface getUsageSummaryOperation {
|
|
|
7569
9613
|
readonly path: "/v1/partner/usage";
|
|
7570
9614
|
readonly method: "GET";
|
|
7571
9615
|
request: never;
|
|
9616
|
+
params: Record<string, unknown>;
|
|
9617
|
+
query: {
|
|
9618
|
+
end_date?: string;
|
|
9619
|
+
start_date?: string;
|
|
9620
|
+
};
|
|
7572
9621
|
response: {
|
|
7573
9622
|
/** Average response time in milliseconds */
|
|
7574
9623
|
avgResponseTime?: number;
|
|
@@ -7603,6 +9652,8 @@ interface getUsageDashboardOperation {
|
|
|
7603
9652
|
readonly path: "/v1/partner/usage/dashboard";
|
|
7604
9653
|
readonly method: "GET";
|
|
7605
9654
|
request: never;
|
|
9655
|
+
params: Record<string, unknown>;
|
|
9656
|
+
query: Record<string, unknown>;
|
|
7606
9657
|
response: {
|
|
7607
9658
|
last_7_days?: {
|
|
7608
9659
|
avg_response_ms?: number;
|
|
@@ -7647,6 +9698,8 @@ interface getRateLimitStatusOperation {
|
|
|
7647
9698
|
readonly path: "/v1/partner/usage/rate-limit";
|
|
7648
9699
|
readonly method: "GET";
|
|
7649
9700
|
request: never;
|
|
9701
|
+
params: Record<string, unknown>;
|
|
9702
|
+
query: Record<string, unknown>;
|
|
7650
9703
|
response: {
|
|
7651
9704
|
current_rate?: number;
|
|
7652
9705
|
max_rate?: number;
|
|
@@ -7665,6 +9718,11 @@ interface getVastConfigOperation {
|
|
|
7665
9718
|
readonly path: "/v1/partner/vast/config";
|
|
7666
9719
|
readonly method: "GET";
|
|
7667
9720
|
request: never;
|
|
9721
|
+
params: Record<string, unknown>;
|
|
9722
|
+
query: {
|
|
9723
|
+
device_id?: string;
|
|
9724
|
+
screen_id?: string;
|
|
9725
|
+
};
|
|
7668
9726
|
response: {
|
|
7669
9727
|
data?: {
|
|
7670
9728
|
/** Google Ad Manager ad unit path */
|
|
@@ -7709,6 +9767,12 @@ interface getVenuesNearbyOperation {
|
|
|
7709
9767
|
readonly path: "/v1/partner/venues/nearby";
|
|
7710
9768
|
readonly method: "GET";
|
|
7711
9769
|
request: never;
|
|
9770
|
+
params: Record<string, unknown>;
|
|
9771
|
+
query: {
|
|
9772
|
+
lat: number;
|
|
9773
|
+
lng: number;
|
|
9774
|
+
radius_km?: number;
|
|
9775
|
+
};
|
|
7712
9776
|
response: {
|
|
7713
9777
|
count?: number;
|
|
7714
9778
|
venues?: Array<{
|
|
@@ -7726,6 +9790,12 @@ interface getVenueAtmosphereOperation {
|
|
|
7726
9790
|
readonly path: "/v1/partner/venues/{screenId}/atmosphere";
|
|
7727
9791
|
readonly method: "GET";
|
|
7728
9792
|
request: never;
|
|
9793
|
+
params: {
|
|
9794
|
+
screenId: string;
|
|
9795
|
+
};
|
|
9796
|
+
query: {
|
|
9797
|
+
days?: number;
|
|
9798
|
+
};
|
|
7729
9799
|
response: {
|
|
7730
9800
|
days?: number;
|
|
7731
9801
|
dominant_ambience?: string;
|
|
@@ -7743,6 +9813,12 @@ interface getVenueTrafficOperation {
|
|
|
7743
9813
|
readonly path: "/v1/partner/venues/{screenId}/traffic";
|
|
7744
9814
|
readonly method: "GET";
|
|
7745
9815
|
request: never;
|
|
9816
|
+
params: {
|
|
9817
|
+
screenId: string;
|
|
9818
|
+
};
|
|
9819
|
+
query: {
|
|
9820
|
+
days?: number;
|
|
9821
|
+
};
|
|
7746
9822
|
response: {
|
|
7747
9823
|
daily?: Array<Record<string, unknown>>;
|
|
7748
9824
|
hourly?: Array<{
|
|
@@ -7760,6 +9836,14 @@ interface getVenueIntelligenceOperation {
|
|
|
7760
9836
|
readonly path: "/v1/partner/venues/{venueId}/intelligence";
|
|
7761
9837
|
readonly method: "GET";
|
|
7762
9838
|
request: never;
|
|
9839
|
+
params: {
|
|
9840
|
+
venueId: string;
|
|
9841
|
+
};
|
|
9842
|
+
query: {
|
|
9843
|
+
from: string;
|
|
9844
|
+
interval?: "5min" | "15min" | "1h" | "1d";
|
|
9845
|
+
to: string;
|
|
9846
|
+
};
|
|
7763
9847
|
response: {
|
|
7764
9848
|
dedup?: {
|
|
7765
9849
|
camera_count?: number;
|
|
@@ -7811,6 +9895,8 @@ interface listWebhooksOperation {
|
|
|
7811
9895
|
readonly path: "/v1/partner/webhooks";
|
|
7812
9896
|
readonly method: "GET";
|
|
7813
9897
|
request: never;
|
|
9898
|
+
params: Record<string, unknown>;
|
|
9899
|
+
query: Record<string, unknown>;
|
|
7814
9900
|
response: {
|
|
7815
9901
|
data?: {
|
|
7816
9902
|
webhooks?: Array<Webhook>;
|
|
@@ -7827,10 +9913,12 @@ interface createWebhookOperation {
|
|
|
7827
9913
|
readonly method: "POST";
|
|
7828
9914
|
request: {
|
|
7829
9915
|
/** Events to subscribe to */
|
|
7830
|
-
events: Array<"device.online" | "device.offline" | "device.requirements_updated" | "impression.recorded" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "programmatic.ad_started" | "programmatic.ad_ended" | "programmatic.no_fill" | "programmatic.error" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
9916
|
+
events: Array<"device.online" | "device.offline" | "device.requirements_updated" | "impression.recorded" | "creative.rewards_ready" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "programmatic.ad_started" | "programmatic.ad_ended" | "programmatic.no_fill" | "programmatic.error" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
7831
9917
|
/** Webhook endpoint URL (HTTPS required in production) */
|
|
7832
9918
|
url: string;
|
|
7833
9919
|
};
|
|
9920
|
+
params: Record<string, unknown>;
|
|
9921
|
+
query: Record<string, unknown>;
|
|
7834
9922
|
response: {
|
|
7835
9923
|
data?: {
|
|
7836
9924
|
events?: Array<string>;
|
|
@@ -7852,6 +9940,10 @@ interface deleteWebhookOperation {
|
|
|
7852
9940
|
readonly path: "/v1/partner/webhooks/{webhookId}";
|
|
7853
9941
|
readonly method: "DELETE";
|
|
7854
9942
|
request: never;
|
|
9943
|
+
params: {
|
|
9944
|
+
webhookId: string;
|
|
9945
|
+
};
|
|
9946
|
+
query: Record<string, unknown>;
|
|
7855
9947
|
response: {
|
|
7856
9948
|
message?: string;
|
|
7857
9949
|
success?: boolean;
|
|
@@ -7865,10 +9957,14 @@ interface updateWebhookOperation {
|
|
|
7865
9957
|
readonly path: "/v1/partner/webhooks/{webhookId}";
|
|
7866
9958
|
readonly method: "PATCH";
|
|
7867
9959
|
request: {
|
|
7868
|
-
events?: Array<"device.online" | "device.offline" | "device.requirements_updated" | "impression.recorded" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "programmatic.ad_started" | "programmatic.ad_ended" | "programmatic.no_fill" | "programmatic.error" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
9960
|
+
events?: Array<"device.online" | "device.offline" | "device.requirements_updated" | "impression.recorded" | "creative.rewards_ready" | "campaign.allocated" | "payout.processed" | "sensing.threshold_crossed" | "audience.spike" | "audience.venue_busy" | "audience.purchase_intent" | "audience.demographics_update" | "venue.traffic_summary" | "programmatic.ad_started" | "programmatic.ad_ended" | "programmatic.no_fill" | "programmatic.error" | "screen_group.created" | "screen_group.updated" | "screen_group.deleted" | "screen_group.member.added" | "screen_group.member.removed" | "screen_group.content_policy.updated" | "screen_group.sensing_config.updated" | "fleet_command.completed" | "fleet_command.failed">;
|
|
7869
9961
|
status?: "active" | "inactive";
|
|
7870
9962
|
url?: string;
|
|
7871
9963
|
};
|
|
9964
|
+
params: {
|
|
9965
|
+
webhookId: string;
|
|
9966
|
+
};
|
|
9967
|
+
query: Record<string, unknown>;
|
|
7872
9968
|
response: {
|
|
7873
9969
|
data?: Webhook;
|
|
7874
9970
|
message?: string;
|
|
@@ -7883,6 +9979,12 @@ interface getWebhookDeliveriesOperation {
|
|
|
7883
9979
|
readonly path: "/v1/partner/webhooks/{webhookId}/deliveries";
|
|
7884
9980
|
readonly method: "GET";
|
|
7885
9981
|
request: never;
|
|
9982
|
+
params: {
|
|
9983
|
+
webhookId: string;
|
|
9984
|
+
};
|
|
9985
|
+
query: {
|
|
9986
|
+
limit?: number;
|
|
9987
|
+
};
|
|
7886
9988
|
response: {
|
|
7887
9989
|
data?: {
|
|
7888
9990
|
deliveries?: Array<WebhookDelivery>;
|
|
@@ -7898,6 +10000,10 @@ interface testWebhookOperation {
|
|
|
7898
10000
|
readonly path: "/v1/partner/webhooks/{webhookId}/test";
|
|
7899
10001
|
readonly method: "POST";
|
|
7900
10002
|
request: never;
|
|
10003
|
+
params: {
|
|
10004
|
+
webhookId: string;
|
|
10005
|
+
};
|
|
10006
|
+
query: Record<string, unknown>;
|
|
7901
10007
|
response: {
|
|
7902
10008
|
data?: {
|
|
7903
10009
|
error?: string;
|
|
@@ -7916,6 +10022,11 @@ interface playgroundDryRunOperation {
|
|
|
7916
10022
|
readonly path: "/v1/playground/{operation_id}";
|
|
7917
10023
|
readonly method: "POST";
|
|
7918
10024
|
request: never;
|
|
10025
|
+
params: {
|
|
10026
|
+
/** The operationId of the endpoint to validate against. */
|
|
10027
|
+
operation_id: string;
|
|
10028
|
+
};
|
|
10029
|
+
query: Record<string, unknown>;
|
|
7919
10030
|
response: PlaygroundResult;
|
|
7920
10031
|
}
|
|
7921
10032
|
/**
|
|
@@ -7926,15 +10037,20 @@ interface getRequestMetadataOperation {
|
|
|
7926
10037
|
readonly path: "/v1/requests/{request_id}";
|
|
7927
10038
|
readonly method: "GET";
|
|
7928
10039
|
request: never;
|
|
10040
|
+
params: {
|
|
10041
|
+
/** Server-generated request ID to look up. */
|
|
10042
|
+
request_id: string;
|
|
10043
|
+
};
|
|
10044
|
+
query: Record<string, unknown>;
|
|
7929
10045
|
response: RequestMetadataResponse;
|
|
7930
10046
|
}
|
|
7931
10047
|
declare const generatedTypes: {
|
|
7932
|
-
readonly schemaCount:
|
|
7933
|
-
readonly operationCount:
|
|
7934
|
-
readonly schemas: readonly ["Ad", "AdSettings", "AdvertisingIdentity", "AnalyticsData", "AudienceAnalyticsResponse", "AudienceAttentionPrediction", "AudienceData", "AudienceExportResponse", "AudienceLoyaltyFeaturesRow", "AudienceMetricsResponse", "AudienceSegment", "AudienceSocialAttention", "BatchResult", "BillingInfo", "BleScanResultData", "CanonicalError", "ChangelogEntry", "ChangelogResponse", "CompletedImpressions", "ContentFitSettings", "ContentPreferencesInput", "ContentPreferencesResponse", "ContentPreset", "CreatePartnerSensingRouteRequest", "CreativeClassification", "DashboardResponse", "DataExportSummaryResponse", "DemandPartners", "DemographicsResponse", "Device", "DeviceCapabilityPayload", "DeviceSummary", "DisplaySettingsInput", "DisplaySettingsResponse", "EarnerScreens", "EarningsBreakdownResponse", "EarningsData", "EarningsResponse", "Error", "ErrorCode", "ErrorCodeResponse", "ErrorEntry", "ErrorEnvelope", "ErrorListItem", "ErrorListResponse", "ErrorType", "ExtendedIdentity", "FleetCommand", "FleetCommandEvent", "HeaderBiddingSettings", "HttpProbeResult", "HybridError", "Impression", "LegacyCodedError", "LegacyError", "MdnsNetworkDevice", "MeasurementMethodology", "OpenrtbRevenueScreenHourly", "Pagination", "Partner", "PartnerAdDeliveryProfile", "PartnerCreativeWarnings", "PartnerDefaultStream", "PartnerDefaultStreamCreate", "PartnerDefaultStreamUpdate", "PartnerDeviceBatchRegistrationInput", "PartnerDeviceHeartbeatBody", "PartnerDeviceRegistrationInput", "PartnerHeartbeatCommand", "PartnerHeartbeatData", "PartnerHeartbeatMeasurementMetadata", "PartnerHeartbeatQueryData", "PartnerHeartbeatQueryResponse", "PartnerHeartbeatRequest", "PartnerHeartbeatResponse", "PartnerHeartbeatTelemetry", "PartnerLBarContent", "PartnerLBarDisplayPreferences", "PartnerLBarSettings", "PartnerMonetizationRequirements", "PartnerNetworkConfig", "PartnerNetworkConfigUpdate", "PartnerPlay", "PartnerReconciliationReports", "PartnerRegistrationDisplaySettings", "PartnerRequirement", "PartnerSafeHeartbeatTelemetry", "PartnerSelfPromoAd", "PartnerSelfPromoCreate", "PartnerSelfPromoPlacement", "PartnerStats", "PartnerVariants", "PartnerZoneCpmDaily", "PayoutResponse", "PlaygroundResult", "PlaygroundValidationError", "ProgrammaticSettingsInput", "ProgrammaticSettingsResponse", "RequestMetadataResponse", "ResolvedContentPolicy", "ResolvedSensingConfig", "RolePermissions", "SDKConfig", "Screen", "ScreenAnalyticsResponse", "ScreenGroup", "ScreenGroupContentPolicy", "ScreenGroupContentPolicyInput", "ScreenGroupEvent", "ScreenGroupSensingConfig", "ScreenGroupSensingConfigInput", "SensingPerformanceMode", "SensingRoute", "SensingRouteAction", "SensingRouteCondition", "SensingRouteScreenFocusRegion", "SensingSettingsResponse", "SensingThresholdCrossedEvent", "SsdpDeviceInfo", "TeamInviteResponse", "TeamMember", "Transaction", "TrillboardsError", "UpdatePartnerSensingRouteRequest", "VastWaterfall", "VastWaterfallSource", "Webhook", "WebhookDelivery", "WebhookEvent", "WifiEnvironmentSnapshot", "WifiScanResult"];
|
|
7935
|
-
readonly operations: readonly ["queryChangelog", "listErrorCodes", "getErrorCode", "listPartnerSelfPromoAds", "createPartnerSelfPromoAd", "listPartnerSelfPromoPlacements", "schedulePartnerSelfPromo", "createPartnerSelfPromoUpload", "disableSelfPromoAd", "registerAgent", "getAnalytics", "getAudienceContinuity", "getAudienceProfile", "getBleSummary", "getContentPerformance", "searchCreativeCatalog", "getCreativeScenes", "getCrossScreenFlow", "getPartnerAnalyticsDashboard", "getDeviceSuiteSignature", "exportPartnerAnalytics", "exportPartnerAdsByDay", "getFleetHourly", "getHaloFunnel", "getLoyaltyClock", "getNetworkSummary", "getNetworkTrend", "getProximitySummary", "getRevenueAttentionCorrelation", "getSceneFeed", "getSceneIntelligence", "rotateApiKey", "getAudienceAnalytics", "exportAudienceData", "getAudienceHeatmap", "getLiveAudience", "getLookalikeScreens", "predictScreenAudience", "getResolvedHouseholdReach", "listAudienceSegments", "createAudienceSegment", "deleteAudienceSegment", "getAudienceSegment", "updateAudienceSegment", "matchAudienceSegment", "estimateSegmentReach", "generateSegmentVastTag", "getAudienceStats", "cancelBillingSubscription", "purchaseCredits", "createCreditCheckout", "listBillingPlans", "setupBilling", "createBillingSubscription", "getBillingSubscription", "getBillingUsage", "getBillingUsageSummary", "stripeWebhookCallback", "getConnectDashboard", "getConnectEarningsChart", "getConnectScreenHealth", "listContentPresets", "getContentPreset", "submitPartnerCreative", "getPartnerCreative", "getDashboard", "exportProximityGraphEdges", "getDataExportSummary", "exportDataset", "getGeohashAudiencePanel", "getOutcomeAttribution", "registerDevice", "deleteDevice", "getDevice", "updateDevice", "getAdsForDevice", "ackDeviceCommand", "getDeviceHeartbeat", "heartbeat", "recordProgrammaticEvent", "listDevices", "registerDeviceV2", "registerDevicesBatch", "batchUpdateDeviceOrientation", "reconcileDevices", "partnerDocsBrowser", "getEarnings", "getEarningsBreakdown", "requestPayout", "getTransactions", "getActiveSSEConnections", "subscribeToEvents", "getFleetCommand", "getFleetAnalytics", "pushFleetCommand", "getFleetOverview", "updateFleetSettings", "recordImpressionGet", "recordImpressionPost", "recordImpressionsBatch", "getPartnerInfo", "listIntentCategories", "getIntentCategory", "getIntentPricing", "getMeasurementMethodology", "getMeasurementMethodologyJson", "getNetworkConfig", "patchNetworkConfig", "updateNetworkConfig", "getNetworkTrends", "partnerPing", "partnerPingAuth", "recordPartnerPlay", "recordPartnerPlaysBatch", "getPricing", "recordProgrammaticEventLegacyAlias", "quickStart", "registerPartner", "generateSandboxEvent", "resetSandbox", "createSandboxScreen", "getSandboxStatus", "listScreenGroups", "createScreenGroup", "deleteScreenGroup", "getScreenGroup", "updateScreenGroup", "getScreenGroupAnalytics", "createScreenGroupCommand", "getScreenGroupContentPolicy", "updateScreenGroupContentPolicy", "removeScreenGroupMembers", "listScreenGroupMembers", "addScreenGroupMembers", "getScreenGroupSensingConfig", "updateScreenGroupSensingConfig", "getScreenAudienceSegments", "batchUpdateContentPreferences", "batchUpdateDisplaySettings", "batchUpdateProgrammaticSettings", "resolvePartnerScreen", "getScreenAnalytics", "getPartnerScreenAtmosphere", "getPartnerScreenIntelligence", "getPartnerScreenTasteProfile", "getPartnerScreenTraffic", "getPartnerScreenVAS", "applyContentPreset", "getAudienceMetrics", "getContentPreferences", "patchContentPreferences", "updateContentPreferences", "listPartnerDefaultStreams", "createPartnerDefaultStream", "createPartnerDefaultStreamImages", "reorderPartnerDefaultStreams", "createPartnerDefaultStreamUpload", "deletePartnerDefaultStream", "updatePartnerDefaultStream", "getScreenDemographics", "getDisplaySettings", "patchDisplaySettings", "updateDisplaySettings", "getPartnerLBarSettings", "updatePartnerLBarSettings", "updatePartnerLBarLiveUpdates", "getProgrammaticSettings", "patchProgrammaticSettings", "updateProgrammaticSettings", "getResolvedContentPolicy", "getResolvedSensingConfig", "getScreenSensingChips", "interpretScreenSensingIntent", "deployScreenSensingProfile", "getScreenSensingSettings", "updateScreenSensingSettings", "listPartnerSensingRoutes", "createPartnerSensingRoute", "deletePartnerSensingRoute", "getPartnerSensingRoute", "updatePartnerSensingRoute", "createStripeConnectAccount", "getStripeLoginLink", "getStripeOnboardingLink", "requestStripePayout", "getStripePayoutHistory", "getStripeAccountStatus", "handleStripeWebhook", "listTeamMembers", "acceptInvitation", "inviteTeamMember", "getInvitationByToken", "resendInvitation", "removeTeamMember", "changeTeamMemberRole", "getTrackingPublicKey", "recordTrackingBatch", "getUsageSummary", "getUsageDashboard", "getRateLimitStatus", "getVastConfig", "getVenuesNearby", "getVenueAtmosphere", "getVenueTraffic", "getVenueIntelligence", "listWebhooks", "createWebhook", "deleteWebhook", "updateWebhook", "getWebhookDeliveries", "testWebhook", "playgroundDryRun", "getRequestMetadata"];
|
|
10048
|
+
readonly schemaCount: 191;
|
|
10049
|
+
readonly operationCount: 237;
|
|
10050
|
+
readonly schemas: readonly ["Ad", "AdSettings", "AdvertisingIdentity", "AnalyticsData", "AudienceAnalyticsResponse", "AudienceAttentionPrediction", "AudienceData", "AudienceExportResponse", "AudienceLoyaltyFeaturesRow", "AudienceMetricsResponse", "AudienceSegment", "AudienceSocialAttention", "BatchResult", "BillingInfo", "BleScanResultData", "CanonicalError", "ChangelogEntry", "ChangelogResponse", "CompletedImpressions", "ContentFitSettings", "ContentPreferencesInput", "ContentPreferencesResponse", "ContentPreset", "CreatePartnerSensingRouteRequest", "CreativeClassification", "CreativeRewardsReadyEvent", "DashboardResponse", "DataApi_AggregateResponse", "DataApi_Error", "DataApi_ErrorCode", "DataApi_ExampleHealthcheckResponse", "DataApi_FeedbackRewardQuery", "DataApi_LookalikeResponse", "DataApi_QueryDslBody", "DataApi_QueryDslResponse", "DataApi_QueryFilter", "DataApi_QueryOrderBy", "DataApi_ScreenAudienceResponse", "DataApi_ScreenHistoryResponse", "DataApi_ScreensListResponse", "DataApi_SemanticSearchResponse", "DataApi_StatsResponse", "DataApi_StreamResponse", "DataApi_UsageResponse", "DataExportSummaryResponse", "DemandPartners", "DemographicsResponse", "Device", "DeviceAuthRefusal", "DeviceCapabilityPayload", "DeviceSummary", "DisplaySettingsInput", "DisplaySettingsResponse", "EarnerScreens", "EarningsBreakdownResponse", "EarningsData", "EarningsResponse", "EarningsSources", "Error", "ErrorCode", "ErrorCodeResponse", "ErrorEntry", "ErrorEnvelope", "ErrorListItem", "ErrorListResponse", "ErrorType", "ExtendedIdentity", "FeedbackBrand", "FeedbackBrandRequest", "FeedbackBrandResponse", "FeedbackCreateRequest", "FeedbackCreativeReview", "FeedbackExperiment", "FeedbackExperimentDetail", "FeedbackExperimentDetailResponse", "FeedbackExperimentResponse", "FeedbackGenerateRequest", "FeedbackGenerateResponse", "FeedbackGeneratedCreative", "FeedbackImportRequest", "FeedbackPolicyRequest", "FeedbackRecoveredCreative", "FeedbackRegisterVariantsRequest", "FeedbackReviewRequest", "FeedbackReviewResponse", "FeedbackRewardQuery", "FeedbackRewardRow", "FeedbackRewards", "FeedbackRewardsResponse", "FeedbackStopRequest", "FeedbackVariant", "FleetCommand", "FleetCommandEvent", "HeaderBiddingSettings", "HttpProbeResult", "HybridError", "Impression", "LegacyCodedError", "LegacyError", "Mcp_create_media_buy_Args", "Mcp_discover_inventory_Args", "Mcp_get_media_buy_delivery_Args", "Mcp_get_media_buys_Args", "Mcp_get_products_Args", "Mcp_list_accounts_Args", "Mcp_sync_accounts_Args", "Mcp_sync_creatives_Args", "Mcp_update_media_buy_Args", "MdnsNetworkDevice", "MeasurementMethodology", "OpenrtbRevenueScreenHourly", "Pagination", "Partner", "PartnerAdDeliveryProfile", "PartnerCreativeWarnings", "PartnerDefaultStream", "PartnerDefaultStreamCreate", "PartnerDefaultStreamUpdate", "PartnerDeviceBatchRegistrationInput", "PartnerDeviceHeartbeatBody", "PartnerDevicePlay", "PartnerDeviceRegistrationInput", "PartnerHeartbeatCommand", "PartnerHeartbeatData", "PartnerHeartbeatMeasurementMetadata", "PartnerHeartbeatQueryData", "PartnerHeartbeatQueryResponse", "PartnerHeartbeatRequest", "PartnerHeartbeatResponse", "PartnerHeartbeatTelemetry", "PartnerInteraction", "PartnerLBarContent", "PartnerLBarDisplayPreferences", "PartnerLBarSettings", "PartnerLocationCapability", "PartnerLocationRail", "PartnerMonetizationRequirements", "PartnerNetworkConfig", "PartnerNetworkConfigUpdate", "PartnerPlay", "PartnerReconciliationReports", "PartnerRegistrationDisplaySettings", "PartnerRequirement", "PartnerSafeHeartbeatTelemetry", "PartnerSelfPromoAd", "PartnerSelfPromoCreate", "PartnerSelfPromoPlacement", "PartnerStats", "PartnerTripState", "PartnerVariants", "PartnerZoneCpmDaily", "PayoutResponse", "PlaygroundResult", "PlaygroundValidationError", "ProgrammaticSettingsInput", "ProgrammaticSettingsResponse", "RequestMetadataResponse", "ResolvedContentPolicy", "ResolvedSensingConfig", "RolePermissions", "SDKConfig", "Screen", "ScreenAnalyticsResponse", "ScreenGroup", "ScreenGroupContentPolicy", "ScreenGroupContentPolicyInput", "ScreenGroupEvent", "ScreenGroupSensingConfig", "ScreenGroupSensingConfigInput", "SensingPerformanceMode", "SensingRoute", "SensingRouteAction", "SensingRouteCondition", "SensingRouteReviewTimingMode", "SensingRouteReviewWaitSeconds", "SensingRouteScreenFocusRegion", "SensingSettingsResponse", "SensingThresholdCrossedEvent", "SsdpDeviceInfo", "TeamInviteResponse", "TeamMember", "Transaction", "TrillboardsError", "UpdatePartnerSensingRouteRequest", "VastWaterfall", "VastWaterfallSource", "Webhook", "WebhookDelivery", "WebhookEvent", "WifiEnvironmentSnapshot", "WifiScanResult"];
|
|
10051
|
+
readonly operations: readonly ["queryChangelog", "dataApiAggregate", "dataApiLookalikeScreens", "dataApiQueryDsl", "dataApiListScreens", "dataApiScreenAudienceLive", "dataApiScreenAudienceHistory", "dataApiSemanticSearch", "dataApiStats", "dataApiStream", "dataApiUsage", "listErrorCodes", "getErrorCode", "exampleHealthcheck", "listPartnerSelfPromoAds", "createPartnerSelfPromoAd", "listPartnerSelfPromoPlacements", "schedulePartnerSelfPromo", "createPartnerSelfPromoUpload", "disableSelfPromoAd", "registerAgent", "getAnalytics", "getAudienceContinuity", "getAudienceProfile", "getBleSummary", "getContentPerformance", "searchCreativeCatalog", "getCreativeScenes", "getCrossScreenFlow", "getPartnerAnalyticsDashboard", "getDeviceSuiteSignature", "exportPartnerAnalytics", "exportPartnerAdsByDay", "getFleetHourly", "getHaloFunnel", "getLoyaltyClock", "getNetworkSummary", "getNetworkTrend", "getProximitySummary", "getRevenueAttentionCorrelation", "getSceneFeed", "getSceneIntelligence", "rotateApiKey", "getAudienceAnalytics", "exportAudienceData", "getAudienceHeatmap", "getLiveAudience", "getLookalikeScreens", "predictScreenAudience", "getResolvedHouseholdReach", "listAudienceSegments", "createAudienceSegment", "deleteAudienceSegment", "getAudienceSegment", "updateAudienceSegment", "matchAudienceSegment", "estimateSegmentReach", "generateSegmentVastTag", "getAudienceStats", "cancelBillingSubscription", "purchaseCredits", "createCreditCheckout", "listBillingPlans", "setupBilling", "createBillingSubscription", "getBillingSubscription", "getBillingUsage", "getBillingUsageSummary", "stripeWebhookCallback", "getConnectDashboard", "getConnectEarningsChart", "getConnectScreenHealth", "listContentPresets", "getContentPreset", "createCreativeFeedbackExperiment", "getCreativeFeedbackExperiment", "configureCreativeFeedbackBrand", "generateCreativeFeedbackCreative", "importCreativeFeedbackCreative", "reviewCreativeFeedbackCreative", "updateCreativeFeedbackPolicy", "getCreativeFeedbackRewards", "stopCreativeFeedbackExperiment", "registerCreativeFeedbackVariants", "submitPartnerCreative", "getPartnerCreative", "getDashboard", "exportProximityGraphEdges", "getDataExportSummary", "exportDataset", "getGeohashAudiencePanel", "getOutcomeAttribution", "registerDevice", "deleteDevice", "getDevice", "updateDevice", "getAdsForDevice", "ackDeviceCommand", "getDeviceHeartbeat", "heartbeat", "recordPartnerDeviceInteraction", "recordPartnerDevicePlay", "recordProgrammaticEvent", "recordPartnerDeviceTripState", "listDevices", "registerDeviceV2", "registerDevicesBatch", "batchUpdateDeviceOrientation", "reconcileDevices", "partnerDocsBrowser", "getEarnings", "getEarningsBreakdown", "requestPayout", "getTransactions", "getActiveSSEConnections", "subscribeToEvents", "getFleetCommand", "getFleetAnalytics", "pushFleetCommand", "getFleetOverview", "updateFleetSettings", "recordImpressionGet", "recordImpressionPost", "recordImpressionsBatch", "getPartnerInfo", "listIntentCategories", "getIntentCategory", "getIntentPricing", "getMeasurementMethodology", "getMeasurementMethodologyJson", "getNetworkConfig", "patchNetworkConfig", "updateNetworkConfig", "getNetworkTrends", "partnerPing", "partnerPingAuth", "recordPartnerPlay", "recordPartnerPlaysBatch", "getPricing", "recordProgrammaticEventLegacyAlias", "quickStart", "registerPartner", "generateSandboxEvent", "resetSandbox", "createSandboxScreen", "getSandboxStatus", "listScreenGroups", "createScreenGroup", "deleteScreenGroup", "getScreenGroup", "updateScreenGroup", "getScreenGroupAnalytics", "createScreenGroupCommand", "getScreenGroupContentPolicy", "updateScreenGroupContentPolicy", "removeScreenGroupMembers", "listScreenGroupMembers", "addScreenGroupMembers", "getScreenGroupSensingConfig", "updateScreenGroupSensingConfig", "getScreenAudienceSegments", "batchUpdateContentPreferences", "batchUpdateDisplaySettings", "batchUpdateProgrammaticSettings", "resolvePartnerScreen", "getScreenAnalytics", "getPartnerScreenAtmosphere", "getPartnerScreenIntelligence", "getPartnerScreenTasteProfile", "getPartnerScreenTraffic", "getPartnerScreenVAS", "applyContentPreset", "getAudienceMetrics", "getContentPreferences", "patchContentPreferences", "updateContentPreferences", "listPartnerDefaultStreams", "createPartnerDefaultStream", "createPartnerDefaultStreamImages", "reorderPartnerDefaultStreams", "createPartnerDefaultStreamUpload", "deletePartnerDefaultStream", "updatePartnerDefaultStream", "getScreenDemographics", "getDisplaySettings", "patchDisplaySettings", "updateDisplaySettings", "getPartnerLBarSettings", "updatePartnerLBarSettings", "updatePartnerLBarLiveUpdates", "getProgrammaticSettings", "patchProgrammaticSettings", "updateProgrammaticSettings", "getResolvedContentPolicy", "getResolvedSensingConfig", "getScreenSensingChips", "interpretScreenSensingIntent", "deployScreenSensingProfile", "getScreenSensingSettings", "updateScreenSensingSettings", "listPartnerSensingRoutes", "createPartnerSensingRoute", "deletePartnerSensingRoute", "getPartnerSensingRoute", "updatePartnerSensingRoute", "createStripeConnectAccount", "getStripeLoginLink", "getStripeOnboardingLink", "requestStripePayout", "getStripePayoutHistory", "getStripeAccountStatus", "handleStripeWebhook", "listTeamMembers", "acceptInvitation", "inviteTeamMember", "getInvitationByToken", "resendInvitation", "removeTeamMember", "changeTeamMemberRole", "getTrackingPublicKey", "recordTrackingBatch", "getUsageSummary", "getUsageDashboard", "getRateLimitStatus", "getVastConfig", "getVenuesNearby", "getVenueAtmosphere", "getVenueTraffic", "getVenueIntelligence", "listWebhooks", "createWebhook", "deleteWebhook", "updateWebhook", "getWebhookDeliveries", "testWebhook", "playgroundDryRun", "getRequestMetadata"];
|
|
7936
10052
|
};
|
|
7937
10053
|
type GeneratedSchemaName = (typeof generatedTypes.schemas)[number];
|
|
7938
10054
|
type GeneratedOperationName = (typeof generatedTypes.operations)[number];
|
|
7939
10055
|
|
|
7940
|
-
export { type Ad, type AdSettings, type AdvertisingIdentity, type AnalyticsData, type AudienceAnalyticsResponse, type AudienceAttentionPrediction, type AudienceData, type AudienceExportResponse, type AudienceLoyaltyFeaturesRow, type AudienceMetricsResponse, type AudienceSegment, type AudienceSocialAttention, type BatchResult, type BillingInfo, type BleScanResultData, type CanonicalError, type ChangelogEntry, type ChangelogResponse, type CompletedImpressions, type ContentFitSettings, type ContentPreferencesInput, type ContentPreferencesResponse, type ContentPreset, type CreatePartnerSensingRouteRequest, type CreativeClassification, type DashboardResponse, type DataExportSummaryResponse, type DemandPartners, type DemographicsResponse, type Device, type DeviceCapabilityPayload, type DeviceSummary, type DisplaySettingsInput, type DisplaySettingsResponse, type EarnerScreens, type EarningsBreakdownResponse, type EarningsData, type EarningsResponse, type Error, type ErrorCode, type ErrorCodeResponse, type ErrorEntry, type ErrorEnvelope, type ErrorListItem, type ErrorListResponse, type ErrorType, type ExtendedIdentity, type FleetCommand, type FleetCommandEvent, type GeneratedOperationName, type GeneratedSchemaName, type HeaderBiddingSettings, type HttpProbeResult, type HybridError, type Impression, type LegacyCodedError, type LegacyError, type MdnsNetworkDevice, type MeasurementMethodology, type OpenrtbRevenueScreenHourly, type Pagination, type Partner, type PartnerAdDeliveryProfile, type PartnerCreativeWarnings, type PartnerDefaultStream, type PartnerDefaultStreamCreate, type PartnerDefaultStreamUpdate, type PartnerDeviceBatchRegistrationInput, type PartnerDeviceHeartbeatBody, type PartnerDeviceRegistrationInput, type PartnerHeartbeatCommand, type PartnerHeartbeatData, type PartnerHeartbeatMeasurementMetadata, type PartnerHeartbeatQueryData, type PartnerHeartbeatQueryResponse, type PartnerHeartbeatRequest, type PartnerHeartbeatResponse, type PartnerHeartbeatTelemetry, type PartnerLBarContent, type PartnerLBarDisplayPreferences, type PartnerLBarSettings, type PartnerMonetizationRequirements, type PartnerNetworkConfig, type PartnerNetworkConfigUpdate, type PartnerPlay, type PartnerReconciliationReports, type PartnerRegistrationDisplaySettings, type PartnerRequirement, type PartnerSafeHeartbeatTelemetry, type PartnerSelfPromoAd, type PartnerSelfPromoCreate, type PartnerSelfPromoPlacement, type PartnerStats, type PartnerVariants, type PartnerZoneCpmDaily, type PayoutResponse, type PlaygroundResult, type PlaygroundValidationError, type ProgrammaticSettingsInput, type ProgrammaticSettingsResponse, type RequestMetadataResponse, type ResolvedContentPolicy, type ResolvedSensingConfig, type RolePermissions, type SDKConfig, type Screen, type ScreenAnalyticsResponse, type ScreenGroup, type ScreenGroupContentPolicy, type ScreenGroupContentPolicyInput, type ScreenGroupEvent, type ScreenGroupSensingConfig, type ScreenGroupSensingConfigInput, type SensingPerformanceMode, type SensingRoute, type SensingRouteAction, type SensingRouteCondition, type SensingRouteScreenFocusRegion, type SensingSettingsResponse, type SensingThresholdCrossedEvent, type SsdpDeviceInfo, type TeamInviteResponse, type TeamMember, type Transaction, type TrillboardsError, type UpdatePartnerSensingRouteRequest, type VastWaterfall, type VastWaterfallSource, type Webhook, type WebhookDelivery, type WebhookEvent, type WifiEnvironmentSnapshot, type WifiScanResult, type acceptInvitationOperation, type ackDeviceCommandOperation, type addScreenGroupMembersOperation, type applyContentPresetOperation, type batchUpdateContentPreferencesOperation, type batchUpdateDeviceOrientationOperation, type batchUpdateDisplaySettingsOperation, type batchUpdateProgrammaticSettingsOperation, type cancelBillingSubscriptionOperation, type changeTeamMemberRoleOperation, type createAudienceSegmentOperation, type createBillingSubscriptionOperation, type createCreditCheckoutOperation, type createPartnerDefaultStreamImagesOperation, type createPartnerDefaultStreamOperation, type createPartnerDefaultStreamUploadOperation, type createPartnerSelfPromoAdOperation, type createPartnerSelfPromoUploadOperation, type createPartnerSensingRouteOperation, type createSandboxScreenOperation, type createScreenGroupCommandOperation, type createScreenGroupOperation, type createStripeConnectAccountOperation, type createWebhookOperation, type deleteAudienceSegmentOperation, type deleteDeviceOperation, type deletePartnerDefaultStreamOperation, type deletePartnerSensingRouteOperation, type deleteScreenGroupOperation, type deleteWebhookOperation, type deployScreenSensingProfileOperation, type disableSelfPromoAdOperation, type estimateSegmentReachOperation, type exportAudienceDataOperation, type exportDatasetOperation, type exportPartnerAdsByDayOperation, type exportPartnerAnalyticsOperation, type exportProximityGraphEdgesOperation, type generateSandboxEventOperation, type generateSegmentVastTagOperation, generatedTypes, type getActiveSSEConnectionsOperation, type getAdsForDeviceOperation, type getAnalyticsOperation, type getAudienceAnalyticsOperation, type getAudienceContinuityOperation, type getAudienceHeatmapOperation, type getAudienceMetricsOperation, type getAudienceProfileOperation, type getAudienceSegmentOperation, type getAudienceStatsOperation, type getBillingSubscriptionOperation, type getBillingUsageOperation, type getBillingUsageSummaryOperation, type getBleSummaryOperation, type getConnectDashboardOperation, type getConnectEarningsChartOperation, type getConnectScreenHealthOperation, type getContentPerformanceOperation, type getContentPreferencesOperation, type getContentPresetOperation, type getCreativeScenesOperation, type getCrossScreenFlowOperation, type getDashboardOperation, type getDataExportSummaryOperation, type getDeviceHeartbeatOperation, type getDeviceOperation, type getDeviceSuiteSignatureOperation, type getDisplaySettingsOperation, type getEarningsBreakdownOperation, type getEarningsOperation, type getErrorCodeOperation, type getFleetAnalyticsOperation, type getFleetCommandOperation, type getFleetHourlyOperation, type getFleetOverviewOperation, type getGeohashAudiencePanelOperation, type getHaloFunnelOperation, type getIntentCategoryOperation, type getIntentPricingOperation, type getInvitationByTokenOperation, type getLiveAudienceOperation, type getLookalikeScreensOperation, type getLoyaltyClockOperation, type getMeasurementMethodologyJsonOperation, type getMeasurementMethodologyOperation, type getNetworkConfigOperation, type getNetworkSummaryOperation, type getNetworkTrendOperation, type getNetworkTrendsOperation, type getOutcomeAttributionOperation, type getPartnerAnalyticsDashboardOperation, type getPartnerCreativeOperation, type getPartnerInfoOperation, type getPartnerLBarSettingsOperation, type getPartnerScreenAtmosphereOperation, type getPartnerScreenIntelligenceOperation, type getPartnerScreenTasteProfileOperation, type getPartnerScreenTrafficOperation, type getPartnerScreenVASOperation, type getPartnerSensingRouteOperation, type getPricingOperation, type getProgrammaticSettingsOperation, type getProximitySummaryOperation, type getRateLimitStatusOperation, type getRequestMetadataOperation, type getResolvedContentPolicyOperation, type getResolvedHouseholdReachOperation, type getResolvedSensingConfigOperation, type getRevenueAttentionCorrelationOperation, type getSandboxStatusOperation, type getSceneFeedOperation, type getSceneIntelligenceOperation, type getScreenAnalyticsOperation, type getScreenAudienceSegmentsOperation, type getScreenDemographicsOperation, type getScreenGroupAnalyticsOperation, type getScreenGroupContentPolicyOperation, type getScreenGroupOperation, type getScreenGroupSensingConfigOperation, type getScreenSensingChipsOperation, type getScreenSensingSettingsOperation, type getStripeAccountStatusOperation, type getStripeLoginLinkOperation, type getStripeOnboardingLinkOperation, type getStripePayoutHistoryOperation, type getTrackingPublicKeyOperation, type getTransactionsOperation, type getUsageDashboardOperation, type getUsageSummaryOperation, type getVastConfigOperation, type getVenueAtmosphereOperation, type getVenueIntelligenceOperation, type getVenueTrafficOperation, type getVenuesNearbyOperation, type getWebhookDeliveriesOperation, type handleStripeWebhookOperation, type heartbeatOperation, type interpretScreenSensingIntentOperation, type inviteTeamMemberOperation, type listAudienceSegmentsOperation, type listBillingPlansOperation, type listContentPresetsOperation, type listDevicesOperation, type listErrorCodesOperation, type listIntentCategoriesOperation, type listPartnerDefaultStreamsOperation, type listPartnerSelfPromoAdsOperation, type listPartnerSelfPromoPlacementsOperation, type listPartnerSensingRoutesOperation, type listScreenGroupMembersOperation, type listScreenGroupsOperation, type listTeamMembersOperation, type listWebhooksOperation, type matchAudienceSegmentOperation, type partnerDocsBrowserOperation, type partnerPingAuthOperation, type partnerPingOperation, type patchContentPreferencesOperation, type patchDisplaySettingsOperation, type patchNetworkConfigOperation, type patchProgrammaticSettingsOperation, type playgroundDryRunOperation, type predictScreenAudienceOperation, type purchaseCreditsOperation, type pushFleetCommandOperation, type queryChangelogOperation, type quickStartOperation, type reconcileDevicesOperation, type recordImpressionGetOperation, type recordImpressionPostOperation, type recordImpressionsBatchOperation, type recordPartnerPlayOperation, type recordPartnerPlaysBatchOperation, type recordProgrammaticEventLegacyAliasOperation, type recordProgrammaticEventOperation, type recordTrackingBatchOperation, type registerAgentOperation, type registerDeviceOperation, type registerDeviceV2Operation, type registerDevicesBatchOperation, type registerPartnerOperation, type removeScreenGroupMembersOperation, type removeTeamMemberOperation, type reorderPartnerDefaultStreamsOperation, type requestPayoutOperation, type requestStripePayoutOperation, type resendInvitationOperation, type resetSandboxOperation, type resolvePartnerScreenOperation, type rotateApiKeyOperation, type schedulePartnerSelfPromoOperation, type searchCreativeCatalogOperation, type setupBillingOperation, type stripeWebhookCallbackOperation, type submitPartnerCreativeOperation, type subscribeToEventsOperation, type testWebhookOperation, type updateAudienceSegmentOperation, type updateContentPreferencesOperation, type updateDeviceOperation, type updateDisplaySettingsOperation, type updateFleetSettingsOperation, type updateNetworkConfigOperation, type updatePartnerDefaultStreamOperation, type updatePartnerLBarLiveUpdatesOperation, type updatePartnerLBarSettingsOperation, type updatePartnerSensingRouteOperation, type updateProgrammaticSettingsOperation, type updateScreenGroupContentPolicyOperation, type updateScreenGroupOperation, type updateScreenGroupSensingConfigOperation, type updateScreenSensingSettingsOperation, type updateWebhookOperation };
|
|
10056
|
+
export { type Ad, type AdSettings, type AdvertisingIdentity, type AnalyticsData, type AudienceAnalyticsResponse, type AudienceAttentionPrediction, type AudienceData, type AudienceExportResponse, type AudienceLoyaltyFeaturesRow, type AudienceMetricsResponse, type AudienceSegment, type AudienceSocialAttention, type BatchResult, type BillingInfo, type BleScanResultData, type CanonicalError, type ChangelogEntry, type ChangelogResponse, type CompletedImpressions, type ContentFitSettings, type ContentPreferencesInput, type ContentPreferencesResponse, type ContentPreset, type CreatePartnerSensingRouteRequest, type CreativeClassification, type CreativeRewardsReadyEvent, type DashboardResponse, type DataApi_AggregateResponse, type DataApi_Error, type DataApi_ErrorCode, type DataApi_ExampleHealthcheckResponse, type DataApi_FeedbackRewardQuery, type DataApi_LookalikeResponse, type DataApi_QueryDslBody, type DataApi_QueryDslResponse, type DataApi_QueryFilter, type DataApi_QueryOrderBy, type DataApi_ScreenAudienceResponse, type DataApi_ScreenHistoryResponse, type DataApi_ScreensListResponse, type DataApi_SemanticSearchResponse, type DataApi_StatsResponse, type DataApi_StreamResponse, type DataApi_UsageResponse, type DataExportSummaryResponse, type DemandPartners, type DemographicsResponse, type Device, type DeviceAuthRefusal, type DeviceCapabilityPayload, type DeviceSummary, type DisplaySettingsInput, type DisplaySettingsResponse, type EarnerScreens, type EarningsBreakdownResponse, type EarningsData, type EarningsResponse, type EarningsSources, type Error, type ErrorCode, type ErrorCodeResponse, type ErrorEntry, type ErrorEnvelope, type ErrorListItem, type ErrorListResponse, type ErrorType, type ExtendedIdentity, type FeedbackBrand, type FeedbackBrandRequest, type FeedbackBrandResponse, type FeedbackCreateRequest, type FeedbackCreativeReview, type FeedbackExperiment, type FeedbackExperimentDetail, type FeedbackExperimentDetailResponse, type FeedbackExperimentResponse, type FeedbackGenerateRequest, type FeedbackGenerateResponse, type FeedbackGeneratedCreative, type FeedbackImportRequest, type FeedbackPolicyRequest, type FeedbackRecoveredCreative, type FeedbackRegisterVariantsRequest, type FeedbackReviewRequest, type FeedbackReviewResponse, type FeedbackRewardQuery, type FeedbackRewardRow, type FeedbackRewards, type FeedbackRewardsResponse, type FeedbackStopRequest, type FeedbackVariant, type FleetCommand, type FleetCommandEvent, type GeneratedOperationName, type GeneratedSchemaName, type HeaderBiddingSettings, type HttpProbeResult, type HybridError, type Impression, type LegacyCodedError, type LegacyError, type Mcp_create_media_buy_Args, type Mcp_discover_inventory_Args, type Mcp_get_media_buy_delivery_Args, type Mcp_get_media_buys_Args, type Mcp_get_products_Args, type Mcp_list_accounts_Args, type Mcp_sync_accounts_Args, type Mcp_sync_creatives_Args, type Mcp_update_media_buy_Args, type MdnsNetworkDevice, type MeasurementMethodology, type OpenrtbRevenueScreenHourly, type Pagination, type Partner, type PartnerAdDeliveryProfile, type PartnerCreativeWarnings, type PartnerDefaultStream, type PartnerDefaultStreamCreate, type PartnerDefaultStreamUpdate, type PartnerDeviceBatchRegistrationInput, type PartnerDeviceHeartbeatBody, type PartnerDevicePlay, type PartnerDeviceRegistrationInput, type PartnerHeartbeatCommand, type PartnerHeartbeatData, type PartnerHeartbeatMeasurementMetadata, type PartnerHeartbeatQueryData, type PartnerHeartbeatQueryResponse, type PartnerHeartbeatRequest, type PartnerHeartbeatResponse, type PartnerHeartbeatTelemetry, type PartnerInteraction, type PartnerLBarContent, type PartnerLBarDisplayPreferences, type PartnerLBarSettings, type PartnerLocationCapability, type PartnerLocationRail, type PartnerMonetizationRequirements, type PartnerNetworkConfig, type PartnerNetworkConfigUpdate, type PartnerPlay, type PartnerReconciliationReports, type PartnerRegistrationDisplaySettings, type PartnerRequirement, type PartnerSafeHeartbeatTelemetry, type PartnerSelfPromoAd, type PartnerSelfPromoCreate, type PartnerSelfPromoPlacement, type PartnerStats, type PartnerTripState, type PartnerVariants, type PartnerZoneCpmDaily, type PayoutResponse, type PlaygroundResult, type PlaygroundValidationError, type ProgrammaticSettingsInput, type ProgrammaticSettingsResponse, type RequestMetadataResponse, type ResolvedContentPolicy, type ResolvedSensingConfig, type RolePermissions, type SDKConfig, type Screen, type ScreenAnalyticsResponse, type ScreenGroup, type ScreenGroupContentPolicy, type ScreenGroupContentPolicyInput, type ScreenGroupEvent, type ScreenGroupSensingConfig, type ScreenGroupSensingConfigInput, type SensingPerformanceMode, type SensingRoute, type SensingRouteAction, type SensingRouteCondition, type SensingRouteReviewTimingMode, type SensingRouteReviewWaitSeconds, type SensingRouteScreenFocusRegion, type SensingSettingsResponse, type SensingThresholdCrossedEvent, type SsdpDeviceInfo, type TeamInviteResponse, type TeamMember, type Transaction, type TrillboardsError, type UpdatePartnerSensingRouteRequest, type VastWaterfall, type VastWaterfallSource, type Webhook, type WebhookDelivery, type WebhookEvent, type WifiEnvironmentSnapshot, type WifiScanResult, type acceptInvitationOperation, type ackDeviceCommandOperation, type addScreenGroupMembersOperation, type applyContentPresetOperation, type batchUpdateContentPreferencesOperation, type batchUpdateDeviceOrientationOperation, type batchUpdateDisplaySettingsOperation, type batchUpdateProgrammaticSettingsOperation, type cancelBillingSubscriptionOperation, type changeTeamMemberRoleOperation, type configureCreativeFeedbackBrandOperation, type createAudienceSegmentOperation, type createBillingSubscriptionOperation, type createCreativeFeedbackExperimentOperation, type createCreditCheckoutOperation, type createPartnerDefaultStreamImagesOperation, type createPartnerDefaultStreamOperation, type createPartnerDefaultStreamUploadOperation, type createPartnerSelfPromoAdOperation, type createPartnerSelfPromoUploadOperation, type createPartnerSensingRouteOperation, type createSandboxScreenOperation, type createScreenGroupCommandOperation, type createScreenGroupOperation, type createStripeConnectAccountOperation, type createWebhookOperation, type dataApiAggregateOperation, type dataApiListScreensOperation, type dataApiLookalikeScreensOperation, type dataApiQueryDslOperation, type dataApiScreenAudienceHistoryOperation, type dataApiScreenAudienceLiveOperation, type dataApiSemanticSearchOperation, type dataApiStatsOperation, type dataApiStreamOperation, type dataApiUsageOperation, type deleteAudienceSegmentOperation, type deleteDeviceOperation, type deletePartnerDefaultStreamOperation, type deletePartnerSensingRouteOperation, type deleteScreenGroupOperation, type deleteWebhookOperation, type deployScreenSensingProfileOperation, type disableSelfPromoAdOperation, type estimateSegmentReachOperation, type exampleHealthcheckOperation, type exportAudienceDataOperation, type exportDatasetOperation, type exportPartnerAdsByDayOperation, type exportPartnerAnalyticsOperation, type exportProximityGraphEdgesOperation, type generateCreativeFeedbackCreativeOperation, type generateSandboxEventOperation, type generateSegmentVastTagOperation, generatedTypes, type getActiveSSEConnectionsOperation, type getAdsForDeviceOperation, type getAnalyticsOperation, type getAudienceAnalyticsOperation, type getAudienceContinuityOperation, type getAudienceHeatmapOperation, type getAudienceMetricsOperation, type getAudienceProfileOperation, type getAudienceSegmentOperation, type getAudienceStatsOperation, type getBillingSubscriptionOperation, type getBillingUsageOperation, type getBillingUsageSummaryOperation, type getBleSummaryOperation, type getConnectDashboardOperation, type getConnectEarningsChartOperation, type getConnectScreenHealthOperation, type getContentPerformanceOperation, type getContentPreferencesOperation, type getContentPresetOperation, type getCreativeFeedbackExperimentOperation, type getCreativeFeedbackRewardsOperation, type getCreativeScenesOperation, type getCrossScreenFlowOperation, type getDashboardOperation, type getDataExportSummaryOperation, type getDeviceHeartbeatOperation, type getDeviceOperation, type getDeviceSuiteSignatureOperation, type getDisplaySettingsOperation, type getEarningsBreakdownOperation, type getEarningsOperation, type getErrorCodeOperation, type getFleetAnalyticsOperation, type getFleetCommandOperation, type getFleetHourlyOperation, type getFleetOverviewOperation, type getGeohashAudiencePanelOperation, type getHaloFunnelOperation, type getIntentCategoryOperation, type getIntentPricingOperation, type getInvitationByTokenOperation, type getLiveAudienceOperation, type getLookalikeScreensOperation, type getLoyaltyClockOperation, type getMeasurementMethodologyJsonOperation, type getMeasurementMethodologyOperation, type getNetworkConfigOperation, type getNetworkSummaryOperation, type getNetworkTrendOperation, type getNetworkTrendsOperation, type getOutcomeAttributionOperation, type getPartnerAnalyticsDashboardOperation, type getPartnerCreativeOperation, type getPartnerInfoOperation, type getPartnerLBarSettingsOperation, type getPartnerScreenAtmosphereOperation, type getPartnerScreenIntelligenceOperation, type getPartnerScreenTasteProfileOperation, type getPartnerScreenTrafficOperation, type getPartnerScreenVASOperation, type getPartnerSensingRouteOperation, type getPricingOperation, type getProgrammaticSettingsOperation, type getProximitySummaryOperation, type getRateLimitStatusOperation, type getRequestMetadataOperation, type getResolvedContentPolicyOperation, type getResolvedHouseholdReachOperation, type getResolvedSensingConfigOperation, type getRevenueAttentionCorrelationOperation, type getSandboxStatusOperation, type getSceneFeedOperation, type getSceneIntelligenceOperation, type getScreenAnalyticsOperation, type getScreenAudienceSegmentsOperation, type getScreenDemographicsOperation, type getScreenGroupAnalyticsOperation, type getScreenGroupContentPolicyOperation, type getScreenGroupOperation, type getScreenGroupSensingConfigOperation, type getScreenSensingChipsOperation, type getScreenSensingSettingsOperation, type getStripeAccountStatusOperation, type getStripeLoginLinkOperation, type getStripeOnboardingLinkOperation, type getStripePayoutHistoryOperation, type getTrackingPublicKeyOperation, type getTransactionsOperation, type getUsageDashboardOperation, type getUsageSummaryOperation, type getVastConfigOperation, type getVenueAtmosphereOperation, type getVenueIntelligenceOperation, type getVenueTrafficOperation, type getVenuesNearbyOperation, type getWebhookDeliveriesOperation, type handleStripeWebhookOperation, type heartbeatOperation, type importCreativeFeedbackCreativeOperation, type interpretScreenSensingIntentOperation, type inviteTeamMemberOperation, type listAudienceSegmentsOperation, type listBillingPlansOperation, type listContentPresetsOperation, type listDevicesOperation, type listErrorCodesOperation, type listIntentCategoriesOperation, type listPartnerDefaultStreamsOperation, type listPartnerSelfPromoAdsOperation, type listPartnerSelfPromoPlacementsOperation, type listPartnerSensingRoutesOperation, type listScreenGroupMembersOperation, type listScreenGroupsOperation, type listTeamMembersOperation, type listWebhooksOperation, type matchAudienceSegmentOperation, type partnerDocsBrowserOperation, type partnerPingAuthOperation, type partnerPingOperation, type patchContentPreferencesOperation, type patchDisplaySettingsOperation, type patchNetworkConfigOperation, type patchProgrammaticSettingsOperation, type playgroundDryRunOperation, type predictScreenAudienceOperation, type purchaseCreditsOperation, type pushFleetCommandOperation, type queryChangelogOperation, type quickStartOperation, type reconcileDevicesOperation, type recordImpressionGetOperation, type recordImpressionPostOperation, type recordImpressionsBatchOperation, type recordPartnerDeviceInteractionOperation, type recordPartnerDevicePlayOperation, type recordPartnerDeviceTripStateOperation, type recordPartnerPlayOperation, type recordPartnerPlaysBatchOperation, type recordProgrammaticEventLegacyAliasOperation, type recordProgrammaticEventOperation, type recordTrackingBatchOperation, type registerAgentOperation, type registerCreativeFeedbackVariantsOperation, type registerDeviceOperation, type registerDeviceV2Operation, type registerDevicesBatchOperation, type registerPartnerOperation, type removeScreenGroupMembersOperation, type removeTeamMemberOperation, type reorderPartnerDefaultStreamsOperation, type requestPayoutOperation, type requestStripePayoutOperation, type resendInvitationOperation, type resetSandboxOperation, type resolvePartnerScreenOperation, type reviewCreativeFeedbackCreativeOperation, type rotateApiKeyOperation, type schedulePartnerSelfPromoOperation, type searchCreativeCatalogOperation, type setupBillingOperation, type stopCreativeFeedbackExperimentOperation, type stripeWebhookCallbackOperation, type submitPartnerCreativeOperation, type subscribeToEventsOperation, type testWebhookOperation, type updateAudienceSegmentOperation, type updateContentPreferencesOperation, type updateCreativeFeedbackPolicyOperation, type updateDeviceOperation, type updateDisplaySettingsOperation, type updateFleetSettingsOperation, type updateNetworkConfigOperation, type updatePartnerDefaultStreamOperation, type updatePartnerLBarLiveUpdatesOperation, type updatePartnerLBarSettingsOperation, type updatePartnerSensingRouteOperation, type updateProgrammaticSettingsOperation, type updateScreenGroupContentPolicyOperation, type updateScreenGroupOperation, type updateScreenGroupSensingConfigOperation, type updateScreenSensingSettingsOperation, type updateWebhookOperation };
|