From a997dc41b08f9b9971cb7af15affe4a0333f6203 Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Wed, 30 Sep 2026 10:30:24 -0400 Subject: [PATCH 01/12] Initial impl for group audit log typings --- .../schemas/GroupAuditLogEntry.yaml | 90 +++++++---- .../schemas/GroupAuditLogEntryBase.yaml | 42 +++++ ...tLogEntryDataGroupCalendarEventCreate.yaml | 28 ++++ ...tLogEntryDataGroupCalendarEventDelete.yaml | 144 ++++++++++++++++++ ...LogEntryDataGroupInstanceAnnouncement.yaml | 13 ++ ...upAuditLogEntryDataGroupInstanceClose.yaml | 17 +++ ...pAuditLogEntryDataGroupInstanceCreate.yaml | 21 +++ ...oupAuditLogEntryDataGroupInstanceKick.yaml | 9 ++ ...oupAuditLogEntryDataGroupInstanceWarn.yaml | 9 ++ ...oupAuditLogEntryDataGroupInviteCancel.yaml | 5 + ...oupAuditLogEntryDataGroupInviteCreate.yaml | 5 + ...GroupAuditLogEntryDataGroupMemberJoin.yaml | 5 + ...roupAuditLogEntryDataGroupMemberLeave.yaml | 5 + ...oupAuditLogEntryDataGroupMemberRemove.yaml | 5 + ...uditLogEntryDataGroupMemberRoleAssign.yaml | 13 ++ ...itLogEntryDataGroupMemberRoleUnassign.yaml | 13 ++ ...uditLogEntryDataGroupMemberUserUpdate.yaml | 19 +++ ...GroupAuditLogEntryDataGroupPostCreate.yaml | 37 +++++ ...GroupAuditLogEntryDataGroupPostDelete.yaml | 54 +++++++ ...oupAuditLogEntryDataGroupRequestBlock.yaml | 5 + ...upAuditLogEntryDataGroupRequestCreate.yaml | 5 + ...upAuditLogEntryDataGroupRequestReject.yaml | 5 + ...AuditLogEntryDataGroupRequestWithdraw.yaml | 5 + ...GroupAuditLogEntryDataGroupRoleCreate.yaml | 48 ++++++ ...GroupAuditLogEntryDataGroupRoleUpdate.yaml | 37 +++++ .../GroupAuditLogEntryDataGroupUpdate.yaml | 25 +++ .../GroupAuditLogEntryDataGroupUserBan.yaml | 5 + .../GroupAuditLogEntryDataGroupUserUnban.yaml | 5 + ...AuditLogEntryGroupCalendarEventCreate.yaml | 13 ++ ...AuditLogEntryGroupCalendarEventDelete.yaml | 13 ++ ...uditLogEntryGroupInstanceAnnouncement.yaml | 13 ++ .../GroupAuditLogEntryGroupInstanceClose.yaml | 13 ++ ...GroupAuditLogEntryGroupInstanceCreate.yaml | 13 ++ .../GroupAuditLogEntryGroupInstanceKick.yaml | 13 ++ .../GroupAuditLogEntryGroupInstanceWarn.yaml | 13 ++ .../GroupAuditLogEntryGroupInviteCancel.yaml | 13 ++ .../GroupAuditLogEntryGroupInviteCreate.yaml | 13 ++ .../GroupAuditLogEntryGroupMemberJoin.yaml | 13 ++ .../GroupAuditLogEntryGroupMemberLeave.yaml | 13 ++ .../GroupAuditLogEntryGroupMemberRemove.yaml | 13 ++ ...oupAuditLogEntryGroupMemberRoleAssign.yaml | 13 ++ ...pAuditLogEntryGroupMemberRoleUnassign.yaml | 13 ++ ...oupAuditLogEntryGroupMemberUserUpdate.yaml | 13 ++ .../GroupAuditLogEntryGroupPostCreate.yaml | 13 ++ .../GroupAuditLogEntryGroupPostDelete.yaml | 13 ++ .../GroupAuditLogEntryGroupRequestBlock.yaml | 13 ++ .../GroupAuditLogEntryGroupRequestCreate.yaml | 13 ++ .../GroupAuditLogEntryGroupRequestReject.yaml | 13 ++ ...roupAuditLogEntryGroupRequestWithdraw.yaml | 13 ++ .../GroupAuditLogEntryGroupRoleCreate.yaml | 13 ++ .../GroupAuditLogEntryGroupRoleUpdate.yaml | 13 ++ .../GroupAuditLogEntryGroupUpdate.yaml | 13 ++ .../GroupAuditLogEntryGroupUserBan.yaml | 13 ++ .../GroupAuditLogEntryGroupUserUnban.yaml | 13 ++ 54 files changed, 979 insertions(+), 33 deletions(-) create mode 100644 openapi/components/schemas/GroupAuditLogEntryBase.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntry.yaml b/openapi/components/schemas/GroupAuditLogEntry.yaml index 9b9fa060..f9ae656d 100644 --- a/openapi/components/schemas/GroupAuditLogEntry.yaml +++ b/openapi/components/schemas/GroupAuditLogEntry.yaml @@ -1,34 +1,58 @@ title: GroupAuditLogEntry -type: object -properties: - actorDisplayName: - type: string - actorId: - $ref: ./UserID.yaml - created_at: - type: string - format: date-time - data: - type: object - description: The data associated with the event. The format of this data is dependent on the event type. - examples: - - description: - new: "My exciting new group. It's pretty nifty!" - old: "My exciting new group. It's pretty nifty!" - joinState: - new: request - old: closed - description: - type: string - description: A human-readable description of the event. - examples: - - Group role updated - eventType: - $ref: ./GroupAuditLogEntryType.yaml - groupId: - $ref: ./GroupID.yaml - id: - $ref: ./GroupAuditLogID.yaml - targetId: - type: string - description: Typically a UserID, GroupID, GroupRoleID, or Location, but could be other types of IDs. +description: A union of all group audit log entry types, discriminated by eventType. +discriminator: + mapping: + group.calendarEvent.create: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml + group.calendarEvent.delete: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml + group.instance.announcement: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml + group.instance.close: ./GroupAuditLogEntryGroupInstanceClose.yaml + group.instance.create: ./GroupAuditLogEntryGroupInstanceCreate.yaml + group.instance.kick: ./GroupAuditLogEntryGroupInstanceKick.yaml + group.instance.warn: ./GroupAuditLogEntryGroupInstanceWarn.yaml + group.invite.cancel: ./GroupAuditLogEntryGroupInviteCancel.yaml + group.invite.create: ./GroupAuditLogEntryGroupInviteCreate.yaml + group.member.join: ./GroupAuditLogEntryGroupMemberJoin.yaml + group.member.leave: ./GroupAuditLogEntryGroupMemberLeave.yaml + group.member.remove: ./GroupAuditLogEntryGroupMemberRemove.yaml + group.member.role.assign: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml + group.member.role.unassign: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml + group.member.user.update: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml + group.post.create: ./GroupAuditLogEntryGroupPostCreate.yaml + group.post.delete: ./GroupAuditLogEntryGroupPostDelete.yaml + group.request.block: ./GroupAuditLogEntryGroupRequestBlock.yaml + group.request.create: ./GroupAuditLogEntryGroupRequestCreate.yaml + group.request.reject: ./GroupAuditLogEntryGroupRequestReject.yaml + group.request.withdraw: ./GroupAuditLogEntryGroupRequestWithdraw.yaml + group.role.create: ./GroupAuditLogEntryGroupRoleCreate.yaml + group.role.update: ./GroupAuditLogEntryGroupRoleUpdate.yaml + group.update: ./GroupAuditLogEntryGroupUpdate.yaml + group.user.ban: ./GroupAuditLogEntryGroupUserBan.yaml + group.user.unban: ./GroupAuditLogEntryGroupUserUnban.yaml + propertyName: eventType +oneOf: + - $ref: ./GroupAuditLogEntryGroupInstanceKick.yaml + - $ref: ./GroupAuditLogEntryGroupInviteCreate.yaml + - $ref: ./GroupAuditLogEntryGroupMemberJoin.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceClose.yaml + - $ref: ./GroupAuditLogEntryGroupMemberLeave.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceCreate.yaml + - $ref: ./GroupAuditLogEntryGroupPostCreate.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceWarn.yaml + - $ref: ./GroupAuditLogEntryGroupRequestCreate.yaml + - $ref: ./GroupAuditLogEntryGroupUserBan.yaml + - $ref: ./GroupAuditLogEntryGroupRequestReject.yaml + - $ref: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml + - $ref: ./GroupAuditLogEntryGroupRequestBlock.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml + - $ref: ./GroupAuditLogEntryGroupUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupUserUnban.yaml + - $ref: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRemove.yaml + - $ref: ./GroupAuditLogEntryGroupRoleUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml + - $ref: ./GroupAuditLogEntryGroupRoleCreate.yaml + - $ref: ./GroupAuditLogEntryGroupPostDelete.yaml + - $ref: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml + - $ref: ./GroupAuditLogEntryGroupInviteCancel.yaml + - $ref: ./GroupAuditLogEntryGroupRequestWithdraw.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryBase.yaml b/openapi/components/schemas/GroupAuditLogEntryBase.yaml new file mode 100644 index 00000000..63d59c5a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryBase.yaml @@ -0,0 +1,42 @@ +title: GroupAuditLogEntryBase +type: object +description: Base schema for all group audit log entries containing common fields. +properties: + actorDisplayName: + type: string + description: The display name of the actor who performed the action. + actorId: + $ref: ./UserID.yaml + description: The ID of the user who performed the action. + createdAt: + type: string + description: The timestamp when the event occurred. + format: date-time + data: + type: object + description: The data associated with the event. The format of this data is dependent on the event type. + description: + type: string + description: A human-readable description of the event. + eventType: + $ref: ./GroupAuditLogEntryType.yaml + description: The type of event that occurred. + groupId: + $ref: ./GroupID.yaml + description: The ID of the group this event belongs to. + id: + $ref: ./GroupAuditLogID.yaml + description: The unique ID of this audit log entry. + targetId: + type: string + description: Typically a UserID, GroupID, GroupRoleID, or Location, but could be other types of IDs. +required: + - actorDisplayName + - actorId + - createdAt + - data + - description + - eventType + - groupId + - id + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml new file mode 100644 index 00000000..8853033a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml @@ -0,0 +1,28 @@ +title: GroupAuditLogEntryDataGroupCalendarEventCreate +type: object +description: Data for group.calendarEvent.create events. +properties: + accessType: + type: string + description: The access type of the event. + enum: [friends, invite, members, private, public] + description: + type: string + description: The description of the calendar event. + imageId: + $ref: ./FileID.yaml + description: The image file ID for the event. + nullable: true + title: + type: string + description: The title of the calendar event. + type: + type: string + description: The type of calendar entry. + enum: [announcement, event] +required: + - accessType + - description + - imageId + - title + - type diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml new file mode 100644 index 00000000..1a7c7f76 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml @@ -0,0 +1,144 @@ +title: GroupAuditLogEntryDataGroupCalendarEventDelete +type: object +description: Data for group.calendarEvent.delete events. +properties: + accessType: + type: string + description: The access type of the event. + enum: [friends, invite, members, private, public] + category: + type: string + description: The category of the event. + closeInstanceAfterEndMinutes: + type: integer + description: Minutes after event end to close the instance. + createdAt: + type: string + description: The creation timestamp. + format: date-time + deletedAt: + type: string + description: The deletion timestamp. + nullable: true + format: date-time + description: + type: string + description: The event description. + durationInMs: + type: integer + description: The duration of the event in milliseconds. + endsAt: + type: string + description: The end timestamp. + format: date-time + featured: + type: boolean + description: Whether the event is featured. + guestEarlyJoinMinutes: + type: integer + description: Minutes before start that guests can join. + hostEarlyJoinMinutes: + type: integer + description: Minutes before start that hosts can join. + imageId: + $ref: ./FileID.yaml + description: The image file ID. + nullable: true + interestedUserCount: + type: integer + description: The number of interested users. + isDraft: + type: boolean + description: Whether the event is a draft. + languages: + type: array + description: The languages for the event. + items: + type: string + occurrenceKind: + type: string + description: The occurrence kind. + enum: [recurring, single] + occurrenceModified: + type: string + description: The occurrence modified timestamp. + nullable: true + ownerId: + $ref: ./GroupID.yaml + description: The owner group ID. + platforms: + type: array + description: The supported platforms. + items: + type: string + recurrence: + type: object + description: The recurrence rule. + nullable: true + roleIds: + type: array + description: The role IDs with access. + nullable: true + items: + $ref: ./GroupRoleID.yaml + seriesId: + type: string + description: The series ID for recurring events. + nullable: true + shortCode: + type: string + description: The short code. + nullable: true + startsAt: + type: string + description: The start timestamp. + format: date-time + tags: + type: array + description: The event tags. + items: + type: string + title: + type: string + description: The event title. + type: + type: string + description: The type of calendar entry. + enum: [announcement, event] + updatedAt: + type: string + description: The last update timestamp. + format: date-time + usesInstanceOverflow: + type: boolean + description: Whether the event uses instance overflow. +required: + - accessType + - category + - closeInstanceAfterEndMinutes + - createdAt + - deletedAt + - description + - durationInMs + - endsAt + - featured + - guestEarlyJoinMinutes + - hostEarlyJoinMinutes + - imageId + - interestedUserCount + - isDraft + - languages + - occurrenceKind + - occurrenceModified + - ownerId + - platforms + - recurrence + - roleIds + - seriesId + - shortCode + - startsAt + - tags + - title + - type + - updatedAt + - usesInstanceOverflow diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml new file mode 100644 index 00000000..8557133e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryDataGroupInstanceAnnouncement +type: object +description: Data for group.instance.announcement events. +properties: + message: + type: string + description: The announcement message. + title: + type: string + description: The announcement title. Currently, always "Instance Announcement" +required: + - message + - title diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml new file mode 100644 index 00000000..751536d1 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml @@ -0,0 +1,17 @@ +title: GroupAuditLogEntryDataGroupInstanceClose +type: object +description: Data for group.instance.close events. +properties: + groupAccessType: + type: string + description: The access type of the instance. + enum: [friends, invite, members, private, public] + roleIds: + type: array + description: The role IDs that have access to the instance. + nullable: true + items: + $ref: ./GroupRoleID.yaml +required: + - groupAccessType + - roleIds diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml new file mode 100644 index 00000000..08b1e49f --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml @@ -0,0 +1,21 @@ +title: GroupAuditLogEntryDataGroupInstanceCreate +type: object +description: Data for group.instance.create events. +properties: + calendarEntryId: + type: string + description: The calendar entry ID if the instance was created from a calendar event. + nullable: true + groupAccessType: + type: string + description: The access type of the instance. + enum: [friends, invite, members, private, public] + roleIds: + type: array + description: The role IDs that have access to the instance. + items: + $ref: ./GroupRoleID.yaml +required: + - calendarEntryId + - groupAccessType + - roleIds diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml new file mode 100644 index 00000000..1f9405f2 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml @@ -0,0 +1,9 @@ +title: GroupAuditLogEntryDataGroupInstanceKick +type: object +description: Data for group.instance.kick events. +properties: + location: + $ref: ./LocationID.yaml + description: The location string of the instance (worldID:instanceID~group(...)~groupAccessType(...)~region(...)). +required: + - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml new file mode 100644 index 00000000..d22a0c97 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml @@ -0,0 +1,9 @@ +title: GroupAuditLogEntryDataGroupInstanceWarn +type: object +description: Data for group.instance.warn events. +properties: + location: + $ref: ./LocationID.yaml + description: The location string of the instance. +required: + - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml new file mode 100644 index 00000000..dc9d73bf --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupInviteCancel +type: object +description: Data for group.invite.cancel events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml new file mode 100644 index 00000000..77736a39 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupInviteCreate +type: object +description: Data for group.invite.create events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml new file mode 100644 index 00000000..eeab840e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupMemberJoin +type: object +description: Data for group.member.join events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml new file mode 100644 index 00000000..c6a7ced2 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupMemberLeave +type: object +description: Data for group.member.leave events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml new file mode 100644 index 00000000..fe0b39be --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupMemberRemove +type: object +description: Data for group.member.remove events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml new file mode 100644 index 00000000..1f2a33ca --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryDataGroupMemberRoleAssign +type: object +description: Data for group.member.role.assign events. +properties: + roleId: + $ref: ./GroupRoleID.yaml + description: The ID of the role that was assigned. + roleName: + type: string + description: The name of the role that was assigned. +required: + - roleId + - roleName diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml new file mode 100644 index 00000000..6f8c690d --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryDataGroupMemberRoleUnassign +type: object +description: Data for group.member.role.unassign events. +properties: + roleId: + $ref: ./GroupRoleID.yaml + description: The ID of the role that was unassigned. + roleName: + type: string + description: The name of the role that was unassigned. +required: + - roleId + - roleName diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml new file mode 100644 index 00000000..f0d5c420 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml @@ -0,0 +1,19 @@ +title: GroupAuditLogEntryDataGroupMemberUserUpdate +type: object +description: Data for group.member.user.update events. +properties: + managerNotes: + type: object + description: The manager notes that were updated. + properties: + new: + type: string + description: The new manager notes. + old: + type: string + description: The old manager notes. + required: + - new + - old +required: + - managerNotes diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml new file mode 100644 index 00000000..f797479b --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml @@ -0,0 +1,37 @@ +title: GroupAuditLogEntryDataGroupPostCreate +type: object +description: Data for group.post.create events. +properties: + authorId: + $ref: ./UserID.yaml + description: The ID of the post author. + imageId: + $ref: ./FileID.yaml + description: The image file ID attached to the post. + nullable: true + roleIds: + type: array + description: The role IDs that can see this post. + items: + $ref: ./GroupRoleID.yaml + sendNotification: + type: boolean + description: Whether a notification was sent for this post. + text: + type: string + description: The text content of the post. + title: + type: string + description: The title of the post. + visibility: + type: string + description: The visibility of the post. + enum: [group, public] +required: + - authorId + - imageId + - roleIds + - sendNotification + - text + - title + - visibility diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml new file mode 100644 index 00000000..7eee36e5 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml @@ -0,0 +1,54 @@ +title: GroupAuditLogEntryDataGroupPostDelete +type: object +description: Data for group.post.delete events. +properties: + authorId: + $ref: ./UserID.yaml + description: The ID of the post author. + createdAt: + type: string + description: The creation timestamp of the post. + format: date-time + editorId: + $ref: ./UserID.yaml + description: The ID of the user who last edited the post. + nullable: true + imageId: + $ref: ./GroupRoleID.yaml + description: The image file ID attached to the post. + nullable: true + imageUrl: + type: string + description: The URL of the post image. + nullable: true + format: uri + roleIds: + type: array + description: The role IDs that could see this post. + items: + $ref: ./GroupRoleID.yaml + text: + type: string + description: The text content of the post. + title: + type: string + description: The title of the post. + updatedAt: + type: string + description: The last update timestamp of the post. + format: date-time + visibility: + type: string + description: The visibility of the post. + enum: [group, public] +required: + - authorId + - createdAt + - editorId + - imageId + - imageUrl + - roleIds + - text + - title + - updatedAt + - visibility diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml new file mode 100644 index 00000000..34b7e8ff --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupRequestBlock +type: object +description: Data for group.request.block events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml new file mode 100644 index 00000000..47e20120 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupRequestCreate +type: object +description: Data for group.request.create events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml new file mode 100644 index 00000000..a0370618 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupRequestReject +type: object +description: Data for group.request.reject events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml new file mode 100644 index 00000000..5eeff2a9 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupRequestWithdraw +type: object +description: Data for group.request.withdraw events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml new file mode 100644 index 00000000..804dd833 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml @@ -0,0 +1,48 @@ +# can probably done via psudeocode Omit +title: GroupAuditLogEntryDataGroupRoleCreate +type: object +description: Data for group.role.create events. +properties: + description: + type: string + description: The role description. + groupId: + $ref: ./GroupID.yaml + description: The group ID. + isAddedOnJoin: + type: boolean + description: Whether the role is automatically assigned on join. + isSelfAssignable: + type: boolean + description: Whether users can self-assign this role. + lastUpdatedByUserId: + $ref: ./UserID.yaml + description: The ID of the user who last updated the role. + name: + type: string + description: The role name. + order: + type: integer + description: The display order of the role. + permissions: + type: array + description: The permissions assigned to this role. + items: + type: string + requiresPurchase: + type: boolean + description: Whether the role requires a purchase. + requiresTwoFactor: + type: boolean + description: Whether the role requires two-factor authentication. +required: + - description + - groupId + - isAddedOnJoin + - isSelfAssignable + - lastUpdatedByUserId + - name + - order + - permissions + - requiresPurchase + - requiresTwoFactor diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml new file mode 100644 index 00000000..dfa038dc --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml @@ -0,0 +1,37 @@ +title: GroupAuditLogEntryDataGroupRoleUpdate +type: object +description: Data for group.role.update events. +properties: + name: + type: object + description: The role name that was updated. + properties: + new: + type: string + description: The new role name. + old: + type: string + description: The old role name. + required: + - new + - old + permissions: + type: object + description: The role permissions that were updated. + properties: + new: + type: array + description: The new permissions. + items: + type: string + old: + type: array + description: The old permissions. + items: + type: string + required: + - new + - old +required: + - name + - permissions diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml new file mode 100644 index 00000000..fcf1b89a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml @@ -0,0 +1,25 @@ +title: GroupAuditLogEntryDataGroupUpdate +type: object +description: Data for group.update events. +properties: + links: + type: object + description: The group links that were updated. + properties: + new: + type: array + description: The new links. + items: + type: string + format: uri + old: + type: array + description: The old links. + items: + type: string + format: uri + required: + - new + - old +required: + - links diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml new file mode 100644 index 00000000..dd2638a8 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupUserBan +type: object +description: Data for group.user.ban events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml new file mode 100644 index 00000000..acea105f --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryDataGroupUserUnban +type: object +description: Data for group.user.unban events. +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml new file mode 100644 index 00000000..349801f0 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupCalendarEventCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml + eventType: + type: string + const: group.calendarEvent.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml new file mode 100644 index 00000000..35b76df3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupCalendarEventDelete +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventDelete.yaml + eventType: + type: string + const: group.calendarEvent.delete + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml new file mode 100644 index 00000000..f23fccd3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInstanceAnnouncement +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml + eventType: + type: string + const: group.instance.announcement + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml new file mode 100644 index 00000000..18aabeff --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInstanceClose +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceClose.yaml + eventType: + type: string + const: group.instance.close + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml new file mode 100644 index 00000000..5c3b735d --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInstanceCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceCreate.yaml + eventType: + type: string + const: group.instance.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml new file mode 100644 index 00000000..4a65f2a2 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInstanceKick +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml + eventType: + type: string + const: group.instance.kick + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml new file mode 100644 index 00000000..a51f94ab --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInstanceWarn +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml + eventType: + type: string + const: group.instance.warn + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml new file mode 100644 index 00000000..b2511327 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInviteCancel +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml + eventType: + type: string + const: group.invite.cancel + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml new file mode 100644 index 00000000..a9c078eb --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupInviteCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml + eventType: + type: string + const: group.invite.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml new file mode 100644 index 00000000..0ad9de8a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberJoin +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml + eventType: + type: string + const: group.member.join + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml new file mode 100644 index 00000000..f860f1b9 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberLeave +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml + eventType: + type: string + const: group.member.leave + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml new file mode 100644 index 00000000..f96eabad --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberRemove +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml + eventType: + type: string + const: group.member.remove + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml new file mode 100644 index 00000000..2782c2bf --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberRoleAssign +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml + eventType: + type: string + const: group.member.role.assign + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml new file mode 100644 index 00000000..c7ec2b70 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberRoleUnassign +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml + eventType: + type: string + const: group.member.role.unassign + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml new file mode 100644 index 00000000..02e8b057 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupMemberUserUpdate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberUserUpdate.yaml + eventType: + type: string + const: group.member.user.update + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml new file mode 100644 index 00000000..3d1fadd4 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupPostCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostCreate.yaml + eventType: + type: string + const: group.post.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml new file mode 100644 index 00000000..799460ee --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupPostDelete +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostDelete.yaml + eventType: + type: string + const: group.post.delete + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml new file mode 100644 index 00000000..09798d67 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRequestBlock +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml + eventType: + type: string + const: group.request.block + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml new file mode 100644 index 00000000..6e646423 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRequestCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml + eventType: + type: string + const: group.request.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml new file mode 100644 index 00000000..2a468153 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRequestReject +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml + eventType: + type: string + const: group.request.reject + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml new file mode 100644 index 00000000..116fb1ab --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRequestWithdraw +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml + eventType: + type: string + const: group.request.withdraw + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml new file mode 100644 index 00000000..1c3a9507 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRoleCreate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleCreate.yaml + eventType: + type: string + const: group.role.create + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml new file mode 100644 index 00000000..f9176993 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupRoleUpdate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleUpdate.yaml + eventType: + type: string + const: group.role.update + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml new file mode 100644 index 00000000..7eec87b8 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupUpdate +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUpdate.yaml + eventType: + type: string + const: group.update + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml new file mode 100644 index 00000000..044c9a71 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupUserBan +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml + eventType: + type: string + const: group.user.ban + required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml new file mode 100644 index 00000000..a0b16a12 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml @@ -0,0 +1,13 @@ +title: GroupAuditLogEntryGroupUserUnban +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - type: object + properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml + eventType: + type: string + const: group.user.unban + required: + - data + - eventType From a9634f5d8ac7bb37cf32ccab5db2fe4587bfd84e Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Wed, 30 Sep 2026 10:53:01 -0400 Subject: [PATCH 02/12] Fix linting --- .../schemas/GroupAuditLogEntryBase.yaml | 3 +- .../schemas/GroupAuditLogEntryBaseData.yaml | 2 + ...tLogEntryDataGroupCalendarEventCreate.yaml | 16 ++++-- ...tLogEntryDataGroupCalendarEventDelete.yaml | 56 ++++++++++++------- ...upAuditLogEntryDataGroupInstanceClose.yaml | 17 ++++-- ...pAuditLogEntryDataGroupInstanceCreate.yaml | 12 +++- ...GroupAuditLogEntryDataGroupPostCreate.yaml | 9 ++- ...GroupAuditLogEntryDataGroupPostDelete.yaml | 19 ++++--- ...GroupAuditLogEntryDataGroupRoleCreate.yaml | 2 +- ...AuditLogEntryGroupCalendarEventCreate.yaml | 11 +--- ...gEntryGroupCalendarEventCreateDetails.yaml | 10 ++++ ...AuditLogEntryGroupCalendarEventDelete.yaml | 11 +--- ...gEntryGroupCalendarEventDeleteDetails.yaml | 10 ++++ ...uditLogEntryGroupInstanceAnnouncement.yaml | 11 +--- ...EntryGroupInstanceAnnouncementDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupInstanceClose.yaml | 11 +--- ...uditLogEntryGroupInstanceCloseDetails.yaml | 10 ++++ ...GroupAuditLogEntryGroupInstanceCreate.yaml | 11 +--- ...ditLogEntryGroupInstanceCreateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupInstanceKick.yaml | 11 +--- ...AuditLogEntryGroupInstanceKickDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupInstanceWarn.yaml | 11 +--- ...AuditLogEntryGroupInstanceWarnDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupInviteCancel.yaml | 11 +--- ...AuditLogEntryGroupInviteCancelDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupInviteCreate.yaml | 11 +--- ...AuditLogEntryGroupInviteCreateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupMemberJoin.yaml | 11 +--- ...upAuditLogEntryGroupMemberJoinDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupMemberLeave.yaml | 11 +--- ...pAuditLogEntryGroupMemberLeaveDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupMemberRemove.yaml | 11 +--- ...AuditLogEntryGroupMemberRemoveDetails.yaml | 10 ++++ ...oupAuditLogEntryGroupMemberRoleAssign.yaml | 11 +--- ...tLogEntryGroupMemberRoleAssignDetails.yaml | 10 ++++ ...pAuditLogEntryGroupMemberRoleUnassign.yaml | 11 +--- ...ogEntryGroupMemberRoleUnassignDetails.yaml | 10 ++++ ...oupAuditLogEntryGroupMemberUserUpdate.yaml | 11 +--- ...tLogEntryGroupMemberUserUpdateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupPostCreate.yaml | 11 +--- ...upAuditLogEntryGroupPostCreateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupPostDelete.yaml | 11 +--- ...upAuditLogEntryGroupPostDeleteDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupRequestBlock.yaml | 11 +--- ...AuditLogEntryGroupRequestBlockDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupRequestCreate.yaml | 11 +--- ...uditLogEntryGroupRequestCreateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupRequestReject.yaml | 11 +--- ...uditLogEntryGroupRequestRejectDetails.yaml | 10 ++++ ...roupAuditLogEntryGroupRequestWithdraw.yaml | 11 +--- ...itLogEntryGroupRequestWithdrawDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupRoleCreate.yaml | 11 +--- ...upAuditLogEntryGroupRoleCreateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupRoleUpdate.yaml | 11 +--- ...upAuditLogEntryGroupRoleUpdateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupUpdate.yaml | 11 +--- .../GroupAuditLogEntryGroupUpdateDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupUserBan.yaml | 11 +--- ...GroupAuditLogEntryGroupUserBanDetails.yaml | 10 ++++ .../GroupAuditLogEntryGroupUserUnban.yaml | 11 +--- ...oupAuditLogEntryGroupUserUnbanDetails.yaml | 10 ++++ 61 files changed, 378 insertions(+), 304 deletions(-) create mode 100644 openapi/components/schemas/GroupAuditLogEntryBaseData.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryBase.yaml b/openapi/components/schemas/GroupAuditLogEntryBase.yaml index 63d59c5a..3b1ccd8a 100644 --- a/openapi/components/schemas/GroupAuditLogEntryBase.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryBase.yaml @@ -13,8 +13,7 @@ properties: description: The timestamp when the event occurred. format: date-time data: - type: object - description: The data associated with the event. The format of this data is dependent on the event type. + $ref: ./GroupAuditLogEntryBaseData.yaml description: type: string description: A human-readable description of the event. diff --git a/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml b/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml new file mode 100644 index 00000000..491fcb0e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml @@ -0,0 +1,2 @@ +type: object +description: The data associated with the event. The format of this data is dependent on the event type. diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml index 8853033a..505b3de0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml @@ -5,21 +5,29 @@ properties: accessType: type: string description: The access type of the event. - enum: [friends, invite, members, private, public] + enum: + - friends + - invite + - members + - private + - public description: type: string description: The description of the calendar event. imageId: - $ref: ./FileID.yaml description: The image file ID for the event. - nullable: true + anyOf: + - $ref: ./FileID.yaml + - type: "null" title: type: string description: The title of the calendar event. type: type: string description: The type of calendar entry. - enum: [announcement, event] + enum: + - announcement + - event required: - accessType - description diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml index 1a7c7f76..d78fc2a0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml @@ -5,7 +5,12 @@ properties: accessType: type: string description: The access type of the event. - enum: [friends, invite, members, private, public] + enum: + - friends + - invite + - members + - private + - public category: type: string description: The category of the event. @@ -17,9 +22,10 @@ properties: description: The creation timestamp. format: date-time deletedAt: - type: string + type: + - string + - "null" description: The deletion timestamp. - nullable: true format: date-time description: type: string @@ -41,9 +47,10 @@ properties: type: integer description: Minutes before start that hosts can join. imageId: - $ref: ./FileID.yaml description: The image file ID. - nullable: true + anyOf: + - $ref: ./FileID.yaml + - type: "null" interestedUserCount: type: integer description: The number of interested users. @@ -58,11 +65,14 @@ properties: occurrenceKind: type: string description: The occurrence kind. - enum: [recurring, single] + enum: + - recurring + - single occurrenceModified: - type: string + type: + - string + - "null" description: The occurrence modified timestamp. - nullable: true ownerId: $ref: ./GroupID.yaml description: The owner group ID. @@ -72,23 +82,29 @@ properties: items: type: string recurrence: - type: object description: The recurrence rule. - nullable: true + anyOf: + - type: object + description: The recurrence rule. + - type: "null" roleIds: - type: array description: The role IDs with access. - nullable: true - items: - $ref: ./GroupRoleID.yaml + anyOf: + - type: array + description: The role IDs with access. + items: + $ref: ./GroupRoleID.yaml + - type: "null" seriesId: - type: string + type: + - string + - "null" description: The series ID for recurring events. - nullable: true shortCode: - type: string + type: + - string + - "null" description: The short code. - nullable: true startsAt: type: string description: The start timestamp. @@ -104,7 +120,9 @@ properties: type: type: string description: The type of calendar entry. - enum: [announcement, event] + enum: + - announcement + - event updatedAt: type: string description: The last update timestamp. diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml index 751536d1..54f1f483 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml @@ -5,13 +5,20 @@ properties: groupAccessType: type: string description: The access type of the instance. - enum: [friends, invite, members, private, public] + enum: + - friends + - invite + - members + - private + - public roleIds: - type: array description: The role IDs that have access to the instance. - nullable: true - items: - $ref: ./GroupRoleID.yaml + anyOf: + - type: array + description: The role IDs that have access to the instance. + items: + $ref: ./GroupRoleID.yaml + - type: "null" required: - groupAccessType - roleIds diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml index 08b1e49f..9c282446 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml @@ -3,13 +3,19 @@ type: object description: Data for group.instance.create events. properties: calendarEntryId: - type: string + type: + - string + - "null" description: The calendar entry ID if the instance was created from a calendar event. - nullable: true groupAccessType: type: string description: The access type of the instance. - enum: [friends, invite, members, private, public] + enum: + - friends + - invite + - members + - private + - public roleIds: type: array description: The role IDs that have access to the instance. diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml index f797479b..850d3deb 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml @@ -6,9 +6,10 @@ properties: $ref: ./UserID.yaml description: The ID of the post author. imageId: - $ref: ./FileID.yaml description: The image file ID attached to the post. - nullable: true + anyOf: + - $ref: ./FileID.yaml + - type: "null" roleIds: type: array description: The role IDs that can see this post. @@ -26,7 +27,9 @@ properties: visibility: type: string description: The visibility of the post. - enum: [group, public] + enum: + - group + - public required: - authorId - imageId diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml index 7eee36e5..0cb6212a 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml @@ -10,17 +10,20 @@ properties: description: The creation timestamp of the post. format: date-time editorId: - $ref: ./UserID.yaml description: The ID of the user who last edited the post. - nullable: true + anyOf: + - $ref: ./UserID.yaml + - type: "null" imageId: - $ref: ./GroupRoleID.yaml description: The image file ID attached to the post. - nullable: true + anyOf: + - $ref: ./GroupRoleID.yaml + - type: "null" imageUrl: - type: string + type: + - string + - "null" description: The URL of the post image. - nullable: true format: uri roleIds: type: array @@ -40,7 +43,9 @@ properties: visibility: type: string description: The visibility of the post. - enum: [group, public] + enum: + - group + - public required: - authorId - createdAt diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml index 804dd833..9fc49eba 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml @@ -1,4 +1,4 @@ -# can probably done via psudeocode Omit +# can probably done via pseudocode Omit title: GroupAuditLogEntryDataGroupRoleCreate type: object description: Data for group.role.create events. diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml index 349801f0..f40117d0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupCalendarEventCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml - eventType: - type: string - const: group.calendarEvent.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml new file mode 100644 index 00000000..4b401f58 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml + eventType: + type: string + const: group.calendarEvent.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml index 35b76df3..6a977cf2 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupCalendarEventDelete allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupCalendarEventDelete.yaml - eventType: - type: string - const: group.calendarEvent.delete - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml new file mode 100644 index 00000000..e8ebd5a3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventDelete.yaml + eventType: + type: string + const: group.calendarEvent.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml index f23fccd3..c3c8bfc9 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInstanceAnnouncement allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml - eventType: - type: string - const: group.instance.announcement - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml new file mode 100644 index 00000000..71b98cd0 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml + eventType: + type: string + const: group.instance.announcement +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml index 18aabeff..02e3b3c2 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInstanceClose allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceClose.yaml - eventType: - type: string - const: group.instance.close - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInstanceCloseDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml new file mode 100644 index 00000000..c660b390 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceClose.yaml + eventType: + type: string + const: group.instance.close +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml index 5c3b735d..e9553185 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInstanceCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceCreate.yaml - eventType: - type: string - const: group.instance.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInstanceCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml new file mode 100644 index 00000000..e9d0a01b --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceCreate.yaml + eventType: + type: string + const: group.instance.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml index 4a65f2a2..554242ac 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInstanceKick allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml - eventType: - type: string - const: group.instance.kick - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInstanceKickDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml new file mode 100644 index 00000000..dcae3332 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml + eventType: + type: string + const: group.instance.kick +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml index a51f94ab..0468786f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInstanceWarn allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml - eventType: - type: string - const: group.instance.warn - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInstanceWarnDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml new file mode 100644 index 00000000..80a8d255 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml + eventType: + type: string + const: group.instance.warn +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml index b2511327..711494b4 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInviteCancel allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml - eventType: - type: string - const: group.invite.cancel - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInviteCancelDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml new file mode 100644 index 00000000..9fae563a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml + eventType: + type: string + const: group.invite.cancel +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml index a9c078eb..3ceac476 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupInviteCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml - eventType: - type: string - const: group.invite.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupInviteCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml new file mode 100644 index 00000000..9e0bc093 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml + eventType: + type: string + const: group.invite.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml index 0ad9de8a..be493e8b 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberJoin allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml - eventType: - type: string - const: group.member.join - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberJoinDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml new file mode 100644 index 00000000..0f9cbde0 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml + eventType: + type: string + const: group.member.join +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml index f860f1b9..49684326 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberLeave allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml - eventType: - type: string - const: group.member.leave - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberLeaveDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml new file mode 100644 index 00000000..c17a50dc --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml + eventType: + type: string + const: group.member.leave +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml index f96eabad..5b967250 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberRemove allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml - eventType: - type: string - const: group.member.remove - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberRemoveDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml new file mode 100644 index 00000000..28225db9 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml + eventType: + type: string + const: group.member.remove +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml index 2782c2bf..b244fd33 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberRoleAssign allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml - eventType: - type: string - const: group.member.role.assign - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml new file mode 100644 index 00000000..1dec0c76 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml + eventType: + type: string + const: group.member.role.assign +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml index c7ec2b70..07d14d42 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberRoleUnassign allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml - eventType: - type: string - const: group.member.role.unassign - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml new file mode 100644 index 00000000..5dd182b7 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml + eventType: + type: string + const: group.member.role.unassign +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml index 02e8b057..7106edae 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupMemberUserUpdate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberUserUpdate.yaml - eventType: - type: string - const: group.member.user.update - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml new file mode 100644 index 00000000..03ea9f1f --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberUserUpdate.yaml + eventType: + type: string + const: group.member.user.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml index 3d1fadd4..7eb87bc5 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupPostCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupPostCreate.yaml - eventType: - type: string - const: group.post.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupPostCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml new file mode 100644 index 00000000..4cd08ba3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostCreate.yaml + eventType: + type: string + const: group.post.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml index 799460ee..162458fe 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupPostDelete allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupPostDelete.yaml - eventType: - type: string - const: group.post.delete - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupPostDeleteDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml new file mode 100644 index 00000000..c41b38f5 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostDelete.yaml + eventType: + type: string + const: group.post.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml index 09798d67..e86b2460 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRequestBlock allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml - eventType: - type: string - const: group.request.block - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRequestBlockDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml new file mode 100644 index 00000000..734c184c --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml + eventType: + type: string + const: group.request.block +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml index 6e646423..aa19cbf1 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRequestCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml - eventType: - type: string - const: group.request.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRequestCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml new file mode 100644 index 00000000..7d955966 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml + eventType: + type: string + const: group.request.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml index 2a468153..1f638f15 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRequestReject allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml - eventType: - type: string - const: group.request.reject - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRequestRejectDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml new file mode 100644 index 00000000..178f7bc3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml + eventType: + type: string + const: group.request.reject +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml index 116fb1ab..dde924b0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRequestWithdraw allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml - eventType: - type: string - const: group.request.withdraw - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRequestWithdrawDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml new file mode 100644 index 00000000..ed946c42 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml + eventType: + type: string + const: group.request.withdraw +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml index 1c3a9507..caed9cc4 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRoleCreate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRoleCreate.yaml - eventType: - type: string - const: group.role.create - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRoleCreateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml new file mode 100644 index 00000000..18688809 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleCreate.yaml + eventType: + type: string + const: group.role.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml index f9176993..97388e98 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupRoleUpdate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRoleUpdate.yaml - eventType: - type: string - const: group.role.update - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupRoleUpdateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml new file mode 100644 index 00000000..006756db --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleUpdate.yaml + eventType: + type: string + const: group.role.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml index 7eec87b8..ae5530fb 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupUpdate allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUpdate.yaml - eventType: - type: string - const: group.update - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupUpdateDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml new file mode 100644 index 00000000..0ffd72e9 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUpdate.yaml + eventType: + type: string + const: group.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml index 044c9a71..8ba8b4c5 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupUserBan allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml - eventType: - type: string - const: group.user.ban - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupUserBanDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml new file mode 100644 index 00000000..9475dc6c --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml + eventType: + type: string + const: group.user.ban +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml index a0b16a12..0a6645d8 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml @@ -1,13 +1,4 @@ title: GroupAuditLogEntryGroupUserUnban allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - type: object - properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml - eventType: - type: string - const: group.user.unban - required: - - data - - eventType + - $ref: ./GroupAuditLogEntryGroupUserUnbanDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml new file mode 100644 index 00000000..3557654e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml @@ -0,0 +1,10 @@ +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml + eventType: + type: string + const: group.user.unban +required: + - data + - eventType From 0fbcc290c2325d1d801ae21d4cc958f8584b5803 Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Wed, 30 Sep 2026 11:18:20 -0400 Subject: [PATCH 03/12] created_at is snakecase --- openapi/components/schemas/GroupAuditLogEntryBase.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openapi/components/schemas/GroupAuditLogEntryBase.yaml b/openapi/components/schemas/GroupAuditLogEntryBase.yaml index 3b1ccd8a..effe009d 100644 --- a/openapi/components/schemas/GroupAuditLogEntryBase.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryBase.yaml @@ -8,7 +8,7 @@ properties: actorId: $ref: ./UserID.yaml description: The ID of the user who performed the action. - createdAt: + created_at: type: string description: The timestamp when the event occurred. format: date-time @@ -32,7 +32,7 @@ properties: required: - actorDisplayName - actorId - - createdAt + - created_at - data - description - eventType From ca49d570d54efcd037279f3d0cce476e0f044997 Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Wed, 30 Sep 2026 11:30:09 -0400 Subject: [PATCH 04/12] Add a fallback for untyped group audit logs --- openapi/components/schemas/GroupAuditLogEntry.yaml | 1 + .../schemas/GroupAuditLogEntryUnknown.yaml | 5 +++++ .../schemas/GroupAuditLogEntryUnknownDetails.yaml | 13 +++++++++++++ 3 files changed, 19 insertions(+) create mode 100644 openapi/components/schemas/GroupAuditLogEntryUnknown.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntry.yaml b/openapi/components/schemas/GroupAuditLogEntry.yaml index f9ae656d..653a01bd 100644 --- a/openapi/components/schemas/GroupAuditLogEntry.yaml +++ b/openapi/components/schemas/GroupAuditLogEntry.yaml @@ -56,3 +56,4 @@ oneOf: - $ref: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml - $ref: ./GroupAuditLogEntryGroupInviteCancel.yaml - $ref: ./GroupAuditLogEntryGroupRequestWithdraw.yaml + - $ref: ./GroupAuditLogEntryUnknown.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml new file mode 100644 index 00000000..e057b95a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml @@ -0,0 +1,5 @@ +title: GroupAuditLogEntryUnknown +description: Fallback schema for unrecognized group audit log event types with empty object data. +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - $ref: ./GroupAuditLogEntryUnknownDetails.yaml \ No newline at end of file diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml new file mode 100644 index 00000000..f4472ccf --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml @@ -0,0 +1,13 @@ +type: object +description: Fallback for unrecognized group audit log event types. +properties: + data: + type: object + description: Empty data object for unrecognized event types. + additionalProperties: true + eventType: + type: string + description: The type of event that occurred (unrecognized). +required: + - data + - eventType \ No newline at end of file From 6355aabbab1f250009f726f25111851ae2d5aeee Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Wed, 30 Sep 2026 11:39:56 -0400 Subject: [PATCH 05/12] lint wants a newline --- openapi/components/schemas/GroupAuditLogEntryUnknown.yaml | 2 +- .../components/schemas/GroupAuditLogEntryUnknownDetails.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml index e057b95a..f865fbf5 100644 --- a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml @@ -2,4 +2,4 @@ title: GroupAuditLogEntryUnknown description: Fallback schema for unrecognized group audit log event types with empty object data. allOf: - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryUnknownDetails.yaml \ No newline at end of file + - $ref: ./GroupAuditLogEntryUnknownDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml index f4472ccf..9f01709f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml @@ -10,4 +10,4 @@ properties: description: The type of event that occurred (unrecognized). required: - data - - eventType \ No newline at end of file + - eventType From 1c1301c4c54d375b3eab1d0463c7dc7174bbbfe7 Mon Sep 17 00:00:00 2001 From: Aries Clark Date: Wed, 30 Sep 2026 18:32:56 -0400 Subject: [PATCH 06/12] refactor(schemas): type GroupAuditLogEntry as a base plus a oneOf of events --- .../schemas/GroupAuditLogEntry.yaml | 62 ++----------------- .../schemas/GroupAuditLogEntryBase.yaml | 3 - .../schemas/GroupAuditLogEntryBaseData.yaml | 2 - .../GroupAuditLogEntryBooleanChange.yaml | 11 ++++ ...oupAuditLogEntryDataGroupAnnouncement.yaml | 27 ++++++++ ...tLogEntryDataGroupCalendarEventCreate.yaml | 12 +--- ...tLogEntryDataGroupCalendarEventDelete.yaml | 21 +------ ...upAuditLogEntryDataGroupGalleryCreate.yaml | 49 +++++++++++++++ ...upAuditLogEntryDataGroupGalleryDelete.yaml | 59 ++++++++++++++++++ ...upAuditLogEntryDataGroupGalleryUpdate.yaml | 8 +++ ...LogEntryDataGroupInstanceAnnouncement.yaml | 2 +- ...upAuditLogEntryDataGroupInstanceClose.yaml | 9 +-- ...pAuditLogEntryDataGroupInstanceCreate.yaml | 9 +-- ...oupAuditLogEntryDataGroupInstanceKick.yaml | 2 +- ...uditLogEntryDataGroupMemberUserUpdate.yaml | 17 +---- ...GroupAuditLogEntryDataGroupPostCreate.yaml | 10 ++- ...GroupAuditLogEntryDataGroupPostDelete.yaml | 8 +-- ...GroupAuditLogEntryDataGroupPostUpdate.yaml | 10 +++ ...GroupAuditLogEntryDataGroupRoleCreate.yaml | 2 - ...GroupAuditLogEntryDataGroupRoleDelete.yaml | 52 ++++++++++++++++ ...GroupAuditLogEntryDataGroupRoleUpdate.yaml | 37 ++--------- .../GroupAuditLogEntryDataGroupUpdate.yaml | 25 ++------ .../schemas/GroupAuditLogEntryEvent.yaml | 35 +++++++++++ .../GroupAuditLogEntryGroupAnnouncement.yaml | 11 ++++ ...AuditLogEntryGroupCalendarEventCreate.yaml | 13 +++- ...gEntryGroupCalendarEventCreateDetails.yaml | 10 --- ...AuditLogEntryGroupCalendarEventDelete.yaml | 13 +++- ...gEntryGroupCalendarEventDeleteDetails.yaml | 10 --- .../GroupAuditLogEntryGroupGalleryCreate.yaml | 11 ++++ .../GroupAuditLogEntryGroupGalleryDelete.yaml | 11 ++++ .../GroupAuditLogEntryGroupGalleryUpdate.yaml | 11 ++++ ...uditLogEntryGroupInstanceAnnouncement.yaml | 13 +++- ...EntryGroupInstanceAnnouncementDetails.yaml | 10 --- .../GroupAuditLogEntryGroupInstanceClose.yaml | 13 +++- ...uditLogEntryGroupInstanceCloseDetails.yaml | 10 --- ...GroupAuditLogEntryGroupInstanceCreate.yaml | 13 +++- ...ditLogEntryGroupInstanceCreateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupInstanceKick.yaml | 13 +++- ...AuditLogEntryGroupInstanceKickDetails.yaml | 10 --- .../GroupAuditLogEntryGroupInstanceWarn.yaml | 13 +++- ...AuditLogEntryGroupInstanceWarnDetails.yaml | 10 --- .../GroupAuditLogEntryGroupInviteCancel.yaml | 13 +++- ...AuditLogEntryGroupInviteCancelDetails.yaml | 10 --- .../GroupAuditLogEntryGroupInviteCreate.yaml | 13 +++- ...AuditLogEntryGroupInviteCreateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupMemberJoin.yaml | 13 +++- ...upAuditLogEntryGroupMemberJoinDetails.yaml | 10 --- .../GroupAuditLogEntryGroupMemberLeave.yaml | 13 +++- ...pAuditLogEntryGroupMemberLeaveDetails.yaml | 10 --- .../GroupAuditLogEntryGroupMemberRemove.yaml | 13 +++- ...AuditLogEntryGroupMemberRemoveDetails.yaml | 10 --- ...oupAuditLogEntryGroupMemberRoleAssign.yaml | 13 +++- ...tLogEntryGroupMemberRoleAssignDetails.yaml | 10 --- ...pAuditLogEntryGroupMemberRoleUnassign.yaml | 13 +++- ...ogEntryGroupMemberRoleUnassignDetails.yaml | 10 --- ...oupAuditLogEntryGroupMemberUserUpdate.yaml | 13 +++- ...tLogEntryGroupMemberUserUpdateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupPostCreate.yaml | 13 +++- ...upAuditLogEntryGroupPostCreateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupPostDelete.yaml | 13 +++- ...upAuditLogEntryGroupPostDeleteDetails.yaml | 10 --- .../GroupAuditLogEntryGroupPostUpdate.yaml | 11 ++++ .../GroupAuditLogEntryGroupRequestBlock.yaml | 13 +++- ...AuditLogEntryGroupRequestBlockDetails.yaml | 10 --- .../GroupAuditLogEntryGroupRequestCreate.yaml | 13 +++- ...uditLogEntryGroupRequestCreateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupRequestReject.yaml | 13 +++- ...uditLogEntryGroupRequestRejectDetails.yaml | 10 --- ...roupAuditLogEntryGroupRequestWithdraw.yaml | 13 +++- ...itLogEntryGroupRequestWithdrawDetails.yaml | 10 --- .../GroupAuditLogEntryGroupRoleCreate.yaml | 13 +++- ...upAuditLogEntryGroupRoleCreateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupRoleDelete.yaml | 11 ++++ .../GroupAuditLogEntryGroupRoleUpdate.yaml | 13 +++- ...upAuditLogEntryGroupRoleUpdateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupUpdate.yaml | 13 +++- .../GroupAuditLogEntryGroupUpdateDetails.yaml | 10 --- .../GroupAuditLogEntryGroupUserBan.yaml | 13 +++- ...GroupAuditLogEntryGroupUserBanDetails.yaml | 10 --- .../GroupAuditLogEntryGroupUserUnban.yaml | 13 +++- ...oupAuditLogEntryGroupUserUnbanDetails.yaml | 10 --- .../GroupAuditLogEntryStringChange.yaml | 11 ++++ .../GroupAuditLogEntryStringListChange.yaml | 15 +++++ .../schemas/GroupAuditLogEntryUnknown.yaml | 5 -- .../GroupAuditLogEntryUnknownDetails.yaml | 13 ---- .../GroupAuditLogEntryUserIdChange.yaml | 15 +++++ 86 files changed, 647 insertions(+), 548 deletions(-) delete mode 100644 openapi/components/schemas/GroupAuditLogEntryBaseData.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryBooleanChange.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryEvent.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryStringChange.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryStringListChange.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryUnknown.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryUserIdChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntry.yaml b/openapi/components/schemas/GroupAuditLogEntry.yaml index 653a01bd..f53fed25 100644 --- a/openapi/components/schemas/GroupAuditLogEntry.yaml +++ b/openapi/components/schemas/GroupAuditLogEntry.yaml @@ -1,59 +1,5 @@ title: GroupAuditLogEntry -description: A union of all group audit log entry types, discriminated by eventType. -discriminator: - mapping: - group.calendarEvent.create: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml - group.calendarEvent.delete: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml - group.instance.announcement: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml - group.instance.close: ./GroupAuditLogEntryGroupInstanceClose.yaml - group.instance.create: ./GroupAuditLogEntryGroupInstanceCreate.yaml - group.instance.kick: ./GroupAuditLogEntryGroupInstanceKick.yaml - group.instance.warn: ./GroupAuditLogEntryGroupInstanceWarn.yaml - group.invite.cancel: ./GroupAuditLogEntryGroupInviteCancel.yaml - group.invite.create: ./GroupAuditLogEntryGroupInviteCreate.yaml - group.member.join: ./GroupAuditLogEntryGroupMemberJoin.yaml - group.member.leave: ./GroupAuditLogEntryGroupMemberLeave.yaml - group.member.remove: ./GroupAuditLogEntryGroupMemberRemove.yaml - group.member.role.assign: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml - group.member.role.unassign: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml - group.member.user.update: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml - group.post.create: ./GroupAuditLogEntryGroupPostCreate.yaml - group.post.delete: ./GroupAuditLogEntryGroupPostDelete.yaml - group.request.block: ./GroupAuditLogEntryGroupRequestBlock.yaml - group.request.create: ./GroupAuditLogEntryGroupRequestCreate.yaml - group.request.reject: ./GroupAuditLogEntryGroupRequestReject.yaml - group.request.withdraw: ./GroupAuditLogEntryGroupRequestWithdraw.yaml - group.role.create: ./GroupAuditLogEntryGroupRoleCreate.yaml - group.role.update: ./GroupAuditLogEntryGroupRoleUpdate.yaml - group.update: ./GroupAuditLogEntryGroupUpdate.yaml - group.user.ban: ./GroupAuditLogEntryGroupUserBan.yaml - group.user.unban: ./GroupAuditLogEntryGroupUserUnban.yaml - propertyName: eventType -oneOf: - - $ref: ./GroupAuditLogEntryGroupInstanceKick.yaml - - $ref: ./GroupAuditLogEntryGroupInviteCreate.yaml - - $ref: ./GroupAuditLogEntryGroupMemberJoin.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceClose.yaml - - $ref: ./GroupAuditLogEntryGroupMemberLeave.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceCreate.yaml - - $ref: ./GroupAuditLogEntryGroupPostCreate.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceWarn.yaml - - $ref: ./GroupAuditLogEntryGroupRequestCreate.yaml - - $ref: ./GroupAuditLogEntryGroupUserBan.yaml - - $ref: ./GroupAuditLogEntryGroupRequestReject.yaml - - $ref: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml - - $ref: ./GroupAuditLogEntryGroupRequestBlock.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml - - $ref: ./GroupAuditLogEntryGroupUpdate.yaml - - $ref: ./GroupAuditLogEntryGroupUserUnban.yaml - - $ref: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRemove.yaml - - $ref: ./GroupAuditLogEntryGroupRoleUpdate.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml - - $ref: ./GroupAuditLogEntryGroupRoleCreate.yaml - - $ref: ./GroupAuditLogEntryGroupPostDelete.yaml - - $ref: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml - - $ref: ./GroupAuditLogEntryGroupInviteCancel.yaml - - $ref: ./GroupAuditLogEntryGroupRequestWithdraw.yaml - - $ref: ./GroupAuditLogEntryUnknown.yaml +description: A group audit log entry. The shape of `data` depends on `eventType`. +allOf: + - $ref: ./GroupAuditLogEntryBase.yaml + - $ref: ./GroupAuditLogEntryEvent.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryBase.yaml b/openapi/components/schemas/GroupAuditLogEntryBase.yaml index effe009d..a1677136 100644 --- a/openapi/components/schemas/GroupAuditLogEntryBase.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryBase.yaml @@ -12,8 +12,6 @@ properties: type: string description: The timestamp when the event occurred. format: date-time - data: - $ref: ./GroupAuditLogEntryBaseData.yaml description: type: string description: A human-readable description of the event. @@ -33,7 +31,6 @@ required: - actorDisplayName - actorId - created_at - - data - description - eventType - groupId diff --git a/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml b/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml deleted file mode 100644 index 491fcb0e..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryBaseData.yaml +++ /dev/null @@ -1,2 +0,0 @@ -type: object -description: The data associated with the event. The format of this data is dependent on the event type. diff --git a/openapi/components/schemas/GroupAuditLogEntryBooleanChange.yaml b/openapi/components/schemas/GroupAuditLogEntryBooleanChange.yaml new file mode 100644 index 00000000..b24ac2f5 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryBooleanChange.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryBooleanChange +type: object +description: A boolean field's value before and after an update. +properties: + new: + type: boolean + old: + type: boolean +required: + - new + - old diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml new file mode 100644 index 00000000..25f5ce7e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml @@ -0,0 +1,27 @@ +title: GroupAuditLogEntryDataGroupAnnouncement +type: object +description: Data for group.announcement events. +properties: + authorId: + $ref: ./UserID.yaml + description: The ID of the announcement author. + imageId: + description: The image file ID attached to the announcement. + anyOf: + - $ref: ./FileID.yaml + - type: "null" + sendNotification: + type: boolean + description: Whether a notification was sent for this announcement. + text: + type: string + description: The text content of the announcement. + title: + type: string + description: The title of the announcement. +required: + - authorId + - imageId + - sendNotification + - text + - title diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml index 505b3de0..ea59d6aa 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml @@ -3,14 +3,7 @@ type: object description: Data for group.calendarEvent.create events. properties: accessType: - type: string - description: The access type of the event. - enum: - - friends - - invite - - members - - private - - public + $ref: ./CalendarEventAccess.yaml description: type: string description: The description of the calendar event. @@ -25,9 +18,6 @@ properties: type: type: string description: The type of calendar entry. - enum: - - announcement - - event required: - accessType - description diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml index d78fc2a0..720c9efe 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml @@ -3,14 +3,7 @@ type: object description: Data for group.calendarEvent.delete events. properties: accessType: - type: string - description: The access type of the event. - enum: - - friends - - invite - - members - - private - - public + $ref: ./CalendarEventAccess.yaml category: type: string description: The category of the event. @@ -63,11 +56,7 @@ properties: items: type: string occurrenceKind: - type: string - description: The occurrence kind. - enum: - - recurring - - single + $ref: ./CalendarEventOccurrenceKind.yaml occurrenceModified: type: - string @@ -84,8 +73,7 @@ properties: recurrence: description: The recurrence rule. anyOf: - - type: object - description: The recurrence rule. + - $ref: ./CalendarEventRecurrence.yaml - type: "null" roleIds: description: The role IDs with access. @@ -120,9 +108,6 @@ properties: type: type: string description: The type of calendar entry. - enum: - - announcement - - event updatedAt: type: string description: The last update timestamp. diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml new file mode 100644 index 00000000..d4cc4e6a --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml @@ -0,0 +1,49 @@ +title: GroupAuditLogEntryDataGroupGalleryCreate +type: object +description: Data for group.gallery.create events. +properties: + description: + type: string + description: The gallery description. + membersOnly: + type: boolean + description: Whether the gallery is members only. + name: + type: string + description: The gallery name. + roleIdsToAutoApprove: + type: + - array + - "null" + description: The role IDs whose submissions are approved automatically. + items: + $ref: ./GroupRoleID.yaml + roleIdsToManage: + type: + - array + - "null" + description: The role IDs that can manage the gallery. + items: + $ref: ./GroupRoleID.yaml + roleIdsToSubmit: + type: + - array + - "null" + description: The role IDs that can submit to the gallery. + items: + $ref: ./GroupRoleID.yaml + roleIdsToView: + type: + - array + - "null" + description: The role IDs that can view the gallery. + items: + $ref: ./GroupRoleID.yaml +required: + - description + - membersOnly + - name + - roleIdsToAutoApprove + - roleIdsToManage + - roleIdsToSubmit + - roleIdsToView diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml new file mode 100644 index 00000000..4ee8c641 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml @@ -0,0 +1,59 @@ +title: GroupAuditLogEntryDataGroupGalleryDelete +type: object +description: Data for group.gallery.delete events. +properties: + createdAt: + type: string + description: The creation timestamp of the gallery. + format: date-time + description: + type: string + description: The gallery description. + membersOnly: + type: boolean + description: Whether the gallery is members only. + name: + type: string + description: The gallery name. + roleIdsToAutoApprove: + type: + - array + - "null" + description: The role IDs whose submissions are approved automatically. + items: + $ref: ./GroupRoleID.yaml + roleIdsToManage: + type: + - array + - "null" + description: The role IDs that can manage the gallery. + items: + $ref: ./GroupRoleID.yaml + roleIdsToSubmit: + type: + - array + - "null" + description: The role IDs that can submit to the gallery. + items: + $ref: ./GroupRoleID.yaml + roleIdsToView: + type: + - array + - "null" + description: The role IDs that can view the gallery. + items: + $ref: ./GroupRoleID.yaml + updatedAt: + type: string + description: The last update timestamp of the gallery. + format: date-time +required: + - createdAt + - description + - membersOnly + - name + - roleIdsToAutoApprove + - roleIdsToManage + - roleIdsToSubmit + - roleIdsToView + - updatedAt diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml new file mode 100644 index 00000000..57b8a1fe --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml @@ -0,0 +1,8 @@ +title: GroupAuditLogEntryDataGroupGalleryUpdate +type: object +description: Data for group.gallery.update events. Carries only the fields the update changed. +properties: + membersOnly: + $ref: ./GroupAuditLogEntryBooleanChange.yaml + name: + $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml index 8557133e..22227ea4 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml @@ -7,7 +7,7 @@ properties: description: The announcement message. title: type: string - description: The announcement title. Currently, always "Instance Announcement" + description: The announcement title. required: - message - title diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml index 54f1f483..42a5034e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml @@ -3,14 +3,7 @@ type: object description: Data for group.instance.close events. properties: groupAccessType: - type: string - description: The access type of the instance. - enum: - - friends - - invite - - members - - private - - public + $ref: ./GroupAccessType.yaml roleIds: description: The role IDs that have access to the instance. anyOf: diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml index 9c282446..48a526d1 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml @@ -8,14 +8,7 @@ properties: - "null" description: The calendar entry ID if the instance was created from a calendar event. groupAccessType: - type: string - description: The access type of the instance. - enum: - - friends - - invite - - members - - private - - public + $ref: ./GroupAccessType.yaml roleIds: type: array description: The role IDs that have access to the instance. diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml index 1f9405f2..f40a7368 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml @@ -4,6 +4,6 @@ description: Data for group.instance.kick events. properties: location: $ref: ./LocationID.yaml - description: The location string of the instance (worldID:instanceID~group(...)~groupAccessType(...)~region(...)). + description: The location string of the instance. required: - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml index f0d5c420..98834d5e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml @@ -1,19 +1,6 @@ title: GroupAuditLogEntryDataGroupMemberUserUpdate type: object -description: Data for group.member.user.update events. +description: Data for group.member.user.update events. Carries only the fields the update changed. properties: managerNotes: - type: object - description: The manager notes that were updated. - properties: - new: - type: string - description: The new manager notes. - old: - type: string - description: The old manager notes. - required: - - new - - old -required: - - managerNotes + $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml index 850d3deb..7db7ae8f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml @@ -11,7 +11,9 @@ properties: - $ref: ./FileID.yaml - type: "null" roleIds: - type: array + type: + - array + - "null" description: The role IDs that can see this post. items: $ref: ./GroupRoleID.yaml @@ -25,11 +27,7 @@ properties: type: string description: The title of the post. visibility: - type: string - description: The visibility of the post. - enum: - - group - - public + $ref: ./GroupPostVisibility.yaml required: - authorId - imageId diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml index 0cb6212a..a4c7d09c 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml @@ -17,7 +17,7 @@ properties: imageId: description: The image file ID attached to the post. anyOf: - - $ref: ./GroupRoleID.yaml + - $ref: ./FileID.yaml - type: "null" imageUrl: type: @@ -41,11 +41,7 @@ properties: description: The last update timestamp of the post. format: date-time visibility: - type: string - description: The visibility of the post. - enum: - - group - - public + $ref: ./GroupPostVisibility.yaml required: - authorId - createdAt diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml new file mode 100644 index 00000000..7673dad3 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml @@ -0,0 +1,10 @@ +title: GroupAuditLogEntryDataGroupPostUpdate +type: object +description: Data for group.post.update events. Carries only the fields the update changed. +properties: + editorId: + $ref: ./GroupAuditLogEntryUserIdChange.yaml + text: + $ref: ./GroupAuditLogEntryStringChange.yaml + title: + $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml index 9fc49eba..ec63fe07 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml @@ -1,4 +1,3 @@ -# can probably done via pseudocode Omit title: GroupAuditLogEntryDataGroupRoleCreate type: object description: Data for group.role.create events. @@ -42,7 +41,6 @@ required: - isSelfAssignable - lastUpdatedByUserId - name - - order - permissions - requiresPurchase - requiresTwoFactor diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml new file mode 100644 index 00000000..3f0e07ec --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml @@ -0,0 +1,52 @@ +title: GroupAuditLogEntryDataGroupRoleDelete +type: object +description: Data for group.role.delete events. +properties: + createdAt: + type: string + description: The creation timestamp of the role. + format: date-time + defaultRole: + type: boolean + description: Whether the role is the group's default role. + description: + type: string + description: The role description. + isAddedOnJoin: + type: boolean + description: Whether the role is automatically assigned on join. + isManagementRole: + type: boolean + description: Whether the role is a management role. + isSelfAssignable: + type: boolean + description: Whether users can self-assign this role. + name: + type: string + description: The role name. + order: + type: integer + description: The display order of the role. + permissions: + type: array + description: The permissions assigned to this role. + items: + $ref: ./GroupPermissions.yaml + requiresPurchase: + type: boolean + description: Whether the role requires a purchase. + requiresTwoFactor: + type: boolean + description: Whether the role requires two-factor authentication. +required: + - createdAt + - defaultRole + - description + - isAddedOnJoin + - isManagementRole + - isSelfAssignable + - name + - order + - permissions + - requiresPurchase + - requiresTwoFactor diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml index dfa038dc..99e1d122 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml @@ -1,37 +1,10 @@ title: GroupAuditLogEntryDataGroupRoleUpdate type: object -description: Data for group.role.update events. +description: Data for group.role.update events. Carries only the fields the update changed. properties: + description: + $ref: ./GroupAuditLogEntryStringChange.yaml name: - type: object - description: The role name that was updated. - properties: - new: - type: string - description: The new role name. - old: - type: string - description: The old role name. - required: - - new - - old + $ref: ./GroupAuditLogEntryStringChange.yaml permissions: - type: object - description: The role permissions that were updated. - properties: - new: - type: array - description: The new permissions. - items: - type: string - old: - type: array - description: The old permissions. - items: - type: string - required: - - new - - old -required: - - name - - permissions + $ref: ./GroupAuditLogEntryStringListChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml index fcf1b89a..ee5b7f59 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml @@ -1,25 +1,8 @@ title: GroupAuditLogEntryDataGroupUpdate type: object -description: Data for group.update events. +description: Data for group.update events. Carries only the fields the update changed. properties: + description: + $ref: ./GroupAuditLogEntryStringChange.yaml links: - type: object - description: The group links that were updated. - properties: - new: - type: array - description: The new links. - items: - type: string - format: uri - old: - type: array - description: The old links. - items: - type: string - format: uri - required: - - new - - old -required: - - links + $ref: ./GroupAuditLogEntryStringListChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryEvent.yaml b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml new file mode 100644 index 00000000..a3b5ef24 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml @@ -0,0 +1,35 @@ +title: GroupAuditLogEntryEvent +description: The `eventType` of an audit log entry and the `data` that goes with it. +oneOf: + - $ref: ./GroupAuditLogEntryGroupAnnouncement.yaml + - $ref: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml + - $ref: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml + - $ref: ./GroupAuditLogEntryGroupGalleryCreate.yaml + - $ref: ./GroupAuditLogEntryGroupGalleryDelete.yaml + - $ref: ./GroupAuditLogEntryGroupGalleryUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceClose.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceCreate.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceKick.yaml + - $ref: ./GroupAuditLogEntryGroupInstanceWarn.yaml + - $ref: ./GroupAuditLogEntryGroupInviteCancel.yaml + - $ref: ./GroupAuditLogEntryGroupInviteCreate.yaml + - $ref: ./GroupAuditLogEntryGroupMemberJoin.yaml + - $ref: ./GroupAuditLogEntryGroupMemberLeave.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRemove.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml + - $ref: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml + - $ref: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupPostCreate.yaml + - $ref: ./GroupAuditLogEntryGroupPostDelete.yaml + - $ref: ./GroupAuditLogEntryGroupPostUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupRequestBlock.yaml + - $ref: ./GroupAuditLogEntryGroupRequestCreate.yaml + - $ref: ./GroupAuditLogEntryGroupRequestReject.yaml + - $ref: ./GroupAuditLogEntryGroupRequestWithdraw.yaml + - $ref: ./GroupAuditLogEntryGroupRoleCreate.yaml + - $ref: ./GroupAuditLogEntryGroupRoleDelete.yaml + - $ref: ./GroupAuditLogEntryGroupRoleUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupUpdate.yaml + - $ref: ./GroupAuditLogEntryGroupUserBan.yaml + - $ref: ./GroupAuditLogEntryGroupUserUnban.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml new file mode 100644 index 00000000..a049f6c7 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupAnnouncement +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupAnnouncement.yaml + eventType: + type: string + const: group.announcement +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml index f40117d0..13a3cea3 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupCalendarEventCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml + eventType: + type: string + const: group.calendarEvent.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml deleted file mode 100644 index 4b401f58..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml - eventType: - type: string - const: group.calendarEvent.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml index 6a977cf2..eed96cd7 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupCalendarEventDelete -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupCalendarEventDelete.yaml + eventType: + type: string + const: group.calendarEvent.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml deleted file mode 100644 index e8ebd5a3..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDeleteDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupCalendarEventDelete.yaml - eventType: - type: string - const: group.calendarEvent.delete -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml new file mode 100644 index 00000000..c802ed98 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupGalleryCreate +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupGalleryCreate.yaml + eventType: + type: string + const: group.gallery.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml new file mode 100644 index 00000000..ff739a88 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupGalleryDelete +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupGalleryDelete.yaml + eventType: + type: string + const: group.gallery.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml new file mode 100644 index 00000000..960a29c4 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupGalleryUpdate +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupGalleryUpdate.yaml + eventType: + type: string + const: group.gallery.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml index c3c8bfc9..bee0ab52 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInstanceAnnouncement -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml + eventType: + type: string + const: group.instance.announcement +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml deleted file mode 100644 index 71b98cd0..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncementDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml - eventType: - type: string - const: group.instance.announcement -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml index 02e3b3c2..6b883d65 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInstanceClose -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceCloseDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceClose.yaml + eventType: + type: string + const: group.instance.close +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml deleted file mode 100644 index c660b390..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCloseDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceClose.yaml - eventType: - type: string - const: group.instance.close -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml index e9553185..8df7136e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInstanceCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceCreate.yaml + eventType: + type: string + const: group.instance.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml deleted file mode 100644 index e9d0a01b..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceCreate.yaml - eventType: - type: string - const: group.instance.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml index 554242ac..a110cc56 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInstanceKick -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceKickDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml + eventType: + type: string + const: group.instance.kick +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml deleted file mode 100644 index dcae3332..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKickDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml - eventType: - type: string - const: group.instance.kick -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml index 0468786f..fee24b51 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInstanceWarn -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInstanceWarnDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml + eventType: + type: string + const: group.instance.warn +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml deleted file mode 100644 index 80a8d255..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarnDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml - eventType: - type: string - const: group.instance.warn -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml index 711494b4..caf4e356 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInviteCancel -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInviteCancelDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml + eventType: + type: string + const: group.invite.cancel +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml deleted file mode 100644 index 9fae563a..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancelDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml - eventType: - type: string - const: group.invite.cancel -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml index 3ceac476..aaeb903e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupInviteCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupInviteCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml + eventType: + type: string + const: group.invite.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml deleted file mode 100644 index 9e0bc093..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml - eventType: - type: string - const: group.invite.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml index be493e8b..dfc8ae55 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberJoin -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberJoinDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml + eventType: + type: string + const: group.member.join +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml deleted file mode 100644 index 0f9cbde0..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoinDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml - eventType: - type: string - const: group.member.join -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml index 49684326..18a8ec42 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberLeave -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberLeaveDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml + eventType: + type: string + const: group.member.leave +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml deleted file mode 100644 index c17a50dc..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeaveDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml - eventType: - type: string - const: group.member.leave -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml index 5b967250..1eac9f98 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberRemove -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRemoveDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml + eventType: + type: string + const: group.member.remove +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml deleted file mode 100644 index 28225db9..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemoveDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml - eventType: - type: string - const: group.member.remove -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml index b244fd33..c136aa73 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberRoleAssign -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml + eventType: + type: string + const: group.member.role.assign +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml deleted file mode 100644 index 1dec0c76..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssignDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml - eventType: - type: string - const: group.member.role.assign -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml index 07d14d42..24fa4efd 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberRoleUnassign -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml + eventType: + type: string + const: group.member.role.unassign +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml deleted file mode 100644 index 5dd182b7..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassignDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml - eventType: - type: string - const: group.member.role.unassign -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml index 7106edae..df909275 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupMemberUserUpdate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupMemberUserUpdate.yaml + eventType: + type: string + const: group.member.user.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml deleted file mode 100644 index 03ea9f1f..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupMemberUserUpdate.yaml - eventType: - type: string - const: group.member.user.update -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml index 7eb87bc5..b914e319 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupPostCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupPostCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostCreate.yaml + eventType: + type: string + const: group.post.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml deleted file mode 100644 index 4cd08ba3..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupPostCreate.yaml - eventType: - type: string - const: group.post.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml index 162458fe..9334fbfe 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupPostDelete -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupPostDeleteDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostDelete.yaml + eventType: + type: string + const: group.post.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml deleted file mode 100644 index c41b38f5..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostDeleteDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupPostDelete.yaml - eventType: - type: string - const: group.post.delete -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml new file mode 100644 index 00000000..35702121 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupPostUpdate +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupPostUpdate.yaml + eventType: + type: string + const: group.post.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml index e86b2460..a16e9064 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRequestBlock -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRequestBlockDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml + eventType: + type: string + const: group.request.block +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml deleted file mode 100644 index 734c184c..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlockDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml - eventType: - type: string - const: group.request.block -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml index aa19cbf1..c75f1550 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRequestCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRequestCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml + eventType: + type: string + const: group.request.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml deleted file mode 100644 index 7d955966..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml - eventType: - type: string - const: group.request.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml index 1f638f15..8bb4f209 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRequestReject -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRequestRejectDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml + eventType: + type: string + const: group.request.reject +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml deleted file mode 100644 index 178f7bc3..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestRejectDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml - eventType: - type: string - const: group.request.reject -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml index dde924b0..01c55a68 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRequestWithdraw -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRequestWithdrawDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml + eventType: + type: string + const: group.request.withdraw +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml deleted file mode 100644 index ed946c42..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdrawDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml - eventType: - type: string - const: group.request.withdraw -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml index caed9cc4..f88c0a5b 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRoleCreate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRoleCreateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleCreate.yaml + eventType: + type: string + const: group.role.create +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml deleted file mode 100644 index 18688809..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRoleCreate.yaml - eventType: - type: string - const: group.role.create -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml new file mode 100644 index 00000000..3826d2fd --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryGroupRoleDelete +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleDelete.yaml + eventType: + type: string + const: group.role.delete +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml index 97388e98..3bd802d6 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupRoleUpdate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupRoleUpdateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupRoleUpdate.yaml + eventType: + type: string + const: group.role.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml deleted file mode 100644 index 006756db..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupRoleUpdate.yaml - eventType: - type: string - const: group.role.update -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml index ae5530fb..7fb5e5a9 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupUpdate -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupUpdateDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUpdate.yaml + eventType: + type: string + const: group.update +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml deleted file mode 100644 index 0ffd72e9..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUpdateDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUpdate.yaml - eventType: - type: string - const: group.update -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml index 8ba8b4c5..935826bf 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupUserBan -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupUserBanDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml + eventType: + type: string + const: group.user.ban +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml deleted file mode 100644 index 9475dc6c..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserBanDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml - eventType: - type: string - const: group.user.ban -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml index 0a6645d8..c7fa83b6 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml @@ -1,4 +1,11 @@ title: GroupAuditLogEntryGroupUserUnban -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryGroupUserUnbanDetails.yaml +type: object +properties: + data: + $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml + eventType: + type: string + const: group.user.unban +required: + - data + - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml deleted file mode 100644 index 3557654e..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnbanDetails.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -properties: - data: - $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml - eventType: - type: string - const: group.user.unban -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryStringChange.yaml b/openapi/components/schemas/GroupAuditLogEntryStringChange.yaml new file mode 100644 index 00000000..4a4ba7e8 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryStringChange.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryStringChange +type: object +description: A text field's value before and after an update. +properties: + new: + type: string + old: + type: string +required: + - new + - old diff --git a/openapi/components/schemas/GroupAuditLogEntryStringListChange.yaml b/openapi/components/schemas/GroupAuditLogEntryStringListChange.yaml new file mode 100644 index 00000000..809bc1ff --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryStringListChange.yaml @@ -0,0 +1,15 @@ +title: GroupAuditLogEntryStringListChange +type: object +description: A list field's value before and after an update. +properties: + new: + type: array + items: + type: string + old: + type: array + items: + type: string +required: + - new + - old diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml deleted file mode 100644 index f865fbf5..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryUnknown -description: Fallback schema for unrecognized group audit log event types with empty object data. -allOf: - - $ref: ./GroupAuditLogEntryBase.yaml - - $ref: ./GroupAuditLogEntryUnknownDetails.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml deleted file mode 100644 index 9f01709f..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryUnknownDetails.yaml +++ /dev/null @@ -1,13 +0,0 @@ -type: object -description: Fallback for unrecognized group audit log event types. -properties: - data: - type: object - description: Empty data object for unrecognized event types. - additionalProperties: true - eventType: - type: string - description: The type of event that occurred (unrecognized). -required: - - data - - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryUserIdChange.yaml b/openapi/components/schemas/GroupAuditLogEntryUserIdChange.yaml new file mode 100644 index 00000000..3eabd3fe --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryUserIdChange.yaml @@ -0,0 +1,15 @@ +title: GroupAuditLogEntryUserIdChange +type: object +description: A user ID field's value before and after an update. +properties: + new: + anyOf: + - $ref: ./UserID.yaml + - type: "null" + old: + anyOf: + - $ref: ./UserID.yaml + - type: "null" +required: + - new + - old From 00f3f143b560a9fb93987e03a9c84886a5d1ac2f Mon Sep 17 00:00:00 2001 From: Aries Clark Date: Wed, 30 Sep 2026 19:19:37 -0400 Subject: [PATCH 07/12] refactor(schemas): share audit log payloads and type targetId per event --- .../schemas/GroupAuditLogEntryBase.yaml | 11 ++--- .../schemas/GroupAuditLogEntryDataEmpty.yaml | 4 ++ ...oupAuditLogEntryDataGroupAnnouncement.yaml | 1 - ...tLogEntryDataGroupCalendarEventCreate.yaml | 1 - ...tLogEntryDataGroupCalendarEventDelete.yaml | 48 +++++-------------- ...upAuditLogEntryDataGroupGalleryCreate.yaml | 1 - ...upAuditLogEntryDataGroupGalleryDelete.yaml | 47 +----------------- ...upAuditLogEntryDataGroupGalleryUpdate.yaml | 2 +- ...LogEntryDataGroupInstanceAnnouncement.yaml | 1 - ...upAuditLogEntryDataGroupInstanceClose.yaml | 12 ++--- ...pAuditLogEntryDataGroupInstanceCreate.yaml | 11 ++--- ...oupAuditLogEntryDataGroupInstanceKick.yaml | 9 ---- ...itLogEntryDataGroupInstanceModeration.yaml | 8 ++++ ...oupAuditLogEntryDataGroupInstanceWarn.yaml | 9 ---- ...oupAuditLogEntryDataGroupInviteCancel.yaml | 5 -- ...oupAuditLogEntryDataGroupInviteCreate.yaml | 5 -- ...GroupAuditLogEntryDataGroupMemberJoin.yaml | 5 -- ...roupAuditLogEntryDataGroupMemberLeave.yaml | 5 -- ...oupAuditLogEntryDataGroupMemberRemove.yaml | 5 -- ...GroupAuditLogEntryDataGroupMemberRole.yaml | 12 +++++ ...uditLogEntryDataGroupMemberRoleAssign.yaml | 13 ----- ...itLogEntryDataGroupMemberRoleUnassign.yaml | 13 ----- ...uditLogEntryDataGroupMemberUserUpdate.yaml | 2 +- .../GroupAuditLogEntryDataGroupPost.yaml | 25 ++++++++++ ...GroupAuditLogEntryDataGroupPostCreate.yaml | 26 ++-------- ...GroupAuditLogEntryDataGroupPostDelete.yaml | 30 ++---------- ...GroupAuditLogEntryDataGroupPostUpdate.yaml | 2 +- ...oupAuditLogEntryDataGroupRequestBlock.yaml | 5 -- ...upAuditLogEntryDataGroupRequestCreate.yaml | 5 -- ...upAuditLogEntryDataGroupRequestReject.yaml | 5 -- ...AuditLogEntryDataGroupRequestWithdraw.yaml | 5 -- .../GroupAuditLogEntryDataGroupRole.yaml | 37 ++++++++++++++ ...GroupAuditLogEntryDataGroupRoleCreate.yaml | 36 +------------- ...GroupAuditLogEntryDataGroupRoleDelete.yaml | 36 +------------- ...GroupAuditLogEntryDataGroupRoleUpdate.yaml | 2 +- .../GroupAuditLogEntryDataGroupUpdate.yaml | 2 +- .../GroupAuditLogEntryDataGroupUserBan.yaml | 5 -- .../GroupAuditLogEntryDataGroupUserUnban.yaml | 5 -- .../GroupAuditLogEntryGroupAnnouncement.yaml | 3 ++ ...AuditLogEntryGroupCalendarEventCreate.yaml | 3 ++ ...AuditLogEntryGroupCalendarEventDelete.yaml | 3 ++ .../GroupAuditLogEntryGroupGalleryCreate.yaml | 3 ++ .../GroupAuditLogEntryGroupGalleryDelete.yaml | 3 ++ .../GroupAuditLogEntryGroupGalleryUpdate.yaml | 3 ++ ...uditLogEntryGroupInstanceAnnouncement.yaml | 3 ++ .../GroupAuditLogEntryGroupInstanceClose.yaml | 3 ++ ...GroupAuditLogEntryGroupInstanceCreate.yaml | 3 ++ .../GroupAuditLogEntryGroupInstanceKick.yaml | 5 +- .../GroupAuditLogEntryGroupInstanceWarn.yaml | 5 +- .../GroupAuditLogEntryGroupInviteCancel.yaml | 5 +- .../GroupAuditLogEntryGroupInviteCreate.yaml | 5 +- .../GroupAuditLogEntryGroupMemberJoin.yaml | 5 +- .../GroupAuditLogEntryGroupMemberLeave.yaml | 5 +- .../GroupAuditLogEntryGroupMemberRemove.yaml | 5 +- ...oupAuditLogEntryGroupMemberRoleAssign.yaml | 5 +- ...pAuditLogEntryGroupMemberRoleUnassign.yaml | 5 +- ...oupAuditLogEntryGroupMemberUserUpdate.yaml | 3 ++ .../GroupAuditLogEntryGroupPostCreate.yaml | 3 ++ .../GroupAuditLogEntryGroupPostDelete.yaml | 3 ++ .../GroupAuditLogEntryGroupPostUpdate.yaml | 3 ++ .../GroupAuditLogEntryGroupRequestBlock.yaml | 5 +- .../GroupAuditLogEntryGroupRequestCreate.yaml | 5 +- .../GroupAuditLogEntryGroupRequestReject.yaml | 5 +- ...roupAuditLogEntryGroupRequestWithdraw.yaml | 5 +- .../GroupAuditLogEntryGroupRoleCreate.yaml | 3 ++ .../GroupAuditLogEntryGroupRoleDelete.yaml | 3 ++ .../GroupAuditLogEntryGroupRoleUpdate.yaml | 3 ++ .../GroupAuditLogEntryGroupUpdate.yaml | 3 ++ .../GroupAuditLogEntryGroupUserBan.yaml | 5 +- .../GroupAuditLogEntryGroupUserUnban.yaml | 5 +- 70 files changed, 240 insertions(+), 342 deletions(-) create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataEmpty.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceModeration.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRole.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupPost.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupRole.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml delete mode 100644 openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryBase.yaml b/openapi/components/schemas/GroupAuditLogEntryBase.yaml index a1677136..3441d02f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryBase.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryBase.yaml @@ -1,16 +1,15 @@ title: GroupAuditLogEntryBase type: object -description: Base schema for all group audit log entries containing common fields. properties: actorDisplayName: type: string - description: The display name of the actor who performed the action. + description: The display name of the user who performed the action. actorId: $ref: ./UserID.yaml description: The ID of the user who performed the action. created_at: type: string - description: The timestamp when the event occurred. + description: When the action was performed. format: date-time description: type: string @@ -20,13 +19,10 @@ properties: description: The type of event that occurred. groupId: $ref: ./GroupID.yaml - description: The ID of the group this event belongs to. + description: The ID of the group the entry belongs to. id: $ref: ./GroupAuditLogID.yaml description: The unique ID of this audit log entry. - targetId: - type: string - description: Typically a UserID, GroupID, GroupRoleID, or Location, but could be other types of IDs. required: - actorDisplayName - actorId @@ -35,4 +31,3 @@ required: - eventType - groupId - id - - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryDataEmpty.yaml b/openapi/components/schemas/GroupAuditLogEntryDataEmpty.yaml new file mode 100644 index 00000000..88689727 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataEmpty.yaml @@ -0,0 +1,4 @@ +title: GroupAuditLogEntryDataEmpty +type: object +additionalProperties: false +properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml index 25f5ce7e..c5b72b0e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupAnnouncement.yaml @@ -1,6 +1,5 @@ title: GroupAuditLogEntryDataGroupAnnouncement type: object -description: Data for group.announcement events. properties: authorId: $ref: ./UserID.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml index ea59d6aa..de9892e0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventCreate.yaml @@ -1,6 +1,5 @@ title: GroupAuditLogEntryDataGroupCalendarEventCreate type: object -description: Data for group.calendarEvent.create events. properties: accessType: $ref: ./CalendarEventAccess.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml index 720c9efe..fdbf118c 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupCalendarEventDelete.yaml @@ -1,15 +1,12 @@ title: GroupAuditLogEntryDataGroupCalendarEventDelete type: object -description: Data for group.calendarEvent.delete events. properties: - accessType: - $ref: ./CalendarEventAccess.yaml category: type: string description: The category of the event. closeInstanceAfterEndMinutes: type: integer - description: Minutes after event end to close the instance. + description: Minutes after the event ends to close the instance. createdAt: type: string description: The creation timestamp. @@ -20,9 +17,6 @@ properties: - "null" description: The deletion timestamp. format: date-time - description: - type: string - description: The event description. durationInMs: type: integer description: The duration of the event in milliseconds. @@ -35,15 +29,10 @@ properties: description: Whether the event is featured. guestEarlyJoinMinutes: type: integer - description: Minutes before start that guests can join. + description: Minutes before the start that guests can join. hostEarlyJoinMinutes: type: integer - description: Minutes before start that hosts can join. - imageId: - description: The image file ID. - anyOf: - - $ref: ./FileID.yaml - - type: "null" + description: Minutes before the start that hosts can join. interestedUserCount: type: integer description: The number of interested users. @@ -61,10 +50,9 @@ properties: type: - string - "null" - description: The occurrence modified timestamp. ownerId: $ref: ./GroupID.yaml - description: The owner group ID. + description: The ID of the group that owns the event. platforms: type: array description: The supported platforms. @@ -76,18 +64,17 @@ properties: - $ref: ./CalendarEventRecurrence.yaml - type: "null" roleIds: - description: The role IDs with access. - anyOf: - - type: array - description: The role IDs with access. - items: - $ref: ./GroupRoleID.yaml - - type: "null" + type: + - array + - "null" + description: Group roles that may join this event. + items: + $ref: ./GroupRoleID.yaml seriesId: type: - string - "null" - description: The series ID for recurring events. + description: The ID of the recurring series the event belongs to. shortCode: type: - string @@ -102,12 +89,6 @@ properties: description: The event tags. items: type: string - title: - type: string - description: The event title. - type: - type: string - description: The type of calendar entry. updatedAt: type: string description: The last update timestamp. @@ -116,18 +97,15 @@ properties: type: boolean description: Whether the event uses instance overflow. required: - - accessType - category - closeInstanceAfterEndMinutes - createdAt - deletedAt - - description - durationInMs - endsAt - featured - guestEarlyJoinMinutes - hostEarlyJoinMinutes - - imageId - interestedUserCount - isDraft - languages @@ -141,7 +119,7 @@ required: - shortCode - startsAt - tags - - title - - type - updatedAt - usesInstanceOverflow +allOf: + - $ref: ./GroupAuditLogEntryDataGroupCalendarEventCreate.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml index d4cc4e6a..8d59f44a 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryCreate.yaml @@ -1,6 +1,5 @@ title: GroupAuditLogEntryDataGroupGalleryCreate type: object -description: Data for group.gallery.create events. properties: description: type: string diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml index 4ee8c641..525611ad 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryDelete.yaml @@ -1,59 +1,16 @@ title: GroupAuditLogEntryDataGroupGalleryDelete type: object -description: Data for group.gallery.delete events. properties: createdAt: type: string description: The creation timestamp of the gallery. format: date-time - description: - type: string - description: The gallery description. - membersOnly: - type: boolean - description: Whether the gallery is members only. - name: - type: string - description: The gallery name. - roleIdsToAutoApprove: - type: - - array - - "null" - description: The role IDs whose submissions are approved automatically. - items: - $ref: ./GroupRoleID.yaml - roleIdsToManage: - type: - - array - - "null" - description: The role IDs that can manage the gallery. - items: - $ref: ./GroupRoleID.yaml - roleIdsToSubmit: - type: - - array - - "null" - description: The role IDs that can submit to the gallery. - items: - $ref: ./GroupRoleID.yaml - roleIdsToView: - type: - - array - - "null" - description: The role IDs that can view the gallery. - items: - $ref: ./GroupRoleID.yaml updatedAt: type: string description: The last update timestamp of the gallery. format: date-time required: - createdAt - - description - - membersOnly - - name - - roleIdsToAutoApprove - - roleIdsToManage - - roleIdsToSubmit - - roleIdsToView - updatedAt +allOf: + - $ref: ./GroupAuditLogEntryDataGroupGalleryCreate.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml index 57b8a1fe..038c348d 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupGalleryUpdate.yaml @@ -1,6 +1,6 @@ title: GroupAuditLogEntryDataGroupGalleryUpdate type: object -description: Data for group.gallery.update events. Carries only the fields the update changed. +description: Carries only the fields the update changed. properties: membersOnly: $ref: ./GroupAuditLogEntryBooleanChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml index 22227ea4..a8caa85c 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceAnnouncement.yaml @@ -1,6 +1,5 @@ title: GroupAuditLogEntryDataGroupInstanceAnnouncement type: object -description: Data for group.instance.announcement events. properties: message: type: string diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml index 42a5034e..f3c0a0f7 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceClose.yaml @@ -1,17 +1,15 @@ title: GroupAuditLogEntryDataGroupInstanceClose type: object -description: Data for group.instance.close events. properties: groupAccessType: $ref: ./GroupAccessType.yaml roleIds: + type: + - array + - "null" description: The role IDs that have access to the instance. - anyOf: - - type: array - description: The role IDs that have access to the instance. - items: - $ref: ./GroupRoleID.yaml - - type: "null" + items: + $ref: ./GroupRoleID.yaml required: - groupAccessType - roleIds diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml index 48a526d1..e5dfdd94 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceCreate.yaml @@ -1,19 +1,16 @@ title: GroupAuditLogEntryDataGroupInstanceCreate type: object -description: Data for group.instance.create events. properties: calendarEntryId: - type: - - string - - "null" description: The calendar entry ID if the instance was created from a calendar event. + anyOf: + - $ref: ./CalendarID.yaml + - type: "null" groupAccessType: $ref: ./GroupAccessType.yaml roleIds: - type: array + $ref: ./GroupRoleIDList.yaml description: The role IDs that have access to the instance. - items: - $ref: ./GroupRoleID.yaml required: - calendarEntryId - groupAccessType diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml deleted file mode 100644 index f40a7368..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceKick.yaml +++ /dev/null @@ -1,9 +0,0 @@ -title: GroupAuditLogEntryDataGroupInstanceKick -type: object -description: Data for group.instance.kick events. -properties: - location: - $ref: ./LocationID.yaml - description: The location string of the instance. -required: - - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceModeration.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceModeration.yaml new file mode 100644 index 00000000..2d95bf66 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceModeration.yaml @@ -0,0 +1,8 @@ +title: GroupAuditLogEntryDataGroupInstanceModeration +type: object +properties: + location: + $ref: ./LocationID.yaml + description: The instance the target was kicked from or warned in. +required: + - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml deleted file mode 100644 index d22a0c97..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInstanceWarn.yaml +++ /dev/null @@ -1,9 +0,0 @@ -title: GroupAuditLogEntryDataGroupInstanceWarn -type: object -description: Data for group.instance.warn events. -properties: - location: - $ref: ./LocationID.yaml - description: The location string of the instance. -required: - - location diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml deleted file mode 100644 index dc9d73bf..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCancel.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupInviteCancel -type: object -description: Data for group.invite.cancel events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml deleted file mode 100644 index 77736a39..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupInviteCreate.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupInviteCreate -type: object -description: Data for group.invite.create events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml deleted file mode 100644 index eeab840e..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberJoin.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupMemberJoin -type: object -description: Data for group.member.join events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml deleted file mode 100644 index c6a7ced2..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberLeave.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupMemberLeave -type: object -description: Data for group.member.leave events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml deleted file mode 100644 index fe0b39be..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRemove.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupMemberRemove -type: object -description: Data for group.member.remove events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRole.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRole.yaml new file mode 100644 index 00000000..8aaa77d9 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRole.yaml @@ -0,0 +1,12 @@ +title: GroupAuditLogEntryDataGroupMemberRole +type: object +properties: + roleId: + $ref: ./GroupRoleID.yaml + description: The ID of the role that was assigned or unassigned. + roleName: + type: string + description: The name of the role that was assigned or unassigned. +required: + - roleId + - roleName diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml deleted file mode 100644 index 1f2a33ca..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleAssign.yaml +++ /dev/null @@ -1,13 +0,0 @@ -title: GroupAuditLogEntryDataGroupMemberRoleAssign -type: object -description: Data for group.member.role.assign events. -properties: - roleId: - $ref: ./GroupRoleID.yaml - description: The ID of the role that was assigned. - roleName: - type: string - description: The name of the role that was assigned. -required: - - roleId - - roleName diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml deleted file mode 100644 index 6f8c690d..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml +++ /dev/null @@ -1,13 +0,0 @@ -title: GroupAuditLogEntryDataGroupMemberRoleUnassign -type: object -description: Data for group.member.role.unassign events. -properties: - roleId: - $ref: ./GroupRoleID.yaml - description: The ID of the role that was unassigned. - roleName: - type: string - description: The name of the role that was unassigned. -required: - - roleId - - roleName diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml index 98834d5e..49ea9287 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupMemberUserUpdate.yaml @@ -1,6 +1,6 @@ title: GroupAuditLogEntryDataGroupMemberUserUpdate type: object -description: Data for group.member.user.update events. Carries only the fields the update changed. +description: Carries only the fields the update changed. properties: managerNotes: $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPost.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPost.yaml new file mode 100644 index 00000000..d6bf219d --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPost.yaml @@ -0,0 +1,25 @@ +title: GroupAuditLogEntryDataGroupPost +type: object +properties: + authorId: + $ref: ./UserID.yaml + description: The ID of the post author. + imageId: + description: The image file ID attached to the post. + anyOf: + - $ref: ./FileID.yaml + - type: "null" + text: + type: string + description: The text content of the post. + title: + type: string + description: The title of the post. + visibility: + $ref: ./GroupPostVisibility.yaml +required: + - authorId + - imageId + - text + - title + - visibility diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml index 7db7ae8f..b364d3b2 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostCreate.yaml @@ -1,38 +1,18 @@ title: GroupAuditLogEntryDataGroupPostCreate type: object -description: Data for group.post.create events. properties: - authorId: - $ref: ./UserID.yaml - description: The ID of the post author. - imageId: - description: The image file ID attached to the post. - anyOf: - - $ref: ./FileID.yaml - - type: "null" roleIds: type: - array - "null" - description: The role IDs that can see this post. + description: The role IDs that can see the post. items: $ref: ./GroupRoleID.yaml sendNotification: type: boolean description: Whether a notification was sent for this post. - text: - type: string - description: The text content of the post. - title: - type: string - description: The title of the post. - visibility: - $ref: ./GroupPostVisibility.yaml required: - - authorId - - imageId - roleIds - sendNotification - - text - - title - - visibility +allOf: + - $ref: ./GroupAuditLogEntryDataGroupPost.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml index a4c7d09c..81ce76ca 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostDelete.yaml @@ -1,10 +1,6 @@ title: GroupAuditLogEntryDataGroupPostDelete type: object -description: Data for group.post.delete events. properties: - authorId: - $ref: ./UserID.yaml - description: The ID of the post author. createdAt: type: string description: The creation timestamp of the post. @@ -14,11 +10,6 @@ properties: anyOf: - $ref: ./UserID.yaml - type: "null" - imageId: - description: The image file ID attached to the post. - anyOf: - - $ref: ./FileID.yaml - - type: "null" imageUrl: type: - string @@ -26,30 +17,17 @@ properties: description: The URL of the post image. format: uri roleIds: - type: array - description: The role IDs that could see this post. - items: - $ref: ./GroupRoleID.yaml - text: - type: string - description: The text content of the post. - title: - type: string - description: The title of the post. + $ref: ./GroupRoleIDList.yaml + description: The role IDs that could see the post. updatedAt: type: string description: The last update timestamp of the post. format: date-time - visibility: - $ref: ./GroupPostVisibility.yaml required: - - authorId - createdAt - editorId - - imageId - imageUrl - roleIds - - text - - title - updatedAt - - visibility +allOf: + - $ref: ./GroupAuditLogEntryDataGroupPost.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml index 7673dad3..ad10fb3f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupPostUpdate.yaml @@ -1,6 +1,6 @@ title: GroupAuditLogEntryDataGroupPostUpdate type: object -description: Data for group.post.update events. Carries only the fields the update changed. +description: Carries only the fields the update changed. properties: editorId: $ref: ./GroupAuditLogEntryUserIdChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml deleted file mode 100644 index 34b7e8ff..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestBlock.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupRequestBlock -type: object -description: Data for group.request.block events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml deleted file mode 100644 index 47e20120..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestCreate.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupRequestCreate -type: object -description: Data for group.request.create events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml deleted file mode 100644 index a0370618..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestReject.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupRequestReject -type: object -description: Data for group.request.reject events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml deleted file mode 100644 index 5eeff2a9..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRequestWithdraw.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupRequestWithdraw -type: object -description: Data for group.request.withdraw events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRole.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRole.yaml new file mode 100644 index 00000000..d2e02ffe --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRole.yaml @@ -0,0 +1,37 @@ +title: GroupAuditLogEntryDataGroupRole +type: object +properties: + description: + type: string + description: The role description. + isAddedOnJoin: + type: boolean + description: Whether the role is automatically assigned on join. + isSelfAssignable: + type: boolean + description: Whether users can self-assign this role. + name: + type: string + description: The role name. + order: + type: integer + description: The display order of the role. + permissions: + type: array + description: The permissions assigned to this role. + items: + $ref: ./GroupPermissions.yaml + requiresPurchase: + type: boolean + description: Whether the role requires a purchase. + requiresTwoFactor: + type: boolean + description: Whether the role requires two-factor authentication. +required: + - description + - isAddedOnJoin + - isSelfAssignable + - name + - permissions + - requiresPurchase + - requiresTwoFactor diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml index ec63fe07..c5b41eb8 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleCreate.yaml @@ -1,46 +1,14 @@ title: GroupAuditLogEntryDataGroupRoleCreate type: object -description: Data for group.role.create events. properties: - description: - type: string - description: The role description. groupId: $ref: ./GroupID.yaml description: The group ID. - isAddedOnJoin: - type: boolean - description: Whether the role is automatically assigned on join. - isSelfAssignable: - type: boolean - description: Whether users can self-assign this role. lastUpdatedByUserId: $ref: ./UserID.yaml description: The ID of the user who last updated the role. - name: - type: string - description: The role name. - order: - type: integer - description: The display order of the role. - permissions: - type: array - description: The permissions assigned to this role. - items: - type: string - requiresPurchase: - type: boolean - description: Whether the role requires a purchase. - requiresTwoFactor: - type: boolean - description: Whether the role requires two-factor authentication. required: - - description - groupId - - isAddedOnJoin - - isSelfAssignable - lastUpdatedByUserId - - name - - permissions - - requiresPurchase - - requiresTwoFactor +allOf: + - $ref: ./GroupAuditLogEntryDataGroupRole.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml index 3f0e07ec..1601a90d 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleDelete.yaml @@ -1,6 +1,5 @@ title: GroupAuditLogEntryDataGroupRoleDelete type: object -description: Data for group.role.delete events. properties: createdAt: type: string @@ -9,44 +8,13 @@ properties: defaultRole: type: boolean description: Whether the role is the group's default role. - description: - type: string - description: The role description. - isAddedOnJoin: - type: boolean - description: Whether the role is automatically assigned on join. isManagementRole: type: boolean description: Whether the role is a management role. - isSelfAssignable: - type: boolean - description: Whether users can self-assign this role. - name: - type: string - description: The role name. - order: - type: integer - description: The display order of the role. - permissions: - type: array - description: The permissions assigned to this role. - items: - $ref: ./GroupPermissions.yaml - requiresPurchase: - type: boolean - description: Whether the role requires a purchase. - requiresTwoFactor: - type: boolean - description: Whether the role requires two-factor authentication. required: - createdAt - defaultRole - - description - - isAddedOnJoin - isManagementRole - - isSelfAssignable - - name - order - - permissions - - requiresPurchase - - requiresTwoFactor +allOf: + - $ref: ./GroupAuditLogEntryDataGroupRole.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml index 99e1d122..083e23b8 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml @@ -1,6 +1,6 @@ title: GroupAuditLogEntryDataGroupRoleUpdate type: object -description: Data for group.role.update events. Carries only the fields the update changed. +description: Carries only the fields the update changed. properties: description: $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml index ee5b7f59..b7592bee 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml @@ -1,6 +1,6 @@ title: GroupAuditLogEntryDataGroupUpdate type: object -description: Data for group.update events. Carries only the fields the update changed. +description: Carries only the fields the update changed. properties: description: $ref: ./GroupAuditLogEntryStringChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml deleted file mode 100644 index dd2638a8..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserBan.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupUserBan -type: object -description: Data for group.user.ban events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml deleted file mode 100644 index acea105f..00000000 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupUserUnban.yaml +++ /dev/null @@ -1,5 +0,0 @@ -title: GroupAuditLogEntryDataGroupUserUnban -type: object -description: Data for group.user.unban events. -additionalProperties: false -properties: {} diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml index a049f6c7..8c7d5f07 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupAnnouncement.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.announcement + targetId: + $ref: ./NotificationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml index 13a3cea3..f1575af3 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventCreate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.calendarEvent.create + targetId: + $ref: ./CalendarID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml index eed96cd7..e9a625d8 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupCalendarEventDelete.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.calendarEvent.delete + targetId: + $ref: ./CalendarID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml index c802ed98..6571626a 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryCreate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.gallery.create + targetId: + $ref: ./GroupGalleryID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml index ff739a88..66c3339f 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryDelete.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.gallery.delete + targetId: + $ref: ./GroupGalleryID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml index 960a29c4..34e0322c 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupGalleryUpdate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.gallery.update + targetId: + $ref: ./GroupGalleryID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml index bee0ab52..ff4c54c0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceAnnouncement.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.instance.announcement + targetId: + $ref: ./LocationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml index 6b883d65..c5b757b1 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceClose.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.instance.close + targetId: + $ref: ./LocationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml index 8df7136e..2c874cea 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceCreate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.instance.create + targetId: + $ref: ./LocationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml index a110cc56..70ab93ed 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceKick.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupInstanceKick type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupInstanceKick.yaml + $ref: ./GroupAuditLogEntryDataGroupInstanceModeration.yaml eventType: type: string const: group.instance.kick + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml index fee24b51..4b27b300 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInstanceWarn.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupInstanceWarn type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupInstanceWarn.yaml + $ref: ./GroupAuditLogEntryDataGroupInstanceModeration.yaml eventType: type: string const: group.instance.warn + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml index caf4e356..e37bae95 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupInviteCancel type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupInviteCancel.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.invite.cancel + targetId: + type: string required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml index aaeb903e..f894aad7 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCreate.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupInviteCreate type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupInviteCreate.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.invite.create + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml index dfc8ae55..6b773670 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberJoin.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupMemberJoin type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupMemberJoin.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.member.join + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml index 18a8ec42..c2ddb485 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberLeave.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupMemberLeave type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupMemberLeave.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.member.leave + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml index 1eac9f98..bf36fbe0 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupMemberRemove type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupMemberRemove.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.member.remove + targetId: + type: string required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml index c136aa73..4ddd8877 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleAssign.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupMemberRoleAssign type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleAssign.yaml + $ref: ./GroupAuditLogEntryDataGroupMemberRole.yaml eventType: type: string const: group.member.role.assign + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml index 24fa4efd..6d147d73 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRoleUnassign.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupMemberRoleUnassign type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupMemberRoleUnassign.yaml + $ref: ./GroupAuditLogEntryDataGroupMemberRole.yaml eventType: type: string const: group.member.role.unassign + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml index df909275..096db9a3 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.member.user.update + targetId: + type: string required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml index b914e319..b6dbef93 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostCreate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.post.create + targetId: + $ref: ./NotificationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml index 9334fbfe..a3443a7d 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostDelete.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.post.delete + targetId: + $ref: ./NotificationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml index 35702121..c9ce4da1 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupPostUpdate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.post.update + targetId: + $ref: ./NotificationID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml index a16e9064..d557a74d 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestBlock.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupRequestBlock type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupRequestBlock.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.request.block + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml index c75f1550..6a0da674 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestCreate.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupRequestCreate type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupRequestCreate.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.request.create + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml index 8bb4f209..f5e1979e 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestReject.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupRequestReject type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupRequestReject.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.request.reject + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml index 01c55a68..ebf6ea40 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRequestWithdraw.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupRequestWithdraw type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupRequestWithdraw.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.request.withdraw + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml index f88c0a5b..0fdd7d6c 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleCreate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.role.create + targetId: + $ref: ./GroupRoleID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml index 3826d2fd..33551163 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleDelete.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.role.delete + targetId: + $ref: ./GroupRoleID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml index 3bd802d6..cfc7c001 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupRoleUpdate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.role.update + targetId: + $ref: ./GroupRoleID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml index 7fb5e5a9..39728177 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUpdate.yaml @@ -6,6 +6,9 @@ properties: eventType: type: string const: group.update + targetId: + $ref: ./GroupID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml index 935826bf..97097ea7 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserBan.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupUserBan type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupUserBan.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.user.ban + targetId: + $ref: ./UserID.yaml required: - data - eventType + - targetId diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml index c7fa83b6..c74016c4 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml @@ -2,10 +2,13 @@ title: GroupAuditLogEntryGroupUserUnban type: object properties: data: - $ref: ./GroupAuditLogEntryDataGroupUserUnban.yaml + $ref: ./GroupAuditLogEntryDataEmpty.yaml eventType: type: string const: group.user.unban + targetId: + type: string required: - data - eventType + - targetId From 3d9a35046ca76eaf8d416413d671122e8c011f75 Mon Sep 17 00:00:00 2001 From: Aries Clark Date: Wed, 30 Sep 2026 19:53:13 -0400 Subject: [PATCH 08/12] feat(schemas): fall back to GroupAuditLogEntryUnknown for unmapped event types --- .../GroupAuditLogEntryDataUnknown.yaml | 3 ++ .../schemas/GroupAuditLogEntryEvent.yaml | 37 ++++++++++++++ .../schemas/GroupAuditLogEntryUnknown.yaml | 48 +++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 openapi/components/schemas/GroupAuditLogEntryDataUnknown.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryUnknown.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataUnknown.yaml b/openapi/components/schemas/GroupAuditLogEntryDataUnknown.yaml new file mode 100644 index 00000000..74aab99e --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryDataUnknown.yaml @@ -0,0 +1,3 @@ +title: GroupAuditLogEntryDataUnknown +type: object +additionalProperties: true diff --git a/openapi/components/schemas/GroupAuditLogEntryEvent.yaml b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml index a3b5ef24..051dfafc 100644 --- a/openapi/components/schemas/GroupAuditLogEntryEvent.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml @@ -1,5 +1,41 @@ title: GroupAuditLogEntryEvent description: The `eventType` of an audit log entry and the `data` that goes with it. +discriminator: + defaultMapping: ./GroupAuditLogEntryUnknown.yaml + mapping: + group.announcement: ./GroupAuditLogEntryGroupAnnouncement.yaml + group.calendarEvent.create: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml + group.calendarEvent.delete: ./GroupAuditLogEntryGroupCalendarEventDelete.yaml + group.gallery.create: ./GroupAuditLogEntryGroupGalleryCreate.yaml + group.gallery.delete: ./GroupAuditLogEntryGroupGalleryDelete.yaml + group.gallery.update: ./GroupAuditLogEntryGroupGalleryUpdate.yaml + group.instance.announcement: ./GroupAuditLogEntryGroupInstanceAnnouncement.yaml + group.instance.close: ./GroupAuditLogEntryGroupInstanceClose.yaml + group.instance.create: ./GroupAuditLogEntryGroupInstanceCreate.yaml + group.instance.kick: ./GroupAuditLogEntryGroupInstanceKick.yaml + group.instance.warn: ./GroupAuditLogEntryGroupInstanceWarn.yaml + group.invite.cancel: ./GroupAuditLogEntryGroupInviteCancel.yaml + group.invite.create: ./GroupAuditLogEntryGroupInviteCreate.yaml + group.member.join: ./GroupAuditLogEntryGroupMemberJoin.yaml + group.member.leave: ./GroupAuditLogEntryGroupMemberLeave.yaml + group.member.remove: ./GroupAuditLogEntryGroupMemberRemove.yaml + group.member.role.assign: ./GroupAuditLogEntryGroupMemberRoleAssign.yaml + group.member.role.unassign: ./GroupAuditLogEntryGroupMemberRoleUnassign.yaml + group.member.user.update: ./GroupAuditLogEntryGroupMemberUserUpdate.yaml + group.post.create: ./GroupAuditLogEntryGroupPostCreate.yaml + group.post.delete: ./GroupAuditLogEntryGroupPostDelete.yaml + group.post.update: ./GroupAuditLogEntryGroupPostUpdate.yaml + group.request.block: ./GroupAuditLogEntryGroupRequestBlock.yaml + group.request.create: ./GroupAuditLogEntryGroupRequestCreate.yaml + group.request.reject: ./GroupAuditLogEntryGroupRequestReject.yaml + group.request.withdraw: ./GroupAuditLogEntryGroupRequestWithdraw.yaml + group.role.create: ./GroupAuditLogEntryGroupRoleCreate.yaml + group.role.delete: ./GroupAuditLogEntryGroupRoleDelete.yaml + group.role.update: ./GroupAuditLogEntryGroupRoleUpdate.yaml + group.update: ./GroupAuditLogEntryGroupUpdate.yaml + group.user.ban: ./GroupAuditLogEntryGroupUserBan.yaml + group.user.unban: ./GroupAuditLogEntryGroupUserUnban.yaml + propertyName: eventType oneOf: - $ref: ./GroupAuditLogEntryGroupAnnouncement.yaml - $ref: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml @@ -33,3 +69,4 @@ oneOf: - $ref: ./GroupAuditLogEntryGroupUpdate.yaml - $ref: ./GroupAuditLogEntryGroupUserBan.yaml - $ref: ./GroupAuditLogEntryGroupUserUnban.yaml + - $ref: ./GroupAuditLogEntryUnknown.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml new file mode 100644 index 00000000..f71397cf --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryUnknown.yaml @@ -0,0 +1,48 @@ +title: GroupAuditLogEntryUnknown +type: object +description: An event whose `eventType` has no schema of its own. +properties: + data: + $ref: ./GroupAuditLogEntryDataUnknown.yaml + eventType: + type: string + not: + enum: + - group.announcement + - group.calendarEvent.create + - group.calendarEvent.delete + - group.gallery.create + - group.gallery.delete + - group.gallery.update + - group.instance.announcement + - group.instance.close + - group.instance.create + - group.instance.kick + - group.instance.warn + - group.invite.cancel + - group.invite.create + - group.member.join + - group.member.leave + - group.member.remove + - group.member.role.assign + - group.member.role.unassign + - group.member.user.update + - group.post.create + - group.post.delete + - group.post.update + - group.request.block + - group.request.create + - group.request.reject + - group.request.withdraw + - group.role.create + - group.role.delete + - group.role.update + - group.update + - group.user.ban + - group.user.unban + targetId: + type: string +required: + - data + - eventType + - targetId From e450b3c9178f534ef3531d7f404e317ccbb3343b Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Sun, 4 Oct 2026 11:31:21 -0400 Subject: [PATCH 09/12] Fix loose targetId typings --- .../components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml | 2 +- .../components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml | 2 +- .../schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml | 2 +- .../components/schemas/GroupAuditLogEntryGroupUserUnban.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml index e37bae95..11fd69f6 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupInviteCancel.yaml @@ -7,7 +7,7 @@ properties: type: string const: group.invite.cancel targetId: - type: string + $ref: ./UserID.yaml required: - data - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml index bf36fbe0..cfeab1b5 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberRemove.yaml @@ -7,7 +7,7 @@ properties: type: string const: group.member.remove targetId: - type: string + $ref: ./UserID.yaml required: - data - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml index 096db9a3..d33b3bab 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupMemberUserUpdate.yaml @@ -7,7 +7,7 @@ properties: type: string const: group.member.user.update targetId: - type: string + $ref: ./UserID.yaml required: - data - eventType diff --git a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml index c74016c4..73b84882 100644 --- a/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryGroupUserUnban.yaml @@ -7,7 +7,7 @@ properties: type: string const: group.user.unban targetId: - type: string + $ref: ./UserID.yaml required: - data - eventType From 15352899e8a66b58f5530635b5b258fce6d255da Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Sun, 4 Oct 2026 13:23:15 -0400 Subject: [PATCH 10/12] add downlevel vendor extension --- openapi/components/schemas/GroupAuditLogEntryEvent.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/openapi/components/schemas/GroupAuditLogEntryEvent.yaml b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml index 051dfafc..6cbb2139 100644 --- a/openapi/components/schemas/GroupAuditLogEntryEvent.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryEvent.yaml @@ -36,6 +36,7 @@ discriminator: group.user.ban: ./GroupAuditLogEntryGroupUserBan.yaml group.user.unban: ./GroupAuditLogEntryGroupUserUnban.yaml propertyName: eventType + x-vrchatapi-downlevel-default-mapping: GroupAuditLogEntryUnknown oneOf: - $ref: ./GroupAuditLogEntryGroupAnnouncement.yaml - $ref: ./GroupAuditLogEntryGroupCalendarEventCreate.yaml From b278a70545ee0a82e066445fca91015564f7ae2b Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Sun, 4 Oct 2026 14:52:24 -0400 Subject: [PATCH 11/12] Type group.update fully Pulled from an active group's logs, a test group's, and some inferred (iconId, nameplateId) --- .../GroupAuditLogEntryDataGroupUpdate.yaml | 20 +++++++++++++++++++ .../GroupAuditLogEntryFileIDChange.yaml | 11 ++++++++++ .../GroupAuditLogEntryJoinStateChange.yaml | 11 ++++++++++ 3 files changed, 42 insertions(+) create mode 100644 openapi/components/schemas/GroupAuditLogEntryFileIDChange.yaml create mode 100644 openapi/components/schemas/GroupAuditLogEntryJoinStateChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml index b7592bee..3dc305c6 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupUpdate.yaml @@ -2,7 +2,27 @@ title: GroupAuditLogEntryDataGroupUpdate type: object description: Carries only the fields the update changed. properties: + allowGroupJoinPrompt: + $ref: ./GroupAuditLogEntryBooleanChange.yaml + bannerId: + $ref: ./GroupAuditLogEntryFileIDChange.yaml description: $ref: ./GroupAuditLogEntryStringChange.yaml + iconId: + $ref: ./GroupAuditLogEntryFileIDChange.yaml + joinState: + $ref: ./GroupAuditLogEntryJoinStateChange.yaml + languages: + $ref: ./GroupAuditLogEntryStringListChange.yaml links: $ref: ./GroupAuditLogEntryStringListChange.yaml + name: + $ref: ./GroupAuditLogEntryStringChange.yaml + nameplateId: + $ref: ./GroupAuditLogEntryFileIDChange.yaml + rules: + $ref: ./GroupAuditLogEntryStringChange.yaml + shortCode: + $ref: ./GroupAuditLogEntryStringChange.yaml + tags: + $ref: ./GroupAuditLogEntryStringListChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryFileIDChange.yaml b/openapi/components/schemas/GroupAuditLogEntryFileIDChange.yaml new file mode 100644 index 00000000..3ff8d5c6 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryFileIDChange.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryFileIDChange +type: object +description: A File ID field's value before and after an update. +properties: + new: + $ref: ./FileID.yaml + old: + $ref: ./FileID.yaml +required: + - new + - old diff --git a/openapi/components/schemas/GroupAuditLogEntryJoinStateChange.yaml b/openapi/components/schemas/GroupAuditLogEntryJoinStateChange.yaml new file mode 100644 index 00000000..b0ee16d0 --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryJoinStateChange.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryJoinStateChange +type: object +description: A join state field's value before and after an update. +properties: + new: + $ref: ./GroupJoinState.yaml + old: + $ref: ./GroupJoinState.yaml +required: + - new + - old From 6c32f5ed87b9c565dcf0c9da6e62e978b164b7ce Mon Sep 17 00:00:00 2001 From: Lillith Rose Date: Sun, 4 Oct 2026 15:03:20 -0400 Subject: [PATCH 12/12] Group role update --- .../GroupAuditLogEntryDataGroupRoleUpdate.yaml | 6 ++++++ .../schemas/GroupAuditLogEntryIntegerChange.yaml | 11 +++++++++++ 2 files changed, 17 insertions(+) create mode 100644 openapi/components/schemas/GroupAuditLogEntryIntegerChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml index 083e23b8..4ebac353 100644 --- a/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml +++ b/openapi/components/schemas/GroupAuditLogEntryDataGroupRoleUpdate.yaml @@ -4,7 +4,13 @@ description: Carries only the fields the update changed. properties: description: $ref: ./GroupAuditLogEntryStringChange.yaml + isAddedOnJoin: + $ref: ./GroupAuditLogEntryBooleanChange.yaml + isSelfAssignable: + $ref: ./GroupAuditLogEntryBooleanChange.yaml name: $ref: ./GroupAuditLogEntryStringChange.yaml + order: + $ref: ./GroupAuditLogEntryIntegerChange.yaml permissions: $ref: ./GroupAuditLogEntryStringListChange.yaml diff --git a/openapi/components/schemas/GroupAuditLogEntryIntegerChange.yaml b/openapi/components/schemas/GroupAuditLogEntryIntegerChange.yaml new file mode 100644 index 00000000..538c2d0c --- /dev/null +++ b/openapi/components/schemas/GroupAuditLogEntryIntegerChange.yaml @@ -0,0 +1,11 @@ +title: GroupAuditLogEntryIntegerChange +type: object +description: An integer field's value before and after an update. +properties: + new: + type: integer + old: + type: integer +required: + - new + - old