taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

post-H_MAILBOX.rst (1407B)


      1 .. http:post:: /$H_MAILBOX
      2 
      3   Puts a message into ``$H_MAILBOX``.
      4   ``$H_MAILBOX`` is the SHA512 of an EdDSA public key.
      5 
      6   **Request**
      7 
      8   The content of the request must be the message with a size of
      9   exactly message_body_bytes (see `VersionResponse`).
     10 
     11   **Response**
     12 
     13   :http:statuscode:`204 No Content`
     14      Message was stored and will be delivered.
     15   :http:statuscode:`403 Forbidden`
     16      The specified order ID in the ``Mailbox-Order-Id`` header does not
     17      permit sending of this message. Possible reasons include the order
     18      being for a different message, unpaid or
     19      malformed.
     20      This response comes with a standard `ErrorDetail` response.
     21   :http:statuscode:`429 Too Many Requests`:
     22     The system is currently experiencing a too high request
     23     load and is unable to accept the message for delivery.
     24     The response format is given by `MailboxRateLimitedResponse`_.
     25   :http:statuscode:`402 Payment Required`
     26      Client needs to make a Taler payment before proceeding. See
     27      standard Taler payment procedure.
     28 
     29 
     30   **Details:**
     31 
     32   .. _MailboxRateLimitedResponse:
     33   .. ts:def:: MailboxRateLimitedResponse
     34 
     35     interface MailboxRateLimitedResponse {
     36 
     37       // Taler error code, TALER_EC_MAILBOX_DELIVERY_RATE_LIMITED.
     38       code: Integer;
     39 
     40       // When the client should retry.
     41       retry_delay: RelativeTime;
     42 
     43       // The human readable error message.
     44       hint: string;
     45 
     46     }