From 51ec7c355d6c3137ba0197ce6f54d941ada93f5d Mon Sep 17 00:00:00 2001 From: clokep Date: Tue, 17 Oct 2023 15:57:19 +0000 Subject: deploy: 6e6d611f555245a8302396936dd4dae1f28e3b2a --- v1.95/admin_api/purge_history_api.html | 238 +++++++++++++++++++++++++++++++++ 1 file changed, 238 insertions(+) create mode 100644 v1.95/admin_api/purge_history_api.html (limited to 'v1.95/admin_api/purge_history_api.html') diff --git a/v1.95/admin_api/purge_history_api.html b/v1.95/admin_api/purge_history_api.html new file mode 100644 index 0000000000..9b5e258b90 --- /dev/null +++ b/v1.95/admin_api/purge_history_api.html @@ -0,0 +1,238 @@ + + + + + + Purge History - Synapse + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + +
+
+ +
+ +
+ +

Purge History API

+

The purge history API allows server admins to purge historic events from their +database, reclaiming disk space.

+

Depending on the amount of history being purged a call to the API may take +several minutes or longer. During this period users will not be able to +paginate further back in the room from the point being purged from.

+

Note that Synapse requires at least one message in each room, so it will never +delete the last message in a room.

+

To use it, you will need to authenticate by providing an access_token +for a server admin: see Admin API.

+

The API is:

+
POST /_synapse/admin/v1/purge_history/<room_id>[/<event_id>]
+
+

By default, events sent by local users are not deleted, as they may represent +the only copies of this content in existence. (Events sent by remote users are +deleted.)

+

Room state data (such as joins, leaves, topic) is always preserved.

+

To delete local message events as well, set delete_local_events in the body:

+
{
+   "delete_local_events": true
+}
+
+

The caller must specify the point in the room to purge up to. This can be +specified by including an event_id in the URI, or by setting a +purge_up_to_event_id or purge_up_to_ts in the request body. If an event +id is given, that event (and others at the same graph depth) will be retained. +If purge_up_to_ts is given, it should be a timestamp since the unix epoch, +in milliseconds.

+

The API starts the purge running, and returns immediately with a JSON body with +a purge id:

+
{
+    "purge_id": "<opaque id>"
+}
+
+

Purge status query

+

It is possible to poll for updates on recent purges with a second API;

+
GET /_synapse/admin/v1/purge_history_status/<purge_id>
+
+

This API returns a JSON body like the following:

+
{
+    "status": "active"
+}
+
+

The status will be one of active, complete, or failed.

+

If status is failed there will be a string error with the error message.

+

Reclaim disk space (Postgres)

+

To reclaim the disk space and return it to the operating system, you need to run +VACUUM FULL; on the database.

+

https://www.postgresql.org/docs/current/sql-vacuum.html

+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + \ No newline at end of file -- cgit 1.5.1