api-mailbox.rst (2639B)
1 .. 2 This file is part of GNU TALER. 3 Copyright (C) 2022 Taler Systems SA 4 5 TALER is free software; you can redistribute it and/or modify it under the 6 terms of the GNU Affero General Public License as published by the Free Software 7 Foundation; either version 3.0, or (at your option) any later version. 8 9 TALER is distributed in the hope that it will be useful, but WITHOUT ANY 10 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 11 A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. 12 13 You should have received a copy of the GNU Affero General Public License along with 14 TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> 15 16 @author Christian Grothoff 17 18 .. _api-mailbox: 19 20 =================== 21 Mailbox RESTful API 22 =================== 23 24 This is the API documentation for the GNU Taler Mailbox service which allows Taler 25 wallets to securely send push and pull payment requests to other wallets 26 without having to interact with the respective messaging service. 27 28 Clients (wallets) are expected to generate mailbox keys that uniquely identify 29 a mailbox as well as encryption keys that can be used to encrypt messages for 30 the mailbox (e.g. `HPKE <https://www.rfc-editor.org/rfc/rfc9180.html>`_). 31 Mailboxes must be registered along with their public key information. 32 Registration may incur costs depending on the mailbox service provider used. 33 34 The API specified here follows the :ref:`general conventions <http-common>` 35 for all details not specified in the individual requests. 36 The `glossary <https://docs.taler.net/taler-developer-manual.html#developer-glossary>`_ 37 defines all specific terms used in this section. 38 39 40 41 --------------- 42 Version History 43 --------------- 44 45 The current protocol version is **v0**. 46 47 * Wallet-core uses this API to exchange push and pull payment requests after 48 mailbox initialization. 49 50 **Version history:** 51 52 * ``v0``: Initial version. 53 54 **Upcoming versions:** 55 56 * None anticipated. 57 58 **Ideas for future version:** 59 60 * ``vXXX``: marker for features not yet targeted for release 61 62 63 .. include:: tos.rst 64 65 ------------------------- 66 Configuration information 67 ------------------------- 68 69 .. include:: mailbox/get-config.rst 70 71 --------------------------------- 72 Mailbox registration and metadata 73 --------------------------------- 74 75 .. include:: mailbox/get-info-H_MAILBOX.rst 76 77 78 .. include:: mailbox/post-register.rst 79 80 ---------------- 81 Sending messages 82 ---------------- 83 84 .. include:: mailbox/post-H_MAILBOX.rst 85 86 ------------------ 87 Receiving messages 88 ------------------ 89 90 .. include:: mailbox/get-H_MAILBOX.rst 91 92 .. include:: mailbox/delete-ADDRESS.rst