@brigadasos/nadeshiko-sdk 1.4.3-dev.d3424ba → 1.5.0-dev.0c1011b

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,5 +1,5 @@
1
1
  export type ClientOptions = {
2
- baseUrl: 'http://localhost:5000' | 'https://api.nadeshiko.co' | (string & {});
2
+ baseUrl: 'https://api.nadeshiko.co' | (string & {});
3
3
  };
4
4
  /**
5
5
  * A media filter entry with optional episode restriction
@@ -372,31 +372,31 @@ export type PaginationInfo = {
372
372
  /**
373
373
  * Whether there are more results after this page
374
374
  */
375
- hasMore?: boolean;
375
+ hasMore: boolean;
376
376
  /**
377
377
  * Estimated total number of matching segments
378
378
  */
379
- estimatedTotalHits?: number;
379
+ estimatedTotalHits: number;
380
380
  /**
381
381
  * Whether estimatedTotalHits is exact or a lower bound
382
382
  */
383
- estimatedTotalHitsRelation?: 'EXACT' | 'LOWER_BOUND';
383
+ estimatedTotalHitsRelation: 'EXACT' | 'LOWER_BOUND';
384
384
  /**
385
385
  * Opaque cursor token for fetching the next page (`null` when hasMore is false)
386
386
  */
387
- cursor?: string;
387
+ cursor: string;
388
388
  };
389
389
  export type SearchResponse = {
390
- segments?: Array<Segment>;
391
- includes?: {
390
+ segments: Array<Segment>;
391
+ includes: {
392
392
  /**
393
393
  * Media objects keyed by mediaId
394
394
  */
395
- media?: {
395
+ media: {
396
396
  [key: string]: Media;
397
397
  };
398
398
  };
399
- pagination?: PaginationInfo;
399
+ pagination: PaginationInfo;
400
400
  };
401
401
  /**
402
402
  * Bad Request error response
@@ -616,20 +616,20 @@ export type MediaSearchStats = {
616
616
  * Count of entries grouped by media category
617
617
  */
618
618
  export type CategoryCount = {
619
- category?: Category;
619
+ category: Category;
620
620
  /**
621
621
  * Number of entries in this category
622
622
  */
623
- count?: number;
623
+ count: number;
624
624
  };
625
625
  export type SearchStatsResponse = {
626
- media?: Array<MediaSearchStats>;
627
- categories?: Array<CategoryCount>;
628
- includes?: {
626
+ media: Array<MediaSearchStats>;
627
+ categories: Array<CategoryCount>;
628
+ includes: {
629
629
  /**
630
630
  * Media objects keyed by mediaId
631
631
  */
632
- media?: {
632
+ media: {
633
633
  [key: string]: Media;
634
634
  };
635
635
  };
@@ -674,27 +674,27 @@ export type WordMatch = {
674
674
  /**
675
675
  * The word that was searched for
676
676
  */
677
- word?: string;
677
+ word: string;
678
678
  /**
679
679
  * Indicates whether the word was found in any segment
680
680
  */
681
- isMatch?: boolean;
681
+ isMatch: boolean;
682
682
  /**
683
683
  * Total number of times this word appears across all media
684
684
  */
685
- matchCount?: number;
685
+ matchCount: number;
686
686
  /**
687
687
  * List of media containing this word
688
688
  */
689
- media?: Array<WordMatchMedia>;
689
+ media: Array<WordMatchMedia>;
690
690
  };
691
691
  export type SearchMultipleResponse = {
692
- results?: Array<WordMatch>;
693
- includes?: {
692
+ results: Array<WordMatch>;
693
+ includes: {
694
694
  /**
695
695
  * Media objects keyed by mediaId
696
696
  */
697
- media?: {
697
+ media: {
698
698
  [key: string]: Media;
699
699
  };
700
700
  };
@@ -702,7 +702,7 @@ export type SearchMultipleResponse = {
702
702
  /**
703
703
  * Resource to expand in media responses
704
704
  */
705
- export type MediaIncludeExpansion = 'media' | 'media.characters';
705
+ export type MediaIncludeExpansion = 'media.characters';
706
706
  /**
707
707
  * Opaque cursor pagination metadata
708
708
  */
@@ -869,6 +869,37 @@ export type Error409 = {
869
869
  export type MediaAutocompleteResponse = {
870
870
  media: Array<Media>;
871
871
  };
872
+ /**
873
+ * Segment with internal fields. For write operations (create, update) all fields are always populated.
874
+ * For GET, optional fields are only populated when requested via include[].
875
+ *
876
+ */
877
+ export type SegmentInternal = Segment & {
878
+ /**
879
+ * Storage backend for segment assets
880
+ */
881
+ storage?: 'LOCAL' | 'R2';
882
+ /**
883
+ * Hash identifier for the segment
884
+ */
885
+ hashedId?: string;
886
+ /**
887
+ * Base path in the storage backend
888
+ */
889
+ storageBasePath?: string;
890
+ /**
891
+ * Raw WD Tagger v3 classifier output used to derive content rating
892
+ */
893
+ ratingAnalysis?: {
894
+ [key: string]: unknown;
895
+ };
896
+ /**
897
+ * POS tokenization results keyed by engine (sudachi, unidic)
898
+ */
899
+ posAnalysis?: {
900
+ [key: string]: unknown;
901
+ };
902
+ };
872
903
  /**
873
904
  * Not Found error response
874
905
  */
@@ -972,38 +1003,9 @@ export type SegmentUpdateRequest = {
972
1003
  */
973
1004
  hashedId?: string;
974
1005
  };
975
- /**
976
- * Segment with internal fields (for internal API responses)
977
- */
978
- export type SegmentInternal = Segment & {
979
- /**
980
- * Storage backend for segment assets
981
- */
982
- storage?: 'LOCAL' | 'R2';
983
- /**
984
- * Hash identifier for the segment
985
- */
986
- hashedId?: string;
987
- /**
988
- * Base path in the storage backend
989
- */
990
- storageBasePath?: string;
991
- /**
992
- * Raw WD Tagger v3 classifier output used to derive content rating
993
- */
994
- ratingAnalysis?: {
995
- [key: string]: unknown;
996
- };
997
- /**
998
- * POS tokenization results keyed by engine (sudachi, unidic)
999
- */
1000
- posAnalysis?: {
1001
- [key: string]: unknown;
1002
- };
1003
- };
1004
1006
  export type SegmentContextResponse = {
1005
1007
  segments: Array<Segment>;
1006
- includes?: {
1008
+ includes: {
1007
1009
  /**
1008
1010
  * Media objects keyed by mediaId
1009
1011
  */
@@ -1064,8 +1066,8 @@ export type SeriesWithMedia = {
1064
1066
  /**
1065
1067
  * Position in the series (1-indexed)
1066
1068
  */
1067
- position?: number;
1068
- media?: Media;
1069
+ position: number;
1070
+ media: Media;
1069
1071
  }>;
1070
1072
  };
1071
1073
  /**
@@ -1099,11 +1101,11 @@ export type CharacterWithMedia = Character & {
1099
1101
  * All media this character appears in
1100
1102
  */
1101
1103
  mediaAppearances: Array<{
1102
- media?: Media;
1104
+ media: Media;
1103
1105
  /**
1104
1106
  * Character role in this media
1105
1107
  */
1106
- role?: 'MAIN' | 'SUPPORTING' | 'BACKGROUND';
1108
+ role: 'MAIN' | 'SUPPORTING' | 'BACKGROUND';
1107
1109
  }>;
1108
1110
  };
1109
1111
  /**
@@ -1114,6 +1116,7 @@ export type SeiyuuWithRoles = {
1114
1116
  * AniList staff ID
1115
1117
  */
1116
1118
  id: number;
1119
+ externalIds: ExternalId;
1117
1120
  /**
1118
1121
  * Japanese name of the voice actor
1119
1122
  */
@@ -1500,7 +1503,7 @@ export type Report = {
1500
1503
  /**
1501
1504
  * ID of the audit run that created this report (AUTO only)
1502
1505
  */
1503
- auditRunId?: number;
1506
+ auditRunId: number;
1504
1507
  /**
1505
1508
  * Reason for the report
1506
1509
  */
@@ -1508,11 +1511,11 @@ export type Report = {
1508
1511
  /**
1509
1512
  * Optional description with additional details
1510
1513
  */
1511
- description?: string;
1514
+ description: string;
1512
1515
  /**
1513
1516
  * Check-specific metrics (AUTO reports) or null (USER reports)
1514
1517
  */
1515
- data?: {
1518
+ data: {
1516
1519
  [key: string]: unknown;
1517
1520
  };
1518
1521
  /**
@@ -1522,11 +1525,11 @@ export type Report = {
1522
1525
  /**
1523
1526
  * Notes from the admin who reviewed the report
1524
1527
  */
1525
- adminNotes?: string;
1528
+ adminNotes: string;
1526
1529
  /**
1527
1530
  * ID of the user who submitted the report (USER reports only)
1528
1531
  */
1529
- userId?: number;
1532
+ userId: number;
1530
1533
  /**
1531
1534
  * When the report was created
1532
1535
  */
@@ -1534,7 +1537,7 @@ export type Report = {
1534
1537
  /**
1535
1538
  * When the report was last updated
1536
1539
  */
1537
- updatedAt?: string;
1540
+ updatedAt: string;
1538
1541
  };
1539
1542
  export type UserPreferences = {
1540
1543
  /**
@@ -1583,17 +1586,27 @@ export type UserPreferences = {
1583
1586
  /**
1584
1587
  * Type of user activity
1585
1588
  */
1586
- export type ActivityType = 'SEARCH' | 'ANKI_EXPORT' | 'SEGMENT_PLAY' | 'LIST_ADD_SEGMENT';
1589
+ export type ActivityType = 'SEARCH' | 'ANKI_EXPORT' | 'SEGMENT_PLAY' | 'LIST_ADD_SEGMENT' | 'SHARE';
1587
1590
  export type UserActivity = {
1588
1591
  id: number;
1589
1592
  activityType: ActivityType;
1590
- segmentUuid?: string;
1591
- mediaId?: number;
1592
- searchQuery?: string;
1593
- animeName?: string;
1594
- japaneseText?: string;
1593
+ segmentUuid: string;
1594
+ mediaId: number;
1595
+ searchQuery: string;
1596
+ mediaName: string;
1597
+ japaneseText: string;
1595
1598
  createdAt: string;
1596
1599
  };
1600
+ /**
1601
+ * Activity counts for a single day, broken down by type. Only types with at least 1 event are present.
1602
+ */
1603
+ export type HeatmapDayCounts = {
1604
+ SEARCH?: number;
1605
+ SEGMENT_PLAY?: number;
1606
+ ANKI_EXPORT?: number;
1607
+ LIST_ADD_SEGMENT?: number;
1608
+ SHARE?: number;
1609
+ };
1597
1610
  /**
1598
1611
  * User segment collection
1599
1612
  */
@@ -1606,10 +1619,6 @@ export type Collection = {
1606
1619
  * Name of the collection
1607
1620
  */
1608
1621
  name: string;
1609
- /**
1610
- * User ID who owns the collection
1611
- */
1612
- userId: number;
1613
1622
  /**
1614
1623
  * Visibility of the collection
1615
1624
  */
@@ -1617,15 +1626,15 @@ export type Collection = {
1617
1626
  /**
1618
1627
  * Number of segments in the collection
1619
1628
  */
1620
- segmentCount?: number;
1629
+ segmentCount: number;
1621
1630
  /**
1622
1631
  * When the collection was created
1623
1632
  */
1624
- createdAt?: string;
1633
+ createdAt: string;
1625
1634
  /**
1626
1635
  * When the collection was last updated
1627
1636
  */
1628
- updatedAt?: string;
1637
+ updatedAt: string;
1629
1638
  };
1630
1639
  export type UserExportCollection = Collection & {
1631
1640
  /**
@@ -1702,14 +1711,22 @@ export type CollectionWithSegments = {
1702
1711
  * Name of the collection
1703
1712
  */
1704
1713
  name: string;
1705
- /**
1706
- * User ID who owns the collection
1707
- */
1708
- userId: number;
1709
1714
  /**
1710
1715
  * Visibility of the collection
1711
1716
  */
1712
1717
  visibility: 'PUBLIC' | 'PRIVATE';
1718
+ /**
1719
+ * Number of segments in the collection
1720
+ */
1721
+ segmentCount: number;
1722
+ /**
1723
+ * When the collection was created
1724
+ */
1725
+ createdAt: string;
1726
+ /**
1727
+ * When the collection was last updated
1728
+ */
1729
+ updatedAt: string;
1713
1730
  /**
1714
1731
  * Saved segments with their search result data
1715
1732
  */
@@ -1717,18 +1734,18 @@ export type CollectionWithSegments = {
1717
1734
  /**
1718
1735
  * Position in the collection
1719
1736
  */
1720
- position?: number;
1737
+ position: number;
1721
1738
  /**
1722
1739
  * User annotation
1723
1740
  */
1724
- note?: string;
1725
- result?: Segment;
1741
+ note: string;
1742
+ result: Segment;
1726
1743
  }>;
1727
- includes?: {
1744
+ includes: {
1728
1745
  /**
1729
1746
  * Media objects keyed by mediaId
1730
1747
  */
1731
- media?: {
1748
+ media: {
1732
1749
  [key: string]: Media;
1733
1750
  };
1734
1751
  };
@@ -1766,44 +1783,44 @@ export type ReindexResponse = {
1766
1783
  /**
1767
1784
  * Whether the reindex operation completed successfully
1768
1785
  */
1769
- success?: boolean;
1786
+ success: boolean;
1770
1787
  /**
1771
1788
  * Human-readable message about the reindex operation
1772
1789
  */
1773
- message?: string;
1790
+ message: string;
1774
1791
  /**
1775
1792
  * Statistics about the reindex operation
1776
1793
  */
1777
- stats?: {
1794
+ stats: {
1778
1795
  /**
1779
1796
  * Total number of segments processed
1780
1797
  */
1781
- totalSegments?: number;
1798
+ totalSegments: number;
1782
1799
  /**
1783
1800
  * Number of segments successfully indexed
1784
1801
  */
1785
- successfulIndexes?: number;
1802
+ successfulIndexes: number;
1786
1803
  /**
1787
1804
  * Number of segments that failed to index
1788
1805
  */
1789
- failedIndexes?: number;
1806
+ failedIndexes: number;
1790
1807
  /**
1791
1808
  * Number of media items processed
1792
1809
  */
1793
- mediaProcessed?: number;
1810
+ mediaProcessed: number;
1794
1811
  };
1795
1812
  /**
1796
1813
  * Array of errors that occurred during reindexing (if any)
1797
1814
  */
1798
- errors?: Array<{
1815
+ errors: Array<{
1799
1816
  /**
1800
1817
  * ID of the segment that failed
1801
1818
  */
1802
- segmentId?: number;
1819
+ segmentId: number;
1803
1820
  /**
1804
1821
  * Error message
1805
1822
  */
1806
- error?: string;
1823
+ error: string;
1807
1824
  }>;
1808
1825
  };
1809
1826
  export type AdminReport = Report & {
@@ -1864,24 +1881,24 @@ export type MediaAudit = {
1864
1881
  /**
1865
1882
  * Schema for threshold fields (from registry)
1866
1883
  */
1867
- thresholdSchema?: Array<{
1868
- key?: string;
1869
- label?: string;
1870
- type?: 'number' | 'boolean';
1871
- default?: number | boolean;
1884
+ thresholdSchema: Array<{
1885
+ key: string;
1886
+ label: string;
1887
+ type: 'number' | 'boolean';
1888
+ default: number | boolean;
1872
1889
  min?: number;
1873
1890
  max?: number;
1874
1891
  }>;
1875
1892
  /**
1876
1893
  * Latest run info for this audit
1877
1894
  */
1878
- latestRun?: {
1879
- id?: number;
1880
- resultCount?: number;
1881
- createdAt?: string;
1895
+ latestRun: {
1896
+ id: number;
1897
+ resultCount: number;
1898
+ createdAt: string;
1882
1899
  };
1883
- createdAt?: string;
1884
- updatedAt?: string;
1900
+ createdAt: string;
1901
+ updatedAt: string;
1885
1902
  };
1886
1903
  export type RunAuditResponse = {
1887
1904
  /**
@@ -1951,7 +1968,7 @@ export type SearchErrors = {
1951
1968
  */
1952
1969
  400: Error400;
1953
1970
  /**
1954
- * Unauthorized
1971
+ * Unauthorized (API key)
1955
1972
  */
1956
1973
  401: Error401;
1957
1974
  /**
@@ -1987,7 +2004,7 @@ export type GetSearchStatsErrors = {
1987
2004
  */
1988
2005
  400: Error400;
1989
2006
  /**
1990
- * Unauthorized
2007
+ * Unauthorized (API key)
1991
2008
  */
1992
2009
  401: Error401;
1993
2010
  /**
@@ -2023,7 +2040,7 @@ export type SearchWordsErrors = {
2023
2040
  */
2024
2041
  400: Error400;
2025
2042
  /**
2026
- * Unauthorized
2043
+ * Unauthorized (API key)
2027
2044
  */
2028
2045
  401: Error401;
2029
2046
  /**
@@ -2068,7 +2085,7 @@ export type ListMediaData = {
2068
2085
  */
2069
2086
  query?: string;
2070
2087
  /**
2071
- * Resources to expand in the media response (`media.characters` implies `media`)
2088
+ * Resources to expand in the media response
2072
2089
  */
2073
2090
  include?: Array<MediaIncludeExpansion>;
2074
2091
  };
@@ -2080,7 +2097,7 @@ export type ListMediaErrors = {
2080
2097
  */
2081
2098
  400: Error400;
2082
2099
  /**
2083
- * Unauthorized
2100
+ * Unauthorized (API key)
2084
2101
  */
2085
2102
  401: Error401;
2086
2103
  /**
@@ -2116,7 +2133,7 @@ export type CreateMediaErrors = {
2116
2133
  */
2117
2134
  400: Error400;
2118
2135
  /**
2119
- * Unauthorized
2136
+ * Unauthorized (API key)
2120
2137
  */
2121
2138
  401: Error401;
2122
2139
  /**
@@ -2169,7 +2186,7 @@ export type AutocompleteMediaErrors = {
2169
2186
  */
2170
2187
  400: Error400;
2171
2188
  /**
2172
- * Unauthorized
2189
+ * Unauthorized (API key)
2173
2190
  */
2174
2191
  401: Error401;
2175
2192
  /**
@@ -2201,7 +2218,12 @@ export type GetSegmentByUuidData = {
2201
2218
  */
2202
2219
  uuid: string;
2203
2220
  };
2204
- query?: never;
2221
+ query?: {
2222
+ /**
2223
+ * Additional internal fields to include in the response
2224
+ */
2225
+ include?: Array<'ratingAnalysis' | 'posAnalysis' | 'hashedId' | 'storageBasePath' | 'storage'>;
2226
+ };
2205
2227
  url: '/v1/media/segments/{uuid}';
2206
2228
  };
2207
2229
  export type GetSegmentByUuidErrors = {
@@ -2210,7 +2232,7 @@ export type GetSegmentByUuidErrors = {
2210
2232
  */
2211
2233
  400: Error400;
2212
2234
  /**
2213
- * Unauthorized
2235
+ * Unauthorized (API key or session)
2214
2236
  */
2215
2237
  401: Error401;
2216
2238
  /**
@@ -2232,7 +2254,10 @@ export type GetSegmentByUuidErrors = {
2232
2254
  };
2233
2255
  export type GetSegmentByUuidError = GetSegmentByUuidErrors[keyof GetSegmentByUuidErrors];
2234
2256
  export type GetSegmentByUuidResponses = {
2235
- 200: Segment;
2257
+ /**
2258
+ * Single segment response with internal fields
2259
+ */
2260
+ 200: SegmentInternal;
2236
2261
  };
2237
2262
  export type GetSegmentByUuidResponse = GetSegmentByUuidResponses[keyof GetSegmentByUuidResponses];
2238
2263
  export type UpdateSegmentByUuidData = {
@@ -2252,7 +2277,7 @@ export type UpdateSegmentByUuidErrors = {
2252
2277
  */
2253
2278
  400: Error400;
2254
2279
  /**
2255
- * Unauthorized
2280
+ * Unauthorized (API key or session)
2256
2281
  */
2257
2282
  401: Error401;
2258
2283
  /**
@@ -2297,10 +2322,6 @@ export type GetSegmentContextData = {
2297
2322
  * Content ratings to include (omit for all ratings)
2298
2323
  */
2299
2324
  contentRating?: Array<ContentRating>;
2300
- /**
2301
- * Resources to expand in the response includes block
2302
- */
2303
- include?: Array<IncludeExpansion>;
2304
2325
  };
2305
2326
  url: '/v1/media/segments/{uuid}/context';
2306
2327
  };
@@ -2310,7 +2331,7 @@ export type GetSegmentContextErrors = {
2310
2331
  */
2311
2332
  400: Error400;
2312
2333
  /**
2313
- * Unauthorized
2334
+ * Unauthorized (API key or session)
2314
2335
  */
2315
2336
  401: Error401;
2316
2337
  /**
@@ -2363,7 +2384,7 @@ export type ListSeriesErrors = {
2363
2384
  */
2364
2385
  400: Error400;
2365
2386
  /**
2366
- * Unauthorized
2387
+ * Unauthorized (API key)
2367
2388
  */
2368
2389
  401: Error401;
2369
2390
  /**
@@ -2412,7 +2433,7 @@ export type CreateSeriesErrors = {
2412
2433
  */
2413
2434
  400: Error400;
2414
2435
  /**
2415
- * Unauthorized
2436
+ * Unauthorized (API key)
2416
2437
  */
2417
2438
  401: Error401;
2418
2439
  /**
@@ -2453,7 +2474,7 @@ export type DeleteSeriesErrors = {
2453
2474
  */
2454
2475
  400: Error400;
2455
2476
  /**
2456
- * Unauthorized
2477
+ * Unauthorized (API key)
2457
2478
  */
2458
2479
  401: Error401;
2459
2480
  /**
@@ -2491,7 +2512,7 @@ export type GetSeriesData = {
2491
2512
  };
2492
2513
  query?: {
2493
2514
  /**
2494
- * Resources to expand in the series response (`media.characters` implies `media`)
2515
+ * Resources to expand in the series response
2495
2516
  */
2496
2517
  include?: Array<MediaIncludeExpansion>;
2497
2518
  };
@@ -2503,7 +2524,7 @@ export type GetSeriesErrors = {
2503
2524
  */
2504
2525
  400: Error400;
2505
2526
  /**
2506
- * Unauthorized
2527
+ * Unauthorized (API key)
2507
2528
  */
2508
2529
  401: Error401;
2509
2530
  /**
@@ -2561,7 +2582,7 @@ export type UpdateSeriesErrors = {
2561
2582
  */
2562
2583
  400: Error400;
2563
2584
  /**
2564
- * Unauthorized
2585
+ * Unauthorized (API key)
2565
2586
  */
2566
2587
  401: Error401;
2567
2588
  /**
@@ -2615,7 +2636,7 @@ export type AddMediaToSeriesErrors = {
2615
2636
  */
2616
2637
  400: Error400;
2617
2638
  /**
2618
- * Unauthorized
2639
+ * Unauthorized (API key)
2619
2640
  */
2620
2641
  401: Error401;
2621
2642
  /**
@@ -2664,7 +2685,7 @@ export type RemoveMediaFromSeriesErrors = {
2664
2685
  */
2665
2686
  400: Error400;
2666
2687
  /**
2667
- * Unauthorized
2688
+ * Unauthorized (API key)
2668
2689
  */
2669
2690
  401: Error401;
2670
2691
  /**
@@ -2718,7 +2739,7 @@ export type UpdateSeriesMediaErrors = {
2718
2739
  */
2719
2740
  400: Error400;
2720
2741
  /**
2721
- * Unauthorized
2742
+ * Unauthorized (API key)
2722
2743
  */
2723
2744
  401: Error401;
2724
2745
  /**
@@ -2763,7 +2784,7 @@ export type GetCharacterErrors = {
2763
2784
  */
2764
2785
  400: Error400;
2765
2786
  /**
2766
- * Unauthorized
2787
+ * Unauthorized (API key)
2767
2788
  */
2768
2789
  401: Error401;
2769
2790
  /**
@@ -2808,7 +2829,7 @@ export type GetSeiyuuErrors = {
2808
2829
  */
2809
2830
  400: Error400;
2810
2831
  /**
2811
- * Unauthorized
2832
+ * Unauthorized (API key)
2812
2833
  */
2813
2834
  401: Error401;
2814
2835
  /**
@@ -2853,7 +2874,7 @@ export type DeleteMediaErrors = {
2853
2874
  */
2854
2875
  400: Error400;
2855
2876
  /**
2856
- * Unauthorized
2877
+ * Unauthorized (API key)
2857
2878
  */
2858
2879
  401: Error401;
2859
2880
  /**
@@ -2891,7 +2912,7 @@ export type GetMediaData = {
2891
2912
  };
2892
2913
  query?: {
2893
2914
  /**
2894
- * Resources to expand in the media response (`media.characters` implies `media`)
2915
+ * Resources to expand in the media response
2895
2916
  */
2896
2917
  include?: Array<MediaIncludeExpansion>;
2897
2918
  };
@@ -2903,7 +2924,7 @@ export type GetMediaErrors = {
2903
2924
  */
2904
2925
  400: Error400;
2905
2926
  /**
2906
- * Unauthorized
2927
+ * Unauthorized (API key)
2907
2928
  */
2908
2929
  401: Error401;
2909
2930
  /**
@@ -2948,7 +2969,7 @@ export type UpdateMediaErrors = {
2948
2969
  */
2949
2970
  400: Error400;
2950
2971
  /**
2951
- * Unauthorized
2972
+ * Unauthorized (API key)
2952
2973
  */
2953
2974
  401: Error401;
2954
2975
  /**
@@ -3002,7 +3023,7 @@ export type ListEpisodesErrors = {
3002
3023
  */
3003
3024
  400: Error400;
3004
3025
  /**
3005
- * Unauthorized
3026
+ * Unauthorized (API key)
3006
3027
  */
3007
3028
  401: Error401;
3008
3029
  /**
@@ -3047,7 +3068,7 @@ export type CreateEpisodeErrors = {
3047
3068
  */
3048
3069
  400: Error400;
3049
3070
  /**
3050
- * Unauthorized
3071
+ * Unauthorized (API key)
3051
3072
  */
3052
3073
  401: Error401;
3053
3074
  /**
@@ -3100,7 +3121,7 @@ export type DeleteEpisodeErrors = {
3100
3121
  */
3101
3122
  400: Error400;
3102
3123
  /**
3103
- * Unauthorized
3124
+ * Unauthorized (API key)
3104
3125
  */
3105
3126
  401: Error401;
3106
3127
  /**
@@ -3149,7 +3170,7 @@ export type GetEpisodeErrors = {
3149
3170
  */
3150
3171
  400: Error400;
3151
3172
  /**
3152
- * Unauthorized
3173
+ * Unauthorized (API key)
3153
3174
  */
3154
3175
  401: Error401;
3155
3176
  /**
@@ -3198,7 +3219,7 @@ export type UpdateEpisodeErrors = {
3198
3219
  */
3199
3220
  400: Error400;
3200
3221
  /**
3201
- * Unauthorized
3222
+ * Unauthorized (API key)
3202
3223
  */
3203
3224
  401: Error401;
3204
3225
  /**
@@ -3256,7 +3277,7 @@ export type ListSegmentsErrors = {
3256
3277
  */
3257
3278
  400: Error400;
3258
3279
  /**
3259
- * Unauthorized
3280
+ * Unauthorized (API key)
3260
3281
  */
3261
3282
  401: Error401;
3262
3283
  /**
@@ -3311,7 +3332,7 @@ export type CreateSegmentErrors = {
3311
3332
  */
3312
3333
  400: Error400;
3313
3334
  /**
3314
- * Unauthorized
3335
+ * Unauthorized (API key)
3315
3336
  */
3316
3337
  401: Error401;
3317
3338
  /**
@@ -3368,7 +3389,7 @@ export type DeleteSegmentErrors = {
3368
3389
  */
3369
3390
  400: Error400;
3370
3391
  /**
3371
- * Unauthorized
3392
+ * Unauthorized (API key)
3372
3393
  */
3373
3394
  401: Error401;
3374
3395
  /**
@@ -3421,7 +3442,7 @@ export type GetSegmentErrors = {
3421
3442
  */
3422
3443
  400: Error400;
3423
3444
  /**
3424
- * Unauthorized
3445
+ * Unauthorized (API key)
3425
3446
  */
3426
3447
  401: Error401;
3427
3448
  /**
@@ -3474,7 +3495,7 @@ export type UpdateSegmentErrors = {
3474
3495
  */
3475
3496
  400: Error400;
3476
3497
  /**
3477
- * Unauthorized
3498
+ * Unauthorized (API key)
3478
3499
  */
3479
3500
  401: Error401;
3480
3501
  /**
@@ -3510,7 +3531,7 @@ export type GetUserQuotaData = {
3510
3531
  };
3511
3532
  export type GetUserQuotaErrors = {
3512
3533
  /**
3513
- * Unauthorized
3534
+ * Unauthorized (session)
3514
3535
  */
3515
3536
  401: Error401;
3516
3537
  /**
@@ -3546,7 +3567,7 @@ export type CreateUserReportErrors = {
3546
3567
  */
3547
3568
  400: Error400;
3548
3569
  /**
3549
- * Unauthorized
3570
+ * Unauthorized (session)
3550
3571
  */
3551
3572
  401: Error401;
3552
3573
  /**
@@ -3574,7 +3595,7 @@ export type GetUserPreferencesData = {
3574
3595
  };
3575
3596
  export type GetUserPreferencesErrors = {
3576
3597
  /**
3577
- * Unauthorized
3598
+ * Unauthorized (session)
3578
3599
  */
3579
3600
  401: Error401;
3580
3601
  /**
@@ -3598,7 +3619,7 @@ export type UpdateUserPreferencesData = {
3598
3619
  };
3599
3620
  export type UpdateUserPreferencesErrors = {
3600
3621
  /**
3601
- * Unauthorized
3622
+ * Unauthorized (session)
3602
3623
  */
3603
3624
  401: Error401;
3604
3625
  /**
@@ -3627,7 +3648,7 @@ export type DeleteUserActivityData = {
3627
3648
  };
3628
3649
  export type DeleteUserActivityErrors = {
3629
3650
  /**
3630
- * Unauthorized
3651
+ * Unauthorized (session)
3631
3652
  */
3632
3653
  401: Error401;
3633
3654
  /**
@@ -3670,7 +3691,7 @@ export type ListUserActivityData = {
3670
3691
  };
3671
3692
  export type ListUserActivityErrors = {
3672
3693
  /**
3673
- * Unauthorized
3694
+ * Unauthorized (session)
3674
3695
  */
3675
3696
  401: Error401;
3676
3697
  /**
@@ -3691,10 +3712,10 @@ export type ListUserActivityResponses = {
3691
3712
  export type ListUserActivityResponse = ListUserActivityResponses[keyof ListUserActivityResponses];
3692
3713
  export type TrackUserActivityData = {
3693
3714
  body: {
3694
- activityType: 'SEGMENT_PLAY';
3715
+ activityType: 'SEGMENT_PLAY' | 'SHARE';
3695
3716
  segmentUuid?: string;
3696
3717
  mediaId?: number;
3697
- animeName?: string;
3718
+ mediaName?: string;
3698
3719
  japaneseText?: string;
3699
3720
  };
3700
3721
  path?: never;
@@ -3707,7 +3728,7 @@ export type TrackUserActivityErrors = {
3707
3728
  */
3708
3729
  400: Error400;
3709
3730
  /**
3710
- * Unauthorized
3731
+ * Unauthorized (session)
3711
3732
  */
3712
3733
  401: Error401;
3713
3734
  /**
@@ -3731,16 +3752,12 @@ export type GetUserActivityHeatmapData = {
3731
3752
  * Number of days to include in the heatmap
3732
3753
  */
3733
3754
  days?: number;
3734
- /**
3735
- * Filter by activity type
3736
- */
3737
- activityType?: ActivityType;
3738
3755
  };
3739
3756
  url: '/v1/user/activity/heatmap';
3740
3757
  };
3741
3758
  export type GetUserActivityHeatmapErrors = {
3742
3759
  /**
3743
- * Unauthorized
3760
+ * Unauthorized (session)
3744
3761
  */
3745
3762
  401: Error401;
3746
3763
  /**
@@ -3755,10 +3772,10 @@ export type GetUserActivityHeatmapResponses = {
3755
3772
  */
3756
3773
  200: {
3757
3774
  /**
3758
- * Map of YYYY-MM-DD date strings to activity activityByDay
3775
+ * Map of YYYY-MM-DD date strings to per-type activity counts
3759
3776
  */
3760
3777
  activityByDay: {
3761
- [key: string]: number;
3778
+ [key: string]: HeatmapDayCounts;
3762
3779
  };
3763
3780
  };
3764
3781
  };
@@ -3776,7 +3793,7 @@ export type GetUserActivityStatsData = {
3776
3793
  };
3777
3794
  export type GetUserActivityStatsErrors = {
3778
3795
  /**
3779
- * Unauthorized
3796
+ * Unauthorized (session)
3780
3797
  */
3781
3798
  401: Error401;
3782
3799
  /**
@@ -3794,6 +3811,7 @@ export type GetUserActivityStatsResponses = {
3794
3811
  totalExports: number;
3795
3812
  totalPlays: number;
3796
3813
  totalListAdds: number;
3814
+ totalShares: number;
3797
3815
  topMedia: Array<{
3798
3816
  mediaId: number;
3799
3817
  count: number;
@@ -3814,7 +3832,7 @@ export type DeleteUserActivityByDateData = {
3814
3832
  };
3815
3833
  export type DeleteUserActivityByDateErrors = {
3816
3834
  /**
3817
- * Unauthorized
3835
+ * Unauthorized (session)
3818
3836
  */
3819
3837
  401: Error401;
3820
3838
  /**
@@ -3845,15 +3863,13 @@ export type DeleteUserActivityByIdData = {
3845
3863
  };
3846
3864
  export type DeleteUserActivityByIdErrors = {
3847
3865
  /**
3848
- * Unauthorized
3866
+ * Unauthorized (session)
3849
3867
  */
3850
3868
  401: Error401;
3851
3869
  /**
3852
- * Activity not found
3870
+ * Not Found
3853
3871
  */
3854
- 404: {
3855
- message?: string;
3856
- };
3872
+ 404: Error404;
3857
3873
  /**
3858
3874
  * Internal Server Error
3859
3875
  */
@@ -3875,7 +3891,7 @@ export type ExportUserDataData = {
3875
3891
  };
3876
3892
  export type ExportUserDataErrors = {
3877
3893
  /**
3878
- * Unauthorized
3894
+ * Unauthorized (session)
3879
3895
  */
3880
3896
  401: Error401;
3881
3897
  /**
@@ -3899,7 +3915,7 @@ export type ListUserLabsData = {
3899
3915
  };
3900
3916
  export type ListUserLabsErrors = {
3901
3917
  /**
3902
- * Unauthorized
3918
+ * Unauthorized (session)
3903
3919
  */
3904
3920
  401: Error401;
3905
3921
  /**
@@ -3928,7 +3944,7 @@ export type UnenrollUserLabData = {
3928
3944
  };
3929
3945
  export type UnenrollUserLabErrors = {
3930
3946
  /**
3931
- * Unauthorized
3947
+ * Unauthorized (session)
3932
3948
  */
3933
3949
  401: Error401;
3934
3950
  /**
@@ -3961,7 +3977,7 @@ export type EnrollUserLabData = {
3961
3977
  };
3962
3978
  export type EnrollUserLabErrors = {
3963
3979
  /**
3964
- * Unauthorized
3980
+ * Unauthorized (session)
3965
3981
  */
3966
3982
  401: Error401;
3967
3983
  /**
@@ -3993,12 +4009,6 @@ export type ListCollectionsData = {
3993
4009
  * Opaque pagination cursor token
3994
4010
  */
3995
4011
  cursor?: string;
3996
- /**
3997
- * Page number (1-indexed)
3998
- *
3999
- * @deprecated
4000
- */
4001
- page?: number;
4002
4012
  /**
4003
4013
  * Items per page
4004
4014
  */
@@ -4012,7 +4022,7 @@ export type ListCollectionsErrors = {
4012
4022
  */
4013
4023
  400: Error400;
4014
4024
  /**
4015
- * Unauthorized
4025
+ * Unauthorized (session)
4016
4026
  */
4017
4027
  401: Error401;
4018
4028
  /**
@@ -4048,7 +4058,7 @@ export type CreateCollectionErrors = {
4048
4058
  */
4049
4059
  400: Error400;
4050
4060
  /**
4051
- * Unauthorized
4061
+ * Unauthorized (session)
4052
4062
  */
4053
4063
  401: Error401;
4054
4064
  /**
@@ -4089,7 +4099,7 @@ export type DeleteCollectionErrors = {
4089
4099
  */
4090
4100
  400: Error400;
4091
4101
  /**
4092
- * Unauthorized
4102
+ * Unauthorized (session)
4093
4103
  */
4094
4104
  401: Error401;
4095
4105
  /**
@@ -4130,12 +4140,6 @@ export type GetCollectionData = {
4130
4140
  * Opaque pagination cursor token for paginated segments
4131
4141
  */
4132
4142
  cursor?: string;
4133
- /**
4134
- * Page number (1-indexed)
4135
- *
4136
- * @deprecated
4137
- */
4138
- page?: number;
4139
4143
  /**
4140
4144
  * Items per page
4141
4145
  */
@@ -4149,7 +4153,7 @@ export type GetCollectionErrors = {
4149
4153
  */
4150
4154
  400: Error400;
4151
4155
  /**
4152
- * Unauthorized
4156
+ * Unauthorized (session)
4153
4157
  */
4154
4158
  401: Error401;
4155
4159
  /**
@@ -4197,7 +4201,7 @@ export type UpdateCollectionErrors = {
4197
4201
  */
4198
4202
  400: Error400;
4199
4203
  /**
4200
- * Unauthorized
4204
+ * Unauthorized (session)
4201
4205
  */
4202
4206
  401: Error401;
4203
4207
  /**
@@ -4251,7 +4255,7 @@ export type AddSegmentToCollectionErrors = {
4251
4255
  */
4252
4256
  400: Error400;
4253
4257
  /**
4254
- * Unauthorized
4258
+ * Unauthorized (session)
4255
4259
  */
4256
4260
  401: Error401;
4257
4261
  /**
@@ -4300,7 +4304,7 @@ export type RemoveSegmentFromCollectionErrors = {
4300
4304
  */
4301
4305
  400: Error400;
4302
4306
  /**
4303
- * Unauthorized
4307
+ * Unauthorized (session)
4304
4308
  */
4305
4309
  401: Error401;
4306
4310
  /**
@@ -4358,7 +4362,7 @@ export type UpdateCollectionSegmentErrors = {
4358
4362
  */
4359
4363
  400: Error400;
4360
4364
  /**
4361
- * Unauthorized
4365
+ * Unauthorized (session)
4362
4366
  */
4363
4367
  401: Error401;
4364
4368
  /**
@@ -4412,7 +4416,7 @@ export type SearchCollectionSegmentsErrors = {
4412
4416
  */
4413
4417
  400: Error400;
4414
4418
  /**
4415
- * Unauthorized
4419
+ * Unauthorized (session)
4416
4420
  */
4417
4421
  401: Error401;
4418
4422
  /**
@@ -4457,7 +4461,7 @@ export type GetCollectionStatsErrors = {
4457
4461
  */
4458
4462
  400: Error400;
4459
4463
  /**
4460
- * Unauthorized
4464
+ * Unauthorized (session)
4461
4465
  */
4462
4466
  401: Error401;
4463
4467
  /**
@@ -4493,7 +4497,7 @@ export type GetAdminDashboardData = {
4493
4497
  };
4494
4498
  export type GetAdminDashboardErrors = {
4495
4499
  /**
4496
- * Unauthorized
4500
+ * Unauthorized (session)
4497
4501
  */
4498
4502
  401: Error401;
4499
4503
  /**
@@ -4585,7 +4589,7 @@ export type GetAdminHealthData = {
4585
4589
  };
4586
4590
  export type GetAdminHealthErrors = {
4587
4591
  /**
4588
- * Unauthorized
4592
+ * Unauthorized (session)
4589
4593
  */
4590
4594
  401: Error401;
4591
4595
  /**
@@ -4647,7 +4651,7 @@ export type TriggerReindexErrors = {
4647
4651
  */
4648
4652
  400: Error400;
4649
4653
  /**
4650
- * Unauthorized
4654
+ * Unauthorized (session)
4651
4655
  */
4652
4656
  401: Error401;
4653
4657
  /**
@@ -4683,7 +4687,7 @@ export type ListAdminQueueStatsErrors = {
4683
4687
  */
4684
4688
  400: Error400;
4685
4689
  /**
4686
- * Unauthorized
4690
+ * Unauthorized (session)
4687
4691
  */
4688
4692
  401: Error401;
4689
4693
  /**
@@ -4705,15 +4709,15 @@ export type ListAdminQueueStatsResponses = {
4705
4709
  * Queue statistics retrieved successfully
4706
4710
  */
4707
4711
  200: Array<{
4708
- queue?: string;
4712
+ queue: string;
4709
4713
  /**
4710
4714
  * Number of jobs currently pending/active
4711
4715
  */
4712
- stuckCount?: number;
4716
+ stuckCount: number;
4713
4717
  /**
4714
4718
  * Number of failed jobs
4715
4719
  */
4716
- failedCount?: number;
4720
+ failedCount: number;
4717
4721
  }>;
4718
4722
  };
4719
4723
  export type ListAdminQueueStatsResponse = ListAdminQueueStatsResponses[keyof ListAdminQueueStatsResponses];
@@ -4734,7 +4738,7 @@ export type GetAdminQueueErrors = {
4734
4738
  */
4735
4739
  400: Error400;
4736
4740
  /**
4737
- * Unauthorized
4741
+ * Unauthorized (session)
4738
4742
  */
4739
4743
  401: Error401;
4740
4744
  /**
@@ -4819,7 +4823,7 @@ export type ListAdminQueueFailedErrors = {
4819
4823
  */
4820
4824
  400: Error400;
4821
4825
  /**
4822
- * Unauthorized
4826
+ * Unauthorized (session)
4823
4827
  */
4824
4828
  401: Error401;
4825
4829
  /**
@@ -4844,19 +4848,19 @@ export type ListAdminQueueFailedResponses = {
4844
4848
  /**
4845
4849
  * Job ID
4846
4850
  */
4847
- id?: string;
4851
+ id: string;
4848
4852
  /**
4849
4853
  * The segment ID that failed to sync
4850
4854
  */
4851
- segmentId?: number;
4855
+ segmentId: number;
4852
4856
  /**
4853
4857
  * Error message from the last attempt
4854
4858
  */
4855
- error?: string;
4859
+ error: string;
4856
4860
  /**
4857
4861
  * When the job was created
4858
4862
  */
4859
- createdOn?: string;
4863
+ createdOn: string;
4860
4864
  }>;
4861
4865
  };
4862
4866
  export type ListAdminQueueFailedResponse = ListAdminQueueFailedResponses[keyof ListAdminQueueFailedResponses];
@@ -4877,7 +4881,7 @@ export type RetryAdminQueueFailedErrors = {
4877
4881
  */
4878
4882
  400: Error400;
4879
4883
  /**
4880
- * Unauthorized
4884
+ * Unauthorized (session)
4881
4885
  */
4882
4886
  401: Error401;
4883
4887
  /**
@@ -4899,12 +4903,12 @@ export type RetryAdminQueueFailedResponses = {
4899
4903
  * Jobs queued for retry
4900
4904
  */
4901
4905
  200: {
4902
- success?: boolean;
4906
+ success: boolean;
4903
4907
  /**
4904
4908
  * Number of jobs queued for retry
4905
4909
  */
4906
- retriedCount?: number;
4907
- message?: string;
4910
+ retriedCount: number;
4911
+ message: string;
4908
4912
  };
4909
4913
  };
4910
4914
  export type RetryAdminQueueFailedResponse = RetryAdminQueueFailedResponses[keyof RetryAdminQueueFailedResponses];
@@ -4925,7 +4929,7 @@ export type PurgeAdminQueueFailedErrors = {
4925
4929
  */
4926
4930
  400: Error400;
4927
4931
  /**
4928
- * Unauthorized
4932
+ * Unauthorized (session)
4929
4933
  */
4930
4934
  401: Error401;
4931
4935
  /**
@@ -4947,12 +4951,12 @@ export type PurgeAdminQueueFailedResponses = {
4947
4951
  * Failed jobs purged successfully
4948
4952
  */
4949
4953
  200: {
4950
- success?: boolean;
4954
+ success: boolean;
4951
4955
  /**
4952
4956
  * Number of failed jobs deleted
4953
4957
  */
4954
- purgedCount?: number;
4955
- message?: string;
4958
+ purgedCount: number;
4959
+ message: string;
4956
4960
  };
4957
4961
  };
4958
4962
  export type PurgeAdminQueueFailedResponse = PurgeAdminQueueFailedResponses[keyof PurgeAdminQueueFailedResponses];
@@ -4963,10 +4967,6 @@ export type ClearAdminImpersonationData = {
4963
4967
  url: '/v1/admin/impersonation';
4964
4968
  };
4965
4969
  export type ClearAdminImpersonationErrors = {
4966
- /**
4967
- * Unauthorized
4968
- */
4969
- 401: Error401;
4970
4970
  /**
4971
4971
  * Forbidden
4972
4972
  */
@@ -5006,10 +5006,6 @@ export type ImpersonateAdminUserErrors = {
5006
5006
  * Bad Request
5007
5007
  */
5008
5008
  400: Error400;
5009
- /**
5010
- * Unauthorized
5011
- */
5012
- 401: Error401;
5013
5009
  /**
5014
5010
  * Forbidden
5015
5011
  */
@@ -5087,7 +5083,7 @@ export type ListAdminReportsData = {
5087
5083
  };
5088
5084
  export type ListAdminReportsErrors = {
5089
5085
  /**
5090
- * Unauthorized
5086
+ * Unauthorized (session)
5091
5087
  */
5092
5088
  401: Error401;
5093
5089
  /**
@@ -5128,7 +5124,7 @@ export type UpdateAdminReportErrors = {
5128
5124
  */
5129
5125
  400: Error400;
5130
5126
  /**
5131
- * Unauthorized
5127
+ * Unauthorized (session)
5132
5128
  */
5133
5129
  401: Error401;
5134
5130
  /**
@@ -5164,7 +5160,7 @@ export type ListAdminMediaAuditsData = {
5164
5160
  };
5165
5161
  export type ListAdminMediaAuditsErrors = {
5166
5162
  /**
5167
- * Unauthorized
5163
+ * Unauthorized (session)
5168
5164
  */
5169
5165
  401: Error401;
5170
5166
  /**
@@ -5216,7 +5212,7 @@ export type UpdateAdminMediaAuditErrors = {
5216
5212
  */
5217
5213
  400: Error400;
5218
5214
  /**
5219
- * Unauthorized
5215
+ * Unauthorized (session)
5220
5216
  */
5221
5217
  401: Error401;
5222
5218
  /**
@@ -5262,7 +5258,7 @@ export type RunAdminMediaAuditData = {
5262
5258
  };
5263
5259
  export type RunAdminMediaAuditErrors = {
5264
5260
  /**
5265
- * Unauthorized
5261
+ * Unauthorized (session)
5266
5262
  */
5267
5263
  401: Error401;
5268
5264
  /**
@@ -5311,7 +5307,7 @@ export type ListAdminMediaAuditRunsData = {
5311
5307
  };
5312
5308
  export type ListAdminMediaAuditRunsErrors = {
5313
5309
  /**
5314
- * Unauthorized
5310
+ * Unauthorized (session)
5315
5311
  */
5316
5312
  401: Error401;
5317
5313
  /**
@@ -5351,7 +5347,7 @@ export type GetAdminMediaAuditRunData = {
5351
5347
  };
5352
5348
  export type GetAdminMediaAuditRunErrors = {
5353
5349
  /**
5354
- * Unauthorized
5350
+ * Unauthorized (session)
5355
5351
  */
5356
5352
  401: Error401;
5357
5353
  /**