Quote posting (#113)
[akkoma] / lib / pleroma / web / api_spec / schemas / status.ex
index 60801f3227e1f103b1441b61d8d695b115eb5bac..60db8ad6fa60324a050213e7edb756be01973ee7 100644 (file)
@@ -133,6 +133,16 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do
         type: :boolean,
         description: "Have you pinned this status? Only appears if the status is pinnable."
       },
+      quote_id: %Schema{
+        type: :string,
+        description: "ID of the status being quoted",
+        nullable: true
+      },
+      quote: %Schema{
+        allOf: [%OpenApiSpex.Reference{"$ref": "#/components/schemas/Status"}],
+        nullable: true,
+        description: "Quoted status (if any)"
+      },
       pleroma: %Schema{
         type: :object,
         properties: %{
@@ -204,6 +214,33 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do
           }
         }
       },
+      akkoma: %Schema{
+        type: :object,
+        properties: %{
+          source: %Schema{
+            nullable: true,
+            oneOf: [
+              %Schema{type: :string, example: 'plaintext content'},
+              %Schema{
+                type: :object,
+                properties: %{
+                  content: %Schema{
+                    type: :string,
+                    description: "The source content of the status",
+                    nullable: true
+                  },
+                  mediaType: %Schema{
+                    type: :string,
+                    description: "The source MIME type of the status",
+                    example: "text/plain",
+                    nullable: true
+                  }
+                }
+              }
+            ]
+          }
+        }
+      },
       poll: %Schema{allOf: [Poll], nullable: true, description: "The poll attached to the status"},
       reblog: %Schema{
         allOf: [%OpenApiSpex.Reference{"$ref": "#/components/schemas/Status"}],
@@ -285,7 +322,8 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do
             "note" => "",
             "requested" => false,
             "showing_reblogs" => true,
-            "subscribing" => false
+            "subscribing" => false,
+            "notifying" => false
           },
           "skip_thread_containment" => false,
           "tags" => []