@highlightxyz/sdk 0.2.0 → 0.4.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.
@@ -1,7 +1,7 @@
1
1
  // This file is auto-generated by @hey-api/openapi-ts
2
2
  import { buildClientParams, } from "./client";
3
3
  import { client } from "./client.gen";
4
- import { CaptureSettingsTrigger, CollectionType, ContractStandard, GateMatchMode, GenerativeEditionType, MediaKind, MediaScope, SaleAccessMode, SaleType, SelectorType, } from "./types.gen";
4
+ import { CaptureSettingsTrigger, CollectionType, ContractStandard, GateMatchMode, GenerativeEditionType, MediaPurpose, SaleAccessMode, SaleType, SelectorType, } from "./types.gen";
5
5
  class HeyApiClient {
6
6
  client;
7
7
  constructor(args) {
@@ -62,8 +62,6 @@ export class Collection extends HeyApiClient {
62
62
  { in: "body", key: "description" },
63
63
  { in: "body", key: "contractId" },
64
64
  { in: "body", key: "contract" },
65
- { in: "body", key: "logoMediaId" },
66
- { in: "body", key: "image" },
67
65
  { in: "body", key: "type" },
68
66
  { in: "body", key: "royalty" },
69
67
  { in: "body", key: "tokenManager" },
@@ -84,7 +82,7 @@ export class Collection extends HeyApiClient {
84
82
  /**
85
83
  * Trending collections
86
84
  *
87
- * Public leaderboard of collections ranked by units minted within a rolling time window (24h / 7d / 28d), computed live from the mint ledger.
85
+ * List live collections ranked by units minted in a 24-hour, 7-day, or 28-day rolling window.
88
86
  */
89
87
  trending(parameters, options) {
90
88
  const params = buildClientParams([parameters], [
@@ -105,7 +103,7 @@ export class Collection extends HeyApiClient {
105
103
  /**
106
104
  * Featured collections
107
105
  *
108
- * Public curated showcase of collections for the home page, ordered by editorial position and paginated by cursor.
106
+ * List curated home-page collections in editorial order with cursor pagination.
109
107
  */
110
108
  featured(parameters, options) {
111
109
  const params = buildClientParams([parameters], [
@@ -125,7 +123,7 @@ export class Collection extends HeyApiClient {
125
123
  /**
126
124
  * Get collection
127
125
  *
128
- * Get a collection by its highlight ID, or by a contract reference of the form `<chain>:<contractAddress>[:<editionId>]` (chain slug or numeric chainId; editionId defaults to 0), e.g. `ethereum:0x0c3dd3c403b6B5c0CCe2a97F15820a4Eae347FE7:0`.
126
+ * Get a collection by `highlightId` or by `<chain>:<contractAddress>[:<editionId>]`. The chain can be a slug or numeric ID. `editionId` defaults to 0.
129
127
  */
130
128
  get(parameters, options) {
131
129
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
@@ -138,7 +136,7 @@ export class Collection extends HeyApiClient {
138
136
  /**
139
137
  * List series previews
140
138
  *
141
- * List sample artwork for a series collection, resolved from its uploaded assets. Returns an empty list for non-series collections or when assets are not ready. Available for public collections without authentication.
139
+ * List sample artwork from a series collection's uploaded assets. Returns an empty list for other collection types or when the assets are not ready. Public collections do not require authentication.
142
140
  */
143
141
  listPreviews(parameters, options) {
144
142
  const params = buildClientParams([parameters], [
@@ -156,18 +154,72 @@ export class Collection extends HeyApiClient {
156
154
  });
157
155
  }
158
156
  /**
159
- * Finalize collection base URI to Arweave
157
+ * Archive collection metadata to Arweave
160
158
  *
161
- * Publish the collection's token-metadata base URI Directory to Arweave. Call once the collection is complete (sellout or manual trigger) to freeze metadata permanently. Idempotent — safe to call if already archived.
159
+ * Archive the collection's current token-metadata directory snapshot to Arweave. The operation is archive-once, leaves the R2 directory appendable, and does not change the contract's base URI.
162
160
  */
163
- finalizeBaseUri(parameters, options) {
161
+ archiveBaseUri(parameters, options) {
164
162
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
165
163
  return (options?.client ?? this.client).post({
166
- url: "/collection/{highlightId}/finalize-base-uri",
164
+ url: "/collection/{highlightId}/archive-base-uri",
167
165
  ...options,
168
166
  ...params,
169
167
  });
170
168
  }
169
+ /**
170
+ * Create a collection media upload session
171
+ *
172
+ * Start an upload for one of the collection media purposes and return an upload URL with the required request headers.
173
+ */
174
+ createMediaUploadSession(parameters, options) {
175
+ const params = buildClientParams([parameters], [
176
+ {
177
+ args: [
178
+ { in: "path", key: "highlightId" },
179
+ { in: "body", key: "purpose" },
180
+ { in: "body", key: "fileName" },
181
+ { in: "body", key: "mimeType" },
182
+ { in: "body", key: "fileSize" },
183
+ { in: "body", key: "contentHash" },
184
+ ],
185
+ },
186
+ ]);
187
+ return (options?.client ?? this.client).post({
188
+ url: "/collection/{highlightId}/media/upload-session",
189
+ ...options,
190
+ ...params,
191
+ headers: {
192
+ "Content-Type": "application/json",
193
+ ...options?.headers,
194
+ ...params.headers,
195
+ },
196
+ });
197
+ }
198
+ /**
199
+ * Update collection display metadata
200
+ *
201
+ * Update a collection's name, description, and logo. Every field is optional; absent fields are left unchanged.
202
+ */
203
+ updateMetadata(parameters, options) {
204
+ const params = buildClientParams([parameters], [
205
+ {
206
+ args: [
207
+ { in: "path", key: "highlightId" },
208
+ { key: "collectionUpdateMetadataInput", map: "body" },
209
+ ],
210
+ },
211
+ ]);
212
+ return (options?.client ?? this.client).patch({
213
+ url: "/collection/{highlightId}/metadata",
214
+ ...options,
215
+ ...params,
216
+ headers: {
217
+ "Content-Type": "application/json",
218
+ ...options?.headers,
219
+ ...params.headers,
220
+ },
221
+ });
222
+ }
171
223
  /**
172
224
  * Update generative draft details
173
225
  *
@@ -221,7 +273,7 @@ export class Collection extends HeyApiClient {
221
273
  /**
222
274
  * Update edition details
223
275
  *
224
- * Update edition-specific details (name, description, image, animation, attributes). For a draft collection the change is saved directly. For a live collection it returns a `setEditionURI` transaction to sign — once confirmed on-chain, the backend re-derives the edition and refreshes every token.
276
+ * Update an edition's name, description, image, animation, or attributes. Draft changes are saved directly. Live changes return a `setEditionURI` transaction to sign. After confirmation, the backend re-derives the edition and refreshes every token.
225
277
  */
226
278
  updateEditionDetails(parameters, options) {
227
279
  const params = buildClientParams([parameters], [
@@ -246,7 +298,7 @@ export class Collection extends HeyApiClient {
246
298
  /**
247
299
  * Get collection sales
248
300
  *
249
- * Get all sales for a collection.
301
+ * List the draft and live sales attached to a collection.
250
302
  */
251
303
  getSales(parameters, options) {
252
304
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
@@ -259,7 +311,7 @@ export class Collection extends HeyApiClient {
259
311
  /**
260
312
  * Add a sale to a collection
261
313
  *
262
- * Add a new sale to a collection. Draft collections can have one sale at a time. For live collections, gated sales go live immediately; public sales return a contract execution for on-chain registration.
314
+ * Add a sale. A draft collection can have one sale at a time. On a live collection, a gated sale activates immediately and a public sale returns a vector-registration transaction.
263
315
  */
264
316
  addSale(parameters, options) {
265
317
  const params = buildClientParams([parameters], [
@@ -278,7 +330,6 @@ export class Collection extends HeyApiClient {
278
330
  { in: "body", key: "paymentRecipient" },
279
331
  { in: "body", key: "accessMode" },
280
332
  { in: "body", key: "gateId" },
281
- { in: "body", key: "gasSponsored" },
282
333
  { in: "body", key: "mechanicId" },
283
334
  { in: "body", key: "typeConfig" },
284
335
  { in: "body", key: "collectorMessage" },
@@ -300,7 +351,7 @@ export class Collection extends HeyApiClient {
300
351
  /**
301
352
  * Delete a sale
302
353
  *
303
- * Delete a draft sale from a collection. Live sales cannot be deleted — use update to pause or set an end date instead.
354
+ * Delete a draft sale. A live sale cannot be deleted; pause it or set an end date.
304
355
  */
305
356
  deleteSale(parameters, options) {
306
357
  const params = buildClientParams([parameters], [
@@ -320,7 +371,7 @@ export class Collection extends HeyApiClient {
320
371
  /**
321
372
  * Update a sale
322
373
  *
323
- * Update an existing sale. Draft sales can be updated freely. Live public sales return a contract execution for on-chain updates when on-chain fields change.
374
+ * Update a sale. Draft and gated sales update off-chain. Supported changes to a live public sale return an on-chain vector-update transaction.
324
375
  */
325
376
  updateSale(parameters, options) {
326
377
  const params = buildClientParams([parameters], [
@@ -357,7 +408,7 @@ export class Collection extends HeyApiClient {
357
408
  /**
358
409
  * Claim collection sale
359
410
  *
360
- * Build a claim transaction configuration for a collector sale action.
411
+ * Build a collector's mint transaction for a fixed-price, Dutch, or ranked sale.
361
412
  */
362
413
  claimSale(parameters, options) {
363
414
  const params = buildClientParams([parameters], [
@@ -384,7 +435,7 @@ export class Collection extends HeyApiClient {
384
435
  /**
385
436
  * Bid on an auction sale
386
437
  *
387
- * Build a bid transaction configuration for an auction sale. For ranked auctions, places or updates an on-chain bid. For English auctions, returns an executor-signed bid claim plus the `AuctionManager.bid` call (with `value` = the bid amount); the optional `preferredNftRecipient` sets where the NFT is delivered if this bidder wins.
438
+ * Build a ranked- or English-auction bid transaction. For an English auction, `preferredNftRecipient` sets the wallet that receives the NFT if the bid wins.
388
439
  */
389
440
  bidSale(parameters, options) {
390
441
  const params = buildClientParams([parameters], [
@@ -412,7 +463,7 @@ export class Collection extends HeyApiClient {
412
463
  /**
413
464
  * Reclaim a non-winning ranked-auction bid
414
465
  *
415
- * Build a transaction to reclaim the funds locked in a non-winning ranked-auction bid after the auction has ended.
466
+ * Build a transaction that reclaims a non-winning ranked-auction bid after the auction ends.
416
467
  */
417
468
  reclaimBid(parameters, options) {
418
469
  const params = buildClientParams([parameters], [
@@ -438,7 +489,7 @@ export class Collection extends HeyApiClient {
438
489
  /**
439
490
  * Withdraw ranked-auction earnings
440
491
  *
441
- * Build a transaction to withdraw a ranked auction's cumulative earnings to the payment recipient after the auction has ended. Native-currency auctions only.
492
+ * Build a transaction that sends a completed ranked auction's native-currency earnings to its payment recipient.
442
493
  */
443
494
  claimAuctionEarnings(parameters, options) {
444
495
  const params = buildClientParams([parameters], [
@@ -463,7 +514,7 @@ export class Collection extends HeyApiClient {
463
514
  /**
464
515
  * Get ranked-auction live standings
465
516
  *
466
- * Public read-model for a ranked auction: the current clearing price and each bid's winning/losing status (provisional while live, frozen once settled). Includes the authenticated viewer's winning-bid count and tokens left to claim when a bearer token is supplied.
517
+ * Get a ranked auction's clearing price and bid standings. Results are provisional before settlement. An authenticated response also includes the caller's winning bids and unclaimed tokens.
467
518
  */
468
519
  rankedAuctionStandings(parameters, options) {
469
520
  const params = buildClientParams([parameters], [
@@ -483,7 +534,7 @@ export class Collection extends HeyApiClient {
483
534
  /**
484
535
  * Fulfill (settle) an English auction
485
536
  *
486
- * Build the permissionless `AuctionManager.fulfillAuction` transaction. After the auction's end time anyone may settle it: the contract delivers the escrowed NFT to the winner's preferred recipient and splits the proceeds (95% recipient / 5% platform).
537
+ * Build an `AuctionManager.fulfillAuction` transaction after the auction ends. Any authenticated caller can settle; the contract sends the NFT to the winner's preferred recipient and splits the proceeds.
487
538
  */
488
539
  fulfillEnglishAuction(parameters, options) {
489
540
  const params = buildClientParams([parameters], [
@@ -508,7 +559,7 @@ export class Collection extends HeyApiClient {
508
559
  /**
509
560
  * Cancel an English auction
510
561
  *
511
- * Build the `AuctionManager.cancelAuctionOnChain` transaction. The contract enforces owner-only and that no reserve-meeting bid has landed; any escrowed NFT is returned to the owner. Creator only.
562
+ * Build the creator-only `AuctionManager.cancelAuctionOnChain` transaction. Cancellation fails after a bid meets the reserve. The contract returns any escrowed NFT to the owner.
512
563
  */
513
564
  cancelEnglishAuction(parameters, options) {
514
565
  const params = buildClientParams([parameters], [
@@ -533,7 +584,7 @@ export class Collection extends HeyApiClient {
533
584
  /**
534
585
  * Get English auction standings
535
586
  *
536
- * Public read-model for an English auction: lifecycle state, reserve, current highest bid/bidder, end time, escrowed token, and creator earnings — served from the chain-reconciled projection. Includes whether the authenticated viewer is the current highest bidder when a bearer token is supplied.
587
+ * Get an English auction's status, reserve, highest bid and bidder, end time, escrowed token, and creator earnings. An authenticated response indicates whether the caller is the highest bidder.
537
588
  */
538
589
  englishAuctionStanding(parameters, options) {
539
590
  const params = buildClientParams([parameters], [
@@ -553,7 +604,7 @@ export class Collection extends HeyApiClient {
553
604
  /**
554
605
  * Get English auction bid history
555
606
  *
556
- * Public read-model: the English auction's bid history (newest first), sourced from the indexer's `Bid`-event ledger. Amounts are raw on-chain base units (wei) in the sale's currency.
607
+ * List an English auction's indexed bids from newest to oldest. Amounts use the currency's raw on-chain base unit.
557
608
  */
558
609
  englishAuctionBids(parameters, options) {
559
610
  const params = buildClientParams([parameters], [
@@ -570,6 +621,51 @@ export class Collection extends HeyApiClient {
570
621
  ...params,
571
622
  });
572
623
  }
624
+ /**
625
+ * Get Dutch auction standing
626
+ *
627
+ * Get a Dutch auction's descending price ladder, its clock, and its supply/escrow state. An authenticated response also includes the caller's purchase position and any rebate owed. Amounts use the currency's raw on-chain base unit.
628
+ */
629
+ dutchAuctionStanding(parameters, options) {
630
+ const params = buildClientParams([parameters], [
631
+ {
632
+ args: [
633
+ { in: "path", key: "highlightId" },
634
+ { in: "path", key: "saleId" },
635
+ ],
636
+ },
637
+ ]);
638
+ return (options?.client ?? this.client).get({
639
+ url: "/collection/{highlightId}/sales/{saleId}/dutch",
640
+ ...options,
641
+ ...params,
642
+ });
643
+ }
644
+ /**
645
+ * Claim a Dutch auction rebate
646
+ *
647
+ * Build a transaction that refunds the caller the difference between what they paid and the auction's final clearing price. Only available once the auction has reached its resting price or sold out.
648
+ */
649
+ claimDutchRebate(parameters, options) {
650
+ const params = buildClientParams([parameters], [
651
+ {
652
+ args: [
653
+ { in: "path", key: "highlightId" },
654
+ { in: "body", key: "saleId" },
655
+ ],
656
+ },
657
+ ]);
658
+ return (options?.client ?? this.client).post({
659
+ url: "/collection/{highlightId}/sales/dutch/rebate",
660
+ ...options,
661
+ ...params,
662
+ headers: {
663
+ "Content-Type": "application/json",
664
+ ...options?.headers,
665
+ ...params.headers,
666
+ },
667
+ });
668
+ }
573
669
  /**
574
670
  * Initiate collection deployment
575
671
  *
@@ -599,7 +695,7 @@ export class Collection extends HeyApiClient {
599
695
  /**
600
696
  * Cancel a deployment
601
697
  *
602
- * Cancel a deployment that has not yet completed. Terminates the running workflow, deletes the deployment row, and rolls the collection back to Draft. On contracts shared with other collections the contract is left unchanged; otherwise it is reset to Draft. After cancelling, the collection can be re-deployed from scratch.
698
+ * Cancel an incomplete deployment and return the collection to Draft. A shared contract keeps its current status; a non-shared contract returns to Draft. The collection can then be deployed again.
603
699
  */
604
700
  deployCancel(parameters, options) {
605
701
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
@@ -640,7 +736,7 @@ export class Token extends HeyApiClient {
640
736
  /**
641
737
  * List token attribute facets
642
738
  *
643
- * Get the trait/value facets with token counts for a collection — the data a filter sidebar renders. Available for public collections without authentication.
739
+ * List trait values and token counts for collection filters. Public collections do not require authentication.
644
740
  */
645
741
  attributeFacets(parameters, options) {
646
742
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
@@ -690,6 +786,19 @@ export class Token extends HeyApiClient {
690
786
  ...params,
691
787
  });
692
788
  }
789
+ /**
790
+ * Re-drive stuck token reveals
791
+ *
792
+ * Reschedule failed and stale pending token reveals. Minted tokens restart from their original mint transaction. Imported tokens without transfer history rerun metadata indexing only.
793
+ */
794
+ redriveReveals(parameters, options) {
795
+ const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "highlightId" }] }]);
796
+ return (options?.client ?? this.client).post({
797
+ url: "/collection/{highlightId}/tokens/redrive-reveals",
798
+ ...options,
799
+ ...params,
800
+ });
801
+ }
693
802
  }
694
803
  export class Config extends HeyApiClient {
695
804
  /**
@@ -703,6 +812,17 @@ export class Config extends HeyApiClient {
703
812
  ...options,
704
813
  });
705
814
  }
815
+ /**
816
+ * Get media delivery hosts
817
+ *
818
+ * Public hosts a client uses to build media URLs from a storage location's provider and reference.
819
+ */
820
+ mediaHosts(options) {
821
+ return (options?.client ?? this.client).get({
822
+ url: "/config/media-hosts",
823
+ ...options,
824
+ });
825
+ }
706
826
  /**
707
827
  * Get system contract
708
828
  *
@@ -763,7 +883,7 @@ export class Gate extends HeyApiClient {
763
883
  /**
764
884
  * List gates
765
885
  *
766
- * List all gates for the authenticated user.
886
+ * List gates owned by the authenticated account.
767
887
  */
768
888
  list(options) {
769
889
  return (options?.client ?? this.client).get({
@@ -853,7 +973,7 @@ export class Gate extends HeyApiClient {
853
973
  /**
854
974
  * Preview a collection
855
975
  *
856
- * Resolve an NFT contract for the gate builder — a Highlight collection if we host it, otherwise external NFT data.
976
+ * Resolve an NFT contract for a gate builder. Returns a Highlight collection when available, otherwise external NFT data.
857
977
  */
858
978
  previewCollection(parameters, options) {
859
979
  const params = buildClientParams([parameters], [
@@ -1085,7 +1205,7 @@ export class Mechanic extends HeyApiClient {
1085
1205
  /**
1086
1206
  * Add mechanic deployment
1087
1207
  *
1088
- * Register a mechanic contract deployment on a specific chain. Upserts if a deployment already exists for the chain.
1208
+ * Register a mechanic's contract address on a chain. Replaces the address if that chain already has one.
1089
1209
  */
1090
1210
  addDeployment(parameters, options) {
1091
1211
  const params = buildClientParams([parameters], [
@@ -1111,63 +1231,22 @@ export class Mechanic extends HeyApiClient {
1111
1231
  }
1112
1232
  export class Media extends HeyApiClient {
1113
1233
  /**
1114
- * Create media upload session
1234
+ * Finalize a direct media upload
1115
1235
  *
1116
- * Create a media asset and return the worker upload URL the client should PUT bytes to. Call /:mediaId/process once the PUT completes.
1236
+ * Verify the exact object, size, content type, and R2 SHA-256 checksum before exposing it or starting directory extraction. Duplicate calls are idempotent.
1117
1237
  */
1118
- createUploadSession(parameters, options) {
1119
- const params = buildClientParams([parameters], [
1120
- {
1121
- args: [
1122
- { in: "body", key: "kind" },
1123
- { in: "body", key: "scope" },
1124
- { in: "body", key: "fileName" },
1125
- { in: "body", key: "mimeType" },
1126
- { in: "body", key: "fileSize" },
1127
- ],
1128
- },
1129
- ]);
1130
- return (options?.client ?? this.client).post({
1131
- url: "/media/upload-session",
1132
- ...options,
1133
- ...params,
1134
- headers: {
1135
- "Content-Type": "application/json",
1136
- ...options?.headers,
1137
- ...params.headers,
1138
- },
1139
- });
1140
- }
1141
- /**
1142
- * Upload media bytes
1143
- *
1144
- * Stream the file body to the worker, which writes it to storage and immediately drives the asset through processing. File assets come back Ready; Directory assets come back Processing (zip extraction running). Call /:mediaId/process to retry a Failed Directory.
1145
- */
1146
- upload(parameters, options) {
1147
- const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "mediaId" }] }]);
1148
- return (options?.client ?? this.client).put({
1149
- url: "/media/{mediaId}/upload",
1150
- ...options,
1151
- ...params,
1152
- });
1153
- }
1154
- /**
1155
- * Process a media asset
1156
- *
1157
- * Drive the media asset toward Ready. Call after PUTting bytes to /:mediaId/upload to finalize the upload (File assets become Ready; Directory assets trigger zip extraction). Idempotent — assets that are already Ready or currently Processing are returned as-is. Failed Directory assets re-trigger extraction.
1158
- */
1159
- process(parameters, options) {
1238
+ finalizeUpload(parameters, options) {
1160
1239
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "mediaId" }] }]);
1161
1240
  return (options?.client ?? this.client).post({
1162
- url: "/media/{mediaId}/process",
1241
+ url: "/media/{mediaId}/finalize",
1163
1242
  ...options,
1164
1243
  ...params,
1165
1244
  });
1166
1245
  }
1167
1246
  /**
1168
- * List children of a Directory media asset
1247
+ * List directory files
1169
1248
  *
1170
- * Returns a paginated list of File children (e.g. per-token metadata or extracted archive files).
1249
+ * List the extracted files in a directory with cursor pagination.
1171
1250
  */
1172
1251
  listChildren(parameters, options) {
1173
1252
  const params = buildClientParams([parameters], [
@@ -1188,7 +1267,7 @@ export class Media extends HeyApiClient {
1188
1267
  /**
1189
1268
  * Delete a media asset
1190
1269
  *
1191
- * Delete the media asset and its R2 objects. Arweave archive locations remain on-chain (immutable) but are no longer referenced. Fails with 409 if still referenced by a collection contract or generative collection code.
1270
+ * Delete a media record and its R2 objects. Referenced media returns 409. Immutable Arweave archives remain available.
1192
1271
  */
1193
1272
  delete(parameters, options) {
1194
1273
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "mediaId" }] }]);
@@ -1214,7 +1293,7 @@ export class Media extends HeyApiClient {
1214
1293
  /**
1215
1294
  * Publish media to archive
1216
1295
  *
1217
- * Mirror the media asset to its immutable archive provider (Arweave). File media publishes the single blob; Directory media publishes a manifest of all children. Idempotent — returns early if already archived.
1296
+ * Archive media to Arweave. Files publish one blob; directories publish their children and a manifest. The operation is idempotent.
1218
1297
  */
1219
1298
  publish(parameters, options) {
1220
1299
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "mediaId" }] }]);
@@ -1225,9 +1304,9 @@ export class Media extends HeyApiClient {
1225
1304
  });
1226
1305
  }
1227
1306
  /**
1228
- * Get a child File Entity by path
1307
+ * Get a child file by path
1229
1308
  *
1230
- * Returns the child File's full Entity (with locations and status). Use a location's `url` to fetch bytes directly from the storage provider.
1309
+ * Get an extracted file by path, including its status and storage locations.
1231
1310
  */
1232
1311
  getChild(parameters, options) {
1233
1312
  const params = buildClientParams([parameters], [
@@ -1247,9 +1326,9 @@ export class Media extends HeyApiClient {
1247
1326
  }
1248
1327
  export class Tx extends HeyApiClient {
1249
1328
  /**
1250
- * Get transaction finalization status
1329
+ * Get transaction status
1251
1330
  *
1252
- * Returns the current finalization status for a transaction: the set of domain milestones (e.g. collection going live, sale going live) it must complete, and whether each is done. Overall is `Ready` only when every expected milestone is done. Use the `/ws` variant for live push updates instead of polling.
1331
+ * Get the transaction's domain milestones and their status. The overall status reaches Ready after all expected milestones finish. Use the `/ws` route for live updates.
1253
1332
  */
1254
1333
  status(parameters, options) {
1255
1334
  const params = buildClientParams([parameters], [
@@ -1269,7 +1348,7 @@ export class Tx extends HeyApiClient {
1269
1348
  /**
1270
1349
  * Submit a transaction for tracking
1271
1350
  *
1272
- * Hand a broadcast transaction hash to the backend so it is processed end-to-end (collection/sale/bid/mint effects) and its finalization milestones become available. Returns the current status snapshot; subscribe to the `/ws` variant to await finalization.
1351
+ * Submit a broadcast transaction hash for domain processing and milestone tracking. Returns the current snapshot; use the `/ws` route for live updates.
1273
1352
  */
1274
1353
  submit(parameters, options) {
1275
1354
  const params = buildClientParams([parameters], [
@@ -1291,7 +1370,7 @@ export class Siwe extends HeyApiClient {
1291
1370
  /**
1292
1371
  * Issue a SIWE nonce
1293
1372
  *
1294
- * Issues a single-use, short-lived nonce for use as the `nonce` field of a SIWE (EIP-4361) message.
1373
+ * Issue a single-use, short-lived nonce for the `nonce` field of a SIWE (EIP-4361) message.
1295
1374
  */
1296
1375
  nonce(options) {
1297
1376
  return (options?.client ?? this.client).post({ url: "/user/signin/siwe/nonce", ...options });
@@ -1299,9 +1378,37 @@ export class Siwe extends HeyApiClient {
1299
1378
  }
1300
1379
  export class User extends HeyApiClient {
1301
1380
  /**
1302
- * Sign in user
1381
+ * Create a user media upload session
1303
1382
  *
1304
- * Sign in with a provider credential (Privy id_token or SIWE message + signature) and receive access/refresh tokens plus user.
1383
+ * Start an upload for one of the user media purposes and return an upload URL with the required request headers.
1384
+ */
1385
+ createMediaUploadSession(parameters, options) {
1386
+ const params = buildClientParams([parameters], [
1387
+ {
1388
+ args: [
1389
+ { in: "body", key: "purpose" },
1390
+ { in: "body", key: "fileName" },
1391
+ { in: "body", key: "mimeType" },
1392
+ { in: "body", key: "fileSize" },
1393
+ { in: "body", key: "contentHash" },
1394
+ ],
1395
+ },
1396
+ ]);
1397
+ return (options?.client ?? this.client).post({
1398
+ url: "/user/media/upload-session",
1399
+ ...options,
1400
+ ...params,
1401
+ headers: {
1402
+ "Content-Type": "application/json",
1403
+ ...options?.headers,
1404
+ ...params.headers,
1405
+ },
1406
+ });
1407
+ }
1408
+ /**
1409
+ * Sign in
1410
+ *
1411
+ * Exchange a Privy ID token or signed SIWE message for Highlight access and refresh tokens.
1305
1412
  */
1306
1413
  signin(parameters, options) {
1307
1414
  const params = buildClientParams([parameters], [{ args: [{ key: "body", map: "body" }] }]);
@@ -1321,6 +1428,81 @@ export class User extends HeyApiClient {
1321
1428
  return (this._siwe ??= new Siwe({ client: this.client }));
1322
1429
  }
1323
1430
  }
1431
+ export class Profile extends HeyApiClient {
1432
+ /**
1433
+ * Get authenticated profile
1434
+ *
1435
+ * Get the private profile for the authenticated account, including its email.
1436
+ */
1437
+ get(options) {
1438
+ return (options?.client ?? this.client).get({ url: "/user/profile", ...options });
1439
+ }
1440
+ /**
1441
+ * Update authenticated profile
1442
+ *
1443
+ * Update private profile fields. Avatar media must be an owned, ready User-namespace image file.
1444
+ */
1445
+ update(parameters, options) {
1446
+ const params = buildClientParams([parameters], [
1447
+ {
1448
+ args: [
1449
+ { in: "body", key: "displayName" },
1450
+ { in: "body", key: "bio" },
1451
+ { in: "body", key: "website" },
1452
+ { in: "body", key: "avatarMediaId" },
1453
+ ],
1454
+ },
1455
+ ]);
1456
+ return (options?.client ?? this.client).patch({
1457
+ url: "/user/profile",
1458
+ ...options,
1459
+ ...params,
1460
+ headers: {
1461
+ "Content-Type": "application/json",
1462
+ ...options?.headers,
1463
+ ...params.headers,
1464
+ },
1465
+ });
1466
+ }
1467
+ /**
1468
+ * Get public profile
1469
+ *
1470
+ * Get a wallet's public profile. Valid wallet addresses without a registered account return an address-only fallback profile.
1471
+ */
1472
+ public(parameters, options) {
1473
+ const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "walletAddress" }] }]);
1474
+ return (options?.client ?? this.client).get({
1475
+ url: "/user/{walletAddress}/profile",
1476
+ ...options,
1477
+ ...params,
1478
+ });
1479
+ }
1480
+ /**
1481
+ * List public wallet tokens
1482
+ *
1483
+ * Get a wallet's token holdings across live collections. This is available for every valid EVM address, including addresses without a registered account.
1484
+ */
1485
+ tokens(parameters, options) {
1486
+ const params = buildClientParams([parameters], [
1487
+ {
1488
+ args: [
1489
+ { in: "path", key: "walletAddress" },
1490
+ { in: "query", key: "page" },
1491
+ { in: "query", key: "limit" },
1492
+ { in: "query", key: "sort" },
1493
+ { in: "query", key: "order" },
1494
+ { in: "query", key: "collectionId" },
1495
+ { in: "query", key: "search" },
1496
+ ],
1497
+ },
1498
+ ]);
1499
+ return (options?.client ?? this.client).get({
1500
+ url: "/user/{walletAddress}/tokens",
1501
+ ...options,
1502
+ ...params,
1503
+ });
1504
+ }
1505
+ }
1324
1506
  export class ApiKey extends HeyApiClient {
1325
1507
  /**
1326
1508
  * List API keys
@@ -1388,6 +1570,11 @@ export class HighlightClient extends HeyApiClient {
1388
1570
  super(args);
1389
1571
  HighlightClient.__registry.set(this, args?.key);
1390
1572
  }
1573
+ /**
1574
+ * Activate a chain indexer
1575
+ *
1576
+ * Start or wake indexing for an enabled chain. Administrative use only.
1577
+ */
1391
1578
  postIndexerChainsByChainIdActivate(parameters, options) {
1392
1579
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "chainId" }] }]);
1393
1580
  return (options?.client ?? this.client).post({
@@ -1396,6 +1583,11 @@ export class HighlightClient extends HeyApiClient {
1396
1583
  ...params,
1397
1584
  });
1398
1585
  }
1586
+ /**
1587
+ * Reset a chain indexer
1588
+ *
1589
+ * Move a chain's indexing cursor to a block so later polls reprocess from that point. Administrative use only.
1590
+ */
1399
1591
  postIndexerChainsByChainIdReset(parameters, options) {
1400
1592
  const params = buildClientParams([parameters], [
1401
1593
  {
@@ -1416,6 +1608,11 @@ export class HighlightClient extends HeyApiClient {
1416
1608
  },
1417
1609
  });
1418
1610
  }
1611
+ /**
1612
+ * Poll a chain indexer
1613
+ *
1614
+ * Run one indexing cycle for an enabled chain. Administrative use only.
1615
+ */
1419
1616
  postIndexerChainsByChainIdPoll(parameters, options) {
1420
1617
  const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "chainId" }] }]);
1421
1618
  return (options?.client ?? this.client).post({
@@ -1460,6 +1657,10 @@ export class HighlightClient extends HeyApiClient {
1460
1657
  get user() {
1461
1658
  return (this._user ??= new User({ client: this.client }));
1462
1659
  }
1660
+ _profile;
1661
+ get profile() {
1662
+ return (this._profile ??= new Profile({ client: this.client }));
1663
+ }
1463
1664
  _apiKey;
1464
1665
  get apiKey() {
1465
1666
  return (this._apiKey ??= new ApiKey({ client: this.client }));