rozod 6.4.1 → 6.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.
- package/lib/endpoints/authv1.d.ts +3 -0
- package/lib/endpoints/authv1.js +3 -0
- package/lib/endpoints/authv2.d.ts +2 -0
- package/lib/endpoints/authv2.js +2 -0
- package/lib/endpoints/avatarv2.d.ts +22 -0
- package/lib/endpoints/avatarv2.js +24 -1
- package/lib/endpoints/catalogv1.d.ts +1 -0
- package/lib/endpoints/catalogv1.js +1 -0
- package/lib/endpoints/catalogv2.d.ts +1 -0
- package/lib/endpoints/catalogv2.js +1 -0
- package/lib/endpoints/friendsv1.d.ts +42 -0
- package/lib/endpoints/friendsv1.js +37 -1
- package/lib/endpoints/gameinternationalizationv1.d.ts +40 -0
- package/lib/endpoints/gameinternationalizationv1.js +42 -1
- package/lib/endpoints/gamesv1.d.ts +345 -0
- package/lib/endpoints/gamesv1.js +380 -1
- package/lib/endpoints/gamesv2.d.ts +188 -141
- package/lib/endpoints/gamesv2.js +41 -1
- package/lib/endpoints/groupsv1.d.ts +2 -0
- package/lib/endpoints/groupsv1.js +2 -0
- package/lib/endpoints/groupsv2.d.ts +150 -0
- package/lib/endpoints/groupsv2.js +146 -1
- package/lib/endpoints/itemconfigurationv1.d.ts +42 -0
- package/lib/endpoints/itemconfigurationv1.js +39 -1
- package/lib/endpoints/twostepverificationv1.d.ts +2 -0
- package/lib/endpoints/twostepverificationv1.js +2 -0
- package/lib/index.js +1 -1
- package/lib/opencloud/v1/messaging.d.ts +2 -0
- package/lib/opencloud/v1/messaging.js +2 -0
- package/lib/opencloud/v2/cloud.d.ts +0 -5
- package/lib/opencloud/v2/cloud.js +0 -5
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { z } from
|
|
2
|
-
import { endpoint } from
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { endpoint } from "..";
|
|
3
3
|
|
|
4
4
|
const Roblox_Web_Responses_Games_GameMediaItemResponseV2 = z.object({
|
|
5
5
|
assetTypeId: z.number().int(),
|
|
@@ -11,134 +11,143 @@ const Roblox_Web_Responses_Games_GameMediaItemResponseV2 = z.object({
|
|
|
11
11
|
altText: z.string(),
|
|
12
12
|
videoId: z.string(),
|
|
13
13
|
});
|
|
14
|
-
const Roblox_Web_WebAPI_Models_ApiArrayResponse_Roblox_Web_Responses_Games_GameMediaItemResponseV2_ =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
14
|
+
const Roblox_Web_WebAPI_Models_ApiArrayResponse_Roblox_Web_Responses_Games_GameMediaItemResponseV2_ =
|
|
15
|
+
z.object({
|
|
16
|
+
data: z.array(Roblox_Web_Responses_Games_GameMediaItemResponseV2),
|
|
17
|
+
});
|
|
18
|
+
const Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Core_CreatorType_ =
|
|
19
|
+
z.object({
|
|
20
|
+
id: z.number().int(),
|
|
21
|
+
type: z.enum(["User", "Group"]),
|
|
22
|
+
name: z.string(),
|
|
23
|
+
});
|
|
24
|
+
const Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Assets_AssetType_ =
|
|
25
|
+
z.object({
|
|
26
|
+
id: z.number().int(),
|
|
27
|
+
type: z.enum([
|
|
28
|
+
"Image",
|
|
29
|
+
"TShirt",
|
|
30
|
+
"Audio",
|
|
31
|
+
"Mesh",
|
|
32
|
+
"Lua",
|
|
33
|
+
"HTML",
|
|
34
|
+
"Text",
|
|
35
|
+
"Hat",
|
|
36
|
+
"Place",
|
|
37
|
+
"Model",
|
|
38
|
+
"Shirt",
|
|
39
|
+
"Pants",
|
|
40
|
+
"Decal",
|
|
41
|
+
"Avatar",
|
|
42
|
+
"Head",
|
|
43
|
+
"Face",
|
|
44
|
+
"Gear",
|
|
45
|
+
"Badge",
|
|
46
|
+
"GroupEmblem",
|
|
47
|
+
"Animation",
|
|
48
|
+
"Arms",
|
|
49
|
+
"Legs",
|
|
50
|
+
"Torso",
|
|
51
|
+
"RightArm",
|
|
52
|
+
"LeftArm",
|
|
53
|
+
"LeftLeg",
|
|
54
|
+
"RightLeg",
|
|
55
|
+
"Package",
|
|
56
|
+
"YouTubeVideo",
|
|
57
|
+
"GamePass",
|
|
58
|
+
"App",
|
|
59
|
+
"Code",
|
|
60
|
+
"Plugin",
|
|
61
|
+
"SolidModel",
|
|
62
|
+
"MeshPart",
|
|
63
|
+
"HairAccessory",
|
|
64
|
+
"FaceAccessory",
|
|
65
|
+
"NeckAccessory",
|
|
66
|
+
"ShoulderAccessory",
|
|
67
|
+
"FrontAccessory",
|
|
68
|
+
"BackAccessory",
|
|
69
|
+
"WaistAccessory",
|
|
70
|
+
"ClimbAnimation",
|
|
71
|
+
"DeathAnimation",
|
|
72
|
+
"FallAnimation",
|
|
73
|
+
"IdleAnimation",
|
|
74
|
+
"JumpAnimation",
|
|
75
|
+
"RunAnimation",
|
|
76
|
+
"SwimAnimation",
|
|
77
|
+
"WalkAnimation",
|
|
78
|
+
"PoseAnimation",
|
|
79
|
+
"LocalizationTableManifest",
|
|
80
|
+
"LocalizationTableTranslation",
|
|
81
|
+
"EmoteAnimation",
|
|
82
|
+
"Video",
|
|
83
|
+
"TexturePack",
|
|
84
|
+
"TShirtAccessory",
|
|
85
|
+
"ShirtAccessory",
|
|
86
|
+
"PantsAccessory",
|
|
87
|
+
"JacketAccessory",
|
|
88
|
+
"SweaterAccessory",
|
|
89
|
+
"ShortsAccessory",
|
|
90
|
+
"LeftShoeAccessory",
|
|
91
|
+
"RightShoeAccessory",
|
|
92
|
+
"DressSkirtAccessory",
|
|
93
|
+
"FontFamily",
|
|
94
|
+
"FontFace",
|
|
95
|
+
"MeshHiddenSurfaceRemoval",
|
|
96
|
+
"EyebrowAccessory",
|
|
97
|
+
"EyelashAccessory",
|
|
98
|
+
"MoodAnimation",
|
|
99
|
+
"DynamicHead",
|
|
100
|
+
"CodeSnippet",
|
|
101
|
+
"AdsVideo",
|
|
102
|
+
"OtaUpdate",
|
|
103
|
+
"Screenshot",
|
|
104
|
+
"RuntimePropertySet",
|
|
105
|
+
"StorePreviewVideo",
|
|
106
|
+
"GamePreviewVideo",
|
|
107
|
+
"CreatorExperienceConfig",
|
|
108
|
+
"FaceMakeup",
|
|
109
|
+
"LipMakeup",
|
|
110
|
+
"EyeMakeup",
|
|
111
|
+
]),
|
|
112
|
+
name: z.string(),
|
|
113
|
+
});
|
|
111
114
|
const Roblox_Web_Responses_Games_GameFavoriteResponseModel = z.object({
|
|
112
115
|
price: z.number().int(),
|
|
113
116
|
id: z.number().int(),
|
|
114
117
|
name: z.string(),
|
|
115
118
|
description: z.string(),
|
|
116
|
-
creator:
|
|
117
|
-
|
|
119
|
+
creator:
|
|
120
|
+
Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Core_CreatorType_,
|
|
121
|
+
rootPlace:
|
|
122
|
+
Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Assets_AssetType_,
|
|
118
123
|
created: z.string().datetime({ offset: true }),
|
|
119
124
|
updated: z.string().datetime({ offset: true }),
|
|
120
125
|
placeVisits: z.number().int(),
|
|
121
126
|
});
|
|
122
|
-
const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameFavoriteResponseModel_ =
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
+
const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameFavoriteResponseModel_ =
|
|
128
|
+
z.object({
|
|
129
|
+
previousPageCursor: z.string(),
|
|
130
|
+
nextPageCursor: z.string(),
|
|
131
|
+
data: z.array(Roblox_Web_Responses_Games_GameFavoriteResponseModel),
|
|
132
|
+
});
|
|
127
133
|
const Roblox_Web_Responses_Games_GameResponseV2 = z.object({
|
|
128
134
|
id: z.number().int(),
|
|
129
135
|
name: z.string(),
|
|
130
136
|
description: z.string(),
|
|
131
|
-
creator:
|
|
132
|
-
|
|
137
|
+
creator:
|
|
138
|
+
Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Core_CreatorType_,
|
|
139
|
+
rootPlace:
|
|
140
|
+
Roblox_Web_Responses_RelatedEntityTypeResponse_Roblox_Platform_Assets_AssetType_,
|
|
133
141
|
created: z.string().datetime({ offset: true }),
|
|
134
142
|
updated: z.string().datetime({ offset: true }),
|
|
135
143
|
placeVisits: z.number().int(),
|
|
136
144
|
});
|
|
137
|
-
const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_ =
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
145
|
+
const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_ =
|
|
146
|
+
z.object({
|
|
147
|
+
previousPageCursor: z.string(),
|
|
148
|
+
nextPageCursor: z.string(),
|
|
149
|
+
data: z.array(Roblox_Web_Responses_Games_GameResponseV2),
|
|
150
|
+
});
|
|
142
151
|
|
|
143
152
|
/**
|
|
144
153
|
* @api GET https://games.roblox.com/v2/games/:universeId/media
|
|
@@ -147,16 +156,16 @@ const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameRe
|
|
|
147
156
|
* @param fetchAllExperienceRelatedMedia to tell if the API query is to fetch all related media for this experience
|
|
148
157
|
*/
|
|
149
158
|
export const getGamesUniverseidMedia = endpoint({
|
|
150
|
-
method:
|
|
151
|
-
path:
|
|
152
|
-
baseUrl:
|
|
153
|
-
requestFormat:
|
|
159
|
+
method: "GET",
|
|
160
|
+
path: "/v2/games/:universeId/media",
|
|
161
|
+
baseUrl: "https://games.roblox.com",
|
|
162
|
+
requestFormat: "json",
|
|
154
163
|
serializationMethod: {
|
|
155
164
|
universeId: {
|
|
156
|
-
style:
|
|
165
|
+
style: "simple",
|
|
157
166
|
},
|
|
158
167
|
fetchAllExperienceRelatedMedia: {
|
|
159
|
-
style:
|
|
168
|
+
style: "form",
|
|
160
169
|
explode: true,
|
|
161
170
|
},
|
|
162
171
|
},
|
|
@@ -164,7 +173,8 @@ export const getGamesUniverseidMedia = endpoint({
|
|
|
164
173
|
universeId: z.number().int(),
|
|
165
174
|
fetchAllExperienceRelatedMedia: z.boolean().optional(),
|
|
166
175
|
},
|
|
167
|
-
response:
|
|
176
|
+
response:
|
|
177
|
+
Roblox_Web_WebAPI_Models_ApiArrayResponse_Roblox_Web_Responses_Games_GameMediaItemResponseV2_,
|
|
168
178
|
errors: [
|
|
169
179
|
{
|
|
170
180
|
status: 400,
|
|
@@ -186,28 +196,28 @@ export const getGamesUniverseidMedia = endpoint({
|
|
|
186
196
|
* @param sortOrder The order the results are sorted in.
|
|
187
197
|
*/
|
|
188
198
|
export const getUsersUseridFavoriteGames = endpoint({
|
|
189
|
-
method:
|
|
190
|
-
path:
|
|
191
|
-
baseUrl:
|
|
192
|
-
requestFormat:
|
|
199
|
+
method: "GET",
|
|
200
|
+
path: "/v2/users/:userId/favorite/games",
|
|
201
|
+
baseUrl: "https://games.roblox.com",
|
|
202
|
+
requestFormat: "json",
|
|
193
203
|
serializationMethod: {
|
|
194
204
|
userId: {
|
|
195
|
-
style:
|
|
205
|
+
style: "simple",
|
|
196
206
|
},
|
|
197
207
|
accessFilter: {
|
|
198
|
-
style:
|
|
208
|
+
style: "form",
|
|
199
209
|
explode: true,
|
|
200
210
|
},
|
|
201
211
|
limit: {
|
|
202
|
-
style:
|
|
212
|
+
style: "form",
|
|
203
213
|
explode: true,
|
|
204
214
|
},
|
|
205
215
|
cursor: {
|
|
206
|
-
style:
|
|
216
|
+
style: "form",
|
|
207
217
|
explode: true,
|
|
208
218
|
},
|
|
209
219
|
sortOrder: {
|
|
210
|
-
style:
|
|
220
|
+
style: "form",
|
|
211
221
|
explode: true,
|
|
212
222
|
},
|
|
213
223
|
},
|
|
@@ -222,9 +232,10 @@ export const getUsersUseridFavoriteGames = endpoint({
|
|
|
222
232
|
.optional()
|
|
223
233
|
.default(10),
|
|
224
234
|
cursor: z.string().optional(),
|
|
225
|
-
sortOrder: z.enum([
|
|
235
|
+
sortOrder: z.enum(["Asc", "Desc"]).optional().default("Desc"),
|
|
226
236
|
},
|
|
227
|
-
response:
|
|
237
|
+
response:
|
|
238
|
+
Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameFavoriteResponseModel_,
|
|
228
239
|
errors: [],
|
|
229
240
|
});
|
|
230
241
|
/**
|
|
@@ -237,28 +248,28 @@ export const getUsersUseridFavoriteGames = endpoint({
|
|
|
237
248
|
* @param sortOrder The order the results are sorted in.
|
|
238
249
|
*/
|
|
239
250
|
export const getUsersUseridGames = endpoint({
|
|
240
|
-
method:
|
|
241
|
-
path:
|
|
242
|
-
baseUrl:
|
|
243
|
-
requestFormat:
|
|
251
|
+
method: "GET",
|
|
252
|
+
path: "/v2/users/:userId/games",
|
|
253
|
+
baseUrl: "https://games.roblox.com",
|
|
254
|
+
requestFormat: "json",
|
|
244
255
|
serializationMethod: {
|
|
245
256
|
userId: {
|
|
246
|
-
style:
|
|
257
|
+
style: "simple",
|
|
247
258
|
},
|
|
248
259
|
accessFilter: {
|
|
249
|
-
style:
|
|
260
|
+
style: "form",
|
|
250
261
|
explode: true,
|
|
251
262
|
},
|
|
252
263
|
limit: {
|
|
253
|
-
style:
|
|
264
|
+
style: "form",
|
|
254
265
|
explode: true,
|
|
255
266
|
},
|
|
256
267
|
cursor: {
|
|
257
|
-
style:
|
|
268
|
+
style: "form",
|
|
258
269
|
explode: true,
|
|
259
270
|
},
|
|
260
271
|
sortOrder: {
|
|
261
|
-
style:
|
|
272
|
+
style: "form",
|
|
262
273
|
explode: true,
|
|
263
274
|
},
|
|
264
275
|
},
|
|
@@ -273,10 +284,46 @@ export const getUsersUseridGames = endpoint({
|
|
|
273
284
|
.optional()
|
|
274
285
|
.default(10),
|
|
275
286
|
cursor: z.string().optional(),
|
|
287
|
+
sortOrder: z.enum(["Asc", "Desc"]).optional().default("Asc"),
|
|
288
|
+
},
|
|
289
|
+
response:
|
|
290
|
+
Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_,
|
|
291
|
+
errors: [],
|
|
292
|
+
});
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
* @api GET https://games.roblox.com/v2/groups/:groupId/gamesV2
|
|
296
|
+
* @summary Gets games created by the specified group. (gamesV2 path - removed from docs)
|
|
297
|
+
* @param groupId The group Id.
|
|
298
|
+
* @param accessFilter Filtering option via access level.
|
|
299
|
+
* @param limit The number of results per request.
|
|
300
|
+
* @param cursor The paging cursor for the previous or next page.
|
|
301
|
+
* @param sortOrder The order the results are sorted in.
|
|
302
|
+
*/
|
|
303
|
+
export const getGroupsGroupidGamesv2 = endpoint({
|
|
304
|
+
method: 'GET',
|
|
305
|
+
path: '/v2/groups/:groupId/gamesV2',
|
|
306
|
+
baseUrl: 'https://games.roblox.com',
|
|
307
|
+
requestFormat: 'json',
|
|
308
|
+
serializationMethod: {
|
|
309
|
+
groupId: { style: 'simple' },
|
|
310
|
+
accessFilter: { style: 'form', explode: true },
|
|
311
|
+
limit: { style: 'form', explode: true },
|
|
312
|
+
cursor: { style: 'form', explode: true },
|
|
313
|
+
sortOrder: { style: 'form', explode: true },
|
|
314
|
+
},
|
|
315
|
+
parameters: {
|
|
316
|
+
groupId: z.number().int(),
|
|
317
|
+
accessFilter: z.union([z.literal(1), z.literal(2), z.literal(4)]).optional().default(1),
|
|
318
|
+
limit: z.union([z.literal(10), z.literal(25), z.literal(50), z.literal(100)]).optional().default(10),
|
|
319
|
+
cursor: z.string().optional(),
|
|
276
320
|
sortOrder: z.enum(['Asc', 'Desc']).optional().default('Asc'),
|
|
277
321
|
},
|
|
278
322
|
response: Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_,
|
|
279
|
-
errors: [
|
|
323
|
+
errors: [
|
|
324
|
+
{ status: 500, description: `0: Compliance Context service is unavailable.` },
|
|
325
|
+
{ status: 501, description: `1: Code path is not Implemented.` },
|
|
326
|
+
],
|
|
280
327
|
});
|
|
281
328
|
|
|
282
329
|
/**
|
package/lib/endpoints/gamesv2.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getGroupsGroupidGames = exports.getUsersUseridGames = exports.getUsersUseridFavoriteGames = exports.getGamesUniverseidMedia = void 0;
|
|
3
|
+
exports.getGroupsGroupidGames = exports.getGroupsGroupidGamesv2 = exports.getUsersUseridGames = exports.getUsersUseridFavoriteGames = exports.getGamesUniverseidMedia = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const __1 = require("..");
|
|
6
6
|
const Roblox_Web_Responses_Games_GameMediaItemResponseV2 = zod_1.z.object({
|
|
@@ -279,6 +279,46 @@ exports.getUsersUseridGames = (0, __1.endpoint)({
|
|
|
279
279
|
response: Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_,
|
|
280
280
|
errors: [],
|
|
281
281
|
});
|
|
282
|
+
/**
|
|
283
|
+
* @api GET https://games.roblox.com/v2/groups/:groupId/gamesV2
|
|
284
|
+
* @summary Gets games created by the specified group. (gamesV2 path - removed from docs)
|
|
285
|
+
* @param groupId The group Id.
|
|
286
|
+
* @param accessFilter Filtering option via access level.
|
|
287
|
+
* @param limit The number of results per request.
|
|
288
|
+
* @param cursor The paging cursor for the previous or next page.
|
|
289
|
+
* @param sortOrder The order the results are sorted in.
|
|
290
|
+
*/
|
|
291
|
+
exports.getGroupsGroupidGamesv2 = (0, __1.endpoint)({
|
|
292
|
+
method: 'GET',
|
|
293
|
+
path: '/v2/groups/:groupId/gamesV2',
|
|
294
|
+
baseUrl: 'https://games.roblox.com',
|
|
295
|
+
requestFormat: 'json',
|
|
296
|
+
serializationMethod: {
|
|
297
|
+
groupId: { style: 'simple' },
|
|
298
|
+
accessFilter: { style: 'form', explode: true },
|
|
299
|
+
limit: { style: 'form', explode: true },
|
|
300
|
+
cursor: { style: 'form', explode: true },
|
|
301
|
+
sortOrder: { style: 'form', explode: true },
|
|
302
|
+
},
|
|
303
|
+
parameters: {
|
|
304
|
+
groupId: zod_1.z.number().int(),
|
|
305
|
+
accessFilter: zod_1.z
|
|
306
|
+
.union([zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(4)])
|
|
307
|
+
.optional()
|
|
308
|
+
.default(1),
|
|
309
|
+
limit: zod_1.z
|
|
310
|
+
.union([zod_1.z.literal(10), zod_1.z.literal(25), zod_1.z.literal(50), zod_1.z.literal(100)])
|
|
311
|
+
.optional()
|
|
312
|
+
.default(10),
|
|
313
|
+
cursor: zod_1.z.string().optional(),
|
|
314
|
+
sortOrder: zod_1.z.enum(['Asc', 'Desc']).optional().default('Asc'),
|
|
315
|
+
},
|
|
316
|
+
response: Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Web_Responses_Games_GameResponseV2_,
|
|
317
|
+
errors: [
|
|
318
|
+
{ status: 500, description: `0: Compliance Context service is unavailable.` },
|
|
319
|
+
{ status: 501, description: `1: Code path is not Implemented.` },
|
|
320
|
+
],
|
|
321
|
+
});
|
|
282
322
|
/**
|
|
283
323
|
* @api GET https://games.roblox.com/v2/groups/:groupId/games
|
|
284
324
|
* @summary Gets games created by the specified group.
|
|
@@ -142,6 +142,39 @@ const Roblox_Groups_Api_Models_Response_UserModel = z.object({
|
|
|
142
142
|
username: z.string(),
|
|
143
143
|
displayName: z.string(),
|
|
144
144
|
});
|
|
145
|
+
const Roblox_Groups_Api_ShoutResponse = z.object({
|
|
146
|
+
body: z.string(),
|
|
147
|
+
poster: Roblox_Groups_Api_Models_Response_UserModel,
|
|
148
|
+
created: z.string().datetime({ offset: true }),
|
|
149
|
+
updated: z.string().datetime({ offset: true }),
|
|
150
|
+
});
|
|
151
|
+
const Roblox_Groups_Api_GroupDetailResponse = z.object({
|
|
152
|
+
id: z.number().int(),
|
|
153
|
+
name: z.string(),
|
|
154
|
+
description: z.string(),
|
|
155
|
+
owner: Roblox_Groups_Api_Models_Response_UserModel,
|
|
156
|
+
shout: Roblox_Groups_Api_ShoutResponse,
|
|
157
|
+
memberCount: z.number().int(),
|
|
158
|
+
isBuildersClubOnly: z.boolean(),
|
|
159
|
+
publicEntryAllowed: z.boolean(),
|
|
160
|
+
isLocked: z.boolean(),
|
|
161
|
+
hasVerifiedBadge: z.boolean(),
|
|
162
|
+
hasSocialModules: z.boolean(),
|
|
163
|
+
});
|
|
164
|
+
const Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Groups_Api_GroupDetailResponse_ =
|
|
165
|
+
z.object({
|
|
166
|
+
previousPageCursor: z.string(),
|
|
167
|
+
nextPageCursor: z.string(),
|
|
168
|
+
data: z.array(Roblox_Groups_Api_GroupDetailResponse),
|
|
169
|
+
});
|
|
170
|
+
const Roblox_Groups_Api_Models_Response_GroupRelationshipsV2Response = z.object(
|
|
171
|
+
{
|
|
172
|
+
groupId: z.number().int(),
|
|
173
|
+
relationshipType: z.enum(["Allies", "Enemies"]),
|
|
174
|
+
groupResponses:
|
|
175
|
+
Roblox_Web_WebAPI_Models_ApiPageResponse_Roblox_Groups_Api_GroupDetailResponse_,
|
|
176
|
+
}
|
|
177
|
+
);
|
|
145
178
|
const Roblox_Groups_Api_GroupRoleResponse = z.object({
|
|
146
179
|
id: z.number().int(),
|
|
147
180
|
name: z.string(),
|
|
@@ -293,6 +326,123 @@ export const getGroupsGroupidExperiences = endpoint({
|
|
|
293
326
|
},
|
|
294
327
|
],
|
|
295
328
|
});
|
|
329
|
+
/**
|
|
330
|
+
* @api GET https://groups.roblox.com/v2/groups/:groupId/relationships/:groupRelationshipType
|
|
331
|
+
* @summary Gets a group's relationships with cursor-based pagination.
|
|
332
|
+
* @param groupId The group Id.
|
|
333
|
+
* @param groupRelationshipType The group relationship type, enemies or allies.
|
|
334
|
+
* @param limit The number of results per request.
|
|
335
|
+
* @param cursor The paging cursor for the previous or next page.
|
|
336
|
+
* @param sortOrder The order the results are sorted in.
|
|
337
|
+
*/
|
|
338
|
+
export const getGroupsGroupidRelationshipsGrouprelationshiptype = endpoint({
|
|
339
|
+
method: "GET",
|
|
340
|
+
path: "/v2/groups/:groupId/relationships/:groupRelationshipType",
|
|
341
|
+
baseUrl: "https://groups.roblox.com",
|
|
342
|
+
requestFormat: "json",
|
|
343
|
+
serializationMethod: {
|
|
344
|
+
groupId: {
|
|
345
|
+
style: "simple",
|
|
346
|
+
},
|
|
347
|
+
groupRelationshipType: {
|
|
348
|
+
style: "simple",
|
|
349
|
+
},
|
|
350
|
+
limit: {
|
|
351
|
+
style: "form",
|
|
352
|
+
explode: true,
|
|
353
|
+
},
|
|
354
|
+
cursor: {
|
|
355
|
+
style: "form",
|
|
356
|
+
explode: true,
|
|
357
|
+
},
|
|
358
|
+
sortOrder: {
|
|
359
|
+
style: "form",
|
|
360
|
+
explode: true,
|
|
361
|
+
},
|
|
362
|
+
},
|
|
363
|
+
parameters: {
|
|
364
|
+
groupId: z.number().int(),
|
|
365
|
+
groupRelationshipType: z.string(),
|
|
366
|
+
limit: z
|
|
367
|
+
.union([z.literal(10), z.literal(25), z.literal(50), z.literal(100)])
|
|
368
|
+
.optional()
|
|
369
|
+
.default(10),
|
|
370
|
+
cursor: z.string().optional(),
|
|
371
|
+
sortOrder: z.enum(["Asc", "Desc"]).optional().default("Asc"),
|
|
372
|
+
},
|
|
373
|
+
response: Roblox_Groups_Api_Models_Response_GroupRelationshipsV2Response,
|
|
374
|
+
errors: [
|
|
375
|
+
{
|
|
376
|
+
status: 400,
|
|
377
|
+
description: `1: Group is invalid or does not exist.
|
|
378
|
+
4: Group relationship type or request type is invalid.
|
|
379
|
+
8: Invalid or missing pagination parameters`,
|
|
380
|
+
},
|
|
381
|
+
],
|
|
382
|
+
});
|
|
383
|
+
/**
|
|
384
|
+
* @api GET https://groups.roblox.com/v2/groups/:groupId/relationships/:groupRelationshipType/requests
|
|
385
|
+
* @summary Gets a group's relationship requests with cursor-based pagination.
|
|
386
|
+
* @param groupId The group Id.
|
|
387
|
+
* @param groupRelationshipType The group relationship type of the request, only allies are supported.
|
|
388
|
+
* @param limit The number of results per request.
|
|
389
|
+
* @param cursor The paging cursor for the previous or next page.
|
|
390
|
+
* @param sortOrder The order the results are sorted in.
|
|
391
|
+
*/
|
|
392
|
+
export const getGroupsGroupidRelationshipsGrouprelationshiptypeRequests =
|
|
393
|
+
endpoint({
|
|
394
|
+
method: "GET",
|
|
395
|
+
path: "/v2/groups/:groupId/relationships/:groupRelationshipType/requests",
|
|
396
|
+
baseUrl: "https://groups.roblox.com",
|
|
397
|
+
requestFormat: "json",
|
|
398
|
+
serializationMethod: {
|
|
399
|
+
groupId: {
|
|
400
|
+
style: "simple",
|
|
401
|
+
},
|
|
402
|
+
groupRelationshipType: {
|
|
403
|
+
style: "simple",
|
|
404
|
+
},
|
|
405
|
+
limit: {
|
|
406
|
+
style: "form",
|
|
407
|
+
explode: true,
|
|
408
|
+
},
|
|
409
|
+
cursor: {
|
|
410
|
+
style: "form",
|
|
411
|
+
explode: true,
|
|
412
|
+
},
|
|
413
|
+
sortOrder: {
|
|
414
|
+
style: "form",
|
|
415
|
+
explode: true,
|
|
416
|
+
},
|
|
417
|
+
},
|
|
418
|
+
parameters: {
|
|
419
|
+
groupId: z.number().int(),
|
|
420
|
+
groupRelationshipType: z.string(),
|
|
421
|
+
limit: z
|
|
422
|
+
.union([z.literal(10), z.literal(25), z.literal(50), z.literal(100)])
|
|
423
|
+
.optional()
|
|
424
|
+
.default(10),
|
|
425
|
+
cursor: z.string().optional(),
|
|
426
|
+
sortOrder: z.enum(["Asc", "Desc"]).optional().default("Asc"),
|
|
427
|
+
},
|
|
428
|
+
response: Roblox_Groups_Api_Models_Response_GroupRelationshipsV2Response,
|
|
429
|
+
errors: [
|
|
430
|
+
{
|
|
431
|
+
status: 400,
|
|
432
|
+
description: `1: Group is invalid or does not exist.
|
|
433
|
+
4: Group relationship type or request type is invalid.
|
|
434
|
+
8: Invalid or missing pagination parameters`,
|
|
435
|
+
},
|
|
436
|
+
{
|
|
437
|
+
status: 401,
|
|
438
|
+
description: `0: Authorization has been denied for this request.`,
|
|
439
|
+
},
|
|
440
|
+
{
|
|
441
|
+
status: 403,
|
|
442
|
+
description: `5: You don't have permission to manage this group's relationships.`,
|
|
443
|
+
},
|
|
444
|
+
],
|
|
445
|
+
});
|
|
296
446
|
/**
|
|
297
447
|
* @api GET https://groups.roblox.com/v2/groups/:groupId/wall/posts
|
|
298
448
|
* @summary Gets a list of group wall posts.
|