post-management-global-fees.rst (2829B)
1 .. http:post:: /management/global-fees 2 3 Provides global fee configuration for a timeframe. 4 5 **Request:** 6 7 The request must be a `GlobalFeesRequest` message. 8 9 **Response:** 10 11 :http:statuscode:`204 No content`: 12 The configuration update has been processed successfully. The body is empty. 13 :http:statuscode:`403 Forbidden`: 14 The signature is invalid. Returned with an error code 15 of ``TALER_EC_EXCHANGE_MANAGEMENT_GLOBAL_FEE_SIGNATURE_INVALID``. 16 :http:statuscode:`409 Conflict`: 17 The exchange has previously received a conflicting configuration message. 18 Returned with an error code of 19 ``TALER_EC_EXCHANGE_MANAGEMENT_GLOBAL_FEE_MISMATCH``. 20 :http:statuscode:`413 Request entity too large`: 21 The uploaded body is to long, it exceeds the size limit. 22 Returned with an error code of 23 ``TALER_EC_GENERIC_UPLOAD_EXCEEDS_LIMIT``. 24 :http:statuscode:`500 Internal Server Error`: 25 The server experienced an internal error. 26 This response comes with a standard `ErrorDetail` response. 27 Possible error codes include 28 ``TALER_EC_GENERIC_DB_FETCH_FAILED`` or 29 ``TALER_EC_GENERIC_DB_STORE_FAILED``. 30 31 **Details:** 32 33 .. ts:def:: GlobalFeesRequest 34 35 interface GlobalFeesRequest { 36 37 // Signature of `TALER_GlobalFeesPS`. 38 master_sig: EddsaSignature; 39 40 // What date (inclusive) does these fees go into effect? 41 fee_start: Timestamp; 42 43 // What date (exclusive) does this fees stop going into effect? 44 fee_end: Timestamp; 45 46 // Account history fee, charged when a user wants to 47 // obtain a reserve/account history. 48 history_fee: Amount; 49 50 // Annual fee charged for having an open account at the 51 // exchange. Charged to the account. If the account 52 // balance is insufficient to cover this fee, the account 53 // is automatically deleted/closed. (Note that the exchange 54 // will keep the account history around for longer for 55 // regulatory reasons.) 56 account_fee: Amount; 57 58 // Purse fee, charged only if a purse is abandoned 59 // and was not covered by the account limit. 60 purse_fee: Amount; 61 62 // How long will the exchange preserve the account history? 63 // After an account was deleted/closed, the exchange will 64 // retain the account history for legal reasons until this time. 65 history_expiration: RelativeTime; 66 67 // Non-negative number of concurrent purses that any 68 // account holder is allowed to create without having 69 // to pay the purse_fee. 70 purse_account_limit: Integer; 71 72 // How long does an exchange keep a purse around after a purse 73 // has expired (or been successfully merged)? A 'GET' request 74 // for a purse will succeed until the purse expiration time 75 // plus this value. 76 purse_timeout: RelativeTime; 77 78 }