commit d33d7f4adbacb27d33191bcbacebef5b3b9c9583
parent d19219d874b881b3c7dee47ab727632b6d44d3ee
Author: Christian Grothoff <christian@grothoff.org>
Date: Thu, 4 Sep 2025 11:57:21 +0200
spec review with Antoine
Diffstat:
1 file changed, 19 insertions(+), 18 deletions(-)
diff --git a/core/api-merchant.rst b/core/api-merchant.rst
@@ -284,7 +284,7 @@ remain absolutely unchanged.
interface ChallengeResponse {
// List of challenge IDs that must be solved before the
// client may proceed.
- challenges: string[];
+ challenges: Challenge[];
// True if **all** challenges must be solved (AND), false if
// it is sufficient to solve one of them (OR).
@@ -292,7 +292,23 @@ remain absolutely unchanged.
}
+ .. ts:def:: Challenge
+ interface Challenge {
+ // Unique identifier of the challenge to solve to run this protected
+ // operation.
+ challenge_id: string;
+
+ // Channel of the last successful transmission of the TAN challenge.
+ tan_channel: TanChannel;
+
+ // Info of the last successful transmission of the TAN challenge.
+ // Hint to show to the user as to where the challenge was
+ // sent or what to use to solve the challenge. May not
+ // contain the full address for privacy.
+ tan_info: string;
+
+ }
Requesting challenges
^^^^^^^^^^^^^^^^^^^^^
@@ -316,8 +332,8 @@ Requesting challenges
**Response:**
- :http:statuscode:`200 OK`:
- The TAN code has been sent. This returns `MerchantTanTransmissionResponse`.
+ :http:statuscode:`204 No Content`:
+ The TAN code has been sent.
:http:statuscode:`404 Not Found`:
The challenge was not found.
Returned with ``TALER_EC_MERCHANT_TAN_CHALLENGE_UNKNOWN``.
@@ -332,21 +348,6 @@ Requesting challenges
TAN transmition via ``tan_channel`` failed.
Returned with ``TALER_EC_MERCHANT_MFA_HELPER_EXEC_FAILED``.
- **Details:**
-
- .. ts:def:: MerchantTanTransmissionResponse
-
- interface MerchantTanTransmissionResponse {
- // Channel of the last successful transmission of the TAN challenge.
- tan_channel: TanChannel;
-
- // Info of the last successful transmission of the TAN challenge.
- // Hint to show to the user as to where the challenge was
- // sent or what to use to solve the challenge. May not
- // contain the full address for privacy.
- tan_info: string;
- }
-
Solving challenges
^^^^^^^^^^^^^^^^^^