aboutsummaryrefslogtreecommitdiff
path: root/doc/sphinx/reducer.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/sphinx/reducer.rst')
-rw-r--r--doc/sphinx/reducer.rst44
1 files changed, 42 insertions, 2 deletions
diff --git a/doc/sphinx/reducer.rst b/doc/sphinx/reducer.rst
index 68df5b1..dcfc522 100644
--- a/doc/sphinx/reducer.rst
+++ b/doc/sphinx/reducer.rst
@@ -1591,7 +1591,7 @@ that applications must all handle. States other than ``solved`` are:
1591 } 1591 }
1592 } 1592 }
1593 1593
1594 - **rate-limit-exceeded**: 1594 - **rate-limit-exceeded**: This indicates that the user has made too many invalid attempts in too short an amount of time.
1595 1595
1596 .. code-block:: json 1596 .. code-block:: json
1597 1597
@@ -1609,7 +1609,7 @@ that applications must all handle. States other than ``solved`` are:
1609 } 1609 }
1610 } 1610 }
1611 1611
1612 - **authentication-timeout**: 1612 - **authentication-timeout**: This indicates that the challenge is awaiting for some external authentication process to complete. The application should ``poll`` for it to complete, or proceed with selecting other challenges.
1613 1613
1614 .. code-block:: json 1614 .. code-block:: json
1615 1615
@@ -1627,6 +1627,46 @@ that applications must all handle. States other than ``solved`` are:
1627 } 1627 }
1628 } 1628 }
1629 1629
1630 - **authentication-instructions**: This indicates that the challenge requires the user to perform some authetnication method-specific actions. Details about what the user should do are provided.
1631
1632 .. code-block:: json
1633
1634 {
1635 "recovery_state": "CHALLENGE_SELECTING",
1636 "recovery_information": {
1637 "...": "..."
1638 }
1639 "selected_challenge_uuid": "TXYKGE1SJZHJ4M2FKSV1P2RZVNTHZFB9E3A79QE956D3SCAWXPK0",
1640 "challenge_feedback": {
1641 "TXYKGE1SJZHJ4M2FKSV1P2RZVNTHZFB9E3A79QE956D3SCAWXPK0": {
1642 "state": "external-instructions",
1643 "method": "iban",
1644 "details": {
1645 "...": "..."
1646 }
1647 }
1648 }
1649 }
1650
1651 The specific instructions depend on the ``method``.
1652 They include:
1653
1654 - **iban**: The user must perform a wire transfer from their account to the Anastasis provider.
1655
1656 .. code-block:: json
1657
1658 {
1659 "challenge_amount": "EUR:1",
1660 "credit_iban": "DE12345789000",
1661 "business_name": "Data Loss Incorporated",
1662 "wire_transfer_subject": 987654321
1663 }
1664
1665 Note that the actual wire transfer subject must contain both
1666 the numeric ``wire_transfer_subject`` given above as well as
1667 the string ``Anastasis``. Thus, when generating human-readable
1668 instructions from the above, the display output should be
1669 ``Anastasis 987654321``.
1630 1670
1631**poll:** 1671**poll:**
1632 1672