From 7eda6ad2992da2e41e867c19af3f8c508f1b1ed6 Mon Sep 17 00:00:00 2001 From: Johannes Marbach Date: Tue, 25 Jun 2024 16:55:46 +0200 Subject: [PATCH] Improve recommendation for how to form transaction IDs (#1888) Fixes: #1706 Signed-off-by: Johannes Marbach --- changelogs/client_server/newsfragments/1888.clarification | 1 + content/client-server-api/_index.md | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 changelogs/client_server/newsfragments/1888.clarification diff --git a/changelogs/client_server/newsfragments/1888.clarification b/changelogs/client_server/newsfragments/1888.clarification new file mode 100644 index 00000000..7ede3094 --- /dev/null +++ b/changelogs/client_server/newsfragments/1888.clarification @@ -0,0 +1 @@ +Improve recommendation for how to form transaction IDs. diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 8b40fe99..2acf7777 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -251,9 +251,10 @@ the request idempotent. The transaction ID should **only** be used for this purpose. -From the client perspective, after the request has finished, the `{txnId}` -value should be changed by for the next request (how is not specified; a -monotonically increasing integer is recommended). +After the request has finished, clients should change the `{txnId}` value for +the next request. How this is achieved, is left as an implementation detail. +It is recommended that clients use either version 4 UUIDs or a concatenation +of the current timestamp and a monotonically increasing integer. The homeserver should identify a request as a retransmission if the transaction ID is the same as a previous request, and the path of the