e621 3.4.0 → 3.5.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.
Files changed (62) hide show
  1. package/README.md +23 -0
  2. package/dist/browser/e621.js +1006 -223
  3. package/dist/browser/e621.js.map +4 -4
  4. package/dist/lib/client.d.ts +61 -0
  5. package/dist/lib/client.js +37 -4
  6. package/dist/lib/errors.d.ts +13 -0
  7. package/dist/lib/errors.js +27 -1
  8. package/dist/lib/generated/schemas.d.ts +218 -9
  9. package/dist/lib/generated/schemas.js +272 -16
  10. package/dist/lib/generated/sdk.d.ts +77 -7
  11. package/dist/lib/generated/sdk.js +134 -9
  12. package/dist/lib/generated/types.d.ts +907 -255
  13. package/dist/lib/index.d.ts +1 -1
  14. package/dist/lib/models/Artist.d.ts +1 -0
  15. package/dist/lib/models/Artist.js +2 -1
  16. package/dist/lib/models/PostFlag.d.ts +2 -1
  17. package/dist/lib/models/PostFlag.js +1 -1
  18. package/dist/lib/models/SavedSearch.d.ts +37 -0
  19. package/dist/lib/models/SavedSearch.js +55 -0
  20. package/dist/lib/models/TagSubscription.d.ts +25 -0
  21. package/dist/lib/models/TagSubscription.js +36 -0
  22. package/dist/lib/models/Takedown.d.ts +13 -2
  23. package/dist/lib/models/Takedown.js +21 -2
  24. package/dist/lib/models/User.d.ts +1 -1
  25. package/dist/lib/models/UserNameChangeRequest.d.ts +1 -1
  26. package/dist/lib/models/index.d.ts +2 -0
  27. package/dist/lib/models/index.js +3 -1
  28. package/dist/lib/models/posts/Actions.d.ts +6 -6
  29. package/dist/lib/modules/Artists.d.ts +2 -0
  30. package/dist/lib/modules/Artists.js +3 -1
  31. package/dist/lib/modules/Base.js +4 -2
  32. package/dist/lib/modules/DText.d.ts +2 -3
  33. package/dist/lib/modules/DText.js +5 -6
  34. package/dist/lib/modules/PostFlags.d.ts +6 -3
  35. package/dist/lib/modules/PostFlags.js +2 -2
  36. package/dist/lib/modules/PostVersions.d.ts +2 -1
  37. package/dist/lib/modules/PostVersions.js +3 -2
  38. package/dist/lib/modules/Posts.d.ts +6 -6
  39. package/dist/lib/modules/Posts.js +8 -14
  40. package/dist/lib/modules/SavedSearches.d.ts +94 -0
  41. package/dist/lib/modules/SavedSearches.js +162 -0
  42. package/dist/lib/modules/SearchTrendBlacklists.js +1 -1
  43. package/dist/lib/modules/StaffUsers.d.ts +1 -1
  44. package/dist/lib/modules/StaffUsers.js +4 -2
  45. package/dist/lib/modules/TagAliases.d.ts +1 -1
  46. package/dist/lib/modules/TagAliases.js +3 -2
  47. package/dist/lib/modules/TagImplications.d.ts +1 -1
  48. package/dist/lib/modules/TagImplications.js +3 -2
  49. package/dist/lib/modules/TagSubscriptions.d.ts +49 -0
  50. package/dist/lib/modules/TagSubscriptions.js +82 -0
  51. package/dist/lib/modules/Takedowns.d.ts +16 -2
  52. package/dist/lib/modules/Takedowns.js +25 -3
  53. package/dist/lib/modules/Uploads.d.ts +29 -2
  54. package/dist/lib/modules/Uploads.js +47 -11
  55. package/dist/lib/modules/UserNameChangeRequests.d.ts +2 -2
  56. package/dist/lib/modules/UserNameChangeRequests.js +5 -3
  57. package/dist/lib/modules/index.d.ts +6 -0
  58. package/dist/lib/modules/index.js +5 -1
  59. package/dist/lib/standalone.d.ts +1 -1
  60. package/dist/lib/version.d.ts +1 -1
  61. package/dist/lib/version.js +1 -1
  62. package/package.json +1 -1
@@ -334,6 +334,12 @@ export type ForumPost = {
334
334
  updated_at: string;
335
335
  warning_type: WarningType;
336
336
  warning_user_id: number | null;
337
+ /**
338
+ * Net votes divided by total votes, from -1 to 1. Null if the post has never been voted on.
339
+ */
340
+ vote_score: string | null;
341
+ creator_name: string;
342
+ updater_name: string;
337
343
  };
338
344
  export type ForumPostVote = {
339
345
  id: number;
@@ -356,6 +362,9 @@ export type ForumTopic = {
356
362
  created_at: string;
357
363
  updated_at: string;
358
364
  category_id: number;
365
+ last_bumped_at: string;
366
+ creator_name: string;
367
+ updater_name: string;
359
368
  };
360
369
  export type FullCurrentUser = CurrentUser & FullUser;
361
370
  export type FullUser = User & {
@@ -486,12 +495,14 @@ export type LegacyPost = {
486
495
  width: number;
487
496
  height: number;
488
497
  url: string | null;
498
+ alt?: string | null;
489
499
  };
490
500
  sample: {
491
501
  has: boolean;
492
502
  height: number | null;
493
503
  width: number | null;
494
504
  url: string | null;
505
+ alt?: string | null;
495
506
  alternates: {
496
507
  has?: boolean;
497
508
  original?: PostSampleAlternate;
@@ -792,6 +803,18 @@ export type PostFiles = {
792
803
  original: PostFilesOriginal;
793
804
  preview: PostFilesPreview;
794
805
  sample: PostFilesSample;
806
+ video?: {
807
+ has: boolean;
808
+ original: PostSampleAlternate;
809
+ variants: {
810
+ webm?: PostSampleAlternate;
811
+ mp4?: PostSampleAlternate;
812
+ };
813
+ samples: {
814
+ '480p'?: PostSampleAlternate;
815
+ '720p'?: PostSampleAlternate;
816
+ };
817
+ };
795
818
  };
796
819
  export type PostFilesMeta = {
797
820
  md5: string;
@@ -879,11 +902,11 @@ export type PostReplacement = {
879
902
  };
880
903
  export type PostSampleAlternate = {
881
904
  fps: number;
882
- codec: string;
905
+ codec: string | null;
883
906
  size: number;
884
907
  width: number;
885
908
  height: number;
886
- url: string;
909
+ url: string | null;
887
910
  };
888
911
  export type PostSet = {
889
912
  id: number;
@@ -904,6 +927,7 @@ export type PostStats = {
904
927
  is_favorited: boolean;
905
928
  vote: UpDownMehVote;
906
929
  comment_count: number;
930
+ hotness: number;
907
931
  };
908
932
  export type PostStatsScore = {
909
933
  up: number;
@@ -924,6 +948,10 @@ export type PostVersion = {
924
948
  locked_tags: string | null;
925
949
  added_tags: Array<string>;
926
950
  removed_tags: Array<string>;
951
+ /**
952
+ * The tag changes as the user submitted them, before aliases, implications, and automatic tags. Removed tags are prefixed with `-`. May include metatags such as `rating:`, `pool:`, `parent:`, and `source:`.
953
+ */
954
+ original_tags: Array<string>;
927
955
  added_locked_tags: Array<string>;
928
956
  removed_locked_tags: Array<string>;
929
957
  rating_changed: boolean;
@@ -1014,6 +1042,30 @@ export type RisingSearchTrend = {
1014
1042
  post_count: number;
1015
1043
  category: TagCategory;
1016
1044
  };
1045
+ export type SavedSearch = {
1046
+ id: number;
1047
+ /**
1048
+ * Empty for the subscription search, its tags are managed through tag subscriptions.
1049
+ */
1050
+ query: string;
1051
+ name: string | null;
1052
+ is_tracked: boolean;
1053
+ /**
1054
+ * True for the search that holds the user's tag subscriptions.
1055
+ */
1056
+ is_subscription: boolean;
1057
+ last_seen_post_id: number | null;
1058
+ created_at: string;
1059
+ updated_at: string;
1060
+ /**
1061
+ * Only present on the subscription search.
1062
+ */
1063
+ tag_count?: number;
1064
+ /**
1065
+ * New posts since the search was last seen, capped at 100. Null for untracked searches, when no counts are cached, or when the search could not be evaluated.
1066
+ */
1067
+ new_count: number | null;
1068
+ };
1017
1069
  export type SearchTrend = {
1018
1070
  tag: string;
1019
1071
  count: number;
@@ -1235,6 +1287,13 @@ export type TagPreview = {
1235
1287
  alias?: string;
1236
1288
  implies?: Array<string>;
1237
1289
  };
1290
+ export type TagSubscription = {
1291
+ id: number;
1292
+ tag_id: number;
1293
+ created_at: string;
1294
+ tag_name: string;
1295
+ category: TagCategory;
1296
+ };
1238
1297
  export type TagTypeVersion = {
1239
1298
  id: number;
1240
1299
  created_at: string;
@@ -1267,6 +1326,7 @@ export type ThumbnailPost = {
1267
1326
  width: number;
1268
1327
  height: number;
1269
1328
  size: number;
1329
+ duration: number | null;
1270
1330
  preview_url: string | null;
1271
1331
  preview_webp: string | null;
1272
1332
  sample_url: string | null;
@@ -1324,16 +1384,21 @@ export type Upload = {
1324
1384
  uploader_id: number;
1325
1385
  tag_string: string;
1326
1386
  /**
1327
- * Note: The "error" status will be proceeded by an error, ex: "error: RuntimeError - No file or source URL provided"
1387
+ * Note: The "duplicate" status will be followed by the duplicate post's id, ex: "duplicate: 123"
1328
1388
  *
1329
1389
  */
1330
- status: 'completed' | 'duplicate' | 'error' | 'processing' | 'pending';
1331
- backtrace: string | null;
1390
+ status: 'completed' | `duplicate: ${number}` | 'failed' | 'processing' | 'queued' | 'pending';
1391
+ /**
1392
+ * Only visible to Staff+.
1393
+ */
1394
+ backtrace?: string | null;
1332
1395
  post_id: number | null;
1333
1396
  /**
1397
+ * Only visible to Staff+.
1398
+ *
1334
1399
  * @deprecated
1335
1400
  */
1336
- md5_confirmation: string | null;
1401
+ md5_confirmation?: string | null;
1337
1402
  created_at: string;
1338
1403
  updated_at: string;
1339
1404
  parent_id: number | null;
@@ -1343,7 +1408,24 @@ export type Upload = {
1343
1408
  image_width: number | null;
1344
1409
  image_height: number | null;
1345
1410
  description: string;
1411
+ /**
1412
+ * The step currently being processed.
1413
+ */
1414
+ processing_step: 'integrity' | 'thumbnail' | 'sound' | 'post' | null;
1415
+ error_message: string | null;
1416
+ warning_messages: Array<string>;
1417
+ is_animated: boolean;
1418
+ duration: string | null;
1419
+ has_sound: boolean;
1420
+ locked_tags: string | null;
1421
+ locked_rating: boolean;
1422
+ as_pending: boolean;
1423
+ submitted_tag_string: string | null;
1424
+ processing_started_at: string | null;
1425
+ processed_at: string | null;
1426
+ requeued_at: string | null;
1346
1427
  uploader_name: string;
1428
+ duplicate_post_id: number | null;
1347
1429
  };
1348
1430
  export type UploadWhitelist = {
1349
1431
  id: number;
@@ -1478,7 +1560,10 @@ export type WikiPageVersion = {
1478
1560
  };
1479
1561
  export type AccessDeniedResponse = {
1480
1562
  success: boolean;
1481
- reason: 'Access Denied';
1563
+ /**
1564
+ * Usually `Access Denied`, but may include more detail, ex: `Access Denied: Must be logged in`.
1565
+ */
1566
+ reason: string;
1482
1567
  };
1483
1568
  export type DTextResponse = {
1484
1569
  html: string;
@@ -1524,13 +1609,15 @@ export type OAuthError = {
1524
1609
  */
1525
1610
  export type idQuery = string | number;
1526
1611
  /**
1527
- * The maximum number of results to return. Between 0 and 320.
1612
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
1528
1613
  */
1529
1614
  export type limitQuery = number;
1530
1615
  /**
1531
- * The page number of results to get. Between 1 and 750.
1616
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
1617
+ * See [Pagination](https://e621.wiki/pagination/).
1618
+ *
1532
1619
  */
1533
- export type pageQuery = number;
1620
+ export type pageQuery = string;
1534
1621
  /**
1535
1622
  * Must be Admin+ to use. See [the PostgreSQL documentation](https://www.postgresql.org/docs/9.3/functions-net.html) for information on how this is parsed. Specifically, "is contained within or equals" (`<<=`).
1536
1623
  */
@@ -1540,11 +1627,11 @@ export type ipAddrQuery = string;
1540
1627
  */
1541
1628
  export type orderQuery = 'id_asc' | 'id_desc';
1542
1629
  /**
1543
- * Use the new V2 format. See the `v2=true` responses.
1630
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
1544
1631
  */
1545
1632
  export type v2Query = boolean;
1546
1633
  /**
1547
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
1634
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
1548
1635
  */
1549
1636
  export type modeQuery = 'basic' | 'extended' | 'thumbnail';
1550
1637
  /**
@@ -1563,13 +1650,15 @@ export type ApiKeysIndexData = {
1563
1650
  path?: never;
1564
1651
  query?: {
1565
1652
  /**
1566
- * The maximum number of results to return. Between 0 and 320.
1653
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
1567
1654
  */
1568
1655
  limit?: number;
1569
1656
  /**
1570
- * The page number of results to get. Between 1 and 750.
1657
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
1658
+ * See [Pagination](https://e621.wiki/pagination/).
1659
+ *
1571
1660
  */
1572
- page?: number;
1661
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
1573
1662
  /**
1574
1663
  * Search for a specific id. Multiple can be separated by commas, up to 320.
1575
1664
  */
@@ -1702,13 +1791,15 @@ export type AppealsIndexData = {
1702
1791
  path?: never;
1703
1792
  query?: {
1704
1793
  /**
1705
- * The maximum number of results to return. Between 0 and 320.
1794
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
1706
1795
  */
1707
1796
  limit?: number;
1708
1797
  /**
1709
- * The page number of results to get. Between 1 and 750.
1798
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
1799
+ * See [Pagination](https://e621.wiki/pagination/).
1800
+ *
1710
1801
  */
1711
- page?: number;
1802
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
1712
1803
  /**
1713
1804
  * Search for a specific id. Multiple can be separated by commas, up to 320.
1714
1805
  */
@@ -1892,13 +1983,15 @@ export type ArtistsIndexData = {
1892
1983
  path?: never;
1893
1984
  query?: {
1894
1985
  /**
1895
- * The maximum number of results to return. Between 0 and 320.
1986
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
1896
1987
  */
1897
1988
  limit?: number;
1898
1989
  /**
1899
- * The page number of results to get. Between 1 and 750.
1990
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
1991
+ * See [Pagination](https://e621.wiki/pagination/).
1992
+ *
1900
1993
  */
1901
- page?: number;
1994
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
1902
1995
  /**
1903
1996
  * Search for a specific id. Multiple can be separated by commas, up to 320.
1904
1997
  */
@@ -2122,13 +2215,15 @@ export type ArtistVersionsIndexData = {
2122
2215
  path?: never;
2123
2216
  query?: {
2124
2217
  /**
2125
- * The maximum number of results to return. Between 0 and 320.
2218
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2126
2219
  */
2127
2220
  limit?: number;
2128
2221
  /**
2129
- * The page number of results to get. Between 1 and 750.
2222
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2223
+ * See [Pagination](https://e621.wiki/pagination/).
2224
+ *
2130
2225
  */
2131
- page?: number;
2226
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2132
2227
  /**
2133
2228
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2134
2229
  */
@@ -2172,13 +2267,15 @@ export type ArtistUrlsIndexData = {
2172
2267
  path?: never;
2173
2268
  query?: {
2174
2269
  /**
2175
- * The maximum number of results to return. Between 0 and 320.
2270
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2176
2271
  */
2177
2272
  limit?: number;
2178
2273
  /**
2179
- * The page number of results to get. Between 1 and 750.
2274
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2275
+ * See [Pagination](https://e621.wiki/pagination/).
2276
+ *
2180
2277
  */
2181
- page?: number;
2278
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2182
2279
  /**
2183
2280
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2184
2281
  */
@@ -2244,13 +2341,15 @@ export type AvoidPostingsIndexData = {
2244
2341
  path?: never;
2245
2342
  query?: {
2246
2343
  /**
2247
- * The maximum number of results to return. Between 0 and 320.
2344
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2248
2345
  */
2249
2346
  limit?: number;
2250
2347
  /**
2251
- * The page number of results to get. Between 1 and 750.
2348
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2349
+ * See [Pagination](https://e621.wiki/pagination/).
2350
+ *
2252
2351
  */
2253
- page?: number;
2352
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2254
2353
  /**
2255
2354
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2256
2355
  */
@@ -2505,13 +2604,15 @@ export type AvoidPostingVersionsIndexData = {
2505
2604
  path?: never;
2506
2605
  query?: {
2507
2606
  /**
2508
- * The maximum number of results to return. Between 0 and 320.
2607
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2509
2608
  */
2510
2609
  limit?: number;
2511
2610
  /**
2512
- * The page number of results to get. Between 1 and 750.
2611
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2612
+ * See [Pagination](https://e621.wiki/pagination/).
2613
+ *
2513
2614
  */
2514
- page?: number;
2615
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2515
2616
  /**
2516
2617
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2517
2618
  */
@@ -2571,13 +2672,15 @@ export type BansIndexData = {
2571
2672
  path?: never;
2572
2673
  query?: {
2573
2674
  /**
2574
- * The maximum number of results to return. Between 0 and 320.
2675
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2575
2676
  */
2576
2677
  limit?: number;
2577
2678
  /**
2578
- * The page number of results to get. Between 1 and 750.
2679
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2680
+ * See [Pagination](https://e621.wiki/pagination/).
2681
+ *
2579
2682
  */
2580
- page?: number;
2683
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2581
2684
  /**
2582
2685
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2583
2686
  */
@@ -2650,13 +2753,15 @@ export type BlipsIndexData = {
2650
2753
  path?: never;
2651
2754
  query?: {
2652
2755
  /**
2653
- * The maximum number of results to return. Between 0 and 320.
2756
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2654
2757
  */
2655
2758
  limit?: number;
2656
2759
  /**
2657
- * The page number of results to get. Between 1 and 750.
2760
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2761
+ * See [Pagination](https://e621.wiki/pagination/).
2762
+ *
2658
2763
  */
2659
- page?: number;
2764
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2660
2765
  /**
2661
2766
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2662
2767
  */
@@ -2886,18 +2991,20 @@ export type BulkUpdateRequestsIndexData = {
2886
2991
  path?: never;
2887
2992
  query?: {
2888
2993
  /**
2889
- * The maximum number of results to return. Between 0 and 320.
2994
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
2890
2995
  */
2891
2996
  limit?: number;
2892
2997
  /**
2893
- * The page number of results to get. Between 1 and 750.
2998
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
2999
+ * See [Pagination](https://e621.wiki/pagination/).
3000
+ *
2894
3001
  */
2895
- page?: number;
3002
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
2896
3003
  /**
2897
3004
  * Search for a specific id. Multiple can be separated by commas, up to 320.
2898
3005
  */
2899
3006
  'search[id]'?: string | number;
2900
- 'search[order]'?: 'id_asc' | 'id_desc' | 'status_desc' | 'updated_at_desc' | 'updated_at_asc';
3007
+ 'search[order]'?: 'id_asc' | 'id_desc' | 'status_desc' | 'updated_at_desc' | 'updated_at_asc' | 'score_desc' | 'score_asc';
2901
3008
  'search[user_id]'?: number;
2902
3009
  'search[user_name]'?: string;
2903
3010
  'search[approver_id]'?: number;
@@ -3091,13 +3198,15 @@ export type CommentsIndexData = {
3091
3198
  path?: never;
3092
3199
  query?: {
3093
3200
  /**
3094
- * The maximum number of results to return. Between 0 and 320.
3201
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
3095
3202
  */
3096
3203
  limit?: number;
3097
3204
  /**
3098
- * The page number of results to get. Between 1 and 750.
3205
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
3206
+ * See [Pagination](https://e621.wiki/pagination/).
3207
+ *
3099
3208
  */
3100
- page?: number;
3209
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
3101
3210
  /**
3102
3211
  * Search for a specific id. Multiple can be separated by commas, up to 320.
3103
3212
  */
@@ -3114,7 +3223,7 @@ export type CommentsIndexData = {
3114
3223
  */
3115
3224
  'search[post_id]'?: string;
3116
3225
  /**
3117
- * Only usable by Member+
3226
+ * Only usable by Member+. See [Search Syntax](https://e621.wiki/searching/).
3118
3227
  */
3119
3228
  'search[post_tags_match]'?: string;
3120
3229
  'search[post_note_updater_name]'?: string;
@@ -3446,13 +3555,15 @@ export type CommentVotesIndexData = {
3446
3555
  path?: never;
3447
3556
  query?: {
3448
3557
  /**
3449
- * The maximum number of results to return. Between 0 and 320.
3558
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
3450
3559
  */
3451
3560
  limit?: number;
3452
3561
  /**
3453
- * The page number of results to get. Between 1 and 750.
3562
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
3563
+ * See [Pagination](https://e621.wiki/pagination/).
3564
+ *
3454
3565
  */
3455
- page?: number;
3566
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
3456
3567
  /**
3457
3568
  * Search for a specific id. Multiple can be separated by commas, up to 320.
3458
3569
  */
@@ -3461,7 +3572,7 @@ export type CommentVotesIndexData = {
3461
3572
  * The order of the results. You must be Admin+.
3462
3573
  */
3463
3574
  'search[order]'?: 'id_asc' | 'id_desc' | 'ip_addr';
3464
- 'search[post_id]'?: number;
3575
+ 'search[comment_id]'?: number;
3465
3576
  'search[user_name]'?: string;
3466
3577
  'search[user_id]'?: number;
3467
3578
  /**
@@ -3473,13 +3584,14 @@ export type CommentVotesIndexData = {
3473
3584
  */
3474
3585
  'search[comment_creator_id]'?: number;
3475
3586
  /**
3476
- * You must be Admin+. Only usable if one of `comment_id`, `user_name`, or `user_id` is also provided. See [the PostgreSQL documentation](https://www.postgresql.org/docs/9.3/functions-net.html) for information on how this is parsed. Specifically, "is contained within or equals" (`<<=`).
3587
+ * You must be Admin+. See [the PostgreSQL documentation](https://www.postgresql.org/docs/9.3/functions-net.html) for information on how this is parsed. Specifically, "is contained within or equals" (`<<=`).
3477
3588
  */
3478
3589
  'search[user_ip_addr]'?: string;
3590
+ 'search[score]'?: UpDownVote;
3479
3591
  /**
3480
- * Only usable if one of `comment_id`, `user_name`, or `user_id` is also provided.
3592
+ * Only return votes updated within the last N days.
3481
3593
  */
3482
- 'search[score]'?: UpDownVote;
3594
+ 'search[timeframe]'?: number;
3483
3595
  /**
3484
3596
  * You must be Admin+. Only usable if one of `comment_id`, `user_name`, or `user_id` is also provided.
3485
3597
  */
@@ -3785,13 +3897,15 @@ export type DmailsIndexData = {
3785
3897
  path?: never;
3786
3898
  query?: {
3787
3899
  /**
3788
- * The maximum number of results to return. Between 0 and 320.
3900
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
3789
3901
  */
3790
3902
  limit?: number;
3791
3903
  /**
3792
- * The page number of results to get. Between 1 and 750.
3904
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
3905
+ * See [Pagination](https://e621.wiki/pagination/).
3906
+ *
3793
3907
  */
3794
- page?: number;
3908
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
3795
3909
  /**
3796
3910
  * Search for a specific id. Multiple can be separated by commas, up to 320.
3797
3911
  */
@@ -3960,11 +4074,27 @@ export type DmailsMarkAllAsReadResponse = DmailsMarkAllAsReadResponses[keyof Dma
3960
4074
  export type DtextPreviewsCreateData = {
3961
4075
  body?: {
3962
4076
  body: string;
4077
+ allow_color?: boolean;
3963
4078
  };
3964
4079
  path?: never;
3965
4080
  query?: never;
3966
4081
  url: '/dtext_preview.json';
3967
4082
  };
4083
+ export type DtextPreviewsCreateErrors = {
4084
+ /**
4085
+ * Access Denied
4086
+ */
4087
+ 403: AccessDeniedResponse;
4088
+ /**
4089
+ * The body or the rendered output is too large
4090
+ */
4091
+ 413: MessageErrorResponse;
4092
+ /**
4093
+ * Ratelimited
4094
+ */
4095
+ 429: MessageErrorResponse;
4096
+ };
4097
+ export type DtextPreviewsCreateError = DtextPreviewsCreateErrors[keyof DtextPreviewsCreateErrors];
3968
4098
  export type DtextPreviewsCreateResponses = {
3969
4099
  /**
3970
4100
  * Success
@@ -3977,13 +4107,15 @@ export type EditHistoriesIndexData = {
3977
4107
  path?: never;
3978
4108
  query?: {
3979
4109
  /**
3980
- * The maximum number of results to return. Between 0 and 320.
4110
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
3981
4111
  */
3982
4112
  limit?: number;
3983
4113
  /**
3984
- * The page number of results to get. Between 1 and 750.
4114
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
4115
+ * See [Pagination](https://e621.wiki/pagination/).
4116
+ *
3985
4117
  */
3986
- page?: number;
4118
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
3987
4119
  /**
3988
4120
  * Search for a specific id. Multiple can be separated by commas, up to 320.
3989
4121
  */
@@ -4054,13 +4186,15 @@ export type EmailBlacklistsIndexData = {
4054
4186
  path?: never;
4055
4187
  query?: {
4056
4188
  /**
4057
- * The maximum number of results to return. Between 0 and 320.
4189
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
4058
4190
  */
4059
4191
  limit?: number;
4060
4192
  /**
4061
- * The page number of results to get. Between 1 and 750.
4193
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
4194
+ * See [Pagination](https://e621.wiki/pagination/).
4195
+ *
4062
4196
  */
4063
- page?: number;
4197
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
4064
4198
  /**
4065
4199
  * Search for a specific id. Multiple can be separated by commas, up to 320.
4066
4200
  */
@@ -4137,19 +4271,21 @@ export type FavoritesIndexData = {
4137
4271
  path?: never;
4138
4272
  query?: {
4139
4273
  /**
4140
- * The maximum number of results to return. Between 0 and 320.
4274
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
4141
4275
  */
4142
4276
  limit?: number;
4143
4277
  /**
4144
- * The page number of results to get. Between 1 and 750.
4278
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
4279
+ * See [Pagination](https://e621.wiki/pagination/).
4280
+ *
4145
4281
  */
4146
- page?: number;
4282
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
4147
4283
  /**
4148
- * Use the new V2 format. See the `v2=true` responses.
4284
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
4149
4285
  */
4150
4286
  v2?: boolean;
4151
4287
  /**
4152
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
4288
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
4153
4289
  */
4154
4290
  mode?: 'basic' | 'extended' | 'thumbnail';
4155
4291
  };
@@ -4255,13 +4391,15 @@ export type ForumPostsIndexData = {
4255
4391
  path?: never;
4256
4392
  query?: {
4257
4393
  /**
4258
- * The maximum number of results to return. Between 0 and 320.
4394
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
4259
4395
  */
4260
4396
  limit?: number;
4261
4397
  /**
4262
- * The page number of results to get. Between 1 and 750.
4398
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
4399
+ * See [Pagination](https://e621.wiki/pagination/).
4400
+ *
4263
4401
  */
4264
- page?: number;
4402
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
4265
4403
  /**
4266
4404
  * Search for a specific id. Multiple can be separated by commas, up to 320.
4267
4405
  */
@@ -4291,6 +4429,10 @@ export type ForumPostsCreateData = {
4291
4429
  body?: {
4292
4430
  'forum_post[body]': string;
4293
4431
  'forum_post[topic_id]': number;
4432
+ /**
4433
+ * Don't bump the topic.
4434
+ */
4435
+ 'forum_post[do_not_bump_topic]'?: boolean;
4294
4436
  };
4295
4437
  path?: never;
4296
4438
  query?: never;
@@ -4610,18 +4752,23 @@ export type ForumTopicsIndexData = {
4610
4752
  path?: never;
4611
4753
  query?: {
4612
4754
  /**
4613
- * The maximum number of results to return. Between 0 and 320.
4755
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
4614
4756
  */
4615
4757
  limit?: number;
4616
4758
  /**
4617
- * The page number of results to get. Between 1 and 750.
4759
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
4760
+ * See [Pagination](https://e621.wiki/pagination/).
4761
+ *
4618
4762
  */
4619
- page?: number;
4763
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
4620
4764
  /**
4621
4765
  * Search for a specific id. Multiple can be separated by commas, up to 320.
4622
4766
  */
4623
4767
  'search[id]'?: string | number;
4624
- 'search[order]'?: 'id_asc' | 'id_desc' | 'sticky';
4768
+ /**
4769
+ * `sticky` sorts by last bumped, `sticky_updated` by last updated.
4770
+ */
4771
+ 'search[order]'?: 'id_asc' | 'id_desc' | 'sticky' | 'sticky_updated' | 'created_at' | 'created_at_desc' | 'created_at_asc' | 'updated_at' | 'updated_at_desc' | 'updated_at_asc' | 'bumped';
4625
4772
  'search[title]'?: string;
4626
4773
  'search[title_matches]'?: string;
4627
4774
  'search[category_id]'?: number;
@@ -4749,6 +4896,10 @@ export type ForumTopicsUpdateData = {
4749
4896
  * You must be Moderator+.
4750
4897
  */
4751
4898
  'forum_topic[is_sticky]'?: boolean;
4899
+ /**
4900
+ * Don't bump the topic when changing the title or category.
4901
+ */
4902
+ 'forum_topic[do_not_bump]'?: boolean;
4752
4903
  /**
4753
4904
  * You must be Moderator+.
4754
4905
  */
@@ -5106,13 +5257,15 @@ export type IpBansIndexData = {
5106
5257
  path?: never;
5107
5258
  query?: {
5108
5259
  /**
5109
- * The maximum number of results to return. Between 0 and 320.
5260
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5110
5261
  */
5111
5262
  limit?: number;
5112
5263
  /**
5113
- * The page number of results to get. Between 1 and 750.
5264
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5265
+ * See [Pagination](https://e621.wiki/pagination/).
5266
+ *
5114
5267
  */
5115
- page?: number;
5268
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5116
5269
  /**
5117
5270
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5118
5271
  */
@@ -5201,7 +5354,7 @@ export type IqdbQueriesShowData = {
5201
5354
  path?: never;
5202
5355
  query?: {
5203
5356
  /**
5204
- * Use the new V2 format. See the `v2=true` responses.
5357
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
5205
5358
  */
5206
5359
  v2?: boolean;
5207
5360
  'search[score_cutoff]'?: number;
@@ -5212,10 +5365,26 @@ export type IqdbQueriesShowData = {
5212
5365
  url: '/iqdb_queries.json';
5213
5366
  };
5214
5367
  export type IqdbQueriesShowErrors = {
5368
+ /**
5369
+ * Invalid input, or IQDB is disabled
5370
+ */
5371
+ 400: MessageErrorResponse;
5215
5372
  /**
5216
5373
  * Access Denied
5217
5374
  */
5218
5375
  403: AccessDeniedResponse;
5376
+ /**
5377
+ * The file could not be downloaded, or is too large
5378
+ */
5379
+ 422: MessageErrorResponse;
5380
+ /**
5381
+ * Ratelimited, or IQDB is busy
5382
+ */
5383
+ 429: MessageErrorResponse;
5384
+ /**
5385
+ * IQDB is unavailable
5386
+ */
5387
+ 503: MessageErrorResponse;
5219
5388
  };
5220
5389
  export type IqdbQueriesShowError = IqdbQueriesShowErrors[keyof IqdbQueriesShowErrors];
5221
5390
  export type IqdbQueriesShowResponses = {
@@ -5235,17 +5404,33 @@ export type IqdbQueriesShowPostData = {
5235
5404
  path?: never;
5236
5405
  query?: {
5237
5406
  /**
5238
- * Use the new V2 format. See the `v2=true` responses.
5407
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
5239
5408
  */
5240
5409
  v2?: boolean;
5241
5410
  };
5242
5411
  url: '/iqdb_queries.json';
5243
5412
  };
5244
5413
  export type IqdbQueriesShowPostErrors = {
5414
+ /**
5415
+ * Invalid input, or IQDB is disabled
5416
+ */
5417
+ 400: MessageErrorResponse;
5245
5418
  /**
5246
5419
  * Access Denied
5247
5420
  */
5248
5421
  403: AccessDeniedResponse;
5422
+ /**
5423
+ * The file could not be downloaded, or is too large
5424
+ */
5425
+ 422: MessageErrorResponse;
5426
+ /**
5427
+ * Ratelimited, or IQDB is busy
5428
+ */
5429
+ 429: MessageErrorResponse;
5430
+ /**
5431
+ * IQDB is unavailable
5432
+ */
5433
+ 503: MessageErrorResponse;
5249
5434
  };
5250
5435
  export type IqdbQueriesShowPostError = IqdbQueriesShowPostErrors[keyof IqdbQueriesShowPostErrors];
5251
5436
  export type IqdbQueriesShowPostResponses = {
@@ -5260,13 +5445,15 @@ export type MascotsIndexData = {
5260
5445
  path?: never;
5261
5446
  query?: {
5262
5447
  /**
5263
- * The maximum number of results to return. Between 0 and 320.
5448
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5264
5449
  */
5265
5450
  limit?: number;
5266
5451
  /**
5267
- * The page number of results to get. Between 1 and 750.
5452
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5453
+ * See [Pagination](https://e621.wiki/pagination/).
5454
+ *
5268
5455
  */
5269
- page?: number;
5456
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5270
5457
  /**
5271
5458
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5272
5459
  */
@@ -5402,13 +5589,15 @@ export type ModActionsIndexData = {
5402
5589
  path?: never;
5403
5590
  query?: {
5404
5591
  /**
5405
- * The maximum number of results to return. Between 0 and 320.
5592
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5406
5593
  */
5407
5594
  limit?: number;
5408
5595
  /**
5409
- * The page number of results to get. Between 1 and 750.
5596
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5597
+ * See [Pagination](https://e621.wiki/pagination/).
5598
+ *
5410
5599
  */
5411
- page?: number;
5600
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5412
5601
  /**
5413
5602
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5414
5603
  */
@@ -5461,13 +5650,15 @@ export type NewsUpdatesIndexData = {
5461
5650
  path?: never;
5462
5651
  query?: {
5463
5652
  /**
5464
- * The maximum number of results to return. Between 0 and 320.
5653
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5465
5654
  */
5466
5655
  limit?: number;
5467
5656
  /**
5468
- * The page number of results to get. Between 1 and 750.
5657
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5658
+ * See [Pagination](https://e621.wiki/pagination/).
5659
+ *
5469
5660
  */
5470
- page?: number;
5661
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5471
5662
  };
5472
5663
  url: '/news_updates.json';
5473
5664
  };
@@ -5577,13 +5768,15 @@ export type NotesIndexData = {
5577
5768
  path?: never;
5578
5769
  query?: {
5579
5770
  /**
5580
- * The maximum number of results to return. Between 0 and 320.
5771
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5581
5772
  */
5582
5773
  limit?: number;
5583
5774
  /**
5584
- * The page number of results to get. Between 1 and 750.
5775
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5776
+ * See [Pagination](https://e621.wiki/pagination/).
5777
+ *
5585
5778
  */
5586
- page?: number;
5779
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5587
5780
  /**
5588
5781
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5589
5782
  */
@@ -5596,7 +5789,7 @@ export type NotesIndexData = {
5596
5789
  'search[is_active]'?: boolean;
5597
5790
  'search[post_id]'?: number;
5598
5791
  /**
5599
- * Only usable by Member+
5792
+ * Only usable by Member+. See [Search Syntax](https://e621.wiki/searching/).
5600
5793
  */
5601
5794
  'search[post_tags_match]'?: string;
5602
5795
  'search[post_note_updater_id]'?: number;
@@ -5795,13 +5988,15 @@ export type NoteVersionsIndexData = {
5795
5988
  path?: never;
5796
5989
  query?: {
5797
5990
  /**
5798
- * The maximum number of results to return. Between 0 and 320.
5991
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5799
5992
  */
5800
5993
  limit?: number;
5801
5994
  /**
5802
- * The page number of results to get. Between 1 and 750.
5995
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
5996
+ * See [Pagination](https://e621.wiki/pagination/).
5997
+ *
5803
5998
  */
5804
- page?: number;
5999
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5805
6000
  /**
5806
6001
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5807
6002
  */
@@ -5835,13 +6030,15 @@ export type PoolsIndexData = {
5835
6030
  path?: never;
5836
6031
  query?: {
5837
6032
  /**
5838
- * The maximum number of results to return. Between 0 and 320.
6033
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
5839
6034
  */
5840
6035
  limit?: number;
5841
6036
  /**
5842
- * The page number of results to get. Between 1 and 750.
6037
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
6038
+ * See [Pagination](https://e621.wiki/pagination/).
6039
+ *
5843
6040
  */
5844
- page?: number;
6041
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
5845
6042
  /**
5846
6043
  * Search for a specific id. Multiple can be separated by commas, up to 320.
5847
6044
  */
@@ -6135,13 +6332,15 @@ export type PoolVersionsIndexData = {
6135
6332
  path?: never;
6136
6333
  query?: {
6137
6334
  /**
6138
- * The maximum number of results to return. Between 0 and 320.
6335
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
6139
6336
  */
6140
6337
  limit?: number;
6141
6338
  /**
6142
- * The page number of results to get. Between 1 and 750.
6339
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
6340
+ * See [Pagination](https://e621.wiki/pagination/).
6341
+ *
6143
6342
  */
6144
- page?: number;
6343
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6145
6344
  /**
6146
6345
  * Search for a specific id. Multiple can be separated by commas, up to 320.
6147
6346
  */
@@ -6172,11 +6371,11 @@ export type PopularIndexData = {
6172
6371
  path?: never;
6173
6372
  query?: {
6174
6373
  /**
6175
- * Use the new V2 format. See the `v2=true` responses.
6374
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6176
6375
  */
6177
6376
  v2?: boolean;
6178
6377
  /**
6179
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6378
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6180
6379
  */
6181
6380
  mode?: 'basic' | 'extended' | 'thumbnail';
6182
6381
  /**
@@ -6215,21 +6414,26 @@ export type PostsIndexData = {
6215
6414
  path?: never;
6216
6415
  query?: {
6217
6416
  /**
6218
- * The maximum number of results to return. Between 0 and 320.
6417
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
6219
6418
  */
6220
6419
  limit?: number;
6221
6420
  /**
6222
- * The page number of results to get. Between 1 and 750.
6421
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
6422
+ * See [Pagination](https://e621.wiki/pagination/).
6423
+ *
6223
6424
  */
6224
- page?: number;
6425
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6225
6426
  /**
6226
- * Use the new V2 format. See the `v2=true` responses.
6427
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6227
6428
  */
6228
6429
  v2?: boolean;
6229
6430
  /**
6230
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6431
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6231
6432
  */
6232
6433
  mode?: 'basic' | 'extended' | 'thumbnail';
6434
+ /**
6435
+ * See [Search Syntax](https://e621.wiki/searching/).
6436
+ */
6233
6437
  tags?: string;
6234
6438
  md5?: string;
6235
6439
  random?: string;
@@ -6254,13 +6458,16 @@ export type PostsRandomData = {
6254
6458
  path?: never;
6255
6459
  query?: {
6256
6460
  /**
6257
- * Use the new V2 format. See the `v2=true` responses.
6461
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6258
6462
  */
6259
6463
  v2?: boolean;
6260
6464
  /**
6261
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6465
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6262
6466
  */
6263
6467
  mode?: 'basic' | 'extended' | 'thumbnail';
6468
+ /**
6469
+ * See [Search Syntax](https://e621.wiki/searching/).
6470
+ */
6264
6471
  tags?: string;
6265
6472
  };
6266
6473
  url: '/posts/random.json';
@@ -6287,6 +6494,9 @@ export type PostsCountData = {
6287
6494
  body?: never;
6288
6495
  path?: never;
6289
6496
  query: {
6497
+ /**
6498
+ * See [Search Syntax](https://e621.wiki/searching/).
6499
+ */
6290
6500
  tags: string;
6291
6501
  };
6292
6502
  url: '/posts/count.json';
@@ -6318,11 +6528,11 @@ export type PostsShowData = {
6318
6528
  };
6319
6529
  query?: {
6320
6530
  /**
6321
- * Use the new V2 format. See the `v2=true` responses.
6531
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6322
6532
  */
6323
6533
  v2?: boolean;
6324
6534
  /**
6325
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6535
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6326
6536
  */
6327
6537
  mode?: 'basic' | 'extended' | 'thumbnail';
6328
6538
  };
@@ -6428,11 +6638,11 @@ export type PostsUpdateData = {
6428
6638
  };
6429
6639
  query?: {
6430
6640
  /**
6431
- * Use the new V2 format. See the `v2=true` responses.
6641
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6432
6642
  */
6433
6643
  v2?: boolean;
6434
6644
  /**
6435
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6645
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6436
6646
  */
6437
6647
  mode?: 'basic' | 'extended' | 'thumbnail';
6438
6648
  };
@@ -6476,11 +6686,11 @@ export type PostsUpdateIqdbData = {
6476
6686
  };
6477
6687
  query?: {
6478
6688
  /**
6479
- * Use the new V2 format. See the `v2=true` responses.
6689
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6480
6690
  */
6481
6691
  v2?: boolean;
6482
6692
  /**
6483
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6693
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6484
6694
  */
6485
6695
  mode?: 'basic' | 'extended' | 'thumbnail';
6486
6696
  };
@@ -6527,11 +6737,11 @@ export type PostsMarkAsTranslatedData = {
6527
6737
  };
6528
6738
  query?: {
6529
6739
  /**
6530
- * Use the new V2 format. See the `v2=true` responses.
6740
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6531
6741
  */
6532
6742
  v2?: boolean;
6533
6743
  /**
6534
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6744
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6535
6745
  */
6536
6746
  mode?: 'basic' | 'extended' | 'thumbnail';
6537
6747
  };
@@ -6650,11 +6860,11 @@ export type PostsShowSeqData = {
6650
6860
  };
6651
6861
  query?: {
6652
6862
  /**
6653
- * Use the new V2 format. See the `v2=true` responses.
6863
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6654
6864
  */
6655
6865
  v2?: boolean;
6656
6866
  /**
6657
- * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses.
6867
+ * Set the mode for the V2 format. Ignored if `v2` is not set or false. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
6658
6868
  */
6659
6869
  mode?: 'basic' | 'extended' | 'thumbnail';
6660
6870
  /**
@@ -6723,7 +6933,7 @@ export type PostFlagsDestroyResponses = {
6723
6933
  /**
6724
6934
  * Success
6725
6935
  */
6726
- 204: void;
6936
+ 200: RawPost;
6727
6937
  };
6728
6938
  export type PostFlagsDestroyResponse = PostFlagsDestroyResponses[keyof PostFlagsDestroyResponses];
6729
6939
  export type PostFavoritesIndexData = {
@@ -6740,9 +6950,11 @@ export type PostFavoritesIndexData = {
6740
6950
  */
6741
6951
  limit?: number;
6742
6952
  /**
6743
- * The page number of results to get. Between 1 and 750.
6953
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
6954
+ * See [Pagination](https://e621.wiki/pagination/).
6955
+ *
6744
6956
  */
6745
- page?: number;
6957
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6746
6958
  };
6747
6959
  url: '/posts/{id}/favorites.json';
6748
6960
  };
@@ -6877,13 +7089,15 @@ export type PostRecommendationsArtistData = {
6877
7089
  };
6878
7090
  query?: {
6879
7091
  /**
6880
- * The maximum number of results to return. Between 0 and 320.
7092
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
6881
7093
  */
6882
7094
  limit?: number;
6883
7095
  /**
6884
- * The page number of results to get. Between 1 and 750.
7096
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7097
+ * See [Pagination](https://e621.wiki/pagination/).
7098
+ *
6885
7099
  */
6886
- page?: number;
7100
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6887
7101
  };
6888
7102
  url: '/posts/{id}/similar/artist.json';
6889
7103
  };
@@ -6911,13 +7125,15 @@ export type PostRecommendationsTagsData = {
6911
7125
  };
6912
7126
  query?: {
6913
7127
  /**
6914
- * The maximum number of results to return. Between 0 and 320.
7128
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
6915
7129
  */
6916
7130
  limit?: number;
6917
7131
  /**
6918
- * The page number of results to get. Between 1 and 750.
7132
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7133
+ * See [Pagination](https://e621.wiki/pagination/).
7134
+ *
6919
7135
  */
6920
- page?: number;
7136
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6921
7137
  };
6922
7138
  url: '/posts/{id}/similar/tags.json';
6923
7139
  };
@@ -6940,13 +7156,15 @@ export type PostSetsIndexData = {
6940
7156
  path?: never;
6941
7157
  query?: {
6942
7158
  /**
6943
- * The maximum number of results to return. Between 0 and 320.
7159
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
6944
7160
  */
6945
7161
  limit?: number;
6946
7162
  /**
6947
- * The page number of results to get. Between 1 and 750.
7163
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7164
+ * See [Pagination](https://e621.wiki/pagination/).
7165
+ *
6948
7166
  */
6949
- page?: number;
7167
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
6950
7168
  /**
6951
7169
  * Search for a specific id. Multiple can be separated by commas, up to 320.
6952
7170
  */
@@ -7283,13 +7501,15 @@ export type PostApprovalsIndexData = {
7283
7501
  path?: never;
7284
7502
  query?: {
7285
7503
  /**
7286
- * The maximum number of results to return. Between 0 and 320.
7504
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7287
7505
  */
7288
7506
  limit?: number;
7289
7507
  /**
7290
- * The page number of results to get. Between 1 and 750.
7508
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7509
+ * See [Pagination](https://e621.wiki/pagination/).
7510
+ *
7291
7511
  */
7292
- page?: number;
7512
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7293
7513
  /**
7294
7514
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7295
7515
  */
@@ -7299,7 +7519,7 @@ export type PostApprovalsIndexData = {
7299
7519
  */
7300
7520
  'search[order]'?: 'id_asc' | 'id_desc';
7301
7521
  /**
7302
- * Only usable by Member+
7522
+ * Only usable by Member+. See [Search Syntax](https://e621.wiki/searching/).
7303
7523
  */
7304
7524
  'search[post_tags_match]'?: string;
7305
7525
  'search[user_id]'?: number;
@@ -7320,13 +7540,15 @@ export type PostEventsIndexData = {
7320
7540
  path?: never;
7321
7541
  query?: {
7322
7542
  /**
7323
- * The maximum number of results to return. Between 0 and 320.
7543
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7324
7544
  */
7325
7545
  limit?: number;
7326
7546
  /**
7327
- * The page number of results to get. Between 1 and 750.
7547
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7548
+ * See [Pagination](https://e621.wiki/pagination/).
7549
+ *
7328
7550
  */
7329
- page?: number;
7551
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7330
7552
  /**
7331
7553
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7332
7554
  */
@@ -7336,7 +7558,7 @@ export type PostEventsIndexData = {
7336
7558
  */
7337
7559
  'search[order]'?: 'id_asc' | 'id_desc';
7338
7560
  /**
7339
- * Use the new V2 format. See the `v2=true` responses.
7561
+ * Use the new V2 format. See the `v2=true` responses, and [Post Files](https://e621.wiki/post-files/#formats).
7340
7562
  */
7341
7563
  v2?: boolean;
7342
7564
  'search[post_id]'?: number;
@@ -7360,13 +7582,15 @@ export type PostFlagsIndexData = {
7360
7582
  path?: never;
7361
7583
  query?: {
7362
7584
  /**
7363
- * The maximum number of results to return. Between 0 and 320.
7585
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7364
7586
  */
7365
7587
  limit?: number;
7366
7588
  /**
7367
- * The page number of results to get. Between 1 and 750.
7589
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7590
+ * See [Pagination](https://e621.wiki/pagination/).
7591
+ *
7368
7592
  */
7369
- page?: number;
7593
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7370
7594
  /**
7371
7595
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7372
7596
  */
@@ -7384,7 +7608,7 @@ export type PostFlagsIndexData = {
7384
7608
  'search[creator_name]'?: string;
7385
7609
  'search[post_id]'?: number;
7386
7610
  /**
7387
- * Only usable by Member+
7611
+ * Only usable by Member+. See [Search Syntax](https://e621.wiki/searching/).
7388
7612
  */
7389
7613
  'search[post_tags_match]'?: string;
7390
7614
  'search[type]'?: string;
@@ -7481,7 +7705,7 @@ export type PostFlagsClearNoteResponses = {
7481
7705
  /**
7482
7706
  * Success
7483
7707
  */
7484
- 201: PostFlag;
7708
+ 200: PostFlag;
7485
7709
  };
7486
7710
  export type PostFlagsClearNoteResponse = PostFlagsClearNoteResponses[keyof PostFlagsClearNoteResponses];
7487
7711
  export type PostReplacementsIndexData = {
@@ -7489,13 +7713,15 @@ export type PostReplacementsIndexData = {
7489
7713
  path?: never;
7490
7714
  query?: {
7491
7715
  /**
7492
- * The maximum number of results to return. Between 0 and 320.
7716
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7493
7717
  */
7494
7718
  limit?: number;
7495
7719
  /**
7496
- * The page number of results to get. Between 1 and 750.
7720
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
7721
+ * See [Pagination](https://e621.wiki/pagination/).
7722
+ *
7497
7723
  */
7498
- page?: number;
7724
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7499
7725
  /**
7500
7726
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7501
7727
  */
@@ -7787,13 +8013,16 @@ export type PostVersionsIndexData = {
7787
8013
  path?: never;
7788
8014
  query?: {
7789
8015
  /**
7790
- * The maximum number of results to return. Between 0 and 320.
8016
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7791
8017
  */
7792
8018
  limit?: number;
7793
8019
  /**
7794
- * The page number of results to get. Between 1 and 750. Note that for post versions specifically, you can only go through the 10,000 most recent results with page numbers.
8020
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8021
+ * Page numbers can only reach the 10,000 most recent results, use `b<id>` to go further.
8022
+ * See [Pagination](https://e621.wiki/pagination/).
8023
+ *
7795
8024
  */
7796
- page?: number;
8025
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7797
8026
  /**
7798
8027
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7799
8028
  */
@@ -7905,13 +8134,15 @@ export type PostVotesIndexData = {
7905
8134
  path?: never;
7906
8135
  query?: {
7907
8136
  /**
7908
- * The maximum number of results to return. Between 0 and 320.
8137
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
7909
8138
  */
7910
8139
  limit?: number;
7911
8140
  /**
7912
- * The page number of results to get. Between 1 and 750.
8141
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8142
+ * See [Pagination](https://e621.wiki/pagination/).
8143
+ *
7913
8144
  */
7914
- page?: number;
8145
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
7915
8146
  /**
7916
8147
  * Search for a specific id. Multiple can be separated by commas, up to 320.
7917
8148
  */
@@ -7932,13 +8163,14 @@ export type PostVotesIndexData = {
7932
8163
  */
7933
8164
  'search[post_creator_id]'?: number;
7934
8165
  /**
7935
- * You must be Admin+. Only usable if one of `post_id`, `user_name`, or `user_id` is also provided. See [the PostgreSQL documentation](https://www.postgresql.org/docs/9.3/functions-net.html) for information on how this is parsed. Specifically, "is contained within or equals" (`<<=`).
8166
+ * You must be Admin+. See [the PostgreSQL documentation](https://www.postgresql.org/docs/9.3/functions-net.html) for information on how this is parsed. Specifically, "is contained within or equals" (`<<=`).
7936
8167
  */
7937
8168
  'search[user_ip_addr]'?: string;
8169
+ 'search[score]'?: UpDownVote;
7938
8170
  /**
7939
- * Only usable if one of `post_id`, `user_name`, or `user_id` is also provided.
8171
+ * Only return votes updated within the last N days.
7940
8172
  */
7941
- 'search[score]'?: UpDownVote;
8173
+ 'search[timeframe]'?: number;
7942
8174
  /**
7943
8175
  * You must be Admin+. Only usable if one of `post_id`, `user_name`, or `user_id` is also provided.
7944
8176
  */
@@ -8013,18 +8245,230 @@ export type PostVotesDeleteResponses = {
8013
8245
  204: void;
8014
8246
  };
8015
8247
  export type PostVotesDeleteResponse = PostVotesDeleteResponses[keyof PostVotesDeleteResponses];
8248
+ export type SavedSearchesIndexData = {
8249
+ body?: never;
8250
+ path?: never;
8251
+ query?: never;
8252
+ url: '/saved_searches.json';
8253
+ };
8254
+ export type SavedSearchesIndexErrors = {
8255
+ /**
8256
+ * Access Denied
8257
+ */
8258
+ 403: AccessDeniedResponse;
8259
+ };
8260
+ export type SavedSearchesIndexError = SavedSearchesIndexErrors[keyof SavedSearchesIndexErrors];
8261
+ export type SavedSearchesIndexResponses = {
8262
+ /**
8263
+ * Success
8264
+ */
8265
+ 200: Array<SavedSearch>;
8266
+ };
8267
+ export type SavedSearchesIndexResponse = SavedSearchesIndexResponses[keyof SavedSearchesIndexResponses];
8268
+ export type SavedSearchesCreateData = {
8269
+ body?: {
8270
+ /**
8271
+ * See [Search Syntax](https://e621.wiki/searching/).
8272
+ */
8273
+ 'saved_search[query]': string;
8274
+ /**
8275
+ * Used to reference the search with `search:<name>`. Cannot be `subscriptions`.
8276
+ */
8277
+ 'saved_search[name]'?: string;
8278
+ /**
8279
+ * Track new posts matching the search.
8280
+ */
8281
+ 'saved_search[is_tracked]'?: boolean;
8282
+ };
8283
+ path?: never;
8284
+ query?: never;
8285
+ url: '/saved_searches.json';
8286
+ };
8287
+ export type SavedSearchesCreateErrors = {
8288
+ /**
8289
+ * Access Denied
8290
+ */
8291
+ 403: AccessDeniedResponse;
8292
+ /**
8293
+ * Error
8294
+ */
8295
+ 422: MessageErrorResponse;
8296
+ };
8297
+ export type SavedSearchesCreateError = SavedSearchesCreateErrors[keyof SavedSearchesCreateErrors];
8298
+ export type SavedSearchesCreateResponses = {
8299
+ /**
8300
+ * Success
8301
+ */
8302
+ 200: SavedSearch;
8303
+ };
8304
+ export type SavedSearchesCreateResponse = SavedSearchesCreateResponses[keyof SavedSearchesCreateResponses];
8305
+ export type SavedSearchesDestroyData = {
8306
+ body?: never;
8307
+ path: {
8308
+ /**
8309
+ * The ID of the item.
8310
+ */
8311
+ id: number;
8312
+ };
8313
+ query?: never;
8314
+ url: '/saved_searches/{id}.json';
8315
+ };
8316
+ export type SavedSearchesDestroyErrors = {
8317
+ /**
8318
+ * Access Denied
8319
+ */
8320
+ 403: AccessDeniedResponse;
8321
+ /**
8322
+ * Not Found
8323
+ */
8324
+ 404: NotFoundResponse;
8325
+ };
8326
+ export type SavedSearchesDestroyError = SavedSearchesDestroyErrors[keyof SavedSearchesDestroyErrors];
8327
+ export type SavedSearchesDestroyResponses = {
8328
+ /**
8329
+ * Success
8330
+ */
8331
+ 204: void;
8332
+ };
8333
+ export type SavedSearchesDestroyResponse = SavedSearchesDestroyResponses[keyof SavedSearchesDestroyResponses];
8334
+ export type SavedSearchesShowData = {
8335
+ body?: never;
8336
+ path: {
8337
+ /**
8338
+ * The ID of the item.
8339
+ */
8340
+ id: number;
8341
+ };
8342
+ query?: never;
8343
+ url: '/saved_searches/{id}.json';
8344
+ };
8345
+ export type SavedSearchesShowErrors = {
8346
+ /**
8347
+ * Access Denied
8348
+ */
8349
+ 403: AccessDeniedResponse;
8350
+ /**
8351
+ * Not Found
8352
+ */
8353
+ 404: NotFoundResponse;
8354
+ };
8355
+ export type SavedSearchesShowError = SavedSearchesShowErrors[keyof SavedSearchesShowErrors];
8356
+ export type SavedSearchesShowResponses = {
8357
+ /**
8358
+ * Success
8359
+ */
8360
+ 200: SavedSearch;
8361
+ };
8362
+ export type SavedSearchesShowResponse = SavedSearchesShowResponses[keyof SavedSearchesShowResponses];
8363
+ export type SavedSearchesUpdateData = {
8364
+ body?: {
8365
+ /**
8366
+ * See [Search Syntax](https://e621.wiki/searching/).
8367
+ */
8368
+ 'saved_search[query]'?: string;
8369
+ /**
8370
+ * Used to reference the search with `search:<name>`. Cannot be `subscriptions`.
8371
+ */
8372
+ 'saved_search[name]'?: string;
8373
+ /**
8374
+ * Track new posts matching the search. Changing this resets the seen post.
8375
+ */
8376
+ 'saved_search[is_tracked]'?: boolean;
8377
+ };
8378
+ path: {
8379
+ /**
8380
+ * The ID of the item.
8381
+ */
8382
+ id: number;
8383
+ };
8384
+ query?: never;
8385
+ url: '/saved_searches/{id}.json';
8386
+ };
8387
+ export type SavedSearchesUpdateErrors = {
8388
+ /**
8389
+ * Access Denied, or the saved search is the subscription search
8390
+ */
8391
+ 403: MessageErrorResponse;
8392
+ /**
8393
+ * Not Found
8394
+ */
8395
+ 404: NotFoundResponse;
8396
+ /**
8397
+ * Error
8398
+ */
8399
+ 422: MessageErrorResponse;
8400
+ };
8401
+ export type SavedSearchesUpdateError = SavedSearchesUpdateErrors[keyof SavedSearchesUpdateErrors];
8402
+ export type SavedSearchesUpdateResponses = {
8403
+ /**
8404
+ * Success
8405
+ */
8406
+ 200: SavedSearch;
8407
+ };
8408
+ export type SavedSearchesUpdateResponse = SavedSearchesUpdateResponses[keyof SavedSearchesUpdateResponses];
8409
+ export type SavedSearchesMarkAllSeenData = {
8410
+ body?: never;
8411
+ path?: never;
8412
+ query?: never;
8413
+ url: '/saved_searches/mark_all_seen.json';
8414
+ };
8415
+ export type SavedSearchesMarkAllSeenErrors = {
8416
+ /**
8417
+ * Access Denied
8418
+ */
8419
+ 403: AccessDeniedResponse;
8420
+ };
8421
+ export type SavedSearchesMarkAllSeenError = SavedSearchesMarkAllSeenErrors[keyof SavedSearchesMarkAllSeenErrors];
8422
+ export type SavedSearchesMarkAllSeenResponses = {
8423
+ /**
8424
+ * Success
8425
+ */
8426
+ 204: void;
8427
+ };
8428
+ export type SavedSearchesMarkAllSeenResponse = SavedSearchesMarkAllSeenResponses[keyof SavedSearchesMarkAllSeenResponses];
8429
+ export type SavedSearchesBadgeData = {
8430
+ body?: never;
8431
+ path?: never;
8432
+ query?: never;
8433
+ url: '/saved_searches/badge.json';
8434
+ };
8435
+ export type SavedSearchesBadgeErrors = {
8436
+ /**
8437
+ * Access Denied
8438
+ */
8439
+ 403: AccessDeniedResponse;
8440
+ };
8441
+ export type SavedSearchesBadgeError = SavedSearchesBadgeErrors[keyof SavedSearchesBadgeErrors];
8442
+ export type SavedSearchesBadgeResponses = {
8443
+ /**
8444
+ * Success
8445
+ */
8446
+ 200: {
8447
+ /**
8448
+ * Null when nothing is cached.
8449
+ */
8450
+ count: number | null;
8451
+ /**
8452
+ * False when the cached count is stale or missing.
8453
+ */
8454
+ fresh: boolean;
8455
+ };
8456
+ };
8457
+ export type SavedSearchesBadgeResponse = SavedSearchesBadgeResponses[keyof SavedSearchesBadgeResponses];
8016
8458
  export type TagsIndexData = {
8017
8459
  body?: never;
8018
8460
  path?: never;
8019
8461
  query?: {
8020
8462
  /**
8021
- * The maximum number of results to return. Between 0 and 320.
8463
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8022
8464
  */
8023
8465
  limit?: number;
8024
8466
  /**
8025
- * The page number of results to get. Between 1 and 750.
8467
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8468
+ * See [Pagination](https://e621.wiki/pagination/).
8469
+ *
8026
8470
  */
8027
- page?: number;
8471
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8028
8472
  /**
8029
8473
  * Search for a specific id. Multiple can be separated by commas, up to 320.
8030
8474
  */
@@ -8224,13 +8668,15 @@ export type TagTypeVersionsIndexData = {
8224
8668
  path?: never;
8225
8669
  query?: {
8226
8670
  /**
8227
- * The maximum number of results to return. Between 0 and 320.
8671
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8228
8672
  */
8229
8673
  limit?: number;
8230
8674
  /**
8231
- * The page number of results to get. Between 1 and 750.
8675
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8676
+ * See [Pagination](https://e621.wiki/pagination/).
8677
+ *
8232
8678
  */
8233
- page?: number;
8679
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8234
8680
  /**
8235
8681
  * Search for a specific id. Multiple can be separated by commas, up to 320.
8236
8682
  */
@@ -8253,18 +8699,20 @@ export type TagAliasesIndexData = {
8253
8699
  path?: never;
8254
8700
  query?: {
8255
8701
  /**
8256
- * The maximum number of results to return. Between 0 and 320.
8702
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8257
8703
  */
8258
8704
  limit?: number;
8259
8705
  /**
8260
- * The page number of results to get. Between 1 and 750.
8706
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8707
+ * See [Pagination](https://e621.wiki/pagination/).
8708
+ *
8261
8709
  */
8262
- page?: number;
8710
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8263
8711
  /**
8264
8712
  * Search for a specific id. Multiple can be separated by commas, up to 320.
8265
8713
  */
8266
8714
  'search[id]'?: string | number;
8267
- 'search[order]'?: 'id_asc' | 'id_desc' | 'created_at' | 'updated_at' | 'name' | 'tag_count';
8715
+ 'search[order]'?: 'id_asc' | 'id_desc' | 'created_at' | 'updated_at' | 'name' | 'tag_count' | 'score_desc' | 'score_asc';
8268
8716
  'search[name_matches]'?: string;
8269
8717
  'search[antecedent_name]'?: string;
8270
8718
  'search[consequent_name]'?: string;
@@ -8478,18 +8926,20 @@ export type TagImplicationsIndexData = {
8478
8926
  path?: never;
8479
8927
  query?: {
8480
8928
  /**
8481
- * The maximum number of results to return. Between 0 and 320.
8929
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8482
8930
  */
8483
8931
  limit?: number;
8484
8932
  /**
8485
- * The page number of results to get. Between 1 and 750.
8933
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
8934
+ * See [Pagination](https://e621.wiki/pagination/).
8935
+ *
8486
8936
  */
8487
- page?: number;
8937
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8488
8938
  /**
8489
8939
  * Search for a specific id. Multiple can be separated by commas, up to 320.
8490
8940
  */
8491
8941
  'search[id]'?: string | number;
8492
- 'search[order]'?: 'id_asc' | 'id_desc' | 'created_at' | 'updated_at' | 'name' | 'tag_count';
8942
+ 'search[order]'?: 'id_asc' | 'id_desc' | 'created_at' | 'updated_at' | 'name' | 'tag_count' | 'score_desc' | 'score_asc';
8493
8943
  'search[name_matches]'?: string;
8494
8944
  'search[antecedent_name]'?: string;
8495
8945
  'search[consequent_name]'?: string;
@@ -8698,6 +9148,97 @@ export type TagImplicationRequestsCreateErrors = {
8698
9148
  406: unknown;
8699
9149
  };
8700
9150
  export type TagImplicationRequestsCreateError = TagImplicationRequestsCreateErrors[keyof TagImplicationRequestsCreateErrors];
9151
+ export type TagSubscriptionsIndexData = {
9152
+ body?: never;
9153
+ path?: never;
9154
+ query?: never;
9155
+ url: '/tag_subscriptions.json';
9156
+ };
9157
+ export type TagSubscriptionsIndexErrors = {
9158
+ /**
9159
+ * Access Denied
9160
+ */
9161
+ 403: AccessDeniedResponse;
9162
+ };
9163
+ export type TagSubscriptionsIndexError = TagSubscriptionsIndexErrors[keyof TagSubscriptionsIndexErrors];
9164
+ export type TagSubscriptionsIndexResponses = {
9165
+ /**
9166
+ * Success
9167
+ */
9168
+ 200: Array<TagSubscription>;
9169
+ };
9170
+ export type TagSubscriptionsIndexResponse = TagSubscriptionsIndexResponses[keyof TagSubscriptionsIndexResponses];
9171
+ export type TagSubscriptionsCreateData = {
9172
+ body?: {
9173
+ /**
9174
+ * A single tag. Ignored if `tag_names` is present.
9175
+ */
9176
+ tag_name?: string;
9177
+ /**
9178
+ * Space separated list of tags.
9179
+ */
9180
+ tag_names?: string;
9181
+ };
9182
+ path?: never;
9183
+ query?: never;
9184
+ url: '/tag_subscriptions.json';
9185
+ };
9186
+ export type TagSubscriptionsCreateErrors = {
9187
+ /**
9188
+ * Access Denied
9189
+ */
9190
+ 403: AccessDeniedResponse;
9191
+ /**
9192
+ * Error
9193
+ */
9194
+ 422: MessageErrorResponse;
9195
+ };
9196
+ export type TagSubscriptionsCreateError = TagSubscriptionsCreateErrors[keyof TagSubscriptionsCreateErrors];
9197
+ export type TagSubscriptionsCreateResponses = {
9198
+ /**
9199
+ * Success
9200
+ */
9201
+ 200: {
9202
+ added: Array<TagSubscription>;
9203
+ skipped: Array<{
9204
+ name: string;
9205
+ /**
9206
+ * One of `does not exist`, `already subscribed`, `over the limit of <limit>`, or `too many tags in one request`.
9207
+ */
9208
+ reason: string;
9209
+ }>;
9210
+ };
9211
+ };
9212
+ export type TagSubscriptionsCreateResponse = TagSubscriptionsCreateResponses[keyof TagSubscriptionsCreateResponses];
9213
+ export type TagSubscriptionsDestroyData = {
9214
+ body?: never;
9215
+ path: {
9216
+ /**
9217
+ * The ID of the item.
9218
+ */
9219
+ id: number;
9220
+ };
9221
+ query?: never;
9222
+ url: '/tag_subscriptions/{id}.json';
9223
+ };
9224
+ export type TagSubscriptionsDestroyErrors = {
9225
+ /**
9226
+ * Access Denied
9227
+ */
9228
+ 403: AccessDeniedResponse;
9229
+ /**
9230
+ * Not Found
9231
+ */
9232
+ 404: NotFoundResponse;
9233
+ };
9234
+ export type TagSubscriptionsDestroyError = TagSubscriptionsDestroyErrors[keyof TagSubscriptionsDestroyErrors];
9235
+ export type TagSubscriptionsDestroyResponses = {
9236
+ /**
9237
+ * Success
9238
+ */
9239
+ 204: void;
9240
+ };
9241
+ export type TagSubscriptionsDestroyResponse = TagSubscriptionsDestroyResponses[keyof TagSubscriptionsDestroyResponses];
8701
9242
  export type RelatedTagsBulkData = {
8702
9243
  body?: {
8703
9244
  query?: string;
@@ -8727,13 +9268,15 @@ export type SearchTrendsIndexData = {
8727
9268
  query?: {
8728
9269
  day?: string;
8729
9270
  /**
8730
- * The maximum number of results to return. Between 0 and 320.
9271
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8731
9272
  */
8732
9273
  limit?: number;
8733
9274
  /**
8734
- * The page number of results to get. Between 1 and 750.
9275
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
9276
+ * See [Pagination](https://e621.wiki/pagination/).
9277
+ *
8735
9278
  */
8736
- page?: number;
9279
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8737
9280
  };
8738
9281
  url: '/search_trends.json';
8739
9282
  };
@@ -8863,13 +9406,15 @@ export type SearchTrendBlacklistsIndexData = {
8863
9406
  path?: never;
8864
9407
  query?: {
8865
9408
  /**
8866
- * The maximum number of results to return. Between 0 and 320.
9409
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8867
9410
  */
8868
9411
  limit?: number;
8869
9412
  /**
8870
- * The page number of results to get. Between 1 and 750.
9413
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
9414
+ * See [Pagination](https://e621.wiki/pagination/).
9415
+ *
8871
9416
  */
8872
- page?: number;
9417
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
8873
9418
  /**
8874
9419
  * The order of the results.
8875
9420
  */
@@ -8990,13 +9535,15 @@ export type SearchTrendHourliesIndexData = {
8990
9535
  path?: never;
8991
9536
  query?: {
8992
9537
  /**
8993
- * The maximum number of results to return. Between 0 and 320.
9538
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
8994
9539
  */
8995
9540
  limit?: number;
8996
9541
  /**
8997
- * The page number of results to get. Between 1 and 750.
9542
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
9543
+ * See [Pagination](https://e621.wiki/pagination/).
9544
+ *
8998
9545
  */
8999
- page?: number;
9546
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9000
9547
  'search[name_matches]'?: string;
9001
9548
  hour?: string;
9002
9549
  };
@@ -9134,13 +9681,15 @@ export type StaffNotesIndexData = {
9134
9681
  path?: never;
9135
9682
  query?: {
9136
9683
  /**
9137
- * The maximum number of results to return. Between 0 and 320.
9684
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
9138
9685
  */
9139
9686
  limit?: number;
9140
9687
  /**
9141
- * The page number of results to get. Between 1 and 750.
9688
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
9689
+ * See [Pagination](https://e621.wiki/pagination/).
9690
+ *
9142
9691
  */
9143
- page?: number;
9692
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9144
9693
  /**
9145
9694
  * Search for a specific id. Multiple can be separated by commas, up to 320.
9146
9695
  */
@@ -9329,13 +9878,15 @@ export type TakedownsIndexData = {
9329
9878
  path?: never;
9330
9879
  query?: {
9331
9880
  /**
9332
- * The maximum number of results to return. Between 0 and 320.
9881
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
9333
9882
  */
9334
9883
  limit?: number;
9335
9884
  /**
9336
- * The page number of results to get. Between 1 and 750.
9885
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
9886
+ * See [Pagination](https://e621.wiki/pagination/).
9887
+ *
9337
9888
  */
9338
- page?: number;
9889
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9339
9890
  /**
9340
9891
  * Search for a specific id. Multiple can be separated by commas, up to 320.
9341
9892
  */
@@ -9587,6 +10138,9 @@ export type TakedownsAddByIdsResponses = {
9587
10138
  export type TakedownsAddByIdsResponse = TakedownsAddByIdsResponses[keyof TakedownsAddByIdsResponses];
9588
10139
  export type TakedownsAddByTagsData = {
9589
10140
  body?: {
10141
+ /**
10142
+ * See [Search Syntax](https://e621.wiki/searching/).
10143
+ */
9590
10144
  post_tags: string;
9591
10145
  };
9592
10146
  path: {
@@ -9621,6 +10175,9 @@ export type TakedownsAddByTagsResponses = {
9621
10175
  export type TakedownsAddByTagsResponse = TakedownsAddByTagsResponses[keyof TakedownsAddByTagsResponses];
9622
10176
  export type TakedownsCountMatchingPostsData = {
9623
10177
  body?: {
10178
+ /**
10179
+ * See [Search Syntax](https://e621.wiki/searching/).
10180
+ */
9624
10181
  post_tags: string;
9625
10182
  };
9626
10183
  path: {
@@ -9683,18 +10240,51 @@ export type TakedownsRemoveByIdsResponses = {
9683
10240
  204: void;
9684
10241
  };
9685
10242
  export type TakedownsRemoveByIdsResponse = TakedownsRemoveByIdsResponses[keyof TakedownsRemoveByIdsResponses];
10243
+ export type TakedownsClearPostsData = {
10244
+ body?: never;
10245
+ path: {
10246
+ /**
10247
+ * The ID of the item.
10248
+ */
10249
+ id: number;
10250
+ };
10251
+ query?: never;
10252
+ url: '/takedowns/{id}/clear_posts.json';
10253
+ };
10254
+ export type TakedownsClearPostsErrors = {
10255
+ /**
10256
+ * Access Denied
10257
+ */
10258
+ 403: AccessDeniedResponse;
10259
+ /**
10260
+ * Not Found
10261
+ */
10262
+ 404: NotFoundResponse;
10263
+ };
10264
+ export type TakedownsClearPostsError = TakedownsClearPostsErrors[keyof TakedownsClearPostsErrors];
10265
+ export type TakedownsClearPostsResponses = {
10266
+ /**
10267
+ * Success
10268
+ */
10269
+ 200: {
10270
+ removed_count: number;
10271
+ };
10272
+ };
10273
+ export type TakedownsClearPostsResponse = TakedownsClearPostsResponses[keyof TakedownsClearPostsResponses];
9686
10274
  export type TicketsIndexData = {
9687
10275
  body?: never;
9688
10276
  path?: never;
9689
10277
  query?: {
9690
10278
  /**
9691
- * The maximum number of results to return. Between 0 and 320.
10279
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
9692
10280
  */
9693
10281
  limit?: number;
9694
10282
  /**
9695
- * The page number of results to get. Between 1 and 750.
10283
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
10284
+ * See [Pagination](https://e621.wiki/pagination/).
10285
+ *
9696
10286
  */
9697
- page?: number;
10287
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9698
10288
  /**
9699
10289
  * Search for a specific id. Multiple can be separated by commas, up to 320.
9700
10290
  */
@@ -9879,13 +10469,15 @@ export type UploadKarmaEventsIndexData = {
9879
10469
  path?: never;
9880
10470
  query?: {
9881
10471
  /**
9882
- * The maximum number of results to return. Between 0 and 320.
10472
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
9883
10473
  */
9884
10474
  limit?: number;
9885
10475
  /**
9886
- * The page number of results to get. Between 1 and 750.
10476
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
10477
+ * See [Pagination](https://e621.wiki/pagination/).
10478
+ *
9887
10479
  */
9888
- page?: number;
10480
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9889
10481
  /**
9890
10482
  * Search for a specific id. Multiple can be separated by commas, up to 320.
9891
10483
  */
@@ -9927,13 +10519,15 @@ export type UploadsIndexData = {
9927
10519
  path?: never;
9928
10520
  query?: {
9929
10521
  /**
9930
- * The maximum number of results to return. Between 0 and 320.
10522
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
9931
10523
  */
9932
10524
  limit?: number;
9933
10525
  /**
9934
- * The page number of results to get. Between 1 and 750.
10526
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
10527
+ * See [Pagination](https://e621.wiki/pagination/).
10528
+ *
9935
10529
  */
9936
- page?: number;
10530
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
9937
10531
  /**
9938
10532
  * Search for a specific id. Multiple can be separated by commas, up to 320.
9939
10533
  */
@@ -9950,12 +10544,12 @@ export type UploadsIndexData = {
9950
10544
  'search[parent_id]'?: number;
9951
10545
  'search[post_id]'?: number;
9952
10546
  'search[has_post]'?: boolean;
9953
- 'search[post_tags_match]'?: string;
9954
10547
  /**
9955
- * Note: The "error" status will be proceeded by an error, ex: "error: RuntimeError - No file or source URL provided"
9956
- *
10548
+ * See [Search Syntax](https://e621.wiki/searching/).
9957
10549
  */
9958
- 'search[status]'?: 'completed' | 'processing' | 'pending' | 'error';
10550
+ 'search[post_tags_match]'?: string;
10551
+ 'search[status]'?: 'completed' | 'failed' | 'processing' | 'queued' | 'pending';
10552
+ 'search[error_message]'?: string;
9959
10553
  'search[backtrace]'?: string;
9960
10554
  'search[tag_string]'?: string;
9961
10555
  };
@@ -10006,9 +10600,24 @@ export type UploadsCreateErrors = {
10006
10600
  */
10007
10601
  403: AccessDeniedResponse;
10008
10602
  /**
10009
- * Error
10603
+ * The upload was invalid, failed, or is a duplicate
10010
10604
  */
10011
- 412: MessageErrorResponse;
10605
+ 412: {
10606
+ success: false;
10607
+ reason: 'invalid';
10608
+ message: string;
10609
+ } | {
10610
+ success: false;
10611
+ reason: 'duplicate';
10612
+ /**
10613
+ * The duplicate post.
10614
+ */
10615
+ location: string;
10616
+ /**
10617
+ * The duplicate post's id.
10618
+ */
10619
+ post_id: number;
10620
+ };
10012
10621
  };
10013
10622
  export type UploadsCreateError = UploadsCreateErrors[keyof UploadsCreateErrors];
10014
10623
  export type UploadsCreateResponses = {
@@ -10017,8 +10626,15 @@ export type UploadsCreateResponses = {
10017
10626
  */
10018
10627
  200: {
10019
10628
  success: true;
10629
+ /**
10630
+ * The post, or the upload if it is still being processed.
10631
+ */
10020
10632
  location: string;
10021
- post_id: number;
10633
+ /**
10634
+ * Not present if the upload is still being processed.
10635
+ */
10636
+ post_id?: number;
10637
+ upload_id: number;
10022
10638
  };
10023
10639
  };
10024
10640
  export type UploadsCreateResponse = UploadsCreateResponses[keyof UploadsCreateResponses];
@@ -10056,13 +10672,15 @@ export type UploadWhitelistsIndexData = {
10056
10672
  path?: never;
10057
10673
  query?: {
10058
10674
  /**
10059
- * The maximum number of results to return. Between 0 and 320.
10675
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
10060
10676
  */
10061
10677
  limit?: number;
10062
10678
  /**
10063
- * The page number of results to get. Between 1 and 750.
10679
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
10680
+ * See [Pagination](https://e621.wiki/pagination/).
10681
+ *
10064
10682
  */
10065
- page?: number;
10683
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
10066
10684
  /**
10067
10685
  * Search for a specific id. Multiple can be separated by commas, up to 320.
10068
10686
  */
@@ -10227,13 +10845,15 @@ export type UsersIndexData = {
10227
10845
  path?: never;
10228
10846
  query?: {
10229
10847
  /**
10230
- * The maximum number of results to return. Between 0 and 320.
10848
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
10231
10849
  */
10232
10850
  limit?: number;
10233
10851
  /**
10234
- * The page number of results to get. Between 1 and 750.
10852
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
10853
+ * See [Pagination](https://e621.wiki/pagination/).
10854
+ *
10235
10855
  */
10236
- page?: number;
10856
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
10237
10857
  /**
10238
10858
  * Search for a specific id. Multiple can be separated by commas, up to 320.
10239
10859
  */
@@ -10686,13 +11306,15 @@ export type UserFeedbacksIndexData = {
10686
11306
  path?: never;
10687
11307
  query?: {
10688
11308
  /**
10689
- * The maximum number of results to return. Between 0 and 320.
11309
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
10690
11310
  */
10691
11311
  limit?: number;
10692
11312
  /**
10693
- * The page number of results to get. Between 1 and 750.
11313
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
11314
+ * See [Pagination](https://e621.wiki/pagination/).
11315
+ *
10694
11316
  */
10695
- page?: number;
11317
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
10696
11318
  /**
10697
11319
  * Search for a specific id. Multiple can be separated by commas, up to 320.
10698
11320
  */
@@ -10911,13 +11533,15 @@ export type UserNameChangeRequestsIndexData = {
10911
11533
  path?: never;
10912
11534
  query?: {
10913
11535
  /**
10914
- * The maximum number of results to return. Between 0 and 320.
11536
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
10915
11537
  */
10916
11538
  limit?: number;
10917
11539
  /**
10918
- * The page number of results to get. Between 1 and 750.
11540
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
11541
+ * See [Pagination](https://e621.wiki/pagination/).
11542
+ *
10919
11543
  */
10920
- page?: number;
11544
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
10921
11545
  /**
10922
11546
  * Search for a specific id. Multiple can be separated by commas, up to 320.
10923
11547
  */
@@ -11014,13 +11638,15 @@ export type WikiPagesIndexData = {
11014
11638
  path?: never;
11015
11639
  query?: {
11016
11640
  /**
11017
- * The maximum number of results to return. Between 0 and 320.
11641
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
11018
11642
  */
11019
11643
  limit?: number;
11020
11644
  /**
11021
- * The page number of results to get. Between 1 and 750.
11645
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
11646
+ * See [Pagination](https://e621.wiki/pagination/).
11647
+ *
11022
11648
  */
11023
- page?: number;
11649
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
11024
11650
  /**
11025
11651
  * Search for a specific id. Multiple can be separated by commas, up to 320.
11026
11652
  */
@@ -11257,13 +11883,15 @@ export type WikiPageVersionsIndexData = {
11257
11883
  path?: never;
11258
11884
  query?: {
11259
11885
  /**
11260
- * The maximum number of results to return. Between 0 and 320.
11886
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
11261
11887
  */
11262
11888
  limit?: number;
11263
11889
  /**
11264
- * The page number of results to get. Between 1 and 750.
11890
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
11891
+ * See [Pagination](https://e621.wiki/pagination/).
11892
+ *
11265
11893
  */
11266
- page?: number;
11894
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
11267
11895
  /**
11268
11896
  * Search for a specific id. Multiple can be separated by commas, up to 320.
11269
11897
  */
@@ -11390,12 +12018,6 @@ export type StaffUsersUpdateErrors = {
11390
12018
  };
11391
12019
  };
11392
12020
  export type StaffUsersUpdateError = StaffUsersUpdateErrors[keyof StaffUsersUpdateErrors];
11393
- export type StaffUsersUpdateResponses = {
11394
- /**
11395
- * Success
11396
- */
11397
- 200: unknown;
11398
- };
11399
12021
  export type StaffUsersAnonymizeConfirmData = {
11400
12022
  body?: never;
11401
12023
  path: {
@@ -11466,13 +12088,15 @@ export type StaffDmailsIndexData = {
11466
12088
  };
11467
12089
  query?: {
11468
12090
  /**
11469
- * The maximum number of results to return. Between 0 and 320.
12091
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
11470
12092
  */
11471
12093
  limit?: number;
11472
12094
  /**
11473
- * The page number of results to get. Between 1 and 750.
12095
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
12096
+ * See [Pagination](https://e621.wiki/pagination/).
12097
+ *
11474
12098
  */
11475
- page?: number;
12099
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
11476
12100
  };
11477
12101
  url: '/staff/users/{user_id}/dmails.json';
11478
12102
  };
@@ -11532,13 +12156,15 @@ export type StaffAutomodDmailsIndexData = {
11532
12156
  path?: never;
11533
12157
  query?: {
11534
12158
  /**
11535
- * The maximum number of results to return. Between 0 and 320.
12159
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
11536
12160
  */
11537
12161
  limit?: number;
11538
12162
  /**
11539
- * The page number of results to get. Between 1 and 750.
12163
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
12164
+ * See [Pagination](https://e621.wiki/pagination/).
12165
+ *
11540
12166
  */
11541
- page?: number;
12167
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
11542
12168
  /**
11543
12169
  * Search for a specific id. Multiple can be separated by commas, up to 320.
11544
12170
  */
@@ -11654,13 +12280,15 @@ export type StaffExceptionsIndexData = {
11654
12280
  path?: never;
11655
12281
  query?: {
11656
12282
  /**
11657
- * The maximum number of results to return. Between 0 and 320.
12283
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
11658
12284
  */
11659
12285
  limit?: number;
11660
12286
  /**
11661
- * The page number of results to get. Between 1 and 750.
12287
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
12288
+ * See [Pagination](https://e621.wiki/pagination/).
12289
+ *
11662
12290
  */
11663
- page?: number;
12291
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
11664
12292
  /**
11665
12293
  * The order of the results.
11666
12294
  */
@@ -11767,6 +12395,12 @@ export type StaffPostPostsDeleteErrors = {
11767
12395
  * Not Found
11768
12396
  */
11769
12397
  404: NotFoundResponse;
12398
+ /**
12399
+ * The post is already deleted
12400
+ */
12401
+ 409: {
12402
+ reason: string;
12403
+ };
11770
12404
  /**
11771
12405
  * Invalid Input Data
11772
12406
  */
@@ -11775,6 +12409,13 @@ export type StaffPostPostsDeleteErrors = {
11775
12409
  };
11776
12410
  };
11777
12411
  export type StaffPostPostsDeleteError = StaffPostPostsDeleteErrors[keyof StaffPostPostsDeleteErrors];
12412
+ export type StaffPostPostsDeleteResponses = {
12413
+ /**
12414
+ * Success
12415
+ */
12416
+ 201: RawPost;
12417
+ };
12418
+ export type StaffPostPostsDeleteResponse = StaffPostPostsDeleteResponses[keyof StaffPostPostsDeleteResponses];
11778
12419
  export type StaffPostPostsUndeleteData = {
11779
12420
  body?: never;
11780
12421
  path: {
@@ -11807,9 +12448,7 @@ export type StaffPostPostsUndeleteResponses = {
11807
12448
  /**
11808
12449
  * Success
11809
12450
  */
11810
- 201: {
11811
- post: Post;
11812
- };
12451
+ 201: RawPost;
11813
12452
  };
11814
12453
  export type StaffPostPostsUndeleteResponse = StaffPostPostsUndeleteResponses[keyof StaffPostPostsUndeleteResponses];
11815
12454
  export type StaffPostPostsRegenerateThumbnailsData = {
@@ -11918,9 +12557,7 @@ export type StaffPostPostsExpungeResponses = {
11918
12557
  /**
11919
12558
  * Success
11920
12559
  */
11921
- 201: {
11922
- post: Post;
11923
- };
12560
+ 201: RawPost;
11924
12561
  };
11925
12562
  export type StaffPostPostsExpungeResponse = StaffPostPostsExpungeResponses[keyof StaffPostPostsExpungeResponses];
11926
12563
  export type StaffPostPostsMoveFavoritesData = {
@@ -12046,6 +12683,10 @@ export type StaffPostPostsReownerErrors = {
12046
12683
  * Not Found
12047
12684
  */
12048
12685
  404: NotFoundResponse;
12686
+ /**
12687
+ * The new owner could not be found
12688
+ */
12689
+ 422: MessageErrorResponse;
12049
12690
  };
12050
12691
  export type StaffPostPostsReownerError = StaffPostPostsReownerErrors[keyof StaffPostPostsReownerErrors];
12051
12692
  export type StaffPostPostsReownerResponses = {
@@ -12258,13 +12899,15 @@ export type StaffPostDisapprovalsIndexData = {
12258
12899
  path?: never;
12259
12900
  query?: {
12260
12901
  /**
12261
- * The maximum number of results to return. Between 0 and 320.
12902
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
12262
12903
  */
12263
12904
  limit?: number;
12264
12905
  /**
12265
- * The page number of results to get. Between 1 and 750.
12906
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
12907
+ * See [Pagination](https://e621.wiki/pagination/).
12908
+ *
12266
12909
  */
12267
- page?: number;
12910
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
12268
12911
  /**
12269
12912
  * Search for a specific id. Multiple can be separated by commas, up to 320.
12270
12913
  */
@@ -12274,6 +12917,9 @@ export type StaffPostDisapprovalsIndexData = {
12274
12917
  'search[creator_name]'?: string;
12275
12918
  'search[post_id]'?: number;
12276
12919
  'search[message]'?: string;
12920
+ /**
12921
+ * See [Search Syntax](https://e621.wiki/searching/).
12922
+ */
12277
12923
  'search[post_tags_match]'?: string;
12278
12924
  'search[reason]'?: string;
12279
12925
  'search[has_message]'?: boolean;
@@ -12322,13 +12968,15 @@ export type StaffFilesIndexData = {
12322
12968
  path?: never;
12323
12969
  query?: {
12324
12970
  /**
12325
- * The maximum number of results to return. Between 0 and 320.
12971
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
12326
12972
  */
12327
12973
  limit?: number;
12328
12974
  /**
12329
- * The page number of results to get. Between 1 and 750.
12975
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
12976
+ * See [Pagination](https://e621.wiki/pagination/).
12977
+ *
12330
12978
  */
12331
- page?: number;
12979
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
12332
12980
  /**
12333
12981
  * Search for a specific id. Multiple can be separated by commas, up to 320.
12334
12982
  */
@@ -12486,13 +13134,15 @@ export type StaffWikisIndexData = {
12486
13134
  path?: never;
12487
13135
  query?: {
12488
13136
  /**
12489
- * The maximum number of results to return. Between 0 and 320.
13137
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
12490
13138
  */
12491
13139
  limit?: number;
12492
13140
  /**
12493
- * The page number of results to get. Between 1 and 750.
13141
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
13142
+ * See [Pagination](https://e621.wiki/pagination/).
13143
+ *
12494
13144
  */
12495
- page?: number;
13145
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
12496
13146
  /**
12497
13147
  * Search for a specific id. Multiple can be separated by commas, up to 320.
12498
13148
  */
@@ -12832,13 +13482,15 @@ export type StaffWikiVersionsIndexData = {
12832
13482
  path?: never;
12833
13483
  query?: {
12834
13484
  /**
12835
- * The maximum number of results to return. Between 0 and 320.
13485
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
12836
13486
  */
12837
13487
  limit?: number;
12838
13488
  /**
12839
- * The page number of results to get. Between 1 and 750.
13489
+ * A page number between 1 and 750, or `b<id>`/`a<id>` for the results before or after an id.
13490
+ * See [Pagination](https://e621.wiki/pagination/).
13491
+ *
12840
13492
  */
12841
- page?: number;
13493
+ page?: number | `${number}` | `${'a' | 'b'}${number}`;
12842
13494
  /**
12843
13495
  * Search for a specific id. Multiple can be separated by commas, up to 320.
12844
13496
  */
@@ -12900,7 +13552,7 @@ export type StaffVoteTrendsIndexData = {
12900
13552
  path?: never;
12901
13553
  query: {
12902
13554
  /**
12903
- * The maximum number of results to return. Between 0 and 320.
13555
+ * The maximum number of results to return. Between 0 and 320. See [Pagination](https://e621.wiki/pagination/).
12904
13556
  */
12905
13557
  limit?: number;
12906
13558
  /**