@trillboards/api-client 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -341,22 +341,26 @@ declare class EarningsClient {
341
341
  }
342
342
 
343
343
  /**
344
- * ErrorsClient — query the partner error log.
344
+ * ErrorsClient — access the public error catalog and query partner errors.
345
345
  *
346
- * Base path: /v1/partner
346
+ * list() hits /v1/errors (public, no auth required).
347
+ * get() hits /v1/partner/usage (authenticated, partner-scoped).
347
348
  */
348
349
 
349
350
  declare class ErrorsClient {
350
351
  private readonly http;
351
352
  constructor(http: HttpClient);
352
- /** List recent errors for this partner. */
353
+ /**
354
+ * List all known API error codes from the public error catalog.
355
+ * This endpoint does NOT require authentication.
356
+ */
353
357
  list(params?: {
354
358
  limit?: number;
355
359
  offset?: number;
356
360
  code?: string;
357
361
  type?: string;
358
362
  }): Promise<ListResponse<ErrorEntry>>;
359
- /** Get a single error by request_id. */
363
+ /** Get a single error by request_id (requires authentication). */
360
364
  get(requestId: string): Promise<{
361
365
  success: boolean;
362
366
  data: ErrorEntry;
@@ -635,8 +639,391 @@ declare const Webhooks: {
635
639
  * SDK version constant. Sent in User-Agent and X-Trillboards-Client headers.
636
640
  * Keep in sync with package.json version.
637
641
  */
638
- declare const VERSION = "0.1.2";
642
+ declare const VERSION = "0.1.3";
639
643
 
640
- declare const generatedTypes: {};
644
+ type BleScanResultData = {
645
+ appleContinuitySubtype?: number | null;
646
+ deviceType?: number | null;
647
+ ibeaconMajor?: number | null;
648
+ ibeaconMinor?: number | null;
649
+ ibeaconUuid?: string | null;
650
+ manufacturerCompanyId?: number | null;
651
+ rawAddress: string;
652
+ rssi: number;
653
+ serviceUuids?: Array<string> | null;
654
+ stableManufacturerPayloadHex?: string | null;
655
+ txPowerDbm?: number | null;
656
+ [key: string]: unknown;
657
+ };
658
+ type DeviceCapabilityPayload = {
659
+ agentType?: string | null;
660
+ agentVersion?: string | null;
661
+ audienceSensing?: {
662
+ cameraAvailable?: boolean | null;
663
+ cameraCount?: number | null;
664
+ cameraHealth?: {
665
+ lastFailureClass?: string | null;
666
+ lastFailureMessage?: string | null;
667
+ lastFrameAtMs?: number | null;
668
+ retryCount?: number | null;
669
+ state?: string | null;
670
+ [key: string]: unknown;
671
+ } | null;
672
+ cameraType?: string | null;
673
+ microphoneAvailable?: boolean | null;
674
+ sensingMode?: string | null;
675
+ [key: string]: unknown;
676
+ } | null;
677
+ audioControl?: {
678
+ mute?: boolean | null;
679
+ volume?: boolean | null;
680
+ [key: string]: unknown;
681
+ } | null;
682
+ capabilitiesVersion?: number | null;
683
+ environmentSensors?: {
684
+ ambientLight?: boolean | null;
685
+ temperature?: boolean | null;
686
+ [key: string]: unknown;
687
+ } | null;
688
+ inputControl?: {
689
+ appSwitch?: boolean | null;
690
+ hdmi?: boolean | null;
691
+ [key: string]: unknown;
692
+ } | null;
693
+ isDeviceOwner?: boolean | null;
694
+ managementCapabilities?: {
695
+ clearCache?: boolean | null;
696
+ installApk?: boolean | null;
697
+ kioskMode?: boolean | null;
698
+ reboot?: boolean | null;
699
+ restart?: boolean | null;
700
+ screenshot?: boolean | null;
701
+ wipe?: boolean | null;
702
+ [key: string]: unknown;
703
+ } | null;
704
+ mlCapabilities?: {
705
+ availableRamMb?: number | null;
706
+ chipsetName?: string | null;
707
+ chipsetVendor?: string | null;
708
+ cpuAbi?: string | null;
709
+ densityDpi?: number | null;
710
+ gpuDelegateSupported?: boolean | null;
711
+ gpuName?: string | null;
712
+ hasNpu?: boolean | null;
713
+ maxVlmSizeMb?: number | null;
714
+ nnapiSupported?: boolean | null;
715
+ npuName?: string | null;
716
+ osApiLevel?: number | null;
717
+ recommendedModelTier?: string | null;
718
+ screenHeightPx?: number | null;
719
+ screenWidthPx?: number | null;
720
+ totalRamMb?: number | null;
721
+ [key: string]: unknown;
722
+ } | null;
723
+ powerControl?: {
724
+ cec?: boolean | null;
725
+ softBlackout?: boolean | null;
726
+ wol?: boolean | null;
727
+ [key: string]: unknown;
728
+ } | null;
729
+ wifiCsiSensing?: {
730
+ csiAvailable?: boolean | null;
731
+ csiHardwareType?: string | null;
732
+ csiNodeCount?: number | null;
733
+ [key: string]: unknown;
734
+ } | null;
735
+ [key: string]: unknown;
736
+ };
737
+ type HttpProbeResult = {
738
+ host: string;
739
+ port?: number | null;
740
+ server?: string | null;
741
+ [key: string]: unknown;
742
+ };
743
+ type MdnsNetworkDevice = {
744
+ host?: string | null;
745
+ instanceName: string;
746
+ mdnsModel?: string | null;
747
+ mdnsSoftwareVersion?: string | null;
748
+ mdnsVendor?: string | null;
749
+ port?: number | null;
750
+ serviceType: string;
751
+ [key: string]: unknown;
752
+ };
753
+ type PartnerAdDeliveryProfile = {
754
+ android_api_level?: number | null;
755
+ auto_recovery_enabled?: boolean;
756
+ ima_integration?: "android_native" | "html5_webview" | "disabled" | "unknown";
757
+ mode?: "ima_sdk" | "vast_fallback";
758
+ notes?: Array<string>;
759
+ reason?: string;
760
+ webview_chromium_major?: number | null;
761
+ };
762
+ /**
763
+ * Heartbeat payload from agent-core / agent-core-lite Android partner
764
+ * SDKs. Only includes fields verified populated in production
765
+ * `signal_observations` (last 30 days). Stub fields wired in Kotlin but
766
+ * never observed in CH are intentionally excluded; re-add only after
767
+ * telemetry confirms >1% population over 7 days.
768
+ *
769
+ */
770
+ type PartnerDeviceHeartbeatBody = {
771
+ advertisingId?: string | null;
772
+ advertisingIdType?: "gaid" | "idfa" | null | null;
773
+ bleDeviceCount?: number;
774
+ capabilities?: DeviceCapabilityPayload;
775
+ discoveredNetworkDevices?: Array<MdnsNetworkDevice> | null;
776
+ fingerprint?: string;
777
+ gatewayIpHash?: string | null;
778
+ httpProbes?: Array<HttpProbeResult> | null;
779
+ limitAdTracking?: boolean | null;
780
+ metadata?: Record<string, unknown>;
781
+ /** Capped at 50 devices (RSSI-sorted, strongest first). */
782
+ nearbyBleDevices?: Array<BleScanResultData> | null;
783
+ nearbyWifiNetworks?: Array<WifiScanResult> | null;
784
+ networkDeviceCount?: number;
785
+ /** Heartbeat schema version (1=baseline, 2=nativeSensorSnapshot) */
786
+ schemaVersion?: number;
787
+ screenId?: string | null;
788
+ /** Per-source skip-reason counter map. Shape `{source: {reason: count}}`. */
789
+ skipReasonCounts?: Record<string, Record<string, number>>;
790
+ ssdpDevices?: Array<SsdpDeviceInfo> | null;
791
+ status?: string;
792
+ wifiBssidHash?: string | null;
793
+ wifiEnvironment?: WifiEnvironmentSnapshot;
794
+ wifiNetworkCount?: number;
795
+ wifiSsidHash?: string | null;
796
+ [key: string]: unknown;
797
+ };
798
+ type PartnerHeartbeatCommand = {
799
+ /** Command normalized for partner SDK compatibility. */
800
+ command?: string;
801
+ id?: string;
802
+ payload?: Record<string, unknown>;
803
+ queued_at?: string;
804
+ };
805
+ type PartnerHeartbeatData = {
806
+ ad_delivery_profile?: PartnerAdDeliveryProfile;
807
+ commands?: Array<PartnerHeartbeatCommand>;
808
+ last_seen_at?: string;
809
+ status?: "online" | "offline";
810
+ };
811
+ type PartnerHeartbeatMeasurementMetadata = {
812
+ ageSeconds?: number | null;
813
+ cachedAt?: string | null;
814
+ receivedAt?: string | null;
815
+ source?: "redis_twin" | "pg_fallback" | "unknown";
816
+ [key: string]: unknown;
817
+ };
818
+ type PartnerHeartbeatQueryData = {
819
+ adDeliveryProfile?: PartnerAdDeliveryProfile;
820
+ deviceId: string;
821
+ lastHeartbeatAt?: string | null;
822
+ measurementMetadata?: PartnerHeartbeatMeasurementMetadata;
823
+ stalenessSeconds?: number | null;
824
+ telemetry?: PartnerSafeHeartbeatTelemetry;
825
+ [key: string]: unknown;
826
+ };
827
+ type PartnerHeartbeatQueryResponse = {
828
+ data?: PartnerHeartbeatQueryData;
829
+ success?: boolean;
830
+ };
831
+ /**
832
+ * Optional heartbeat payload. Nested telemetry objects are preferred; legacy flat keys
833
+ * are still accepted for backward compatibility.
834
+ *
835
+ */
836
+ type PartnerHeartbeatRequest = {
837
+ ad?: {
838
+ last_vast_request_at?: string;
839
+ last_vast_response_at?: string;
840
+ proof_of_play_enabled?: boolean;
841
+ };
842
+ agent_status?: string;
843
+ agent_version?: string;
844
+ android_api_level?: number;
845
+ brightness?: number;
846
+ desugaring_enabled?: boolean;
847
+ device?: {
848
+ android_api_level?: number;
849
+ make?: string;
850
+ model?: string;
851
+ os?: string;
852
+ osv?: string;
853
+ webview_chromium_major?: number;
854
+ };
855
+ ima_integration?: "android_native" | "html5_webview" | "disabled" | "unknown";
856
+ ima_sdk_version?: string;
857
+ ima_support_reason?: string;
858
+ ima_supported?: boolean;
859
+ input_source?: string;
860
+ last_ima_error_code?: number;
861
+ last_vast_error_code?: number;
862
+ last_vast_request_at?: string;
863
+ last_vast_response_at?: string;
864
+ /** Alternate namespace for telemetry keys (legacy support). */
865
+ metadata?: Record<string, unknown>;
866
+ muted?: boolean;
867
+ network?: {
868
+ bandwidthMbps?: number;
869
+ connectionType?: string;
870
+ downlinkMbps?: number;
871
+ effectiveType?: string;
872
+ latencyRtt?: number;
873
+ rtt?: number;
874
+ saveData?: boolean;
875
+ };
876
+ network_strength_dbm?: number;
877
+ power_state?: "on" | "standby" | "off" | "unknown";
878
+ proof_of_play_enabled?: boolean;
879
+ sdk?: {
880
+ android_api_level?: number;
881
+ desugaring_enabled?: boolean;
882
+ ima_integration?: "android_native" | "html5_webview" | "disabled" | "unknown";
883
+ ima_sdk_version?: string;
884
+ ima_supported?: boolean;
885
+ version?: string;
886
+ webview_chromium_major?: number;
887
+ };
888
+ sdk_version?: string;
889
+ telemetry?: PartnerHeartbeatTelemetry;
890
+ temperature_c?: number;
891
+ uptime_seconds?: number;
892
+ volume?: number;
893
+ webview_chromium_major?: number;
894
+ };
895
+ type PartnerHeartbeatResponse = {
896
+ data?: PartnerHeartbeatData;
897
+ success?: boolean;
898
+ };
899
+ type PartnerHeartbeatTelemetry = {
900
+ agentStatus?: string;
901
+ agentVersion?: string;
902
+ android_api_level?: number;
903
+ bandwidthMbps?: number;
904
+ brightness?: number;
905
+ connectionType?: string;
906
+ desugaring_enabled?: boolean;
907
+ downlinkMbps?: number;
908
+ ima_integration?: "android_native" | "html5_webview" | "disabled" | "unknown";
909
+ ima_sdk_version?: string;
910
+ ima_support_reason?: string;
911
+ ima_supported?: boolean;
912
+ inputSource?: string;
913
+ last_ima_error_code?: number;
914
+ last_vast_error_code?: number;
915
+ last_vast_request_at?: string;
916
+ last_vast_response_at?: string;
917
+ latencyRtt?: number;
918
+ make?: string;
919
+ model?: string;
920
+ muted?: boolean;
921
+ networkConnectionType?: string;
922
+ networkEffectiveType?: string;
923
+ networkStrengthDbm?: number;
924
+ os?: string;
925
+ osVersion?: string;
926
+ osv?: string;
927
+ powerState?: "on" | "standby" | "off" | "unknown";
928
+ proof_of_play_enabled?: boolean;
929
+ rtt?: number;
930
+ saveData?: boolean;
931
+ temperatureC?: number;
932
+ uptimeSeconds?: number;
933
+ volume?: number;
934
+ webview_chromium_major?: number;
935
+ [key: string]: unknown;
936
+ };
937
+ /**
938
+ * Partner-safe subset of device telemetry. Strips MDM compliance,
939
+ * Vertex embeddings, identity-correction internals, partner identifiers,
940
+ * and Mongo `_id` so partners only see what they need to decide
941
+ * whether a device is healthy enough to receive ads.
942
+ *
943
+ */
944
+ type PartnerSafeHeartbeatTelemetry = {
945
+ agentStatus?: string | null;
946
+ agentVersion?: string | null;
947
+ bandwidthMbps?: number | null;
948
+ brightness?: number | null;
949
+ connectionType?: string | null;
950
+ consecutiveAdFailures?: number | null;
951
+ effectiveType?: string | null;
952
+ latencyRtt?: number | null;
953
+ make?: string | null;
954
+ model?: string | null;
955
+ muted?: boolean | null;
956
+ networkStrengthDbm?: number | null;
957
+ onlineStatus?: "online" | "offline" | "standby" | "unknown" | null;
958
+ os?: string | null;
959
+ osv?: string | null;
960
+ powerState?: string | null;
961
+ temperatureC?: number | null;
962
+ ua?: string | null;
963
+ uptimeSeconds?: number | null;
964
+ visibilityState?: string | null;
965
+ volume?: number | null;
966
+ [key: string]: unknown;
967
+ };
968
+ type SsdpDeviceInfo = {
969
+ friendlyName?: string | null;
970
+ location: string;
971
+ manufacturer?: string | null;
972
+ modelName?: string | null;
973
+ server?: string | null;
974
+ st: string;
975
+ udn?: string | null;
976
+ [key: string]: unknown;
977
+ };
978
+ type WifiEnvironmentSnapshot = {
979
+ channelCongestionRatio?: number | null;
980
+ connectedChannelWidthMhz?: number | null;
981
+ connectedFrequencyMhz?: number | null;
982
+ connectedLinkSpeedMbps?: number | null;
983
+ connectedSignalDbm?: number | null;
984
+ frequencyBand?: string | null;
985
+ medianSignalDbm?: number | null;
986
+ networkCount?: number | null;
987
+ rssiVariance?: number | null;
988
+ scanTimestampMs?: number | null;
989
+ signalSpreadDbm?: number | null;
990
+ uniqueBssidCount?: number | null;
991
+ [key: string]: unknown;
992
+ } | null;
993
+ type WifiScanResult = {
994
+ channelWidthMhz?: number | null;
995
+ frequencyMhz: number;
996
+ rawBssid: string;
997
+ signalStrengthDbm: number;
998
+ [key: string]: unknown;
999
+ };
1000
+ /**
1001
+ * Read live device heartbeat state
1002
+ * GET /device/{deviceId}/heartbeat
1003
+ */
1004
+ interface getDeviceHeartbeatOperation {
1005
+ readonly path: "/device/{deviceId}/heartbeat";
1006
+ readonly method: "GET";
1007
+ request: never;
1008
+ response: PartnerHeartbeatQueryResponse;
1009
+ }
1010
+ /**
1011
+ * Device heartbeat
1012
+ * POST /device/{deviceId}/heartbeat
1013
+ */
1014
+ interface heartbeatOperation {
1015
+ readonly path: "/device/{deviceId}/heartbeat";
1016
+ readonly method: "POST";
1017
+ request: PartnerHeartbeatRequest | PartnerDeviceHeartbeatBody;
1018
+ response: PartnerHeartbeatResponse;
1019
+ }
1020
+ declare const generatedTypes: {
1021
+ readonly schemaCount: 67;
1022
+ readonly operationCount: 132;
1023
+ readonly schemas: readonly ["Ad", "AdSettings", "AudienceAnalyticsResponse", "AudienceExportResponse", "AudienceMetricsResponse", "AudienceSegment", "BatchResult", "BleScanResultData", "ChangelogEntry", "ChangelogResponse", "ContentPreferencesInput", "ContentPreferencesResponse", "ContentPreset", "DashboardResponse", "DemographicsResponse", "Device", "DeviceCapabilityPayload", "DeviceSummary", "DisplaySettingsInput", "DisplaySettingsResponse", "EarningsBreakdownResponse", "EarningsResponse", "Error", "HeaderBiddingSettings", "HttpProbeResult", "MdnsNetworkDevice", "Pagination", "Partner", "PartnerAdDeliveryProfile", "PartnerDefaultStream", "PartnerDefaultStreamCreate", "PartnerDefaultStreamUpdate", "PartnerDeviceHeartbeatBody", "PartnerHeartbeatCommand", "PartnerHeartbeatData", "PartnerHeartbeatMeasurementMetadata", "PartnerHeartbeatQueryData", "PartnerHeartbeatQueryResponse", "PartnerHeartbeatRequest", "PartnerHeartbeatResponse", "PartnerHeartbeatTelemetry", "PartnerLBarContent", "PartnerLBarDisplayPreferences", "PartnerLBarSettings", "PartnerSafeHeartbeatTelemetry", "PartnerSelfPromoAd", "PartnerSelfPromoCreate", "PartnerSelfPromoPlacement", "PartnerStats", "PayoutResponse", "PlaygroundResult", "PlaygroundValidationError", "ProgrammaticSettingsInput", "ProgrammaticSettingsResponse", "RequestMetadataResponse", "RolePermissions", "SDKConfig", "ScreenAnalyticsResponse", "SsdpDeviceInfo", "TeamInviteResponse", "TeamMember", "Transaction", "Webhook", "WebhookDelivery", "WebhookEvent", "WifiEnvironmentSnapshot", "WifiScanResult"];
1024
+ readonly operations: readonly ["listPartnerSelfPromoAds", "createPartnerSelfPromoAd", "listPartnerSelfPromoPlacements", "schedulePartnerSelfPromo", "createPartnerSelfPromoUpload", "disablePartnerSelfPromo", "registerAgent", "getAnalytics", "rotateApiKey", "getAudienceAnalytics", "exportAudienceData", "getAudienceHeatmap", "getLiveAudience", "getLookalikeScreens", "predictScreenAudience", "listAudienceSegments", "createAudienceSegment", "deleteAudienceSegment", "getAudienceSegment", "updateAudienceSegment", "matchAudienceSegment", "estimateSegmentReach", "generateSegmentVastTag", "getAudienceStats", "purchaseCredits", "createCreditCheckout", "setupBilling", "getUsageSummary", "getConnectDashboard", "getConnectEarningsChart", "getConnectScreenHealth", "listContentPresets", "getContentPreset", "getDashboard", "registerDevice", "deleteDevice", "getDevice", "updateDevice", "getAdsForDevice", "ackDeviceCommand", "getDeviceHeartbeat", "heartbeat", "recordProgrammaticEvent", "listDevices", "registerDevicesBatch", "batchUpdateDeviceOrientation", "getEarnings", "getEarningsBreakdown", "requestPayout", "getTransactions", "getActiveSSEConnections", "subscribeToEvents", "getFleetAnalytics", "pushFleetCommand", "getFleetOverview", "updateFleetSettings", "recordImpressionGet", "recordImpressionPost", "recordImpressionsBatch", "getPartnerInfo", "listIntentCategories", "getIntentCategory", "getIntentPricing", "getNetworkConfig", "patchNetworkConfig", "updateNetworkConfig", "recordAdComplete", "getPricing", "quickStart", "registerPartner", "generateSandboxEvent", "resetSandbox", "createSandboxScreen", "getSandboxStatus", "batchUpdateContentPreferences", "batchUpdateDisplaySettings", "batchUpdateProgrammaticSettings", "resolvePartnerScreen", "getScreenAnalytics", "applyContentPreset", "getAudienceMetrics", "getContentPreferences", "patchContentPreferences", "updateContentPreferences", "listPartnerDefaultStreams", "createPartnerDefaultStream", "createPartnerDefaultStreamImages", "reorderPartnerDefaultStreams", "createPartnerDefaultStreamUpload", "deletePartnerDefaultStream", "updatePartnerDefaultStream", "getScreenDemographics", "getDisplaySettings", "patchDisplaySettings", "updateDisplaySettings", "getPartnerLBarSettings", "updatePartnerLBarSettings", "updatePartnerLBarLiveUpdates", "getProgrammaticSettings", "patchProgrammaticSettings", "updateProgrammaticSettings", "createStripeConnectAccount", "getStripeLoginLink", "getStripeOnboardingLink", "requestStripePayout", "getStripePayoutHistory", "getStripeAccountStatus", "handleStripeWebhook", "listTeamMembers", "acceptInvitation", "inviteTeamMember", "getInvitationByToken", "resendInvitation", "removeTeamMember", "changeTeamMemberRole", "getTrackingPublicKey", "recordTrackingBatch", "upgradeToPartner", "getUsageSummary__get__usage", "getUsageDashboard", "getRateLimitStatus", "queryChangelog", "playgroundDryRun", "getRequestMetadata", "getVastConfig", "getVenueIntelligence", "listWebhooks", "createWebhook", "deleteWebhook", "updateWebhook", "getWebhookDeliveries", "testWebhook"];
1025
+ };
1026
+ type GeneratedSchemaName = (typeof generatedTypes.schemas)[number];
1027
+ type GeneratedOperationName = (typeof generatedTypes.operations)[number];
641
1028
 
642
- export { AnalyticsClient, type AnalyticsData, type ApiErrorType, AudienceClient, type AudienceData, BillingClient, type BillingInfo, type ClientOptions, DataClient, type Device, DevicesClient, EarningsClient, type EarningsData, type ErrorDetail, type ErrorEntry, type ErrorResponseBody, ErrorsClient, FleetClient, type FleetCommand, type Impression, ImpressionsClient, type ListResponse, type RequestOptions, type Screen, ScreensClient, TrillboardsClient, TrillboardsError, type TrillboardsErrorOptions, VERSION, type Webhook, type WebhookEvent, Webhooks, WebhooksClient, constructEvent, generatedTypes };
1029
+ export { AnalyticsClient, type AnalyticsData, type ApiErrorType, AudienceClient, type AudienceData, BillingClient, type BillingInfo, type BleScanResultData, type ClientOptions, DataClient, type Device, type DeviceCapabilityPayload, DevicesClient, EarningsClient, type EarningsData, type ErrorDetail, type ErrorEntry, type ErrorResponseBody, ErrorsClient, FleetClient, type FleetCommand, type GeneratedOperationName, type GeneratedSchemaName, type HttpProbeResult, type Impression, ImpressionsClient, type ListResponse, type MdnsNetworkDevice, type PartnerAdDeliveryProfile, type PartnerDeviceHeartbeatBody, type PartnerHeartbeatMeasurementMetadata, type PartnerHeartbeatQueryData, type PartnerHeartbeatQueryResponse, type PartnerHeartbeatRequest, type PartnerHeartbeatResponse, type PartnerSafeHeartbeatTelemetry, type RequestOptions, type Screen, ScreensClient, type SsdpDeviceInfo, TrillboardsClient, TrillboardsError, type TrillboardsErrorOptions, VERSION, type Webhook, type WebhookEvent, Webhooks, WebhooksClient, type WifiEnvironmentSnapshot, type WifiScanResult, constructEvent, generatedTypes, type getDeviceHeartbeatOperation, type heartbeatOperation };
package/dist/index.js CHANGED
@@ -72,7 +72,7 @@ var TrillboardsError = class _TrillboardsError extends Error {
72
72
  };
73
73
 
74
74
  // src/version.ts
75
- var VERSION = "0.1.2";
75
+ var VERSION = "0.1.3";
76
76
 
77
77
  // src/http.ts
78
78
  var PUBLIC_PATHS = ["/v1/errors", "/v1/changelog", "/api/discover", "/v1/health"];
@@ -88,8 +88,9 @@ var HttpClient = class {
88
88
  "User-Agent": `trillboards-typescript/${VERSION}`,
89
89
  ...options?.headers ?? {}
90
90
  };
91
+ const callerSuppliedAuth = Object.keys(options?.headers ?? {}).some((h) => h.toLowerCase() === "authorization");
91
92
  const isPublic = PUBLIC_PATHS.some((prefix) => path.startsWith(prefix));
92
- if (!isPublic && this.config.apiKey) {
93
+ if (!isPublic && this.config.apiKey && !callerSuppliedAuth) {
93
94
  headers["Authorization"] = `Bearer ${this.config.apiKey}`;
94
95
  }
95
96
  if (this.config.version) {
@@ -244,11 +245,14 @@ var ErrorsClient = class {
244
245
  constructor(http) {
245
246
  this.http = http;
246
247
  }
247
- /** List recent errors for this partner. */
248
+ /**
249
+ * List all known API error codes from the public error catalog.
250
+ * This endpoint does NOT require authentication.
251
+ */
248
252
  async list(params) {
249
- return this.http.get("/v1/partner/usage", { params });
253
+ return this.http.get("/v1/errors", { params });
250
254
  }
251
- /** Get a single error by request_id. */
255
+ /** Get a single error by request_id (requires authentication). */
252
256
  async get(requestId) {
253
257
  return this.http.get(`/v1/partner/usage`, {
254
258
  params: { request_id: requestId }
@@ -397,7 +401,12 @@ function constructEvent(payload, signature, secret) {
397
401
  var Webhooks = { constructEvent };
398
402
 
399
403
  // src/generated/index.ts
400
- var generatedTypes = {};
404
+ var generatedTypes = {
405
+ schemaCount: 67,
406
+ operationCount: 132,
407
+ schemas: ["Ad", "AdSettings", "AudienceAnalyticsResponse", "AudienceExportResponse", "AudienceMetricsResponse", "AudienceSegment", "BatchResult", "BleScanResultData", "ChangelogEntry", "ChangelogResponse", "ContentPreferencesInput", "ContentPreferencesResponse", "ContentPreset", "DashboardResponse", "DemographicsResponse", "Device", "DeviceCapabilityPayload", "DeviceSummary", "DisplaySettingsInput", "DisplaySettingsResponse", "EarningsBreakdownResponse", "EarningsResponse", "Error", "HeaderBiddingSettings", "HttpProbeResult", "MdnsNetworkDevice", "Pagination", "Partner", "PartnerAdDeliveryProfile", "PartnerDefaultStream", "PartnerDefaultStreamCreate", "PartnerDefaultStreamUpdate", "PartnerDeviceHeartbeatBody", "PartnerHeartbeatCommand", "PartnerHeartbeatData", "PartnerHeartbeatMeasurementMetadata", "PartnerHeartbeatQueryData", "PartnerHeartbeatQueryResponse", "PartnerHeartbeatRequest", "PartnerHeartbeatResponse", "PartnerHeartbeatTelemetry", "PartnerLBarContent", "PartnerLBarDisplayPreferences", "PartnerLBarSettings", "PartnerSafeHeartbeatTelemetry", "PartnerSelfPromoAd", "PartnerSelfPromoCreate", "PartnerSelfPromoPlacement", "PartnerStats", "PayoutResponse", "PlaygroundResult", "PlaygroundValidationError", "ProgrammaticSettingsInput", "ProgrammaticSettingsResponse", "RequestMetadataResponse", "RolePermissions", "SDKConfig", "ScreenAnalyticsResponse", "SsdpDeviceInfo", "TeamInviteResponse", "TeamMember", "Transaction", "Webhook", "WebhookDelivery", "WebhookEvent", "WifiEnvironmentSnapshot", "WifiScanResult"],
408
+ operations: ["listPartnerSelfPromoAds", "createPartnerSelfPromoAd", "listPartnerSelfPromoPlacements", "schedulePartnerSelfPromo", "createPartnerSelfPromoUpload", "disablePartnerSelfPromo", "registerAgent", "getAnalytics", "rotateApiKey", "getAudienceAnalytics", "exportAudienceData", "getAudienceHeatmap", "getLiveAudience", "getLookalikeScreens", "predictScreenAudience", "listAudienceSegments", "createAudienceSegment", "deleteAudienceSegment", "getAudienceSegment", "updateAudienceSegment", "matchAudienceSegment", "estimateSegmentReach", "generateSegmentVastTag", "getAudienceStats", "purchaseCredits", "createCreditCheckout", "setupBilling", "getUsageSummary", "getConnectDashboard", "getConnectEarningsChart", "getConnectScreenHealth", "listContentPresets", "getContentPreset", "getDashboard", "registerDevice", "deleteDevice", "getDevice", "updateDevice", "getAdsForDevice", "ackDeviceCommand", "getDeviceHeartbeat", "heartbeat", "recordProgrammaticEvent", "listDevices", "registerDevicesBatch", "batchUpdateDeviceOrientation", "getEarnings", "getEarningsBreakdown", "requestPayout", "getTransactions", "getActiveSSEConnections", "subscribeToEvents", "getFleetAnalytics", "pushFleetCommand", "getFleetOverview", "updateFleetSettings", "recordImpressionGet", "recordImpressionPost", "recordImpressionsBatch", "getPartnerInfo", "listIntentCategories", "getIntentCategory", "getIntentPricing", "getNetworkConfig", "patchNetworkConfig", "updateNetworkConfig", "recordAdComplete", "getPricing", "quickStart", "registerPartner", "generateSandboxEvent", "resetSandbox", "createSandboxScreen", "getSandboxStatus", "batchUpdateContentPreferences", "batchUpdateDisplaySettings", "batchUpdateProgrammaticSettings", "resolvePartnerScreen", "getScreenAnalytics", "applyContentPreset", "getAudienceMetrics", "getContentPreferences", "patchContentPreferences", "updateContentPreferences", "listPartnerDefaultStreams", "createPartnerDefaultStream", "createPartnerDefaultStreamImages", "reorderPartnerDefaultStreams", "createPartnerDefaultStreamUpload", "deletePartnerDefaultStream", "updatePartnerDefaultStream", "getScreenDemographics", "getDisplaySettings", "patchDisplaySettings", "updateDisplaySettings", "getPartnerLBarSettings", "updatePartnerLBarSettings", "updatePartnerLBarLiveUpdates", "getProgrammaticSettings", "patchProgrammaticSettings", "updateProgrammaticSettings", "createStripeConnectAccount", "getStripeLoginLink", "getStripeOnboardingLink", "requestStripePayout", "getStripePayoutHistory", "getStripeAccountStatus", "handleStripeWebhook", "listTeamMembers", "acceptInvitation", "inviteTeamMember", "getInvitationByToken", "resendInvitation", "removeTeamMember", "changeTeamMemberRole", "getTrackingPublicKey", "recordTrackingBatch", "upgradeToPartner", "getUsageSummary__get__usage", "getUsageDashboard", "getRateLimitStatus", "queryChangelog", "playgroundDryRun", "getRequestMetadata", "getVastConfig", "getVenueIntelligence", "listWebhooks", "createWebhook", "deleteWebhook", "updateWebhook", "getWebhookDeliveries", "testWebhook"]
409
+ };
401
410
 
402
411
  exports.AnalyticsClient = AnalyticsClient;
403
412
  exports.AudienceClient = AudienceClient;