summaryrefslogtreecommitdiff
path: root/lib/pleroma/web/api_spec/operations/admin/status_operation.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/web/api_spec/operations/admin/status_operation.ex')
-rw-r--r--lib/pleroma/web/api_spec/operations/admin/status_operation.ex59
1 files changed, 58 insertions, 1 deletions
diff --git a/lib/pleroma/web/api_spec/operations/admin/status_operation.ex b/lib/pleroma/web/api_spec/operations/admin/status_operation.ex
index d25ab5247..3943a5235 100644
--- a/lib/pleroma/web/api_spec/operations/admin/status_operation.ex
+++ b/lib/pleroma/web/api_spec/operations/admin/status_operation.ex
@@ -22,8 +22,10 @@ defmodule Pleroma.Web.ApiSpec.Admin.StatusOperation do
def index_operation do
%Operation{
tags: ["Status administration"],
+ description:
+ "Use [/api/v2/pleroma/admin/statuses](#operation/AdminAPI.StatusController.index2) to get response with `total` field.",
operationId: "AdminAPI.StatusController.index",
- summary: "Get all statuses",
+ summary: "Get all statuses (without total)",
security: [%{"oAuth" => ["admin:read:statuses"]}],
parameters: [
Operation.parameter(
@@ -68,6 +70,61 @@ defmodule Pleroma.Web.ApiSpec.Admin.StatusOperation do
}
end
+ def index2_operation do
+ %Operation{
+ tags: ["Status administration"],
+ operationId: "AdminAPI.StatusController.index2",
+ summary: "Get all statuses",
+ security: [%{"oAuth" => ["admin:read:statuses"]}],
+ parameters: [
+ Operation.parameter(
+ :godmode,
+ :query,
+ %Schema{type: :boolean, default: false},
+ "Allows to see private statuses"
+ ),
+ Operation.parameter(
+ :local_only,
+ :query,
+ %Schema{type: :boolean, default: false},
+ "Excludes remote statuses"
+ ),
+ Operation.parameter(
+ :with_reblogs,
+ :query,
+ %Schema{type: :boolean, default: false},
+ "Allows to see reblogs"
+ ),
+ Operation.parameter(
+ :page,
+ :query,
+ %Schema{type: :integer, default: 1},
+ "Page"
+ ),
+ Operation.parameter(
+ :page_size,
+ :query,
+ %Schema{type: :integer, default: 50},
+ "Number of statuses to return"
+ )
+ | admin_api_params()
+ ],
+ responses: %{
+ 200 =>
+ Operation.response("Response", "application/json", %Schema{
+ type: :object,
+ properties: %{
+ total: %Schema{type: :integer},
+ reports: %Schema{
+ type: :array,
+ items: status()
+ }
+ }
+ })
+ }
+ }
+ end
+
def show_operation do
%Operation{
tags: ["Status adminitration)"],