rozod 6.6.0 → 6.7.1

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 (51) hide show
  1. package/README.md +11 -11
  2. package/lib/endpoints/accountinformationv1.d.ts +50 -87
  3. package/lib/endpoints/accountinformationv1.js +46 -90
  4. package/lib/endpoints/assetdeliveryv1.d.ts +1 -0
  5. package/lib/endpoints/assetdeliveryv1.js +1 -0
  6. package/lib/endpoints/assetdeliveryv2.d.ts +1 -0
  7. package/lib/endpoints/assetdeliveryv2.js +1 -0
  8. package/lib/endpoints/authv1.d.ts +64 -1
  9. package/lib/endpoints/authv1.js +67 -3
  10. package/lib/endpoints/authv2.d.ts +21 -0
  11. package/lib/endpoints/authv2.js +22 -1
  12. package/lib/endpoints/avatarv1.d.ts +9 -6
  13. package/lib/endpoints/avatarv1.js +9 -6
  14. package/lib/endpoints/avatarv2.d.ts +11 -5
  15. package/lib/endpoints/avatarv2.js +11 -5
  16. package/lib/endpoints/avatarv3.d.ts +16 -7
  17. package/lib/endpoints/avatarv3.js +16 -7
  18. package/lib/endpoints/catalogv1.d.ts +23 -2
  19. package/lib/endpoints/catalogv1.js +19 -2
  20. package/lib/endpoints/catalogv2.d.ts +242 -6
  21. package/lib/endpoints/catalogv2.js +235 -7
  22. package/lib/endpoints/chatv2.d.ts +778 -778
  23. package/lib/endpoints/clientsettingsv2.d.ts +6 -0
  24. package/lib/endpoints/clientsettingsv2.js +6 -0
  25. package/lib/endpoints/contactsv1.d.ts +18 -22
  26. package/lib/endpoints/contactsv1.js +14 -22
  27. package/lib/endpoints/developv1.d.ts +33 -1
  28. package/lib/endpoints/developv1.js +9 -3
  29. package/lib/endpoints/developv2.d.ts +29 -2
  30. package/lib/endpoints/developv2.js +13 -4
  31. package/lib/endpoints/gameinternationalizationv1.d.ts +59 -0
  32. package/lib/endpoints/gameinternationalizationv1.js +57 -1
  33. package/lib/endpoints/gamejoinv1.d.ts +458 -458
  34. package/lib/endpoints/gamesv1.d.ts +74 -95
  35. package/lib/endpoints/gamesv1.js +68 -97
  36. package/lib/endpoints/gamesv2.d.ts +2 -0
  37. package/lib/endpoints/gamesv2.js +2 -0
  38. package/lib/endpoints/groupsv1.d.ts +7 -3
  39. package/lib/endpoints/groupsv1.js +7 -3
  40. package/lib/endpoints/groupsv2.d.ts +1 -0
  41. package/lib/endpoints/groupsv2.js +1 -0
  42. package/lib/endpoints/inventoryv2.d.ts +68 -0
  43. package/lib/endpoints/inventoryv2.js +66 -1
  44. package/lib/endpoints/localev1.d.ts +27 -0
  45. package/lib/endpoints/localev1.js +28 -1
  46. package/lib/endpoints/metricsv1.d.ts +88 -88
  47. package/lib/endpoints/publishv1.d.ts +3 -6
  48. package/lib/endpoints/publishv1.js +3 -6
  49. package/lib/opencloud/v2/cloud.d.ts +28 -31
  50. package/lib/opencloud/v2/cloud.js +45 -46
  51. package/package.json +108 -64
@@ -34,6 +34,10 @@ const Roblox_ClientSettings_Api_Models_Response_OtaVersionResponse = z.object({
34
34
  assetsManifest: z.string(),
35
35
  versionV2: z.number().int(),
36
36
  });
37
+ const Roblox_ClientSettings_Api_Models_Response_BetaProgramInfo = z.object({
38
+ name: z.string(),
39
+ id: z.string(),
40
+ });
37
41
  const Roblox_ClientSettings_Api_Models_Response_UserChannelResponse = z.object({
38
42
  channelName: z.string(),
39
43
  channelAssignmentType: z.enum([
@@ -45,6 +49,8 @@ const Roblox_ClientSettings_Api_Models_Response_UserChannelResponse = z.object({
45
49
  "OptedInToBetaProgramWithPublicChannel",
46
50
  ]),
47
51
  token: z.string(),
52
+ program: Roblox_ClientSettings_Api_Models_Response_BetaProgramInfo,
53
+ isFlagOnly: z.boolean(),
48
54
  });
49
55
 
50
56
  /**
@@ -32,6 +32,10 @@ const Roblox_ClientSettings_Api_Models_Response_OtaVersionResponse = zod_1.z.obj
32
32
  assetsManifest: zod_1.z.string(),
33
33
  versionV2: zod_1.z.number().int(),
34
34
  });
35
+ const Roblox_ClientSettings_Api_Models_Response_BetaProgramInfo = zod_1.z.object({
36
+ name: zod_1.z.string(),
37
+ id: zod_1.z.string(),
38
+ });
35
39
  const Roblox_ClientSettings_Api_Models_Response_UserChannelResponse = zod_1.z.object({
36
40
  channelName: zod_1.z.string(),
37
41
  channelAssignmentType: zod_1.z.enum([
@@ -43,6 +47,8 @@ const Roblox_ClientSettings_Api_Models_Response_UserChannelResponse = zod_1.z.ob
43
47
  'OptedInToBetaProgramWithPublicChannel',
44
48
  ]),
45
49
  token: zod_1.z.string(),
50
+ program: Roblox_ClientSettings_Api_Models_Response_BetaProgramInfo,
51
+ isFlagOnly: zod_1.z.boolean(),
46
52
  });
47
53
  /**
48
54
  * @api GET https://clientsettings.roblox.com/v2/android-binaries/:version/channels/:channelName
@@ -1,11 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { endpoint } from "..";
3
3
 
4
- const Roblox_Contacts_Api_Models_Response_ContactsMetadataResponseModel =
5
- z.object({
6
- multiGetContactsMaxSize: z.number().int(),
7
- multiGetContactsCacheTTLinMS: z.number().int(),
8
- });
9
4
  const Roblox_Contacts_Api_Response_ValidateUserTagResponseModel = z.object({
10
5
  status: z.enum(["Success", "Moderated", "TooLong"]),
11
6
  });
@@ -24,23 +19,6 @@ const Roblox_Contacts_Api_Response_SetUserTagResponseModel = z.object({
24
19
  status: z.enum(["Success", "Moderated"]),
25
20
  });
26
21
 
27
- /**
28
- * @api GET https://contacts.roblox.com/v1/contacts/metadata
29
- * @summary Gets contextual information for contacts and usertags
30
- */
31
- export const getContactsMetadata = endpoint({
32
- method: "GET",
33
- path: "/v1/contacts/metadata",
34
- baseUrl: "https://contacts.roblox.com",
35
- requestFormat: "json",
36
- response: Roblox_Contacts_Api_Models_Response_ContactsMetadataResponseModel,
37
- errors: [
38
- {
39
- status: 401,
40
- description: `0: Authorization has been denied for this request.`,
41
- },
42
- ],
43
- });
44
22
  /**
45
23
  * @api POST https://contacts.roblox.com/v1/user/get-tags
46
24
  * @summary Gets the tags for multiple users
@@ -146,3 +124,21 @@ export const getUserTagValidate = endpoint({
146
124
  },
147
125
  ],
148
126
  });
127
+
128
+ // Patched endpoints removed from Roblox API docs
129
+
130
+ const Patch_ContactsMetadataResponseModel = z.object({
131
+ multiGetContactsMaxSize: z.number().int(),
132
+ multiGetContactsCacheTTLinMS: z.number().int(),
133
+ });
134
+
135
+ export const getContactsMetadata = endpoint({
136
+ method: 'GET',
137
+ path: '/v1/contacts/metadata',
138
+ baseUrl: 'https://contacts.roblox.com',
139
+ requestFormat: 'json',
140
+ response: Patch_ContactsMetadataResponseModel,
141
+ errors: [
142
+ { status: 401, description: `0: Authorization has been denied for this request.` },
143
+ ],
144
+ });
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUserTagValidate = exports.postUserTag = exports.postUserGetTags = exports.getContactsMetadata = void 0;
3
+ exports.getContactsMetadata = exports.getUserTagValidate = exports.postUserTag = exports.postUserGetTags = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const __1 = require("..");
6
- const Roblox_Contacts_Api_Models_Response_ContactsMetadataResponseModel = zod_1.z.object({
7
- multiGetContactsMaxSize: zod_1.z.number().int(),
8
- multiGetContactsCacheTTLinMS: zod_1.z.number().int(),
9
- });
10
6
  const Roblox_Contacts_Api_Response_ValidateUserTagResponseModel = zod_1.z.object({
11
7
  status: zod_1.z.enum(['Success', 'Moderated', 'TooLong']),
12
8
  });
@@ -24,23 +20,6 @@ const Roblox_Contacts_Api_Request_SetUserTagRequestModel = zod_1.z.object({
24
20
  const Roblox_Contacts_Api_Response_SetUserTagResponseModel = zod_1.z.object({
25
21
  status: zod_1.z.enum(['Success', 'Moderated']),
26
22
  });
27
- /**
28
- * @api GET https://contacts.roblox.com/v1/contacts/metadata
29
- * @summary Gets contextual information for contacts and usertags
30
- */
31
- exports.getContactsMetadata = (0, __1.endpoint)({
32
- method: 'GET',
33
- path: '/v1/contacts/metadata',
34
- baseUrl: 'https://contacts.roblox.com',
35
- requestFormat: 'json',
36
- response: Roblox_Contacts_Api_Models_Response_ContactsMetadataResponseModel,
37
- errors: [
38
- {
39
- status: 401,
40
- description: `0: Authorization has been denied for this request.`,
41
- },
42
- ],
43
- });
44
23
  /**
45
24
  * @api POST https://contacts.roblox.com/v1/user/get-tags
46
25
  * @summary Gets the tags for multiple users
@@ -146,3 +125,16 @@ exports.getUserTagValidate = (0, __1.endpoint)({
146
125
  },
147
126
  ],
148
127
  });
128
+ // Patched endpoints removed from Roblox API docs
129
+ const Patch_ContactsMetadataResponseModel = zod_1.z.object({
130
+ multiGetContactsMaxSize: zod_1.z.number().int(),
131
+ multiGetContactsCacheTTLinMS: zod_1.z.number().int(),
132
+ });
133
+ exports.getContactsMetadata = (0, __1.endpoint)({
134
+ method: 'GET',
135
+ path: '/v1/contacts/metadata',
136
+ baseUrl: 'https://contacts.roblox.com',
137
+ requestFormat: 'json',
138
+ response: Patch_ContactsMetadataResponseModel,
139
+ errors: [{ status: 401, description: `0: Authorization has been denied for this request.` }],
140
+ });
@@ -27,6 +27,15 @@ const Roblox_Api_Develop_Models_UniverseModel = z.object({
27
27
  creatorName: z.string(),
28
28
  created: z.string().datetime({ offset: true }),
29
29
  updated: z.string().datetime({ offset: true }),
30
+ audiences: z.array(
31
+ z.union([
32
+ z.literal(0),
33
+ z.literal(1),
34
+ z.literal(2),
35
+ z.literal(3),
36
+ z.literal(4),
37
+ ])
38
+ ),
30
39
  });
31
40
  const Roblox_Api_Develop_Models_GameTemplateModel = z.object({
32
41
  gameTemplateType: z.string(),
@@ -66,6 +75,17 @@ const Roblox_Api_Develop_Models_ActivationEligibilityResponse = z.object({
66
75
  remainingPublicPublishCount: z.number().int(),
67
76
  isPublicPublish: z.boolean(),
68
77
  isPublishToExistingUniverse: z.boolean(),
78
+ isUniverseSelect: z.boolean(),
79
+ creatorTier: z.enum(["Invalid", "Blocked", "Private", "Trusted", "Everyone"]),
80
+ allowedAudiences: z.array(
81
+ z.union([
82
+ z.literal(0),
83
+ z.literal(1),
84
+ z.literal(2),
85
+ z.literal(3),
86
+ z.literal(4),
87
+ ])
88
+ ),
69
89
  });
70
90
  const Roblox_Api_Develop_Models_UniverseSettingsResponse = z.object({
71
91
  allowPrivateServers: z.boolean(),
@@ -106,6 +126,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponse = z.object({
106
126
  z.literal(3),
107
127
  z.literal(4),
108
128
  z.literal(5),
129
+ z.literal(6),
109
130
  ])
110
131
  ),
111
132
  isForSale: z.boolean(),
@@ -121,6 +142,15 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponse = z.object({
121
142
  "Approved",
122
143
  "Rejected",
123
144
  ]),
145
+ audiences: z.array(
146
+ z.union([
147
+ z.literal(0),
148
+ z.literal(1),
149
+ z.literal(2),
150
+ z.literal(3),
151
+ z.literal(4),
152
+ ])
153
+ ),
124
154
  });
125
155
  const Roblox_Api_Develop_Models_UniverseSettingsRequest = z.object({
126
156
  name: z.string(),
@@ -156,6 +186,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequest = z.object({
156
186
  z.literal(3),
157
187
  z.literal(4),
158
188
  z.literal(5),
189
+ z.literal(6),
159
190
  ])
160
191
  ),
161
192
  isForSale: z.boolean(),
@@ -711,7 +742,8 @@ export const patchUniversesUniverseidConfiguration = endpoint({
711
742
  21: Invalid device type.
712
743
  22: Invalid asset type.
713
744
  23: Invalid value, the min must be less than or equal to the max
714
- 24: Invalid scale value`,
745
+ 24: Invalid scale value
746
+ 41: You cannot change the private server price again so soon after the previous change. Please try again later.`,
715
747
  },
716
748
  {
717
749
  status: 401,
@@ -28,6 +28,7 @@ const Roblox_Api_Develop_Models_UniverseModel = zod_1.z.object({
28
28
  creatorName: zod_1.z.string(),
29
29
  created: zod_1.z.string().datetime({ offset: true }),
30
30
  updated: zod_1.z.string().datetime({ offset: true }),
31
+ audiences: zod_1.z.array(zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])),
31
32
  });
32
33
  const Roblox_Api_Develop_Models_GameTemplateModel = zod_1.z.object({
33
34
  gameTemplateType: zod_1.z.string(),
@@ -69,6 +70,9 @@ const Roblox_Api_Develop_Models_ActivationEligibilityResponse = zod_1.z.object({
69
70
  remainingPublicPublishCount: zod_1.z.number().int(),
70
71
  isPublicPublish: zod_1.z.boolean(),
71
72
  isPublishToExistingUniverse: zod_1.z.boolean(),
73
+ isUniverseSelect: zod_1.z.boolean(),
74
+ creatorTier: zod_1.z.enum(['Invalid', 'Blocked', 'Private', 'Trusted', 'Everyone']),
75
+ allowedAudiences: zod_1.z.array(zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])),
72
76
  });
73
77
  const Roblox_Api_Develop_Models_UniverseSettingsResponse = zod_1.z.object({
74
78
  allowPrivateServers: zod_1.z.boolean(),
@@ -102,7 +106,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponse = zod_1.z.object({
102
106
  'Ninja',
103
107
  'WildWest',
104
108
  ]),
105
- playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5)])),
109
+ playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5), zod_1.z.literal(6)])),
106
110
  isForSale: zod_1.z.boolean(),
107
111
  price: zod_1.z.number().int(),
108
112
  isStudioAccessToApisAllowed: zod_1.z.boolean(),
@@ -110,6 +114,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponse = zod_1.z.object({
110
114
  isForSaleInFiat: zod_1.z.boolean(),
111
115
  fiatBasePriceId: zod_1.z.string(),
112
116
  fiatModerationStatus: zod_1.z.enum(['Invalid', 'NotModerated', 'Pending', 'Approved', 'Rejected']),
117
+ audiences: zod_1.z.array(zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])),
113
118
  });
114
119
  const Roblox_Api_Develop_Models_UniverseSettingsRequest = zod_1.z.object({
115
120
  name: zod_1.z.string(),
@@ -138,7 +143,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequest = zod_1.z.object({
138
143
  zod_1.z.literal(13),
139
144
  zod_1.z.literal(14),
140
145
  ]),
141
- playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5)])),
146
+ playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5), zod_1.z.literal(6)])),
142
147
  isForSale: zod_1.z.boolean(),
143
148
  price: zod_1.z.number().int(),
144
149
  isMeshTextureApiAccessAllowed: zod_1.z.boolean(),
@@ -678,7 +683,8 @@ exports.patchUniversesUniverseidConfiguration = (0, __1.endpoint)({
678
683
  21: Invalid device type.
679
684
  22: Invalid asset type.
680
685
  23: Invalid value, the min must be less than or equal to the max
681
- 24: Invalid scale value`,
686
+ 24: Invalid scale value
687
+ 41: You cannot change the private server price again so soon after the previous change. Please try again later.`,
682
688
  },
683
689
  {
684
690
  status: 401,
@@ -115,6 +115,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequestV2 = z.object({
115
115
  z.literal(3),
116
116
  z.literal(4),
117
117
  z.literal(5),
118
+ z.literal(6),
118
119
  ])
119
120
  ),
120
121
  isForSale: z.boolean(),
@@ -138,6 +139,15 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequestV2 = z.object({
138
139
  z.literal(2),
139
140
  z.literal(3),
140
141
  ]),
142
+ audiences: z.array(
143
+ z.union([
144
+ z.literal(0),
145
+ z.literal(1),
146
+ z.literal(2),
147
+ z.literal(3),
148
+ z.literal(4),
149
+ ])
150
+ ),
141
151
  });
142
152
  const Roblox_Api_Develop_Models_UniverseModerationPolicyStatus = z.object({
143
153
  region: z.enum(["Unknown", "China"]),
@@ -185,6 +195,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponseV2 = z.object({
185
195
  z.literal(3),
186
196
  z.literal(4),
187
197
  z.literal(5),
198
+ z.literal(6),
188
199
  ])
189
200
  ),
190
201
  isForSale: z.boolean(),
@@ -207,6 +218,15 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponseV2 = z.object({
207
218
  "Rejected",
208
219
  ]),
209
220
  eligibleForTextChatMigration: z.boolean(),
221
+ audiences: z.array(
222
+ z.union([
223
+ z.literal(0),
224
+ z.literal(1),
225
+ z.literal(2),
226
+ z.literal(3),
227
+ z.literal(4),
228
+ ])
229
+ ),
210
230
  });
211
231
  const Roblox_Web_WebAPI_ApiEmptyResponseModel = z.object({});
212
232
 
@@ -413,7 +433,9 @@ export const patchUniversesUniverseidConfiguration = endpoint({
413
433
  22: Invalid asset type.
414
434
  23: Invalid value, the min must be less than or equal to the max
415
435
  24: Invalid scale value
416
- 28: OptIn/Out Regions Not Supported.`,
436
+ 28: OptIn/Out Regions Not Supported.
437
+ 41: You cannot change the private server price again so soon after the previous change. Please try again later.
438
+ 44: The provided audience configuration is invalid. Ensure the audience list contains only supported audience values.`,
417
439
  },
418
440
  {
419
441
  status: 401,
@@ -425,11 +447,16 @@ export const patchUniversesUniverseidConfiguration = endpoint({
425
447
  2: You are not authorized to configure this universe.
426
448
  14: You are not authorized to sell games.
427
449
  29: Luobu app terms of service user agreement is missing.
428
- 30: Unknown error while updating Opt in out region.`,
450
+ 30: Unknown error while updating Opt in out region.
451
+ 45: The creator of this experience is not eligible to set this audience.`,
429
452
  },
430
453
  {
431
454
  status: 409,
432
455
  description: `9: Failed to shutdown all intances of game after changing AvatarType. The change has been reverted.`,
433
456
  },
457
+ {
458
+ status: 500,
459
+ description: `43: Failed to update the audience configuration. The change was not applied. Please try again.`,
460
+ },
434
461
  ],
435
462
  });
@@ -105,7 +105,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequestV2 = zod_1.z.object({
105
105
  zod_1.z.literal(13),
106
106
  zod_1.z.literal(14),
107
107
  ]),
108
- playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5)])),
108
+ playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5), zod_1.z.literal(6)])),
109
109
  isForSale: zod_1.z.boolean(),
110
110
  price: zod_1.z.number().int(),
111
111
  universeAvatarAssetOverrides: zod_1.z.array(Roblox_Platform_UniverseSettings_UniverseAvatarAssetOverrideResponseModel),
@@ -119,6 +119,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsRequestV2 = zod_1.z.object({
119
119
  isRewardedOnDemandAdsAllowed: zod_1.z.boolean(),
120
120
  fiatBasePriceId: zod_1.z.string(),
121
121
  fiatProductChangeType: zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3)]),
122
+ audiences: zod_1.z.array(zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])),
122
123
  });
123
124
  const Roblox_Api_Develop_Models_UniverseModerationPolicyStatus = zod_1.z.object({
124
125
  region: zod_1.z.enum(['Unknown', 'China']),
@@ -157,7 +158,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponseV2 = zod_1.z.object({
157
158
  'Ninja',
158
159
  'WildWest',
159
160
  ]),
160
- playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5)])),
161
+ playableDevices: zod_1.z.array(zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4), zod_1.z.literal(5), zod_1.z.literal(6)])),
161
162
  isForSale: zod_1.z.boolean(),
162
163
  price: zod_1.z.number().int(),
163
164
  universeAvatarAssetOverrides: zod_1.z.array(Roblox_Platform_UniverseSettings_UniverseAvatarAssetOverrideResponseModel),
@@ -169,6 +170,7 @@ const Roblox_Api_Develop_Models_UniverseSettingsResponseV2 = zod_1.z.object({
169
170
  fiatBasePriceId: zod_1.z.string(),
170
171
  fiatModerationStatus: zod_1.z.enum(['Invalid', 'NotModerated', 'Pending', 'Approved', 'Rejected']),
171
172
  eligibleForTextChatMigration: zod_1.z.boolean(),
173
+ audiences: zod_1.z.array(zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])),
172
174
  });
173
175
  const Roblox_Web_WebAPI_ApiEmptyResponseModel = zod_1.z.object({});
174
176
  /**
@@ -373,7 +375,9 @@ exports.patchUniversesUniverseidConfiguration = (0, __1.endpoint)({
373
375
  22: Invalid asset type.
374
376
  23: Invalid value, the min must be less than or equal to the max
375
377
  24: Invalid scale value
376
- 28: OptIn/Out Regions Not Supported.`,
378
+ 28: OptIn/Out Regions Not Supported.
379
+ 41: You cannot change the private server price again so soon after the previous change. Please try again later.
380
+ 44: The provided audience configuration is invalid. Ensure the audience list contains only supported audience values.`,
377
381
  },
378
382
  {
379
383
  status: 401,
@@ -385,11 +389,16 @@ exports.patchUniversesUniverseidConfiguration = (0, __1.endpoint)({
385
389
  2: You are not authorized to configure this universe.
386
390
  14: You are not authorized to sell games.
387
391
  29: Luobu app terms of service user agreement is missing.
388
- 30: Unknown error while updating Opt in out region.`,
392
+ 30: Unknown error while updating Opt in out region.
393
+ 45: The creator of this experience is not eligible to set this audience.`,
389
394
  },
390
395
  {
391
396
  status: 409,
392
397
  description: `9: Failed to shutdown all intances of game after changing AvatarType. The change has been reverted.`,
393
398
  },
399
+ {
400
+ status: 500,
401
+ description: `43: Failed to update the audience configuration. The change was not applied. Please try again.`,
402
+ },
394
403
  ],
395
404
  });
@@ -309,6 +309,7 @@ const Roblox_GameInternationalization_Api_LanguageOrLocaleSettings = z.object({
309
309
  languageCodeType: z.enum(["Language", "Locale"]),
310
310
  languageCode: z.string(),
311
311
  isAutomaticTranslationEnabled: z.boolean(),
312
+ isImageTranslationEnabled: z.boolean(),
312
313
  });
313
314
  const Roblox_Web_WebAPI_Models_ApiArrayResponse_Roblox_GameInternationalization_Api_LanguageOrLocaleSettings_ =
314
315
  z.object({
@@ -507,6 +508,12 @@ const Roblox_GameInternationalization_Api_EditAutomaticTranslationStatusForGameA
507
508
  languageCode: z.string(),
508
509
  isAutomaticTranslationEnabled: z.boolean(),
509
510
  });
511
+ const Roblox_GameInternationalization_Api_EditImageTranslationStatusForGameAndLanguageResponse =
512
+ z.object({
513
+ gameId: z.number().int(),
514
+ languageCode: z.string(),
515
+ isImageTranslationEnabled: z.boolean(),
516
+ });
510
517
  const Roblox_GameInternationalization_Api_UpdateUniverseDisplayInfoAutomaticTranslationSettingsResponse =
511
518
  z.object({
512
519
  gameId: z.number().int(),
@@ -3022,6 +3029,58 @@ export const patchSupportedLanguagesGamesGameidLanguagesLanguagecodeAutomaticTra
3022
3029
  },
3023
3030
  ],
3024
3031
  });
3032
+ /**
3033
+ * @api PATCH https://gameinternationalization.roblox.com/v1/supported-languages/games/:gameId/languages/:languageCode/image-translation-status
3034
+ * @summary Enable or disable image translation for a game and language.
3035
+ * @param body Flag to indicate if image translation should be enabled or disabled.
3036
+ * @param gameId The id of the game.
3037
+ * @param languageCode The language to enable or disable for image translation.
3038
+ */
3039
+ export const patchSupportedLanguagesGamesGameidLanguagesLanguagecodeImageTranslationStatus =
3040
+ endpoint({
3041
+ method: "PATCH",
3042
+ path: "/v1/supported-languages/games/:gameId/languages/:languageCode/image-translation-status",
3043
+ baseUrl: "https://gameinternationalization.roblox.com",
3044
+ requestFormat: "json",
3045
+ serializationMethod: {
3046
+ body: {},
3047
+ gameId: {
3048
+ style: "simple",
3049
+ },
3050
+ languageCode: {
3051
+ style: "simple",
3052
+ },
3053
+ },
3054
+ parameters: {
3055
+ gameId: z.number().int(),
3056
+ languageCode: z.string(),
3057
+ },
3058
+ body: z.boolean(),
3059
+ response:
3060
+ Roblox_GameInternationalization_Api_EditImageTranslationStatusForGameAndLanguageResponse,
3061
+ errors: [
3062
+ {
3063
+ status: 400,
3064
+ description: `14: Invalid game id
3065
+ 22: Invalid language code
3066
+ 53: Language is not supported for the game.
3067
+ 93: Image translation cannot be enabled for language.`,
3068
+ },
3069
+ {
3070
+ status: 401,
3071
+ description: `0: Authorization has been denied for this request.`,
3072
+ },
3073
+ {
3074
+ status: 403,
3075
+ description: `0: Token Validation Failed
3076
+ 18: You do not have permission to manage this game`,
3077
+ },
3078
+ {
3079
+ status: 503,
3080
+ description: `17: Feature is disabled`,
3081
+ },
3082
+ ],
3083
+ });
3025
3084
  /**
3026
3085
  * @api PATCH https://gameinternationalization.roblox.com/v1/supported-languages/games/:gameId/languages/:languageCode/universe-display-info-automatic-translation-settings
3027
3086
  * @summary Update the switch which controls if the UniverseDisplayInformation should be automatically translated.
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSupportedLanguagesGamesGameid = exports.getSourceLanguageGamesGameidLanguageWithLocales = exports.patchSourceLanguageGamesGameid = exports.getSourceLanguageGamesGameid = exports.getNameDescriptionMetadata = exports.postNameDescriptionGamesTranslationHistory = exports.patchNameDescriptionGamesGameid = exports.getNameDescriptionGamesGameid = exports.patchLocalizationtableGametablesGameid = exports.postGameThumbnailsGamesGameidLanguageCodesLanguagecodeImagesOrder = exports.deleteGameThumbnailsGamesGameidLanguageCodesLanguagecodeImagesImageid = exports.postGameThumbnailsGamesGameidLanguageCodesLanguagecodeImage = exports.postGameThumbnailsGamesGameidLanguageCodesLanguagecodeAltText = exports.getGameThumbnailsGamesGameidImages = exports.patchGamePassesGamepassidNameLanguageCodesLanguagecode = exports.patchGamePassesGamepassidNameDescriptionLanguageCodesLanguagecode = exports.deleteGamePassesGamepassidNameDescriptionLanguageCodesLanguagecode = exports.getGamePassesGamepassidNameDescription = exports.deleteGamePassesGamepassidIconsLanguageCodesLanguagecode = exports.postGamePassesGamepassidIconsLanguageCodesLanguagecode = exports.getGamePassesGamepassidIcons = exports.patchGamePassesGamepassidDescriptionLanguageCodesLanguagecode = exports.getGameLocalizationStatusTranslationCountsForLanguageOrLocale = exports.getGameLocalizationStatusGameidTranslationCounts = exports.deleteGameIconGamesGameidLanguageCodesLanguagecode = exports.postGameIconGamesGameidLanguageCodesLanguagecode = exports.getGameIconGamesGameid = exports.patchDeveloperProductsDeveloperproductidNameLanguageCodesLanguagecode = exports.patchDeveloperProductsDeveloperproductidNameDescriptionLanguageCodesLanguagecode = exports.deleteDeveloperProductsDeveloperproductidNameDescriptionLanguageCodesLanguagecode = exports.getDeveloperProductsDeveloperproductidNameDescription = exports.deleteDeveloperProductsDeveloperproductidIconsLanguageCodesLanguagecode = exports.postDeveloperProductsDeveloperproductidIconsLanguageCodesLanguagecode = exports.getDeveloperProductsDeveloperproductidIcons = exports.patchDeveloperProductsDeveloperproductidDescriptionLanguageCodesLanguagecode = exports.patchBadgesBadgeidNameLanguageCodesLanguagecode = exports.patchBadgesBadgeidNameDescriptionLanguageCodesLanguagecode = exports.deleteBadgesBadgeidNameDescriptionLanguageCodesLanguagecode = exports.getBadgesBadgeidNameDescription = exports.deleteBadgesBadgeidIconsLanguageCodesLanguagecode = exports.postBadgesBadgeidIconsLanguageCodesLanguagecode = exports.getBadgesBadgeidIcons = exports.patchBadgesBadgeidDescriptionLanguageCodesLanguagecode = exports.getAutomaticTranslationLanguagesLanguagecodeTargetLanguages = exports.getAutomaticTranslationGamesGameidQuota = exports.getAutomaticTranslationGamesGameidFeatureStatus = exports.getAutolocalizationMetadata = exports.patchAutolocalizationGamesGameidSettings = exports.patchAutolocalizationGamesGameidAutolocalizationtable = exports.postAutolocalizationGamesGameidAutolocalizationtable = void 0;
4
- exports.postUserLocalizationSettingsUniverseUniverseid = exports.getUserLocalizationSettingsUniverseUniverseid = exports.getUserLocalizationSettingsPlayerChoiceUniverseid = exports.getUiConfigurations = exports.getTranslationAnalyticsMetadata = exports.postTranslationAnalyticsGamesGameidRequestTranslationAnalyticsReport = exports.getTranslationAnalyticsGamesGameidDownloadTranslationAnalyticsReport = exports.getSupportedLanguagesMetadata = exports.getSupportedLanguagesGamesGameidUniverseDisplayInfoAutomaticTranslationSettings = exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeUniverseDisplayInfoAutomaticTranslationSettings = exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeAutomaticTranslationStatus = exports.getSupportedLanguagesGamesGameidInExperienceLanguageSelection = exports.getSupportedLanguagesGamesGameidAutomaticTranslationStatus = exports.patchSupportedLanguagesGamesGameid = void 0;
4
+ exports.postUserLocalizationSettingsUniverseUniverseid = exports.getUserLocalizationSettingsUniverseUniverseid = exports.getUserLocalizationSettingsPlayerChoiceUniverseid = exports.getUiConfigurations = exports.getTranslationAnalyticsMetadata = exports.postTranslationAnalyticsGamesGameidRequestTranslationAnalyticsReport = exports.getTranslationAnalyticsGamesGameidDownloadTranslationAnalyticsReport = exports.getSupportedLanguagesMetadata = exports.getSupportedLanguagesGamesGameidUniverseDisplayInfoAutomaticTranslationSettings = exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeUniverseDisplayInfoAutomaticTranslationSettings = exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeImageTranslationStatus = exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeAutomaticTranslationStatus = exports.getSupportedLanguagesGamesGameidInExperienceLanguageSelection = exports.getSupportedLanguagesGamesGameidAutomaticTranslationStatus = exports.patchSupportedLanguagesGamesGameid = void 0;
5
5
  const zod_1 = require("zod");
6
6
  const __1 = require("..");
7
7
  const Roblox_GameInternationalization_Api_AutoLocalizationMetadataResponse = zod_1.z.object({
@@ -243,6 +243,7 @@ const Roblox_GameInternationalization_Api_LanguageOrLocaleSettings = zod_1.z.obj
243
243
  languageCodeType: zod_1.z.enum(['Language', 'Locale']),
244
244
  languageCode: zod_1.z.string(),
245
245
  isAutomaticTranslationEnabled: zod_1.z.boolean(),
246
+ isImageTranslationEnabled: zod_1.z.boolean(),
246
247
  });
247
248
  const Roblox_Web_WebAPI_Models_ApiArrayResponse_Roblox_GameInternationalization_Api_LanguageOrLocaleSettings_ = zod_1.z.object({
248
249
  data: zod_1.z.array(Roblox_GameInternationalization_Api_LanguageOrLocaleSettings),
@@ -427,6 +428,11 @@ const Roblox_GameInternationalization_Api_EditAutomaticTranslationStatusForGameA
427
428
  languageCode: zod_1.z.string(),
428
429
  isAutomaticTranslationEnabled: zod_1.z.boolean(),
429
430
  });
431
+ const Roblox_GameInternationalization_Api_EditImageTranslationStatusForGameAndLanguageResponse = zod_1.z.object({
432
+ gameId: zod_1.z.number().int(),
433
+ languageCode: zod_1.z.string(),
434
+ isImageTranslationEnabled: zod_1.z.boolean(),
435
+ });
430
436
  const Roblox_GameInternationalization_Api_UpdateUniverseDisplayInfoAutomaticTranslationSettingsResponse = zod_1.z.object({
431
437
  gameId: zod_1.z.number().int(),
432
438
  languageCode: zod_1.z.string(),
@@ -2895,6 +2901,56 @@ exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeAutomaticTranslat
2895
2901
  },
2896
2902
  ],
2897
2903
  });
2904
+ /**
2905
+ * @api PATCH https://gameinternationalization.roblox.com/v1/supported-languages/games/:gameId/languages/:languageCode/image-translation-status
2906
+ * @summary Enable or disable image translation for a game and language.
2907
+ * @param body Flag to indicate if image translation should be enabled or disabled.
2908
+ * @param gameId The id of the game.
2909
+ * @param languageCode The language to enable or disable for image translation.
2910
+ */
2911
+ exports.patchSupportedLanguagesGamesGameidLanguagesLanguagecodeImageTranslationStatus = (0, __1.endpoint)({
2912
+ method: 'PATCH',
2913
+ path: '/v1/supported-languages/games/:gameId/languages/:languageCode/image-translation-status',
2914
+ baseUrl: 'https://gameinternationalization.roblox.com',
2915
+ requestFormat: 'json',
2916
+ serializationMethod: {
2917
+ body: {},
2918
+ gameId: {
2919
+ style: 'simple',
2920
+ },
2921
+ languageCode: {
2922
+ style: 'simple',
2923
+ },
2924
+ },
2925
+ parameters: {
2926
+ gameId: zod_1.z.number().int(),
2927
+ languageCode: zod_1.z.string(),
2928
+ },
2929
+ body: zod_1.z.boolean(),
2930
+ response: Roblox_GameInternationalization_Api_EditImageTranslationStatusForGameAndLanguageResponse,
2931
+ errors: [
2932
+ {
2933
+ status: 400,
2934
+ description: `14: Invalid game id
2935
+ 22: Invalid language code
2936
+ 53: Language is not supported for the game.
2937
+ 93: Image translation cannot be enabled for language.`,
2938
+ },
2939
+ {
2940
+ status: 401,
2941
+ description: `0: Authorization has been denied for this request.`,
2942
+ },
2943
+ {
2944
+ status: 403,
2945
+ description: `0: Token Validation Failed
2946
+ 18: You do not have permission to manage this game`,
2947
+ },
2948
+ {
2949
+ status: 503,
2950
+ description: `17: Feature is disabled`,
2951
+ },
2952
+ ],
2953
+ });
2898
2954
  /**
2899
2955
  * @api PATCH https://gameinternationalization.roblox.com/v1/supported-languages/games/:gameId/languages/:languageCode/universe-display-info-automatic-translation-settings
2900
2956
  * @summary Update the switch which controls if the UniverseDisplayInformation should be automatically translated.