diff --git a/Sources/ReportingFeature/Report.swift b/Sources/ReportingFeature/Report.swift
new file mode 100644
index 0000000000000000000000000000000000000000..61607f7b53e598b468c8f9ecbe23aab10cfb5b02
--- /dev/null
+++ b/Sources/ReportingFeature/Report.swift
@@ -0,0 +1,43 @@
+import Foundation
+
+public struct Report: Encodable {
+    public init(
+        sender: ReportUser,
+        recipient: ReportUser,
+        type: ReportType,
+        screenshot: Data
+    ) {
+        self.sender = sender
+        self.recipient = recipient
+        self.type = type
+        self.screenshot = screenshot
+    }
+
+    public var sender: ReportUser
+    public var recipient: ReportUser
+    public var type: ReportType
+    public var screenshot: Data
+}
+
+extension Report {
+    public struct ReportUser: Encodable {
+        public init(
+            userId: String,
+            username: String
+        ) {
+            self.userId = userId
+            self.username = username
+        }
+
+        public var userId: String
+        public var username: String
+    }
+}
+
+extension Report {
+    public enum ReportType: String, Encodable {
+        case dm
+        case group
+        case channel
+    }
+}