@jacobhumston/roblox-openapi-ts 1.0.36 → 1.0.38

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 (2) hide show
  1. package/dist/types.d.ts +690 -51
  2. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -21221,8 +21221,8 @@ export interface paths {
21221
21221
  [name: string]: unknown;
21222
21222
  };
21223
21223
  content: {
21224
- "application/json": components["schemas"]["Roblox.Groups.Api.GroupDetailResponse"];
21225
- "text/json": components["schemas"]["Roblox.Groups.Api.GroupDetailResponse"];
21224
+ "application/json": components["schemas"]["GroupsApi.Roblox.Groups.Api.GroupDetailResponse"];
21225
+ "text/json": components["schemas"]["GroupsApi.Roblox.Groups.Api.GroupDetailResponse"];
21226
21226
  };
21227
21227
  };
21228
21228
  /** @description 1: Group is invalid or does not exist. */
@@ -22102,6 +22102,69 @@ export interface paths {
22102
22102
  patch?: never;
22103
22103
  trace?: never;
22104
22104
  };
22105
+ "/v1/groups/{groupId}/community-tier/evaluate": {
22106
+ parameters: {
22107
+ query?: never;
22108
+ header?: never;
22109
+ path?: never;
22110
+ cookie?: never;
22111
+ };
22112
+ get?: never;
22113
+ put?: never;
22114
+ post: {
22115
+ parameters: {
22116
+ query?: never;
22117
+ header?: never;
22118
+ path: {
22119
+ groupId: number;
22120
+ };
22121
+ cookie?: never;
22122
+ };
22123
+ requestBody?: never;
22124
+ responses: {
22125
+ /** @description OK */
22126
+ 200: {
22127
+ headers: {
22128
+ [name: string]: unknown;
22129
+ };
22130
+ content: {
22131
+ "application/json": components["schemas"]["Roblox.Groups.Client.TierEvaluationResultResponse"];
22132
+ };
22133
+ };
22134
+ /** @description 1: Group is invalid or does not exist. */
22135
+ 400: {
22136
+ headers: {
22137
+ [name: string]: unknown;
22138
+ };
22139
+ content?: never;
22140
+ };
22141
+ /** @description 0: Authorization has been denied for this request. */
22142
+ 401: {
22143
+ headers: {
22144
+ [name: string]: unknown;
22145
+ };
22146
+ content?: never;
22147
+ };
22148
+ /**
22149
+ * @description 0: Token Validation Failed
22150
+ * 22: The feature is disabled.
22151
+ * 23: Insufficient permissions to complete the request.
22152
+ * 49: User is invalid or does not exist
22153
+ */
22154
+ 403: {
22155
+ headers: {
22156
+ [name: string]: unknown;
22157
+ };
22158
+ content?: never;
22159
+ };
22160
+ };
22161
+ };
22162
+ delete?: never;
22163
+ options?: never;
22164
+ head?: never;
22165
+ patch?: never;
22166
+ trace?: never;
22167
+ };
22105
22168
  "/v1/groups/{groupId}/configuration": {
22106
22169
  parameters: {
22107
22170
  query?: never;
@@ -31907,6 +31970,7 @@ export interface paths {
31907
31970
  * @description 1: The universe does not exist.
31908
31971
  * 48: The playtesters list is missing or empty.
31909
31972
  * 49: Too many playtesters were specified in a single request.
31973
+ * 51: One or more playtesters cannot be added due to safety restrictions.
31910
31974
  */
31911
31975
  400: {
31912
31976
  headers: {
@@ -43450,6 +43514,57 @@ export interface paths {
43450
43514
  patch?: never;
43451
43515
  trace?: never;
43452
43516
  };
43517
+ "/virtual-events/v3/game-events/{eventId}": {
43518
+ parameters: {
43519
+ query?: never;
43520
+ header?: never;
43521
+ path?: never;
43522
+ cookie?: never;
43523
+ };
43524
+ /**
43525
+ * Get a single game event by ID.
43526
+ * Use `?fields=` to request a subset of fields; unknown field names return 400.
43527
+ */
43528
+ get: operations["GameEvent_Get"];
43529
+ put?: never;
43530
+ post?: never;
43531
+ /**
43532
+ * Permanently delete an existing game event. Returns 204 No Content on success.
43533
+ * Permission is enforced via an explicit pre-check: callers that can read but not edit
43534
+ * receive 403; callers that cannot read receive 404.
43535
+ */
43536
+ delete: operations["GameEvent_Delete"];
43537
+ options?: never;
43538
+ head?: never;
43539
+ /**
43540
+ * Partially update a game event. Only fields present in the request body are changed; omitted or null fields are left
43541
+ * unchanged. Empty body is a no-op and returns the current game event resource.
43542
+ */
43543
+ patch: operations["GameEvent_Update"];
43544
+ trace?: never;
43545
+ };
43546
+ "/virtual-events/v3/universes/{universeId}/game-events": {
43547
+ parameters: {
43548
+ query?: never;
43549
+ header?: never;
43550
+ path?: never;
43551
+ cookie?: never;
43552
+ };
43553
+ /**
43554
+ * List game events under a universe.
43555
+ * Use `?fields=` to trim the response payload.
43556
+ * Response is always 200 (empty list for unknown universe).
43557
+ */
43558
+ get: operations["GameEvents_List"];
43559
+ put?: never;
43560
+ /** Create a new game event. Returns the full resource on success. */
43561
+ post: operations["GameEvents_Create"];
43562
+ delete?: never;
43563
+ options?: never;
43564
+ head?: never;
43565
+ patch?: never;
43566
+ trace?: never;
43567
+ };
43453
43568
  }
43454
43569
  export type webhooks = Record<string, never>;
43455
43570
  export interface components {
@@ -43823,6 +43938,17 @@ export interface components {
43823
43938
  doesOwnerPrivacyRestrictJoins?: boolean;
43824
43939
  inviteResponseType?: components["schemas"]["PrivateServerInviteResponseType"];
43825
43940
  };
43941
+ CategoryResponse: {
43942
+ /**
43943
+ * @description The event category type of an event.
43944
+ *
43945
+ * Mirror of:
43946
+ * https://github.rbx.com/Roblox/virtual-events/blob/master/services/virtual-events/src/Implementations/Types/EventCategory.cs
43947
+ */
43948
+ category?: components["schemas"]["EventCategory"];
43949
+ /** Format: int32 */
43950
+ rank?: number;
43951
+ };
43826
43952
  /** @description Get Client Status request. */
43827
43953
  ClientStatusGetRequest: {
43828
43954
  /**
@@ -43916,6 +44042,17 @@ export interface components {
43916
44042
  /** @description Conditional RPN rules and evaluation order, when any exist. */
43917
44043
  conditionalRules?: components["schemas"]["ConditionalRulesPayload"] | null;
43918
44044
  };
44045
+ ConfigResponse: {
44046
+ /** @description Cron expression defining the event's recurrence schedule, if any. */
44047
+ recurrence?: string | null;
44048
+ /**
44049
+ * Format: date-time
44050
+ * @description The latest UTC timestamp at which automatic recurrence scheduling can occur.
44051
+ */
44052
+ recurrenceEndTime?: string | null;
44053
+ /** @description The audience that should receive notifications for this event. */
44054
+ notificationAudience?: components["schemas"]["EventNotificationAudience"];
44055
+ };
43919
44056
  /** @description A full representation of a configuration value, including its metadata. */
43920
44057
  ConfigValueFull: {
43921
44058
  /** @description Non-default branches (e.g. conditional), when present. */
@@ -43996,6 +44133,62 @@ export interface components {
43996
44133
  */
43997
44134
  value: number;
43998
44135
  };
44136
+ /** @description Optional event configuration block (recurrence + notification audience) on the v3 Create body. */
44137
+ CreateGameEventConfigRequest: {
44138
+ /** @description Cron expression for recurrence. Null = no recurrence. Validated server-side. */
44139
+ recurrence?: string | null;
44140
+ /** Format: date-time */
44141
+ recurrenceEndTime?: string | null;
44142
+ notificationAudience?: components["schemas"]["EventNotificationAudience"] | null;
44143
+ };
44144
+ /**
44145
+ * @description Request body for `POST /v3/universes/{universeId}/game-events`.
44146
+ * `universeId` comes from the URL path, not the body.
44147
+ * VirtualEventsApi.Models.V3.Request.CreateGameEventRequest.Visibility is restricted to Public/Private — Moderated is server-side only.
44148
+ * Nullable CLR properties allow JSON binding to materialize incomplete requests; required
44149
+ * fields are enforced by the virtual-events gRPC service when `CreateVirtualEvent` runs.
44150
+ */
44151
+ CreateGameEventRequest: {
44152
+ /** @description Event title. Clients must provide a non-empty value. */
44153
+ title?: string | null;
44154
+ /** @description Event subtitle. Clients must provide a non-empty value. */
44155
+ subtitle?: string | null;
44156
+ /** @description Optional event description. */
44157
+ description?: string | null;
44158
+ /**
44159
+ * Format: date-time
44160
+ * @description Event start time. Clients must provide a timestamp such as
44161
+ * `yyyy-MM-ddTHH:mm:ss.fffzzz` or `yyyy-MM-ddTHH:mm:ss.fffZ`.
44162
+ */
44163
+ startTime?: string | null;
44164
+ /**
44165
+ * Format: date-time
44166
+ * @description Event end time. Clients must provide a timestamp such as
44167
+ * `yyyy-MM-ddTHH:mm:ss.fffzzz` or `yyyy-MM-ddTHH:mm:ss.fffZ`, and it must be after
44168
+ * VirtualEventsApi.Models.V3.Request.CreateGameEventRequest.StartTime.
44169
+ */
44170
+ endTime?: string | null;
44171
+ /** @description Must be `Public` or `Private`; `Moderated` is server-managed and rejected. */
44172
+ visibility?: components["schemas"]["EventVisibility"] | null;
44173
+ /**
44174
+ * Format: int64
44175
+ * @description Group host. When omitted, the authenticated user is the host.
44176
+ */
44177
+ groupId?: number | null;
44178
+ /**
44179
+ * Format: int64
44180
+ * @description Optional venue place ID. When omitted, the event is created in the universe root place.
44181
+ */
44182
+ placeId?: number | null;
44183
+ categories?: components["schemas"]["EventRankedCategory"][] | null;
44184
+ thumbnails?: components["schemas"]["EventMedia"][] | null;
44185
+ /** @description Optional event configuration block (recurrence + notification audience) on the v3 Create body. */
44186
+ config?: components["schemas"]["CreateGameEventConfigRequest"] | null;
44187
+ /** @description Optional featuring status flag. When omitted, defaults to "not featured". */
44188
+ featuringStatus?: components["schemas"]["FeaturingStatus"] | null;
44189
+ /** @description Optional tagline. Length and content are validated server-side. */
44190
+ tagline?: string | null;
44191
+ };
43999
44192
  /** @description Request to create a new MatchmakingPlayerAttributeDefinition. */
44000
44193
  CreateMatchmakingPlayerAttributeDefinitionRequest: {
44001
44194
  /**
@@ -44714,6 +44907,52 @@ export interface components {
44714
44907
  /** @description A hint as to what caused the error, if applicable. */
44715
44908
  hint?: string | null;
44716
44909
  };
44910
+ /**
44911
+ * @description The event category type of an event.
44912
+ *
44913
+ * Mirror of:
44914
+ * https://github.rbx.com/Roblox/virtual-events/blob/master/services/virtual-events/src/Implementations/Types/EventCategory.cs
44915
+ * @enum {string}
44916
+ */
44917
+ EventCategory: "contentUpdate" | "locationUpdate" | "systemUpdate" | "activity" | "newContent" | "itemDrop" | "newSeason" | "newLocation" | "newMap" | "moreLevels" | "newFeature" | "earlyAccess" | "expansion" | "challenge" | "quest" | "festival";
44918
+ /** @description Representation of some media associated with an event. */
44919
+ EventMedia: {
44920
+ /**
44921
+ * Format: int64
44922
+ * @description The ID of the media.
44923
+ */
44924
+ mediaId?: number;
44925
+ /**
44926
+ * Format: int32
44927
+ * @description The rank of the media.
44928
+ */
44929
+ rank?: number;
44930
+ };
44931
+ /**
44932
+ * @description The notification audience for an experience event
44933
+ * @enum {string}
44934
+ */
44935
+ EventNotificationAudience: "all" | "rsvp" | "subscribed" | "group" | "none";
44936
+ /** @description Representation of the category associated with an event. */
44937
+ EventRankedCategory: {
44938
+ /** @description The category content. */
44939
+ category?: components["schemas"]["EventCategory"];
44940
+ /**
44941
+ * Format: int32
44942
+ * @description The rank of the category.
44943
+ */
44944
+ rank?: number;
44945
+ };
44946
+ /**
44947
+ * @description The visibility of a virtual event.
44948
+ * @enum {string}
44949
+ */
44950
+ EventVisibility: "private" | "public" | "moderated";
44951
+ /**
44952
+ * @description The featuring status of a virtual event.
44953
+ * @enum {string}
44954
+ */
44955
+ FeaturingStatus: "invalid" | "enabled" | "disabled";
44717
44956
  /**
44718
44957
  * @description Enum describing the different available filter fields.
44719
44958
  * @enum {string}
@@ -44781,6 +45020,48 @@ export interface components {
44781
45020
  ForecastUpdateResponse: {
44782
45021
  placeSummaries?: components["schemas"]["PlaceSummaryForGameUpdate"][] | null;
44783
45022
  };
45023
+ /** @description v3 game event response. All fields except VirtualEventsApi.Models.V3.Response.GameEventResponse.Id are gated by the `?fields=` mask. */
45024
+ GameEventResponse: {
45025
+ /**
45026
+ * @description The unique id of the game event. Always populated. Serialized as a string to
45027
+ * preserve precision for clients (event IDs exceed 2^53).
45028
+ */
45029
+ id?: string | null;
45030
+ title?: string | null;
45031
+ /** @description Localized title (caller's locale). Populated only when `displayTitle` is in the mask. */
45032
+ displayTitle?: string | null;
45033
+ subtitle?: string | null;
45034
+ /** @description Localized subtitle. Populated only when `displaySubtitle` is in the mask. */
45035
+ displaySubtitle?: string | null;
45036
+ description?: string | null;
45037
+ /** @description Localized description. Populated only when `displayDescription` is in the mask. */
45038
+ displayDescription?: string | null;
45039
+ /** Format: date-time */
45040
+ startTime?: string | null;
45041
+ /** Format: date-time */
45042
+ endTime?: string | null;
45043
+ /** Format: int64 */
45044
+ universeId?: number | null;
45045
+ /** Format: int64 */
45046
+ placeId?: number | null;
45047
+ /** @description Host block. VirtualEventsApi.Models.V3.Response.HostResponse.HostName and VirtualEventsApi.Models.V3.Response.HostResponse.HasVerifiedBadge are omitted when host-details resolution failed. */
45048
+ host?: components["schemas"]["HostResponse"] | null;
45049
+ visibility?: components["schemas"]["EventVisibility"] | null;
45050
+ featuringStatus?: components["schemas"]["FeaturingStatus"] | null;
45051
+ /** @description Tagline for featuring review; visible to curators only when featuring is opted into. */
45052
+ tagline?: string | null;
45053
+ categories?: components["schemas"]["CategoryResponse"][] | null;
45054
+ thumbnails?: components["schemas"]["ThumbnailResponse"][] | null;
45055
+ /** @description Whether all requested thumbnails were successfully persisted. Returned on Create/Update. */
45056
+ allThumbnailsCreated?: boolean | null;
45057
+ config?: components["schemas"]["ConfigResponse"] | null;
45058
+ /** @description Authenticated caller's RSVP status. Omitted for unauthenticated callers. */
45059
+ userRsvpStatus?: components["schemas"]["RsvpStatus"] | null;
45060
+ /** Format: date-time */
45061
+ createTime?: string | null;
45062
+ /** Format: date-time */
45063
+ updateTime?: string | null;
45064
+ };
44784
45065
  /** @description Creator-facing representation of a game pass configuration. */
44785
45066
  GamePassConfigV2: {
44786
45067
  /**
@@ -45578,6 +45859,51 @@ export interface components {
45578
45859
  */
45579
45860
  bypassSlowMode?: boolean;
45580
45861
  };
45862
+ /** @description A detailed group response model */
45863
+ "GroupsApi.Roblox.Groups.Api.GroupDetailResponse": {
45864
+ /**
45865
+ * Format: int64
45866
+ * @description The group id
45867
+ */
45868
+ id?: number;
45869
+ /** @description The group name */
45870
+ name?: string;
45871
+ /** @description The group description */
45872
+ description?: string;
45873
+ owner?: components["schemas"]["Roblox.Groups.Api.Models.Response.UserModel"];
45874
+ shout?: components["schemas"]["Roblox.Groups.Api.ShoutResponse"];
45875
+ /**
45876
+ * Format: int32
45877
+ * @description The number of members in the group
45878
+ */
45879
+ memberCount?: number;
45880
+ /** @description Whether the group is Builders Club only */
45881
+ isBuildersClubOnly?: boolean;
45882
+ /** @description Whether the group is public (no approval required) */
45883
+ publicEntryAllowed?: boolean;
45884
+ /** @description Whether the group is locked */
45885
+ isLocked?: boolean;
45886
+ /** @description Whether the group has a verified badge. */
45887
+ hasVerifiedBadge?: boolean;
45888
+ /**
45889
+ * @description Whether the group has social modules enabled (e.g. Forums)
45890
+ * (determines if "Followers" vs "Members" should be shown).
45891
+ */
45892
+ hasSocialModules?: boolean;
45893
+ communityTier?: components["schemas"]["GroupsApi.Roblox.Groups.Client.CommunityTierInfoResponse"];
45894
+ };
45895
+ "GroupsApi.Roblox.Groups.Client.CommunityTierInfoResponse": {
45896
+ /** Format: int64 */
45897
+ groupId?: number;
45898
+ /** Format: int32 */
45899
+ currentTier?: number;
45900
+ /** Format: int32 */
45901
+ previousTier?: number;
45902
+ /** Format: date-time */
45903
+ tierUpdatedTime?: string;
45904
+ /** Format: date-time */
45905
+ lastEvaluatedTime?: string;
45906
+ };
45581
45907
  HomepageThumbnail: {
45582
45908
  homepageThumbnailId: string;
45583
45909
  /** Format: int64 */
@@ -45588,6 +45914,20 @@ export interface components {
45588
45914
  };
45589
45915
  /** @enum {string} */
45590
45916
  HomepageThumbnailStatus: "Active" | "Spammy";
45917
+ /** @description Host block. VirtualEventsApi.Models.V3.Response.HostResponse.HostName and VirtualEventsApi.Models.V3.Response.HostResponse.HasVerifiedBadge are omitted when host-details resolution failed. */
45918
+ HostResponse: {
45919
+ /** @description The type of host of a virtual event. */
45920
+ hostType?: components["schemas"]["HostType"];
45921
+ /** Format: int64 */
45922
+ hostId?: number;
45923
+ hostName?: string | null;
45924
+ hasVerifiedBadge?: boolean | null;
45925
+ };
45926
+ /**
45927
+ * @description The type of host of a virtual event.
45928
+ * @enum {string}
45929
+ */
45930
+ HostType: "user" | "group";
45591
45931
  HttpContent: {
45592
45932
  readonly headers?: components["schemas"]["StringStringIEnumerableKeyValuePair"][] | null;
45593
45933
  };
@@ -47217,6 +47557,12 @@ export interface components {
47217
47557
  /** @description The name of the entry. */
47218
47558
  readonly id?: string;
47219
47559
  };
47560
+ /** @description Paginated response for v3 LIST. Page tokens are null at the collection boundaries. */
47561
+ PaginatedGameEventsResponse: {
47562
+ gameEvents?: components["schemas"]["GameEventResponse"][] | null;
47563
+ nextPageToken?: string | null;
47564
+ previousPageToken?: string | null;
47565
+ };
47220
47566
  /** @enum {string} */
47221
47567
  PersonalizedConfigStatus: "Active" | "Inactive";
47222
47568
  /** @description Represents a Roblox place. */
@@ -50369,6 +50715,11 @@ export interface components {
50369
50715
  oldNotificationToken?: string;
50370
50716
  /** @description Name of the requesting device */
50371
50717
  deviceName?: string;
50718
+ /**
50719
+ * @description True when the client granted iOS provisional authorization (silent, quiet-only)
50720
+ * rather than full authorization. Absent/null is treated as not provisional.
50721
+ */
50722
+ isProvisional?: boolean;
50372
50723
  };
50373
50724
  "Roblox.Api.Notifications.Models.RegisterIOSPushKitRequestModel": {
50374
50725
  /** @description Token for notification */
@@ -52846,39 +53197,6 @@ export interface components {
52846
53197
  /** @description The new description returned */
52847
53198
  newDescription?: string;
52848
53199
  };
52849
- /** @description A detailed group response model */
52850
- "Roblox.Groups.Api.GroupDetailResponse": {
52851
- /**
52852
- * Format: int64
52853
- * @description The group id
52854
- */
52855
- id?: number;
52856
- /** @description The group name */
52857
- name?: string;
52858
- /** @description The group description */
52859
- description?: string;
52860
- owner?: components["schemas"]["Roblox.Groups.Api.Models.Response.UserModel"];
52861
- shout?: components["schemas"]["Roblox.Groups.Api.ShoutResponse"];
52862
- /**
52863
- * Format: int32
52864
- * @description The number of members in the group
52865
- */
52866
- memberCount?: number;
52867
- /** @description Whether the group is Builders Club only */
52868
- isBuildersClubOnly?: boolean;
52869
- /** @description Whether the group is public (no approval required) */
52870
- publicEntryAllowed?: boolean;
52871
- /** @description Whether the group is locked */
52872
- isLocked?: boolean;
52873
- /** @description Whether the group has a verified badge. */
52874
- hasVerifiedBadge?: boolean;
52875
- /**
52876
- * @description Whether the group has social modules enabled (e.g. Forums)
52877
- * (determines if "Followers" vs "Members" should be shown).
52878
- */
52879
- hasSocialModules?: boolean;
52880
- communityTier?: components["schemas"]["Roblox.Groups.Client.CommunityTierInfoResponse"];
52881
- };
52882
53200
  /** @description A model representing data about an Roblox.Platform.Membership.IUser */
52883
53201
  "Roblox.Groups.Api.GroupEconomyPermissionsModel": {
52884
53202
  /** @description Spend group funds permission */
@@ -52961,7 +53279,7 @@ export interface components {
52961
53279
  };
52962
53280
  /** @description A group membership response model */
52963
53281
  "Roblox.Groups.Api.GroupMembershipDetailResponse": {
52964
- group?: components["schemas"]["Roblox.Groups.Api.GroupDetailResponse"];
53282
+ group?: components["schemas"]["GroupsApi.Roblox.Groups.Api.GroupDetailResponse"];
52965
53283
  role?: components["schemas"]["Roblox.Groups.Api.GroupRoleResponse"];
52966
53284
  /** @description Whether the group is the user's Primary Group */
52967
53285
  isPrimaryGroup?: boolean;
@@ -53131,7 +53449,7 @@ export interface components {
53131
53449
  */
53132
53450
  totalGroupCount?: number;
53133
53451
  /** @description The related or requested groups */
53134
- relatedGroups?: components["schemas"]["Roblox.Groups.Api.GroupDetailResponse"][];
53452
+ relatedGroups?: components["schemas"]["GroupsApi.Roblox.Groups.Api.GroupDetailResponse"][];
53135
53453
  /**
53136
53454
  * Format: int64
53137
53455
  * @description The index for the next page of related groups
@@ -53297,7 +53615,7 @@ export interface components {
53297
53615
  * Null when the value could not be determined.
53298
53616
  */
53299
53617
  isAutoAssignRoleDisabled?: boolean;
53300
- communityTier?: components["schemas"]["Roblox.Groups.Client.CommunityTierInfoResponse"];
53618
+ communityTier?: components["schemas"]["GroupsApi.Roblox.Groups.Client.CommunityTierInfoResponse"];
53301
53619
  };
53302
53620
  /** @description A group roles response model */
53303
53621
  "Roblox.Groups.Api.GroupsDisplayOptionsResponse": {
@@ -53773,18 +54091,6 @@ export interface components {
53773
54091
  /** Format: date-time */
53774
54092
  updatedAt?: string;
53775
54093
  };
53776
- "Roblox.Groups.Client.CommunityTierInfoResponse": {
53777
- /** Format: int64 */
53778
- groupId?: number;
53779
- /** Format: int32 */
53780
- currentTier?: number;
53781
- /** Format: int32 */
53782
- previousTier?: number;
53783
- /** Format: date-time */
53784
- tierUpdatedTime?: string;
53785
- /** Format: date-time */
53786
- lastEvaluatedTime?: string;
53787
- };
53788
54094
  "Roblox.Groups.Client.CreateBlockedKeywordsResponse": {
53789
54095
  createdKeywords?: components["schemas"]["Roblox.Groups.Client.BlockedKeywordModel"][];
53790
54096
  hadModeratedKeywords?: boolean;
@@ -53808,6 +54114,10 @@ export interface components {
53808
54114
  contentType?: string;
53809
54115
  contentId?: string;
53810
54116
  };
54117
+ "Roblox.Groups.Client.TierEvaluationResultResponse": {
54118
+ tierInfo?: components["schemas"]["GroupsApi.Roblox.Groups.Client.CommunityTierInfoResponse"];
54119
+ passedSignals?: string[];
54120
+ };
53811
54121
  "Roblox.InGameContentTables.Client.GameLocation": {
53812
54122
  path?: string;
53813
54123
  };
@@ -56021,7 +56331,7 @@ export interface components {
56021
56331
  data?: components["schemas"]["Roblox.Games.Api.Models.Response.GameProductResponse"][];
56022
56332
  };
56023
56333
  "Roblox.Web.WebAPI.Models.ApiArrayResponse_Roblox.Groups.Api.GroupDetailResponse_": {
56024
- data?: components["schemas"]["Roblox.Groups.Api.GroupDetailResponse"][];
56334
+ data?: components["schemas"]["GroupsApi.Roblox.Groups.Api.GroupDetailResponse"][];
56025
56335
  };
56026
56336
  "Roblox.Web.WebAPI.Models.ApiArrayResponse_Roblox.Groups.Api.GroupMembershipDetailResponse_": {
56027
56337
  data?: components["schemas"]["Roblox.Groups.Api.GroupMembershipDetailResponse"][];
@@ -56239,6 +56549,11 @@ export interface components {
56239
56549
  /** @description RPN operand: attribute reference or literal value (same concepts as the proto `RpnOperand` oneof). */
56240
56550
  operand?: components["schemas"]["RpnOperandDto"] | null;
56241
56551
  };
56552
+ /**
56553
+ * @description The type of RSVP statuses.
56554
+ * @enum {string}
56555
+ */
56556
+ RsvpStatus: "none" | "going" | "maybeGoing" | "notGoing";
56242
56557
  RuleDeltaPayload: {
56243
56558
  before?: unknown;
56244
56559
  after?: unknown;
@@ -56861,6 +57176,12 @@ export interface components {
56861
57176
  };
56862
57177
  /** @enum {string} */
56863
57178
  "ThumbnailPersonalizationApi.ModerationStatus": "Reviewing" | "Rejected" | "Approved" | "Unspecified";
57179
+ ThumbnailResponse: {
57180
+ /** Format: int64 */
57181
+ mediaId?: number;
57182
+ /** Format: int32 */
57183
+ rank?: number;
57184
+ };
56864
57185
  /** @description Representation of an asset. */
56865
57186
  "ToolboxService.Asset": {
56866
57187
  /**
@@ -57352,6 +57673,37 @@ export interface components {
57352
57673
  */
57353
57674
  value: number;
57354
57675
  };
57676
+ /** @description Optional config block on the v3 PATCH body. Null sub-fields = no change. */
57677
+ UpdateGameEventConfigRequest: {
57678
+ /** @description New cron recurrence expression. Null = no change. Validated server-side. */
57679
+ recurrence?: string | null;
57680
+ /** Format: date-time */
57681
+ recurrenceEndTime?: string | null;
57682
+ notificationAudience?: components["schemas"]["EventNotificationAudience"] | null;
57683
+ };
57684
+ /**
57685
+ * @description Request body for `PATCH /v3/game-events/{eventId}`.
57686
+ * Every field is optional; null = "no change". An empty body is a no-op and returns the current resource.
57687
+ */
57688
+ UpdateGameEventRequest: {
57689
+ title?: string | null;
57690
+ subtitle?: string | null;
57691
+ description?: string | null;
57692
+ /** Format: date-time */
57693
+ startTime?: string | null;
57694
+ /** Format: date-time */
57695
+ endTime?: string | null;
57696
+ /** @description Must be `Public` or `Private`; other values are rejected. Null = no change. */
57697
+ visibility?: components["schemas"]["EventVisibility"] | null;
57698
+ /** Format: int64 */
57699
+ placeId?: number | null;
57700
+ categories?: components["schemas"]["EventRankedCategory"][] | null;
57701
+ thumbnails?: components["schemas"]["EventMedia"][] | null;
57702
+ /** @description Optional config block on the v3 PATCH body. Null sub-fields = no change. */
57703
+ config?: components["schemas"]["UpdateGameEventConfigRequest"] | null;
57704
+ featuringStatus?: components["schemas"]["FeaturingStatus"] | null;
57705
+ tagline?: string | null;
57706
+ };
57355
57707
  /**
57356
57708
  * @description Represents metadata about the long-running operation corresponding to a
57357
57709
  * UpdateInstance request.
@@ -57856,6 +58208,16 @@ export interface components {
57856
58208
  displayName?: string | null;
57857
58209
  hasVerifiedBadge?: boolean;
57858
58210
  };
58211
+ "VirtualEventsApi.ProblemDetails": {
58212
+ type?: string | null;
58213
+ title?: string | null;
58214
+ /** Format: int32 */
58215
+ status?: number | null;
58216
+ detail?: string | null;
58217
+ instance?: string | null;
58218
+ } & {
58219
+ [key: string]: unknown;
58220
+ };
57859
58221
  /** @description model for voting. */
57860
58222
  VotingModel: {
57861
58223
  /** @description Gets or sets show votes. */
@@ -65942,4 +66304,281 @@ export interface operations {
65942
66304
  };
65943
66305
  };
65944
66306
  };
66307
+ GameEvent_Get: {
66308
+ parameters: {
66309
+ query?: {
66310
+ /** @description Optional field mask (comma-separated; omit or use * for all fields). */
66311
+ fields?: string;
66312
+ };
66313
+ header?: never;
66314
+ path: {
66315
+ /** @description Game event ID (from path). */
66316
+ eventId: number;
66317
+ };
66318
+ cookie?: never;
66319
+ };
66320
+ requestBody?: never;
66321
+ responses: {
66322
+ /** @description The requested game event. */
66323
+ 200: {
66324
+ headers: {
66325
+ [name: string]: unknown;
66326
+ };
66327
+ content: {
66328
+ "application/json": components["schemas"]["GameEventResponse"];
66329
+ };
66330
+ };
66331
+ /** @description Malformed `?fields=` or invalid event ID. */
66332
+ 400: {
66333
+ headers: {
66334
+ [name: string]: unknown;
66335
+ };
66336
+ content: {
66337
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66338
+ };
66339
+ };
66340
+ /** @description Event does not exist. */
66341
+ 404: {
66342
+ headers: {
66343
+ [name: string]: unknown;
66344
+ };
66345
+ content: {
66346
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66347
+ };
66348
+ };
66349
+ };
66350
+ };
66351
+ GameEvent_Delete: {
66352
+ parameters: {
66353
+ query?: never;
66354
+ header?: never;
66355
+ path: {
66356
+ /** @description Game event ID to delete (from path). */
66357
+ eventId: number;
66358
+ };
66359
+ cookie?: never;
66360
+ };
66361
+ requestBody?: never;
66362
+ responses: {
66363
+ /** @description The event was deleted. */
66364
+ 204: {
66365
+ headers: {
66366
+ [name: string]: unknown;
66367
+ };
66368
+ content?: never;
66369
+ };
66370
+ /** @description Caller is not authenticated. */
66371
+ 401: {
66372
+ headers: {
66373
+ [name: string]: unknown;
66374
+ };
66375
+ content: {
66376
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66377
+ };
66378
+ };
66379
+ /** @description Caller can read the event but lacks delete permission. */
66380
+ 403: {
66381
+ headers: {
66382
+ [name: string]: unknown;
66383
+ };
66384
+ content: {
66385
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66386
+ };
66387
+ };
66388
+ /** @description Event does not exist or caller cannot see it. */
66389
+ 404: {
66390
+ headers: {
66391
+ [name: string]: unknown;
66392
+ };
66393
+ content: {
66394
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66395
+ };
66396
+ };
66397
+ /** @description The backend rejected the delete after the permission pre-check passed. */
66398
+ 500: {
66399
+ headers: {
66400
+ [name: string]: unknown;
66401
+ };
66402
+ content: {
66403
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66404
+ };
66405
+ };
66406
+ };
66407
+ };
66408
+ GameEvent_Update: {
66409
+ parameters: {
66410
+ query?: never;
66411
+ header?: never;
66412
+ path: {
66413
+ /** @description Game event ID from the route. */
66414
+ eventId: number;
66415
+ };
66416
+ cookie?: never;
66417
+ };
66418
+ /** @description Partial update payload. Omitted or null fields are treated as no change. */
66419
+ requestBody?: {
66420
+ content: {
66421
+ "application/json-patch+json": components["schemas"]["UpdateGameEventRequest"];
66422
+ "application/json": components["schemas"]["UpdateGameEventRequest"];
66423
+ "text/json": components["schemas"]["UpdateGameEventRequest"];
66424
+ "application/*+json": components["schemas"]["UpdateGameEventRequest"];
66425
+ };
66426
+ };
66427
+ responses: {
66428
+ /** @description The updated game event resource. */
66429
+ 200: {
66430
+ headers: {
66431
+ [name: string]: unknown;
66432
+ };
66433
+ content: {
66434
+ "application/json": components["schemas"]["GameEventResponse"];
66435
+ };
66436
+ };
66437
+ /** @description Validation failure or backend reject. */
66438
+ 400: {
66439
+ headers: {
66440
+ [name: string]: unknown;
66441
+ };
66442
+ content: {
66443
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66444
+ };
66445
+ };
66446
+ /** @description Caller is not authenticated. */
66447
+ 401: {
66448
+ headers: {
66449
+ [name: string]: unknown;
66450
+ };
66451
+ content: {
66452
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66453
+ };
66454
+ };
66455
+ /** @description Caller can read but lacks edit permission. */
66456
+ 403: {
66457
+ headers: {
66458
+ [name: string]: unknown;
66459
+ };
66460
+ content: {
66461
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66462
+ };
66463
+ };
66464
+ /** @description Event not found. */
66465
+ 404: {
66466
+ headers: {
66467
+ [name: string]: unknown;
66468
+ };
66469
+ content: {
66470
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66471
+ };
66472
+ };
66473
+ };
66474
+ };
66475
+ GameEvents_List: {
66476
+ parameters: {
66477
+ query?: {
66478
+ /** @description Requested page size. */
66479
+ pageSize?: number;
66480
+ /** @description Continuation token from a prior page's `nextPageToken`. */
66481
+ pageToken?: string;
66482
+ /** @description When true, treats `pageToken` as a backward-pagination cursor. */
66483
+ reverse?: boolean;
66484
+ /** @description Upper bound on event start time. */
66485
+ startsBefore?: string;
66486
+ /** @description Lower bound on event start time. */
66487
+ startsAfter?: string;
66488
+ /** @description Upper bound on event end time. */
66489
+ endsBefore?: string;
66490
+ /** @description Lower bound on event end time. Defaults to now when neither bound is set. */
66491
+ endsAfter?: string;
66492
+ /** @description Visibility filter. */
66493
+ visibility?: components["schemas"]["EventVisibility"];
66494
+ /** @description Field mask (comma-separated; omit or `*` for all fields). */
66495
+ fields?: string;
66496
+ };
66497
+ header?: never;
66498
+ path: {
66499
+ /** @description Universe that owns the events (from path). */
66500
+ universeId: number;
66501
+ };
66502
+ cookie?: never;
66503
+ };
66504
+ requestBody?: never;
66505
+ responses: {
66506
+ /** @description A page of game events. */
66507
+ 200: {
66508
+ headers: {
66509
+ [name: string]: unknown;
66510
+ };
66511
+ content: {
66512
+ "application/json": components["schemas"]["PaginatedGameEventsResponse"];
66513
+ };
66514
+ };
66515
+ /** @description Invalid `?fields=`, out-of-range `pageSize`, or bad query parameter. */
66516
+ 400: {
66517
+ headers: {
66518
+ [name: string]: unknown;
66519
+ };
66520
+ content: {
66521
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66522
+ };
66523
+ };
66524
+ };
66525
+ };
66526
+ GameEvents_Create: {
66527
+ parameters: {
66528
+ query?: never;
66529
+ header?: never;
66530
+ path: {
66531
+ /** @description Universe that will own the new event (from path). */
66532
+ universeId: number;
66533
+ };
66534
+ cookie?: never;
66535
+ };
66536
+ /** @description The create payload. */
66537
+ requestBody?: {
66538
+ content: {
66539
+ "application/json-patch+json": components["schemas"]["CreateGameEventRequest"];
66540
+ "application/json": components["schemas"]["CreateGameEventRequest"];
66541
+ "text/json": components["schemas"]["CreateGameEventRequest"];
66542
+ "application/*+json": components["schemas"]["CreateGameEventRequest"];
66543
+ };
66544
+ };
66545
+ responses: {
66546
+ /** @description The newly-created game event resource. */
66547
+ 200: {
66548
+ headers: {
66549
+ [name: string]: unknown;
66550
+ };
66551
+ content: {
66552
+ "application/json": components["schemas"]["GameEventResponse"];
66553
+ };
66554
+ };
66555
+ /** @description Validation failure or server-side reject (moderation, age requirement, ...). */
66556
+ 400: {
66557
+ headers: {
66558
+ [name: string]: unknown;
66559
+ };
66560
+ content: {
66561
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66562
+ };
66563
+ };
66564
+ /** @description Caller is not authenticated. */
66565
+ 401: {
66566
+ headers: {
66567
+ [name: string]: unknown;
66568
+ };
66569
+ content: {
66570
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66571
+ };
66572
+ };
66573
+ /** @description Caller lacks permission or quota is exhausted. */
66574
+ 403: {
66575
+ headers: {
66576
+ [name: string]: unknown;
66577
+ };
66578
+ content: {
66579
+ "application/json": components["schemas"]["VirtualEventsApi.ProblemDetails"];
66580
+ };
66581
+ };
66582
+ };
66583
+ };
65945
66584
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jacobhumston/roblox-openapi-ts",
3
- "version": "1.0.36",
3
+ "version": "1.0.38",
4
4
  "description": "An automatically updated Roblox API client based on their OpenAPI documentation.",
5
5
  "keywords": [
6
6
  "roblox",