@itm-studio/partner-sdk 0.2.7 → 0.2.9

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 CHANGED
@@ -67,6 +67,19 @@ The token is sent as the `x-partner-api-key` header on every request. Your brand
67
67
 
68
68
  Keep the partner token on your server. Do not expose it from browser code or client-side mobile code.
69
69
 
70
+ The SDK enforces this boundary and supports Node.js server runtimes only. Imports
71
+ from browsers, React Native, Web or Service Workers, edge runtimes, and Electron
72
+ processes fail before an authenticated client can be created. Send client-side
73
+ requests to your own Node backend, then return only the data the client needs.
74
+
75
+ In Next.js, also mark the module that reads the token as server-only so an
76
+ accidental Client Component import fails during the application build:
77
+
78
+ ```typescript
79
+ import "server-only";
80
+ import { createITMPartnerClient } from "@itm-studio/partner-sdk";
81
+ ```
82
+
70
83
  For request-scoped mutations such as partner brand subscriptions, create the client inside the incoming request and forward `x-forwarded-for` and `user-agent` so the backend can enrich compliance metadata when those fields are omitted from `input.compliance`.
71
84
 
72
85
  ```typescript
@@ -225,6 +238,34 @@ the configured horizon before that tier is eligible.
225
238
 
226
239
  ## Available Queries
227
240
 
241
+ ### `getPartnerBrand`
242
+
243
+ Get details for the brand associated with the partner token. Takes no
244
+ arguments — the brand is resolved from the authenticated token, and the
245
+ response is always non-null.
246
+
247
+ ```typescript
248
+ const { getPartnerBrand } = await itm.query({
249
+ getPartnerBrand: {
250
+ uid: true,
251
+ name: true,
252
+ slug: true,
253
+ bio: true,
254
+ publicUrl: true,
255
+ customDomain: true,
256
+ customDomainVerifiedAt: true,
257
+ spotifyUrl: true,
258
+ youtubeEmbedUrl: true,
259
+ },
260
+ });
261
+ ```
262
+
263
+ - `publicUrl` is the brand's hosted page on ITM.
264
+ - `customDomain` and `customDomainVerifiedAt` describe the brand's white-label
265
+ domain, if one is configured; `customDomainVerifiedAt` is `null` until the
266
+ domain is verified.
267
+ - `bio`, `spotifyUrl`, and `youtubeEmbedUrl` are `null` when unset.
268
+
228
269
  ### `getPartnerMomentsForBrand`
229
270
 
230
271
  Get paginated moments (events) for your brand.
@@ -236,6 +277,7 @@ const { getPartnerMomentsForBrand } = await itm.query({
236
277
  take: 20, // items per page (default: 50, omit to use default)
237
278
  cursor: nextCursor, // from previous response
238
279
  status: "UPCOMING", // UPCOMING | LIVE | ENDED
280
+ filters: { includePrivate: true }, // include private moments owned by your brand
239
281
  sortOrder: "ASC", // ASC | DESC by start date (default: DESC)
240
282
  },
241
283
  moments: { uid: true, name: true, startDate: true },
@@ -246,6 +288,11 @@ const { getPartnerMomentsForBrand } = await itm.query({
246
288
  });
247
289
  ```
248
290
 
291
+ By default, only public moments are returned. Set
292
+ `filters.includePrivate` to `true` to return both public and private moments
293
+ owned by the brand associated with the partner token. Omitting `filters`, or
294
+ setting `includePrivate` to `false`, preserves the public-only behavior.
295
+
249
296
  ### `getPartnerDrops`
250
297
 
251
298
  Get paginated brand drops for the brand associated with your partner token.
@@ -421,6 +468,59 @@ const { getPartnerMomentStats } = await itm.query({
421
468
 
422
469
  > **Note:** `getPartnerMomentStats` returns `null` if the moment does not exist or is not owned by the authenticated partner's brand.
423
470
 
471
+ ### `getPartnerMomentAttendanceStats`
472
+
473
+ Get a cached attendance snapshot for a moment owned by the authenticated
474
+ partner's brand. Counts can be up to five minutes old; `generatedAt` reports
475
+ when the snapshot was produced.
476
+
477
+ Look up the moment by exactly one of:
478
+
479
+ - `momentUid` — the ITM moment UID
480
+ - `momentSlug` — the ITM moment slug
481
+ - `externalPlatform` + `externalId` — the source-platform identifier for
482
+ imported events (for example `EVENTBRITE`); the two must be provided together
483
+
484
+ ```typescript
485
+ const { getPartnerMomentAttendanceStats } = await itm.query({
486
+ getPartnerMomentAttendanceStats: {
487
+ __args: {
488
+ input: { externalPlatform: "EVENTBRITE", externalId: "1234567890" },
489
+ },
490
+ momentUid: true,
491
+ momentSlug: true,
492
+ generatedAt: true,
493
+ tickets: {
494
+ total: true,
495
+ checkedIn: true,
496
+ tiers: {
497
+ tierUid: true,
498
+ name: true,
499
+ label: true,
500
+ total: true,
501
+ checkedIn: true,
502
+ },
503
+ },
504
+ guestlist: {
505
+ total: true,
506
+ checkedIn: true,
507
+ unlabeled: { total: true, checkedIn: true },
508
+ labels: { labelUid: true, name: true, total: true, checkedIn: true },
509
+ },
510
+ },
511
+ });
512
+ ```
513
+
514
+ - `tickets` counts confirmed tickets, overall and per ticket tier.
515
+ - `guestlist` counts guest-list entries, split into `unlabeled` and per-label
516
+ buckets.
517
+
518
+ > **Note:** Returns `null` if no moment matches the lookup or the moment is not
519
+ > owned by the authenticated partner's brand. The request fails with a
520
+ > validation error when an identifier is an empty string, when
521
+ > `externalPlatform` and `externalId` are not provided together, when more than
522
+ > one lookup key is given, or when an external ID matches multiple moments.
523
+
424
524
  ### `getPartnerTicketTiersForMoment`
425
525
 
426
526
  Get paginated, partner-facing ticket tiers for a moment. Use this for pricing,
package/dist/index.d.mts CHANGED
@@ -216,6 +216,48 @@ interface PartnerMomentStats {
216
216
  ticketRsvpRequestsCount: Scalars['Int'];
217
217
  __typename: 'PartnerMomentStats';
218
218
  }
219
+ interface PartnerMomentAttendanceCount {
220
+ total: Scalars['Int'];
221
+ checkedIn: Scalars['Int'];
222
+ __typename: 'PartnerMomentAttendanceCount';
223
+ }
224
+ interface PartnerMomentTicketTierAttendance {
225
+ total: Scalars['Int'];
226
+ checkedIn: Scalars['Int'];
227
+ tierUid: Scalars['String'];
228
+ name: Scalars['String'];
229
+ label: (Scalars['String'] | null);
230
+ __typename: 'PartnerMomentTicketTierAttendance';
231
+ }
232
+ interface PartnerMomentTicketAttendance {
233
+ total: Scalars['Int'];
234
+ checkedIn: Scalars['Int'];
235
+ tiers: PartnerMomentTicketTierAttendance[];
236
+ __typename: 'PartnerMomentTicketAttendance';
237
+ }
238
+ interface PartnerMomentGuestlistLabelAttendance {
239
+ total: Scalars['Int'];
240
+ checkedIn: Scalars['Int'];
241
+ labelUid: Scalars['String'];
242
+ name: Scalars['String'];
243
+ __typename: 'PartnerMomentGuestlistLabelAttendance';
244
+ }
245
+ interface PartnerMomentGuestlistAttendance {
246
+ total: Scalars['Int'];
247
+ checkedIn: Scalars['Int'];
248
+ unlabeled: PartnerMomentAttendanceCount;
249
+ labels: PartnerMomentGuestlistLabelAttendance[];
250
+ __typename: 'PartnerMomentGuestlistAttendance';
251
+ }
252
+ interface PartnerMomentAttendanceStats {
253
+ momentUid: Scalars['String'];
254
+ momentSlug: Scalars['String'];
255
+ generatedAt: Scalars['DateTime'];
256
+ tickets: PartnerMomentTicketAttendance;
257
+ guestlist: PartnerMomentGuestlistAttendance;
258
+ __typename: 'PartnerMomentAttendanceStats';
259
+ }
260
+ type EventImportPlatform = 'EVENTBRITE';
219
261
  interface MomentCollectionLink {
220
262
  uid: Scalars['ID'];
221
263
  url: Scalars['String'];
@@ -547,6 +589,12 @@ interface Query {
547
589
  * Only returns stats for moments owned by the authenticated partner's brand.
548
590
  */
549
591
  getPartnerMomentStats: (PartnerMomentStats | null);
592
+ /**
593
+ * Get a cached attendance snapshot for a partner-owned moment; counts can be
594
+ * up to five minutes old. Look up by exactly one of momentUid, momentSlug, or
595
+ * externalPlatform with externalId. Returns null when no owned moment matches.
596
+ */
597
+ getPartnerMomentAttendanceStats: (PartnerMomentAttendanceStats | null);
550
598
  /** Get paginated tickets for a moment. */
551
599
  getPartnerTicketsForMoment: GetTicketsResponse;
552
600
  /**
@@ -858,6 +906,63 @@ interface PartnerMomentStatsGenqlSelection {
858
906
  __typename?: boolean | number;
859
907
  __scalar?: boolean | number;
860
908
  }
909
+ interface PartnerMomentAttendanceCountGenqlSelection {
910
+ total?: boolean | number;
911
+ checkedIn?: boolean | number;
912
+ __typename?: boolean | number;
913
+ __scalar?: boolean | number;
914
+ }
915
+ interface PartnerMomentTicketTierAttendanceGenqlSelection {
916
+ total?: boolean | number;
917
+ checkedIn?: boolean | number;
918
+ tierUid?: boolean | number;
919
+ name?: boolean | number;
920
+ label?: boolean | number;
921
+ __typename?: boolean | number;
922
+ __scalar?: boolean | number;
923
+ }
924
+ interface PartnerMomentTicketAttendanceGenqlSelection {
925
+ total?: boolean | number;
926
+ checkedIn?: boolean | number;
927
+ tiers?: PartnerMomentTicketTierAttendanceGenqlSelection;
928
+ __typename?: boolean | number;
929
+ __scalar?: boolean | number;
930
+ }
931
+ interface PartnerMomentGuestlistLabelAttendanceGenqlSelection {
932
+ total?: boolean | number;
933
+ checkedIn?: boolean | number;
934
+ labelUid?: boolean | number;
935
+ name?: boolean | number;
936
+ __typename?: boolean | number;
937
+ __scalar?: boolean | number;
938
+ }
939
+ interface PartnerMomentGuestlistAttendanceGenqlSelection {
940
+ total?: boolean | number;
941
+ checkedIn?: boolean | number;
942
+ unlabeled?: PartnerMomentAttendanceCountGenqlSelection;
943
+ labels?: PartnerMomentGuestlistLabelAttendanceGenqlSelection;
944
+ __typename?: boolean | number;
945
+ __scalar?: boolean | number;
946
+ }
947
+ interface PartnerMomentAttendanceStatsGenqlSelection {
948
+ momentUid?: boolean | number;
949
+ momentSlug?: boolean | number;
950
+ generatedAt?: boolean | number;
951
+ tickets?: PartnerMomentTicketAttendanceGenqlSelection;
952
+ guestlist?: PartnerMomentGuestlistAttendanceGenqlSelection;
953
+ __typename?: boolean | number;
954
+ __scalar?: boolean | number;
955
+ }
956
+ interface PartnerMomentAttendanceLookupInput {
957
+ /** ITM moment UID. Provide exactly one of momentUid, momentSlug, or externalPlatform with externalId. */
958
+ momentUid?: (Scalars['String'] | null);
959
+ /** ITM moment slug. Provide exactly one of momentUid, momentSlug, or externalPlatform with externalId. */
960
+ momentSlug?: (Scalars['String'] | null);
961
+ /** Source platform for externalId, for example EVENTBRITE. */
962
+ externalPlatform?: (EventImportPlatform | null);
963
+ /** Opaque source-platform event ID. Must be provided together with externalPlatform. */
964
+ externalId?: (Scalars['String'] | null);
965
+ }
861
966
  interface MomentCollectionLinkGenqlSelection {
862
967
  uid?: boolean | number;
863
968
  url?: boolean | number;
@@ -1197,6 +1302,10 @@ interface MomentLineupResponseResultGenqlSelection {
1197
1302
  __typename?: boolean | number;
1198
1303
  __scalar?: boolean | number;
1199
1304
  }
1305
+ interface PartnerMomentsFiltersInput {
1306
+ /** When true, includes private moments owned by the authenticated brand. Default: false. */
1307
+ includePrivate?: (Scalars['Boolean'] | null);
1308
+ }
1200
1309
  interface QueryGenqlSelection {
1201
1310
  /** Get details for the brand associated with the partner token. */
1202
1311
  getPartnerBrand?: PartnerBrandGenqlSelection;
@@ -1207,6 +1316,7 @@ interface QueryGenqlSelection {
1207
1316
  cursor?: (Scalars['String'] | null);
1208
1317
  take?: (Scalars['Int'] | null);
1209
1318
  status?: (MomentStatus | null);
1319
+ filters?: (PartnerMomentsFiltersInput | null);
1210
1320
  /** Sort order for moments by start date (default: DESC - newest to oldest) */
1211
1321
  sortOrder?: (MomentSortOrder | null);
1212
1322
  };
@@ -1238,6 +1348,16 @@ interface QueryGenqlSelection {
1238
1348
  momentSlug: Scalars['String'];
1239
1349
  };
1240
1350
  });
1351
+ /**
1352
+ * Get a cached attendance snapshot for a partner-owned moment; counts can be
1353
+ * up to five minutes old. Look up by exactly one of momentUid, momentSlug, or
1354
+ * externalPlatform with externalId. Returns null when no owned moment matches.
1355
+ */
1356
+ getPartnerMomentAttendanceStats?: (PartnerMomentAttendanceStatsGenqlSelection & {
1357
+ __args: {
1358
+ input: PartnerMomentAttendanceLookupInput;
1359
+ };
1360
+ });
1241
1361
  /** Get paginated tickets for a moment. */
1242
1362
  getPartnerTicketsForMoment?: (GetTicketsResponseGenqlSelection & {
1243
1363
  __args: {
@@ -1778,4 +1898,4 @@ type ITMPartnerClient = Client;
1778
1898
  */
1779
1899
  declare function createITMPartnerClient(config: ITMPartnerClientConfig): ITMPartnerClient;
1780
1900
 
1781
- export { type ApplyDynamicPricingInput, type BrandDrop, type BrandDropCtaType, type BrandDropMusicLink, type BrandSubscription, type CreateMomentOnlineConfigInput, type CreatePartnerBrandSubscriptionInput, type CreatePartnerBrandSubscriptionResponse, type CreatePartnerMomentInput, type CreatePartnerTicketTierInput, type Currency, DEFAULT_API_URL, type Dimensions, type DimensionsInput, type DynamicPricingActorType, type DynamicPricingAdmissionWindow, type DynamicPricingBatch, type DynamicPricingBatchEvent, type DynamicPricingBatchEventType, type DynamicPricingBatchItem, type DynamicPricingBatchItemStatus, type DynamicPricingBatchStatus, type DynamicPricingContext, type DynamicPricingExecutionMode, type DynamicPricingInventoryGuardInput, type DynamicPricingInventoryGuardMode, type DynamicPricingInventoryMetric, type DynamicPricingMomentInput, type DynamicPricingTierContext, type DynamicPricingTierUpdateInput, type Echo, type EchoMediaAsset, type EchoType, type EditPartnerTicketTiersForMomentInput, type GetBrandEchoesForUserResponse, type GetMomentLineupsResponse, type GetPartnerCustomersResponse, type GetPartnerDropsResponse, type GetPartnerTicketTiersForMomentInput, type GetPartnerTicketTiersForMomentResponse, type GetPublicMomentsResponse, type GetTicketsResponse, type ITMPartnerClient, type ITMPartnerClientConfig, type ITMPartnerHeaders, type ITMPartnerHeadersObject, type MediaAsset, type MediaAssetUploadUrl, type MerchPurchase, type Moment, type MomentCategory, type MomentCollection, type MomentCollectionLink, type MomentDiscountCodeUsage, type MomentDynamicPricingPolicy, type MomentDynamicPricingTierRule, type MomentLineup, type MomentLineupDisplayLabel, type MomentLineupResponseResult, type MomentLineupStatus, type MomentLineupType, type MomentOnlineProvider, type MomentSortOrder, type MomentStatus, type MomentSubcategory, type MomentType, type MusicReleaseType, type Mutation, type PartnerBrand, type PartnerCustomer, type PartnerMomentStats, type PartnerTicketTier, type PartnerTicketTierUpdateInput, type Payment, type PaymentStatus, type PostSubscriptionEmailInput, type PostSubscriptionMessageInput, type PostSubscriptionPushInput, type PostSubscriptionSmsInput, type PublicMomentLineupInfo, type Query, type RespondToMomentLineupInput, type SubscriptionComplianceInput, type ThirdPartyEchoType, type Ticket, type TicketAdmissionWindowSource, type TicketAttendanceMode, type TicketExtension, type TicketExtensionStatus, type TicketTier, type User, type Venue, type VenueInput, type VerifyPartnerBrandSubscriptionInput, createITMPartnerClient, everything, generateMutationOp, generateQueryOp };
1901
+ export { type ApplyDynamicPricingInput, type BrandDrop, type BrandDropCtaType, type BrandDropMusicLink, type BrandSubscription, type CreateMomentOnlineConfigInput, type CreatePartnerBrandSubscriptionInput, type CreatePartnerBrandSubscriptionResponse, type CreatePartnerMomentInput, type CreatePartnerTicketTierInput, type Currency, DEFAULT_API_URL, type Dimensions, type DimensionsInput, type DynamicPricingActorType, type DynamicPricingAdmissionWindow, type DynamicPricingBatch, type DynamicPricingBatchEvent, type DynamicPricingBatchEventType, type DynamicPricingBatchItem, type DynamicPricingBatchItemStatus, type DynamicPricingBatchStatus, type DynamicPricingContext, type DynamicPricingExecutionMode, type DynamicPricingInventoryGuardInput, type DynamicPricingInventoryGuardMode, type DynamicPricingInventoryMetric, type DynamicPricingMomentInput, type DynamicPricingTierContext, type DynamicPricingTierUpdateInput, type Echo, type EchoMediaAsset, type EchoType, type EditPartnerTicketTiersForMomentInput, type EventImportPlatform, type GetBrandEchoesForUserResponse, type GetMomentLineupsResponse, type GetPartnerCustomersResponse, type GetPartnerDropsResponse, type GetPartnerTicketTiersForMomentInput, type GetPartnerTicketTiersForMomentResponse, type GetPublicMomentsResponse, type GetTicketsResponse, type ITMPartnerClient, type ITMPartnerClientConfig, type ITMPartnerHeaders, type ITMPartnerHeadersObject, type MediaAsset, type MediaAssetUploadUrl, type MerchPurchase, type Moment, type MomentCategory, type MomentCollection, type MomentCollectionLink, type MomentDiscountCodeUsage, type MomentDynamicPricingPolicy, type MomentDynamicPricingTierRule, type MomentLineup, type MomentLineupDisplayLabel, type MomentLineupResponseResult, type MomentLineupStatus, type MomentLineupType, type MomentOnlineProvider, type MomentSortOrder, type MomentStatus, type MomentSubcategory, type MomentType, type MusicReleaseType, type Mutation, type PartnerBrand, type PartnerCustomer, type PartnerMomentAttendanceCount, type PartnerMomentAttendanceLookupInput, type PartnerMomentAttendanceStats, type PartnerMomentGuestlistAttendance, type PartnerMomentGuestlistLabelAttendance, type PartnerMomentStats, type PartnerMomentTicketAttendance, type PartnerMomentTicketTierAttendance, type PartnerMomentsFiltersInput, type PartnerTicketTier, type PartnerTicketTierUpdateInput, type Payment, type PaymentStatus, type PostSubscriptionEmailInput, type PostSubscriptionMessageInput, type PostSubscriptionPushInput, type PostSubscriptionSmsInput, type PublicMomentLineupInfo, type Query, type RespondToMomentLineupInput, type SubscriptionComplianceInput, type ThirdPartyEchoType, type Ticket, type TicketAdmissionWindowSource, type TicketAttendanceMode, type TicketExtension, type TicketExtensionStatus, type TicketTier, type User, type Venue, type VenueInput, type VerifyPartnerBrandSubscriptionInput, createITMPartnerClient, everything, generateMutationOp, generateQueryOp };
package/dist/index.d.ts CHANGED
@@ -216,6 +216,48 @@ interface PartnerMomentStats {
216
216
  ticketRsvpRequestsCount: Scalars['Int'];
217
217
  __typename: 'PartnerMomentStats';
218
218
  }
219
+ interface PartnerMomentAttendanceCount {
220
+ total: Scalars['Int'];
221
+ checkedIn: Scalars['Int'];
222
+ __typename: 'PartnerMomentAttendanceCount';
223
+ }
224
+ interface PartnerMomentTicketTierAttendance {
225
+ total: Scalars['Int'];
226
+ checkedIn: Scalars['Int'];
227
+ tierUid: Scalars['String'];
228
+ name: Scalars['String'];
229
+ label: (Scalars['String'] | null);
230
+ __typename: 'PartnerMomentTicketTierAttendance';
231
+ }
232
+ interface PartnerMomentTicketAttendance {
233
+ total: Scalars['Int'];
234
+ checkedIn: Scalars['Int'];
235
+ tiers: PartnerMomentTicketTierAttendance[];
236
+ __typename: 'PartnerMomentTicketAttendance';
237
+ }
238
+ interface PartnerMomentGuestlistLabelAttendance {
239
+ total: Scalars['Int'];
240
+ checkedIn: Scalars['Int'];
241
+ labelUid: Scalars['String'];
242
+ name: Scalars['String'];
243
+ __typename: 'PartnerMomentGuestlistLabelAttendance';
244
+ }
245
+ interface PartnerMomentGuestlistAttendance {
246
+ total: Scalars['Int'];
247
+ checkedIn: Scalars['Int'];
248
+ unlabeled: PartnerMomentAttendanceCount;
249
+ labels: PartnerMomentGuestlistLabelAttendance[];
250
+ __typename: 'PartnerMomentGuestlistAttendance';
251
+ }
252
+ interface PartnerMomentAttendanceStats {
253
+ momentUid: Scalars['String'];
254
+ momentSlug: Scalars['String'];
255
+ generatedAt: Scalars['DateTime'];
256
+ tickets: PartnerMomentTicketAttendance;
257
+ guestlist: PartnerMomentGuestlistAttendance;
258
+ __typename: 'PartnerMomentAttendanceStats';
259
+ }
260
+ type EventImportPlatform = 'EVENTBRITE';
219
261
  interface MomentCollectionLink {
220
262
  uid: Scalars['ID'];
221
263
  url: Scalars['String'];
@@ -547,6 +589,12 @@ interface Query {
547
589
  * Only returns stats for moments owned by the authenticated partner's brand.
548
590
  */
549
591
  getPartnerMomentStats: (PartnerMomentStats | null);
592
+ /**
593
+ * Get a cached attendance snapshot for a partner-owned moment; counts can be
594
+ * up to five minutes old. Look up by exactly one of momentUid, momentSlug, or
595
+ * externalPlatform with externalId. Returns null when no owned moment matches.
596
+ */
597
+ getPartnerMomentAttendanceStats: (PartnerMomentAttendanceStats | null);
550
598
  /** Get paginated tickets for a moment. */
551
599
  getPartnerTicketsForMoment: GetTicketsResponse;
552
600
  /**
@@ -858,6 +906,63 @@ interface PartnerMomentStatsGenqlSelection {
858
906
  __typename?: boolean | number;
859
907
  __scalar?: boolean | number;
860
908
  }
909
+ interface PartnerMomentAttendanceCountGenqlSelection {
910
+ total?: boolean | number;
911
+ checkedIn?: boolean | number;
912
+ __typename?: boolean | number;
913
+ __scalar?: boolean | number;
914
+ }
915
+ interface PartnerMomentTicketTierAttendanceGenqlSelection {
916
+ total?: boolean | number;
917
+ checkedIn?: boolean | number;
918
+ tierUid?: boolean | number;
919
+ name?: boolean | number;
920
+ label?: boolean | number;
921
+ __typename?: boolean | number;
922
+ __scalar?: boolean | number;
923
+ }
924
+ interface PartnerMomentTicketAttendanceGenqlSelection {
925
+ total?: boolean | number;
926
+ checkedIn?: boolean | number;
927
+ tiers?: PartnerMomentTicketTierAttendanceGenqlSelection;
928
+ __typename?: boolean | number;
929
+ __scalar?: boolean | number;
930
+ }
931
+ interface PartnerMomentGuestlistLabelAttendanceGenqlSelection {
932
+ total?: boolean | number;
933
+ checkedIn?: boolean | number;
934
+ labelUid?: boolean | number;
935
+ name?: boolean | number;
936
+ __typename?: boolean | number;
937
+ __scalar?: boolean | number;
938
+ }
939
+ interface PartnerMomentGuestlistAttendanceGenqlSelection {
940
+ total?: boolean | number;
941
+ checkedIn?: boolean | number;
942
+ unlabeled?: PartnerMomentAttendanceCountGenqlSelection;
943
+ labels?: PartnerMomentGuestlistLabelAttendanceGenqlSelection;
944
+ __typename?: boolean | number;
945
+ __scalar?: boolean | number;
946
+ }
947
+ interface PartnerMomentAttendanceStatsGenqlSelection {
948
+ momentUid?: boolean | number;
949
+ momentSlug?: boolean | number;
950
+ generatedAt?: boolean | number;
951
+ tickets?: PartnerMomentTicketAttendanceGenqlSelection;
952
+ guestlist?: PartnerMomentGuestlistAttendanceGenqlSelection;
953
+ __typename?: boolean | number;
954
+ __scalar?: boolean | number;
955
+ }
956
+ interface PartnerMomentAttendanceLookupInput {
957
+ /** ITM moment UID. Provide exactly one of momentUid, momentSlug, or externalPlatform with externalId. */
958
+ momentUid?: (Scalars['String'] | null);
959
+ /** ITM moment slug. Provide exactly one of momentUid, momentSlug, or externalPlatform with externalId. */
960
+ momentSlug?: (Scalars['String'] | null);
961
+ /** Source platform for externalId, for example EVENTBRITE. */
962
+ externalPlatform?: (EventImportPlatform | null);
963
+ /** Opaque source-platform event ID. Must be provided together with externalPlatform. */
964
+ externalId?: (Scalars['String'] | null);
965
+ }
861
966
  interface MomentCollectionLinkGenqlSelection {
862
967
  uid?: boolean | number;
863
968
  url?: boolean | number;
@@ -1197,6 +1302,10 @@ interface MomentLineupResponseResultGenqlSelection {
1197
1302
  __typename?: boolean | number;
1198
1303
  __scalar?: boolean | number;
1199
1304
  }
1305
+ interface PartnerMomentsFiltersInput {
1306
+ /** When true, includes private moments owned by the authenticated brand. Default: false. */
1307
+ includePrivate?: (Scalars['Boolean'] | null);
1308
+ }
1200
1309
  interface QueryGenqlSelection {
1201
1310
  /** Get details for the brand associated with the partner token. */
1202
1311
  getPartnerBrand?: PartnerBrandGenqlSelection;
@@ -1207,6 +1316,7 @@ interface QueryGenqlSelection {
1207
1316
  cursor?: (Scalars['String'] | null);
1208
1317
  take?: (Scalars['Int'] | null);
1209
1318
  status?: (MomentStatus | null);
1319
+ filters?: (PartnerMomentsFiltersInput | null);
1210
1320
  /** Sort order for moments by start date (default: DESC - newest to oldest) */
1211
1321
  sortOrder?: (MomentSortOrder | null);
1212
1322
  };
@@ -1238,6 +1348,16 @@ interface QueryGenqlSelection {
1238
1348
  momentSlug: Scalars['String'];
1239
1349
  };
1240
1350
  });
1351
+ /**
1352
+ * Get a cached attendance snapshot for a partner-owned moment; counts can be
1353
+ * up to five minutes old. Look up by exactly one of momentUid, momentSlug, or
1354
+ * externalPlatform with externalId. Returns null when no owned moment matches.
1355
+ */
1356
+ getPartnerMomentAttendanceStats?: (PartnerMomentAttendanceStatsGenqlSelection & {
1357
+ __args: {
1358
+ input: PartnerMomentAttendanceLookupInput;
1359
+ };
1360
+ });
1241
1361
  /** Get paginated tickets for a moment. */
1242
1362
  getPartnerTicketsForMoment?: (GetTicketsResponseGenqlSelection & {
1243
1363
  __args: {
@@ -1778,4 +1898,4 @@ type ITMPartnerClient = Client;
1778
1898
  */
1779
1899
  declare function createITMPartnerClient(config: ITMPartnerClientConfig): ITMPartnerClient;
1780
1900
 
1781
- export { type ApplyDynamicPricingInput, type BrandDrop, type BrandDropCtaType, type BrandDropMusicLink, type BrandSubscription, type CreateMomentOnlineConfigInput, type CreatePartnerBrandSubscriptionInput, type CreatePartnerBrandSubscriptionResponse, type CreatePartnerMomentInput, type CreatePartnerTicketTierInput, type Currency, DEFAULT_API_URL, type Dimensions, type DimensionsInput, type DynamicPricingActorType, type DynamicPricingAdmissionWindow, type DynamicPricingBatch, type DynamicPricingBatchEvent, type DynamicPricingBatchEventType, type DynamicPricingBatchItem, type DynamicPricingBatchItemStatus, type DynamicPricingBatchStatus, type DynamicPricingContext, type DynamicPricingExecutionMode, type DynamicPricingInventoryGuardInput, type DynamicPricingInventoryGuardMode, type DynamicPricingInventoryMetric, type DynamicPricingMomentInput, type DynamicPricingTierContext, type DynamicPricingTierUpdateInput, type Echo, type EchoMediaAsset, type EchoType, type EditPartnerTicketTiersForMomentInput, type GetBrandEchoesForUserResponse, type GetMomentLineupsResponse, type GetPartnerCustomersResponse, type GetPartnerDropsResponse, type GetPartnerTicketTiersForMomentInput, type GetPartnerTicketTiersForMomentResponse, type GetPublicMomentsResponse, type GetTicketsResponse, type ITMPartnerClient, type ITMPartnerClientConfig, type ITMPartnerHeaders, type ITMPartnerHeadersObject, type MediaAsset, type MediaAssetUploadUrl, type MerchPurchase, type Moment, type MomentCategory, type MomentCollection, type MomentCollectionLink, type MomentDiscountCodeUsage, type MomentDynamicPricingPolicy, type MomentDynamicPricingTierRule, type MomentLineup, type MomentLineupDisplayLabel, type MomentLineupResponseResult, type MomentLineupStatus, type MomentLineupType, type MomentOnlineProvider, type MomentSortOrder, type MomentStatus, type MomentSubcategory, type MomentType, type MusicReleaseType, type Mutation, type PartnerBrand, type PartnerCustomer, type PartnerMomentStats, type PartnerTicketTier, type PartnerTicketTierUpdateInput, type Payment, type PaymentStatus, type PostSubscriptionEmailInput, type PostSubscriptionMessageInput, type PostSubscriptionPushInput, type PostSubscriptionSmsInput, type PublicMomentLineupInfo, type Query, type RespondToMomentLineupInput, type SubscriptionComplianceInput, type ThirdPartyEchoType, type Ticket, type TicketAdmissionWindowSource, type TicketAttendanceMode, type TicketExtension, type TicketExtensionStatus, type TicketTier, type User, type Venue, type VenueInput, type VerifyPartnerBrandSubscriptionInput, createITMPartnerClient, everything, generateMutationOp, generateQueryOp };
1901
+ export { type ApplyDynamicPricingInput, type BrandDrop, type BrandDropCtaType, type BrandDropMusicLink, type BrandSubscription, type CreateMomentOnlineConfigInput, type CreatePartnerBrandSubscriptionInput, type CreatePartnerBrandSubscriptionResponse, type CreatePartnerMomentInput, type CreatePartnerTicketTierInput, type Currency, DEFAULT_API_URL, type Dimensions, type DimensionsInput, type DynamicPricingActorType, type DynamicPricingAdmissionWindow, type DynamicPricingBatch, type DynamicPricingBatchEvent, type DynamicPricingBatchEventType, type DynamicPricingBatchItem, type DynamicPricingBatchItemStatus, type DynamicPricingBatchStatus, type DynamicPricingContext, type DynamicPricingExecutionMode, type DynamicPricingInventoryGuardInput, type DynamicPricingInventoryGuardMode, type DynamicPricingInventoryMetric, type DynamicPricingMomentInput, type DynamicPricingTierContext, type DynamicPricingTierUpdateInput, type Echo, type EchoMediaAsset, type EchoType, type EditPartnerTicketTiersForMomentInput, type EventImportPlatform, type GetBrandEchoesForUserResponse, type GetMomentLineupsResponse, type GetPartnerCustomersResponse, type GetPartnerDropsResponse, type GetPartnerTicketTiersForMomentInput, type GetPartnerTicketTiersForMomentResponse, type GetPublicMomentsResponse, type GetTicketsResponse, type ITMPartnerClient, type ITMPartnerClientConfig, type ITMPartnerHeaders, type ITMPartnerHeadersObject, type MediaAsset, type MediaAssetUploadUrl, type MerchPurchase, type Moment, type MomentCategory, type MomentCollection, type MomentCollectionLink, type MomentDiscountCodeUsage, type MomentDynamicPricingPolicy, type MomentDynamicPricingTierRule, type MomentLineup, type MomentLineupDisplayLabel, type MomentLineupResponseResult, type MomentLineupStatus, type MomentLineupType, type MomentOnlineProvider, type MomentSortOrder, type MomentStatus, type MomentSubcategory, type MomentType, type MusicReleaseType, type Mutation, type PartnerBrand, type PartnerCustomer, type PartnerMomentAttendanceCount, type PartnerMomentAttendanceLookupInput, type PartnerMomentAttendanceStats, type PartnerMomentGuestlistAttendance, type PartnerMomentGuestlistLabelAttendance, type PartnerMomentStats, type PartnerMomentTicketAttendance, type PartnerMomentTicketTierAttendance, type PartnerMomentsFiltersInput, type PartnerTicketTier, type PartnerTicketTierUpdateInput, type Payment, type PaymentStatus, type PostSubscriptionEmailInput, type PostSubscriptionMessageInput, type PostSubscriptionPushInput, type PostSubscriptionSmsInput, type PublicMomentLineupInfo, type Query, type RespondToMomentLineupInput, type SubscriptionComplianceInput, type ThirdPartyEchoType, type Ticket, type TicketAdmissionWindowSource, type TicketAttendanceMode, type TicketExtension, type TicketExtensionStatus, type TicketTier, type User, type Venue, type VenueInput, type VerifyPartnerBrandSubscriptionInput, createITMPartnerClient, everything, generateMutationOp, generateQueryOp };