rozod 6.7.0 → 6.8.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 (70) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +75 -451
  3. package/lib/endpoints/accountinformationv1.d.ts +50 -87
  4. package/lib/endpoints/accountinformationv1.js +46 -90
  5. package/lib/endpoints/assetdeliveryv1.d.ts +39 -0
  6. package/lib/endpoints/assetdeliveryv1.js +39 -0
  7. package/lib/endpoints/assetdeliveryv2.d.ts +27 -0
  8. package/lib/endpoints/assetdeliveryv2.js +27 -0
  9. package/lib/endpoints/authv1.d.ts +71 -3
  10. package/lib/endpoints/authv1.js +70 -4
  11. package/lib/endpoints/authv2.d.ts +22 -1
  12. package/lib/endpoints/authv2.js +23 -2
  13. package/lib/endpoints/avatarv1.d.ts +9 -6
  14. package/lib/endpoints/avatarv1.js +9 -6
  15. package/lib/endpoints/avatarv2.d.ts +11 -5
  16. package/lib/endpoints/avatarv2.js +11 -5
  17. package/lib/endpoints/avatarv3.d.ts +16 -7
  18. package/lib/endpoints/avatarv3.js +16 -7
  19. package/lib/endpoints/badgesv1.d.ts +4 -0
  20. package/lib/endpoints/badgesv1.js +4 -0
  21. package/lib/endpoints/catalogv1.d.ts +25 -3
  22. package/lib/endpoints/catalogv1.js +21 -3
  23. package/lib/endpoints/catalogv2.d.ts +294 -50
  24. package/lib/endpoints/catalogv2.js +256 -24
  25. package/lib/endpoints/clientsettingsv2.d.ts +6 -0
  26. package/lib/endpoints/clientsettingsv2.js +6 -0
  27. package/lib/endpoints/contactsv1.d.ts +18 -22
  28. package/lib/endpoints/contactsv1.js +14 -22
  29. package/lib/endpoints/developv1.d.ts +36 -1
  30. package/lib/endpoints/developv1.js +12 -3
  31. package/lib/endpoints/developv2.d.ts +32 -3
  32. package/lib/endpoints/developv2.js +16 -5
  33. package/lib/endpoints/friendsv1.d.ts +222 -314
  34. package/lib/endpoints/friendsv1.js +213 -313
  35. package/lib/endpoints/gameinternationalizationv1.d.ts +59 -0
  36. package/lib/endpoints/gameinternationalizationv1.js +57 -1
  37. package/lib/endpoints/gamesv1.d.ts +79 -0
  38. package/lib/endpoints/gamesv1.js +70 -97
  39. package/lib/endpoints/gamesv2.d.ts +12 -0
  40. package/lib/endpoints/gamesv2.js +10 -0
  41. package/lib/endpoints/groupsv1.d.ts +49 -4
  42. package/lib/endpoints/groupsv1.js +55 -7
  43. package/lib/endpoints/groupsv2.d.ts +2 -0
  44. package/lib/endpoints/groupsv2.js +2 -0
  45. package/lib/endpoints/inventoryv1.d.ts +3 -1
  46. package/lib/endpoints/inventoryv1.js +3 -1
  47. package/lib/endpoints/inventoryv2.d.ts +70 -0
  48. package/lib/endpoints/inventoryv2.js +68 -1
  49. package/lib/endpoints/localev1.d.ts +27 -0
  50. package/lib/endpoints/localev1.js +28 -1
  51. package/lib/endpoints/publishv1.d.ts +3 -6
  52. package/lib/endpoints/publishv1.js +3 -6
  53. package/lib/endpoints/thumbnailsv1.d.ts +44 -87
  54. package/lib/endpoints/thumbnailsv1.js +25 -0
  55. package/lib/index.d.ts +96 -3
  56. package/lib/index.js +114 -1
  57. package/lib/opencloud/v1/asset-permissions.d.ts +1 -1
  58. package/lib/opencloud/v1/assets.d.ts +9 -9
  59. package/lib/opencloud/v1/datastores-ordered.d.ts +6 -6
  60. package/lib/opencloud/v1/datastores.d.ts +8 -8
  61. package/lib/opencloud/v1/developer-products.d.ts +4 -4
  62. package/lib/opencloud/v1/game-passes.d.ts +4 -4
  63. package/lib/opencloud/v1/messaging.d.ts +1 -1
  64. package/lib/opencloud/v1/open-eval.d.ts +2 -2
  65. package/lib/opencloud/v1/secrets-store.d.ts +5 -5
  66. package/lib/opencloud/v1/toolbox.d.ts +2 -2
  67. package/lib/opencloud/v1/universes.d.ts +1 -1
  68. package/lib/opencloud/v2/cloud.d.ts +197 -87
  69. package/lib/opencloud/v2/cloud.js +68 -15
  70. package/package.json +108 -108
@@ -1,6 +1,179 @@
1
1
  import { z } from "zod";
2
2
  import { endpoint } from "..";
3
3
 
4
+ const Roblox_Catalog_Api_BundleItemDetailModel = z.object({
5
+ owned: z.boolean(),
6
+ id: z.number().int(),
7
+ name: z.string(),
8
+ type: z.string(),
9
+ supportsHeadShapes: z.boolean(),
10
+ assetType: z.number().int(),
11
+ });
12
+ const Roblox_Catalog_Api_Discount = z.object({
13
+ robuxDiscountAmount: z.number().int(),
14
+ robuxDiscountPercentage: z.number(),
15
+ discountCampaign: z.string(),
16
+ localizedDiscountAttribution: z.string(),
17
+ });
18
+ const Roblox_Catalog_Api_DiscountInformation = z.object({
19
+ originalPrice: z.number().int(),
20
+ totalDiscountPercentage: z.number(),
21
+ totalDiscountAmount: z.number().int(),
22
+ discounts: z.array(Roblox_Catalog_Api_Discount),
23
+ });
24
+ const Roblox_Catalog_Api_TimedOption = z.object({
25
+ days: z.number().int(),
26
+ price: z.number().int(),
27
+ discountInformation: Roblox_Catalog_Api_DiscountInformation,
28
+ selected: z.boolean(),
29
+ });
30
+ const Roblox_Catalog_Api_CatalogSearchDetailedResponseItem = z.object({
31
+ id: z.number().int(),
32
+ itemType: z.enum(["Asset", "Bundle"]),
33
+ assetType: z.union([
34
+ z.literal(1),
35
+ z.literal(2),
36
+ z.literal(3),
37
+ z.literal(4),
38
+ z.literal(5),
39
+ z.literal(6),
40
+ z.literal(7),
41
+ z.literal(8),
42
+ z.literal(9),
43
+ z.literal(10),
44
+ z.literal(11),
45
+ z.literal(12),
46
+ z.literal(13),
47
+ z.literal(16),
48
+ z.literal(17),
49
+ z.literal(18),
50
+ z.literal(19),
51
+ z.literal(21),
52
+ z.literal(22),
53
+ z.literal(24),
54
+ z.literal(25),
55
+ z.literal(26),
56
+ z.literal(27),
57
+ z.literal(28),
58
+ z.literal(29),
59
+ z.literal(30),
60
+ z.literal(31),
61
+ z.literal(32),
62
+ z.literal(33),
63
+ z.literal(34),
64
+ z.literal(35),
65
+ z.literal(37),
66
+ z.literal(38),
67
+ z.literal(39),
68
+ z.literal(40),
69
+ z.literal(41),
70
+ z.literal(42),
71
+ z.literal(43),
72
+ z.literal(44),
73
+ z.literal(45),
74
+ z.literal(46),
75
+ z.literal(47),
76
+ z.literal(48),
77
+ z.literal(49),
78
+ z.literal(50),
79
+ z.literal(51),
80
+ z.literal(52),
81
+ z.literal(53),
82
+ z.literal(54),
83
+ z.literal(55),
84
+ z.literal(56),
85
+ z.literal(59),
86
+ z.literal(60),
87
+ z.literal(61),
88
+ z.literal(62),
89
+ z.literal(63),
90
+ z.literal(64),
91
+ z.literal(65),
92
+ z.literal(66),
93
+ z.literal(67),
94
+ z.literal(68),
95
+ z.literal(69),
96
+ z.literal(70),
97
+ z.literal(71),
98
+ z.literal(72),
99
+ z.literal(73),
100
+ z.literal(74),
101
+ z.literal(75),
102
+ z.literal(76),
103
+ z.literal(77),
104
+ z.literal(78),
105
+ z.literal(79),
106
+ z.literal(80),
107
+ z.literal(81),
108
+ z.literal(82),
109
+ z.literal(83),
110
+ z.literal(84),
111
+ z.literal(85),
112
+ z.literal(86),
113
+ z.literal(87),
114
+ z.literal(88),
115
+ z.literal(89),
116
+ z.literal(90),
117
+ z.literal(91),
118
+ z.literal(92),
119
+ ]),
120
+ bundleType: z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4)]),
121
+ isRecolorable: z.boolean(),
122
+ name: z.string(),
123
+ description: z.string(),
124
+ productId: z.number().int(),
125
+ bundledItems: z.array(Roblox_Catalog_Api_BundleItemDetailModel),
126
+ itemStatus: z.array(
127
+ z.union([z.literal(1), z.literal(2), z.literal(7), z.literal(8)])
128
+ ),
129
+ itemRestrictions: z.array(
130
+ z.union([
131
+ z.literal(1),
132
+ z.literal(2),
133
+ z.literal(3),
134
+ z.literal(4),
135
+ z.literal(5),
136
+ z.literal(6),
137
+ z.literal(7),
138
+ z.literal(8),
139
+ z.literal(9),
140
+ ])
141
+ ),
142
+ creatorHasVerifiedBadge: z.boolean(),
143
+ creatorType: z.string(),
144
+ creatorTargetId: z.number().int(),
145
+ creatorName: z.string(),
146
+ price: z.number().int(),
147
+ lowestPrice: z.number().int(),
148
+ lowestResalePrice: z.number().int(),
149
+ priceStatus: z.string(),
150
+ unitsAvailableForConsumption: z.number().int(),
151
+ favoriteCount: z.number().int(),
152
+ offSaleDeadline: z.string().datetime({ offset: true }),
153
+ collectibleItemId: z.string(),
154
+ totalQuantity: z.number().int(),
155
+ saleLocationType: z.enum([
156
+ "NotApplicable",
157
+ "ShopOnly",
158
+ "MyExperiencesOnly",
159
+ "ShopAndMyExperiences",
160
+ "ExperiencesById",
161
+ "ShopAndAllExperiences",
162
+ "ExperiencesDevApiOnly",
163
+ "ShopAndExperiencesById",
164
+ ]),
165
+ hasResellers: z.boolean(),
166
+ isOffSale: z.boolean(),
167
+ quantityLimitPerUser: z.number().int(),
168
+ supportsHeadShapes: z.boolean(),
169
+ timedOptions: z.array(Roblox_Catalog_Api_TimedOption),
170
+ });
171
+ const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Catalog_Api_CatalogSearchDetailedResponseItem_ =
172
+ z.object({
173
+ previousPageCursor: z.string(),
174
+ nextPageCursor: z.string(),
175
+ data: z.array(Roblox_Catalog_Api_CatalogSearchDetailedResponseItem),
176
+ });
4
177
  const Roblox_Catalog_Api_ElasticsearchDebugInfo = z.object({
5
178
  elasticsearchQuery: z.string(),
6
179
  isFromCache: z.boolean(),
@@ -23,15 +196,11 @@ const Roblox_Catalog_Api_TaxonomyModel = z.object({
23
196
  taxonomyId: z.string(),
24
197
  taxonomyName: z.string(),
25
198
  });
26
- const Roblox_Catalog_Api_TimedOption = z.object({
27
- days: z.number().int(),
28
- price: z.number().int(),
29
- selected: z.boolean(),
30
- });
31
199
  const Roblox_Catalog_Api_CatalogSearchDetailedResponseItemV2 = z.object({
32
200
  bundledItems: z.array(Roblox_Catalog_Api_BundleItemDetailModelV2),
33
201
  taxonomy: z.array(Roblox_Catalog_Api_TaxonomyModel),
34
202
  itemCreatedUtc: z.string().datetime({ offset: true }),
203
+ discountInformation: Roblox_Catalog_Api_DiscountInformation,
35
204
  id: z.number().int(),
36
205
  itemType: z.enum(["Asset", "Bundle"]),
37
206
  assetType: z.union([
@@ -119,13 +288,16 @@ const Roblox_Catalog_Api_CatalogSearchDetailedResponseItemV2 = z.object({
119
288
  z.literal(89),
120
289
  z.literal(90),
121
290
  z.literal(91),
291
+ z.literal(92),
122
292
  ]),
123
293
  bundleType: z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4)]),
124
294
  isRecolorable: z.boolean(),
125
295
  name: z.string(),
126
296
  description: z.string(),
127
297
  productId: z.number().int(),
128
- itemStatus: z.array(z.union([z.literal(1), z.literal(2), z.literal(7)])),
298
+ itemStatus: z.array(
299
+ z.union([z.literal(1), z.literal(2), z.literal(7), z.literal(8)])
300
+ ),
129
301
  itemRestrictions: z.array(
130
302
  z.union([
131
303
  z.literal(1),
@@ -177,6 +349,69 @@ const Roblox_Catalog_Api_CatalogSearchPageResponse_Roblox_Catalog_Api_CatalogSea
177
349
  data: z.array(Roblox_Catalog_Api_CatalogSearchDetailedResponseItemV2),
178
350
  });
179
351
 
352
+ /**
353
+ * @api GET https://catalog.roblox.com/v2/assets/:assetId/bundles
354
+ * @summary Lists bundles that contain the given asset (hydrated search-detail shape for marketplace).
355
+ * @param assetId Asset id.
356
+ * @param Roblox-Place-Id Roblox-Place-Id header.
357
+ * @param Roblox-Game-Id Roblox-Game-Id header.
358
+ * @param limit The number of results per request.
359
+ * @param cursor The paging cursor for the previous or next page.
360
+ * @param sortOrder The order the results are sorted in.
361
+ */
362
+ export const getAssetsAssetidBundles = endpoint({
363
+ method: "GET",
364
+ path: "/v2/assets/:assetId/bundles",
365
+ baseUrl: "https://catalog.roblox.com",
366
+ requestFormat: "json",
367
+ serializationMethod: {
368
+ assetId: {
369
+ style: "simple",
370
+ },
371
+ "Roblox-Place-Id": {
372
+ style: "simple",
373
+ },
374
+ "Roblox-Game-Id": {
375
+ style: "simple",
376
+ },
377
+ limit: {
378
+ style: "form",
379
+ explode: true,
380
+ },
381
+ cursor: {
382
+ style: "form",
383
+ explode: true,
384
+ },
385
+ sortOrder: {
386
+ style: "form",
387
+ explode: true,
388
+ },
389
+ },
390
+ parameters: {
391
+ assetId: z.number().int(),
392
+ "Roblox-Place-Id": z.number().int(),
393
+ "Roblox-Game-Id": z.string(),
394
+ limit: z
395
+ .union([z.literal(10), z.literal(25), z.literal(50), z.literal(100)])
396
+ .optional()
397
+ .default(10),
398
+ cursor: z.string().optional(),
399
+ sortOrder: z.enum(["Asc", "Desc"]).optional().default("Asc"),
400
+ },
401
+ response:
402
+ Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Catalog_Api_CatalogSearchDetailedResponseItem_,
403
+ errors: [
404
+ {
405
+ status: 400,
406
+ description: `1: Invalid assetId
407
+ 4: Invalid Cursor.`,
408
+ },
409
+ {
410
+ status: 403,
411
+ description: `7: User is unauthorized.`,
412
+ },
413
+ ],
414
+ });
180
415
  /**
181
416
  * @api GET https://catalog.roblox.com/v2/search/items/details
182
417
  * @summary Search for catalog items.
@@ -285,50 +520,59 @@ export const getSearchItemsDetails = endpoint({
285
520
  },
286
521
  },
287
522
  parameters: {
288
- Taxonomy: z.string(),
289
- AssetTypeIds: z.array(z.number()),
290
- BundleTypeIds: z.array(z.number()),
291
- CategoryFilter: z.union([
292
- z.literal(0),
293
- z.literal(1),
294
- z.literal(2),
295
- z.literal(3),
296
- z.literal(4),
297
- z.literal(5),
298
- z.literal(6),
299
- ]),
300
- SortAggregation: z.union([
301
- z.literal(0),
302
- z.literal(1),
303
- z.literal(2),
304
- z.literal(3),
305
- z.literal(4),
306
- z.literal(5),
307
- ]),
308
- SortType: z.union([
309
- z.literal(0),
310
- z.literal(1),
311
- z.literal(2),
312
- z.literal(3),
313
- z.literal(4),
314
- z.literal(5),
315
- ]),
316
- CreatorType: z.union([z.literal(0), z.literal(1), z.literal(2)]),
317
- CreatorTargetId: z.number().int(),
318
- CreatorName: z.string(),
319
- MaxPrice: z.number().int(),
320
- MinPrice: z.number().int(),
321
- Keyword: z.string(),
322
- IncludeNotForSale: z.boolean(),
323
- TriggeredByTopicDiscovery: z.boolean(),
324
- SalesTypeFilter: z.union([
325
- z.literal(0),
326
- z.literal(1),
327
- z.literal(2),
328
- z.literal(3),
329
- z.literal(4),
330
- ]),
331
- Topics: z.string(),
523
+ Taxonomy: z.string().optional(),
524
+ AssetTypeIds: z.array(z.number()).optional(),
525
+ BundleTypeIds: z.array(z.number()).optional(),
526
+ CategoryFilter: z
527
+ .union([
528
+ z.literal(0),
529
+ z.literal(1),
530
+ z.literal(2),
531
+ z.literal(3),
532
+ z.literal(4),
533
+ z.literal(5),
534
+ z.literal(6),
535
+ z.literal(7),
536
+ ])
537
+ .optional(),
538
+ SortAggregation: z
539
+ .union([
540
+ z.literal(0),
541
+ z.literal(1),
542
+ z.literal(2),
543
+ z.literal(3),
544
+ z.literal(4),
545
+ z.literal(5),
546
+ ])
547
+ .optional(),
548
+ SortType: z
549
+ .union([
550
+ z.literal(0),
551
+ z.literal(1),
552
+ z.literal(2),
553
+ z.literal(3),
554
+ z.literal(4),
555
+ z.literal(5),
556
+ ])
557
+ .optional(),
558
+ CreatorType: z.union([z.literal(0), z.literal(1), z.literal(2)]).optional(),
559
+ CreatorTargetId: z.number().int().optional(),
560
+ CreatorName: z.string().optional(),
561
+ MaxPrice: z.number().int().optional(),
562
+ MinPrice: z.number().int().optional(),
563
+ Keyword: z.string().optional(),
564
+ IncludeNotForSale: z.boolean().optional(),
565
+ TriggeredByTopicDiscovery: z.boolean().optional(),
566
+ SalesTypeFilter: z
567
+ .union([
568
+ z.literal(0),
569
+ z.literal(1),
570
+ z.literal(2),
571
+ z.literal(3),
572
+ z.literal(4),
573
+ ])
574
+ .optional(),
575
+ Topics: z.string().optional(),
332
576
  limit: z
333
577
  .union([
334
578
  z.literal(10),