taler-docs

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

commit 58e5aceecbbc0ed5fc6400111e833d8fd5e7c7cb
parent 08c0eac8280a4796b8f23459f57f58846b7aff76
Author: Cedric Zwahlen <cedric.zwahlen@students.bfh.ch>
Date:   Tue,  4 Jun 2024 15:27:03 +0200

Various Improvements

Diffstat:
Mcore/api-auditor.rst | 935++++++++++++++++++++++++++-----------------------------------------------------
1 file changed, 309 insertions(+), 626 deletions(-)

diff --git a/core/api-auditor.rst b/core/api-auditor.rst @@ -49,7 +49,7 @@ Currently, the API supports two main authentication methods: Obtaining Auditor Version ------------------------- -This API is used by merchants to obtain a list of all exchanges audited by +This endpoint is used by merchants to obtain a list of all exchanges audited by this auditor. This may be required for the merchant to perform the required know-your-customer (KYC) registration before issuing contracts. @@ -93,7 +93,7 @@ know-your-customer (KYC) registration before issuing contracts. .. note:: - This API is still experimental (and is not yet implemented at the + This endpoint is still experimental (and is not yet implemented at the time of this writing). @@ -201,7 +201,7 @@ paid out first. .. note:: - This API is still experimental (and is not yet implemented at the + This endpoint is still experimental (and is not yet implemented at the time of this writing). A key open question is whether the auditor should sign the response information. @@ -260,13 +260,9 @@ prevent such a fee configuration from being accepted. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`FeeTimeInconsistency` objects. + The auditor responds with a top level array of :ts:type:`FeeTimeInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -275,27 +271,25 @@ prevent such a fee configuration from being accepted. interface FeeTimeInconsistency { // Row ID of the fee in the exchange database. - row_id : Integer; + row_id : Integer; // Specifies the wire method for which the fee is inconsistent. - type : string; + type : string; // Gives the start date of the inconsistent fee. - time : Timestamp; + time : Timestamp; // Human readable description of the problem. - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/fee-time-inconsistency/$SERIAL_ID @@ -314,8 +308,7 @@ prevent such a fee configuration from being accepted. .. note:: - This API is still experimental. The API will be further developed as needed. - FIMXE: we usually simply return 204 No Content on success for such APIs. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -324,7 +317,7 @@ prevent such a fee configuration from being accepted. Emergencies ----------- -This API is used to obtain a list of emergencies. +This endpoint is used to obtain a list of emergencies. Emergencies are errors where the total value of coins deposited (of a particular denomination) exceeds the total value that the exchange remembers @@ -361,13 +354,9 @@ numbers of coins (they may differ as coins may be partially deposited). **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`Emergency` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`Emergency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -376,46 +365,42 @@ numbers of coins (they may differ as coins may be partially deposited). interface Emergency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Hash of denomination public key - denompub_h : HashCode; + denompub_h : HashCode; // What is the total value of all coins of this denomination that // were put into circulation (and thus the maximum loss the // exchange may experience due to this emergency). - denom_risk : Amount; + denom_risk : Amount; // What is the loss we have experienced so far (that // is, the amount deposited in excess of the amount // we issued). - denom_loss : Amount; + denom_loss : Amount; // When did the exchange start issuing coins in this the denomination. - deposit_start : Timestamp; + deposit_start : Timestamp; // When does the deposit period end for coins of this denomination. - deposit_end : Timestamp; + deposit_end : Timestamp; // What is the value of an individual coin of this denomination. - value : Amount; + value : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - - - -This API is used to suppress select elements of emergencies + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/emergency/$SERIAL_ID + This endpoint is used to suppress select elements of emergencies. Update the 'suppressed' field of an emergency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -425,7 +410,7 @@ This API is used to suppress select elements of emergencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -435,7 +420,7 @@ This API is used to suppress select elements of emergencies Emergencies By Count -------------------- -This API is used to obtain a list of emergencies by count. +This endpoint is used to obtain a list of emergencies by count. Emergencies are errors where more coins were deposited than the exchange remembers issuing. This usually means that the private keys @@ -474,11 +459,7 @@ auditor reports an emergency-by-count. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`EmergencyByCount` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -487,46 +468,46 @@ auditor reports an emergency-by-count. interface EmergencyByCount { // Row ID of the fee in the exchange database. - row_id : Integer; + row_id : Integer; // Hash of the public denomination key to which the // emergency applies. - denompub_h : HashCode; + denompub_h : HashCode; // Number of coins the exchange officially issued of this // denomination. - num_issued : Integer; + num_issued : Integer; // Number of coins that were redeemed. - num_known : Integer; + num_known : Integer; // What is the total value of all coins of this denomination that // were put into circulation (and thus the maximum loss the // exchange may experience due to this emergency). - risk : Amount; + risk : Amount; // When did the exchange start issuing coins in this the denomination. - start : Timestamp; + start : Timestamp; // When does the deposit period end for coins of this denomination. - deposit_end : Timestamp; + deposit_end : Timestamp; // What is the value of an individual coin of this denomination. - value : Amount; + value : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/emergency-by-count/$SERIAL_ID - This API is used to suppress select elements of emergencies by count. + This endpoint is used to suppress select elements of emergencies by count. Update the 'suppressed' field of an emergency by count element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -542,8 +523,7 @@ auditor reports an emergency-by-count. .. note:: - This API is still experimental. The API will be further developed as needed. - FIMXE: we usually simply return 204 No Content on success for such APIs. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _row-inconsistency-list: @@ -578,11 +558,7 @@ if some signature fails to validate. The affected table is noted in the :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`RowInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -591,30 +567,27 @@ if some signature fails to validate. The affected table is noted in the interface RowInconsistency { // Number of the affected row. - row_id : Integer; + row_id : Integer; // Name of the affected exchange table. - row_table : string; + row_table : string; // Human-readable diagnostic about what went wrong. - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - - + This endpoint is still experimental. The endpoint will be further developed as needed. -This API is used to suppress select elements of row inconsistencies .. http:patch:: /monitoring/row-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of row inconsistencies. Update the 'suppressed' field of a row inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -624,12 +597,12 @@ This API is used to suppress select elements of row inconsistencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. reserve-in-inconsistency-list: +.. _reserve-in-inconsistency-list: Reserve In Inconsistencies -------------------------- @@ -662,11 +635,7 @@ cash than they should be). :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`ReserveInInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -678,37 +647,38 @@ cash than they should be). row_id : Integer; // Amount the exchange expects to be in the reserve - amount_exchange_expected : Amount; + amount_exchange_expected : Amount; // Amount deposited into the reserve - amount_wired : Amount; + amount_wired : Amount; // Public key of the reserve - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Time of the deposit - timestamp : Timestamp; + timestamp : Timestamp; // Account associated with the reserve - account : string; + account : string; // Human readable diagnostic of the problem - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. + -This API is used to suppress select elements of reserve in inconsistencies .. http:patch:: /monitoring/reserve-in-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of reserve in inconsistencies. Update the 'suppressed' field of a reserve in inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -718,7 +688,7 @@ This API is used to suppress select elements of reserve in inconsistencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _purse-not-closed-inconsistencies-list: @@ -753,11 +723,7 @@ properly. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`PurseNotClosedInconsistencies` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -766,25 +732,25 @@ properly. interface PurseNotClosedInconsistencies { // Unique row identifier. - row_id : Integer; + row_id : Integer; // Public key of the affected purse - purse_pub : EddsaPublicKey; + purse_pub : EddsaPublicKey; // Amount still in the purse, which should have been refunded - amount : Amount; + amount : Amount; // When the purse expired - expiration_date : Timestamp; + expiration_date : Timestamp; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/purse-not-closed-inconsistencies/$SERIAL_ID @@ -801,7 +767,7 @@ properly. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -835,11 +801,7 @@ process is not running properly. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`ReserveNotClosedInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -848,35 +810,35 @@ process is not running properly. interface ReserveNotClosedInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Public key of the reserve - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Amount still in the reserve at the time of expiration - balance : Amount; + balance : Amount; // Date the reserve expired - expiration_time : Timestamp; + expiration_time : Timestamp; // Human readable string describing the problem - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/reserve-not-closed-inconsistency/$SERIAL_ID - This API is used to suppress select elements of reserve not closed + This endpoint is used to suppress select elements of reserve not closed inconsistencies. Update the 'suppressed' field of a reserve not closed inconsistency element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -888,7 +850,7 @@ process is not running properly. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -922,11 +884,7 @@ compromise resulting in proportional financial losses to the exchange. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`ReserveBalanceInsufficientInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -935,25 +893,25 @@ compromise resulting in proportional financial losses to the exchange. interface ReserveBalanceInsufficientInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Public key of the affected reserve - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Whether this inconsistency is profitable for the exchange - inconsistency_gain : boolean; + inconsistency_gain : boolean; // Amount possibly lost or gained by the exchange - inconsistency_amount : Amount; + inconsistency_amount : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -961,7 +919,7 @@ compromise resulting in proportional financial losses to the exchange. .. http:patch:: /monitoring/reserve-balance-insufficient-inconsistency/$SERIAL_ID - This API is used to suppress select elements of reserve balance insufficient + This endpoint is used to suppress select elements of reserve balance insufficient inconsistencies. Update the 'suppressed' field of a reserve balance insufficient inconsistency element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -973,7 +931,7 @@ compromise resulting in proportional financial losses to the exchange. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _invalid-signature-losses-list: @@ -1007,11 +965,7 @@ could successfully dispute the resulting transactions). :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`BadSigLosses` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1020,30 +974,30 @@ could successfully dispute the resulting transactions). interface BadSigLosses { // Unique row identifier - row_id : Integer; + row_id : Integer; // Operation performed, even though a signature was invalid - operation : string; + operation : string; // Amount considered lost by the exchange - loss : Amount; + loss : Amount; // Public key associated with an operation - operation_specific_pub : EddsaPublicKey; + operation_specific_pub : EddsaPublicKey; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/bad-sig-losses/$SERIAL_ID - This API is used to suppress select elements of bad sig losses. Update the + This endpoint is used to suppress select elements of bad sig losses. Update the 'suppressed' field of a bad sig losses element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -1055,7 +1009,7 @@ could successfully dispute the resulting transactions). .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _coin-inconsistency-list: @@ -1089,11 +1043,7 @@ any effects on its own balance, those entries are excluded from the total. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`CoinInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1102,36 +1052,36 @@ any effects on its own balance, those entries are excluded from the total. interface CoinInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // The operation performed by the exchange - operation : string; + operation : string; // Total the exchange calculated - exchange_amount : Amount; + exchange_amount : Amount; // Total the auditor calculated - auditor_amount : Amount; + auditor_amount : Amount; // Public key of the coin in question - coin_pub : EddsaPublicKey; + coin_pub : EddsaPublicKey; // Whether this arithmetic error was profitable for the exchange - profitable : boolean; + profitable : boolean; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/coin-inconsistency/$SERIAL_ID - This API is used to suppress select elements of coin inconsistencies. + This endpoint is used to suppress select elements of coin inconsistencies. Update the 'suppressed' field of a coin inconsistency element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -1143,7 +1093,7 @@ any effects on its own balance, those entries are excluded from the total. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -1180,11 +1130,7 @@ business situation. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`DenominationsWithoutSigs` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1193,35 +1139,35 @@ business situation. interface DenominationsWithoutSigs { // Unique row identifier - row_id : Integer; + row_id : Integer; // Hash of the denomination public key - denompub_h : HashCode; + denompub_h : HashCode; // Value of each coin of the denomination that lacks // the auditor's signature. - value : Amount; + value : Amount; // From when the denomination key in question is valid - start_time : Timestamp; + start_time : Timestamp; // When the denomination key in question expires - end_time : Timestamp; + end_time : Timestamp; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/denominations-without-sigs/$SERIAL_ID - This API is used to suppress select elements of denominations without sigs + This endpoint is used to suppress select elements of denominations without sigs. Update the 'suppressed' field of a denominations without signatures element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -1233,7 +1179,7 @@ business situation. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _misattribution-in-inconsistency-list: @@ -1266,11 +1212,7 @@ balance, as that balance would be credited to the original account. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`MisattributionInInconsistency` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1279,32 +1221,32 @@ balance, as that balance would be credited to the original account. interface MisattributionInInconsistency { // Unique row identifier in the exchange database. - row_id : Integer; + row_id : Integer; // Amount of money sent to the wrong account - amount : Amount; + amount : Amount; // Row of the transaction in the bank database as // returned by the bank revenue API. - bank_row : Integer; + bank_row : Integer; // Public key of the affected reserve - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/misattribution-in-inconsistency/$SERIAL_ID - This API is used to suppress select elements of misattribution in + This endpoint is used to suppress select elements of misattribution in inconsistencies. Update the 'suppressed' field of an misattribution in inconsistency element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -1316,7 +1258,7 @@ balance, as that balance would be credited to the original account. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. @@ -1358,11 +1300,7 @@ replication from the exchange is working properly. :http:statuscode:`200 OK`: The auditor responds with a top level array of :ts:type:`DepositConfirmations` objecs. - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1371,66 +1309,65 @@ replication from the exchange is working properly. interface DepositConfirmations { // Row id in the exchange database - deposit_confirmation_serial_id : Integer; + deposit_confirmation_serial_id : Integer; // Hash over the contract for which this deposit is made. - h_contract_terms : HashCode; + h_contract_terms : HashCode; // Hash over the policy concerning this deposit - h_policy : HashCode; + h_policy : HashCode; // Hash over the wiring information of the merchant. - h_wire : HashCode; + h_wire : HashCode; // Time when the deposit confirmation confirmation was generated. - exchange_timestamp : Timestamp; + exchange_timestamp : Timestamp; // How much time does the merchant have to issue a refund // request? Zero if refunds are not allowed. - refund_deadline : Timestamp; + refund_deadline : Timestamp; // By what time does the exchange have to wire the funds? - wire_deadline : Timestamp; + wire_deadline : Timestamp; // Amount to be deposited, excluding fee. Calculated from the // amount with fee and the fee from the deposit request. - total_without_fee : Amount; + total_without_fee : Amount; // Array of public keys of the deposited coins. - coin_pubs : EddsaPublicKey[]; + coin_pubs : EddsaPublicKey[]; // Array of deposit signatures of the deposited coins. // Must have the same length as coin_pubs. - coin_sigs : EddsaSignature[]; + coin_sigs : EddsaSignature[]; // The Merchant's public key. Allows the merchant to later refund // the transaction or to inquire about the wire transfer identifier. - merchant_pub : EddsaPublicKey; + merchant_pub : EddsaPublicKey; // Signature from the exchange of type // TALER_SIGNATURE_EXCHANGE_CONFIRM_DEPOSIT. - exchange_sig : EddsaSignature; + exchange_sig : EddsaSignature; // Public signing key from the exchange matching exchange_sig. - exchange_pub : EddsaPublicKey; + exchange_pub : EddsaPublicKey; // Exchange master signature over exchange_sig. - master_sig : EddsaSignature; + master_sig : EddsaSignature; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/deposit-confirmations/$SERIAL_ID - This API is used to suppress select elements of deposit confirmations. + This endpoint is used to suppress select elements of deposit confirmations. Update the 'suppressed' field of an deposit confirmations element with row ID ``$SERIAL_ID``, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. @@ -1442,7 +1379,7 @@ replication from the exchange is working properly. .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _denomination-key-validity-withdraw-inconsistency-list: @@ -1472,17 +1409,8 @@ paid. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`DenominationKeyValidityWithdrawInconsistency` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - FIXME: We don't generally document this for every endpoint, way too redundant. - State this once, globally (say for the entire section!). + The auditor responds with a top level array of :ts:type:`DenominationKeyValidityWithdrawInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. - FIXME: this MUST be a 204 No Content. 4xx means client error (!), and - 404 means the *endpoint* is not known! This comment also applies to other endpoints! **Details:** @@ -1491,33 +1419,29 @@ paid. interface DenominationKeyValidityWithdrawInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // When the withdrawal took place - execution_date : Timestamp; + execution_date : Timestamp; // Public key of the reserve affected - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Hash of the denomination public key involved in the withdrawal - denompub_h : HashCode; + denompub_h : HashCode; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - -FIXME-CG: discuss this with students... - -This API is used to suppress select elements of denomination key validity withdraw inconsistencies + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/denomination-key-validity-withdraw-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of denomination key validity withdraw inconsistencies. Update the 'suppressed' field of a denomination key validity withdraw inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1527,18 +1451,14 @@ This API is used to suppress select elements of denomination key validity withdr .. note:: - This API is still experimental. The API will be further developed as needed. - + This endpoint is still experimental. The endpoint will be further developed as needed. -FIXME-CG: discuss this with students... - - -.. amount-arithmetic-inconsistency-list: +.. _amount-arithmetic-inconsistency-list: Amount Arithmetic Inconsistencies --------------------------------- -This API is used to obtain a list of amount arithmetic inconsistencies. +This endpoint is used to obtain a list of amount arithmetic inconsistencies. This section lists cases where the arithmetic of the exchange involving amounts disagrees with the arithmetic of the auditor. @@ -1572,13 +1492,9 @@ to be optional. Are you sure this covers all cases? **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`AmountArithmeticInconsistency` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`AmountArithmeticInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1587,16 +1503,16 @@ to be optional. Are you sure this covers all cases? interface AmountArithmeticInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Name of the arithmetic operation performed - operation : string; + operation : string; // Amount according to the exchange - exchange_amount : Amount; + exchange_amount : Amount; // Amount according to the auditor - auditor_amount : Amount; + auditor_amount : Amount; // Whether the miscalculation is profitable for the exchange profitable : boolean; @@ -1608,16 +1524,12 @@ to be optional. Are you sure this covers all cases? .. note:: - This API is still experimental. The API will be further developed as needed. - + This endpoint is still experimental. The endpoint will be further developed as needed. -FIXME - -This API is used to suppress select elements of amount arithmetic inconsistencies .. http:patch:: /monitoring/amount-arithmetic-inconsistency/$SERIAL_ID - Update the 'suppressed' field of an amount arithmetic inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. + This endpoint is used to suppress select elements of amount arithmetic inconsistencies. Update the 'suppressed' field of an amount arithmetic inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1626,7 +1538,7 @@ This API is used to suppress select elements of amount arithmetic inconsistencie .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. .. _wire-format-inconsistency-list: @@ -1659,13 +1571,9 @@ transfers). **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`WireFormatInconsistency` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`WireFormatInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1674,33 +1582,34 @@ transfers). interface WireFormatInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Amount that was part of the wire - amount : Amount; + amount : Amount; // Offset of the duplicate wire transfer subject // in the bank database according to the revenue API. - wire_offset : Integer; + wire_offset : Integer; // True if this diagnostic was suppressed. - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. + -This API is used to suppress select elements of wire format inconsistencies .. http:patch:: /monitoring/wire-format-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of wire format inconsistencies. Update the 'suppressed' field of a wire format inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1710,12 +1619,12 @@ This API is used to suppress select elements of wire format inconsistencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. refreshes-hanging-list: +.. _refreshes-hanging-list: Refreshes Hanging ----------------- @@ -1746,13 +1655,9 @@ operation. If many operations are hanging, this might be indicative of a bug **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`RefreshesHanging` objects. + The auditor responds with a top level array of :ts:type:`RefreshesHanging` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1761,28 +1666,29 @@ operation. If many operations are hanging, this might be indicative of a bug interface RefreshesHanging { // Unique row identifier - row_id : Integer; + row_id : Integer; // Amount in coin not found in the exchange - amount : Amount; + amount : Amount; // Public key of coin - coin_pub : EddsaPublicKey; + coin_pub : EddsaPublicKey; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. + -This API is used to suppress select elements of refreshes hanging .. http:patch:: /monitoring/refreshes-hanging/$SERIAL_ID + This endpoint is used to suppress select elements of refreshes hanging. Update the 'suppressed' field of a refreshes hanging element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1792,17 +1698,17 @@ This API is used to suppress select elements of refreshes hanging .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. closure-lags-list: +.. _closure-lags-list: Closure Lags ------------ -This API is used to obtain a list of closure lags. +This endpoint is used to obtain a list of closure lags. A closure lag happens if a reserve should have closed a reserve and wired (remaining) funds back to the originating account, but did not @@ -1832,13 +1738,9 @@ the **taler-exchange-closer** component is operating correctly. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`ClosureLags` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`ClosureLags` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1847,37 +1749,34 @@ the **taler-exchange-closer** component is operating correctly. interface ClosureLags { // Unique row identifier - row_id : Integer; + row_id : Integer; // Amount of money left in the reserve - amount : Amount; + amount : Amount; // When should the reserve have been closed - deadline : Timestamp; + deadline : Timestamp; // FIXME: ???? Integer??? - wtid : Integer; + wtid : Integer; // payto URI (RFC 8905) of the account that // should have been credited. - account : string; + account : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - - + This endpoint is still experimental. The endpoint will be further developed as needed. -This API is used to suppress select elements of closure lags .. http:patch:: /monitoring/closure-lags/$SERIAL_ID + This endpoint is used to suppress select elements of closure lags. Update the 'suppressed' field of a closure lags element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1887,23 +1786,19 @@ This API is used to suppress select elements of closure lags .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. wire-out-inconsistency-list: +.. _wire-out-inconsistency-list: Wire Out Inconsistencies ------------------------ -This section highlights cases where the exchange's record about -outgoing wire transfers does not match with that of the bank. +This section highlights cases where the exchange wired a different amount to a destimation account +than the auditor expected. -FIXME: there were *two types* of wire-out-inconsistencies: one detected by the -aggregation helper, and another one by the *wire* helper. The comment fits the -one of the wire helper, but the API fits the one of the aggregation helper! -Did you distinguish the two? .. http:get:: /monitoring/wire-out-inconsistency @@ -1923,13 +1818,9 @@ Did you distinguish the two? **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`WireOutInconsistency` objects. + The auditor responds with a top level array of :ts:type:`WireOutInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -1938,33 +1829,33 @@ Did you distinguish the two? interface WireOutInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Account money was wired to - destination_account : string; + destination_account : string; // How much was suppossed to be wired according to the auditor. - expected : Amount; + expected : Amount; // The amount the exchange claims to have wired. - claimed : Amount; + claimed : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -This API is used to suppress select elements of wire out inconsistencies .. http:patch:: /monitoring/wire-out-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of wire out inconsistencies. Update the 'suppressed' field of a wire out inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -1974,12 +1865,12 @@ This API is used to suppress select elements of wire out inconsistencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. FIXME-CG: review from here... -.. reserve-balance-summary-wrong-inconsistency-list: +.. _reserve-balance-summary-wrong-inconsistency-list: Reserve Balance Summary Wrong Inconsistencies --------------------------------------------- @@ -2005,13 +1896,9 @@ expectation of the amount of money in a reserve differs. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`ReserveBalanceSummaryWrongInconsistency` objects. + The auditor responds with a top level array of :ts:type:`ReserveBalanceSummaryWrongInconsistency` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2020,34 +1907,30 @@ expectation of the amount of money in a reserve differs. interface ReserveBalanceSummaryWrongInconsistency { // Unique row identifier - row_id : Integer; + row_id : Integer; // Public key of the reserve affected - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Amount of summary the exchange calculated - exchange_amount : Amount; + exchange_amount : Amount; // Amount of summary the auditor calculated - auditor_amount : Amount; + auditor_amount : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - - - -This API is used to suppress select elements of reserve balance summary wrong inconsistencies + This endpoint is still experimental. The endpoint will be further developed as needed. .. http:patch:: /monitoring/reserve-balance-summary-wrong-inconsistency/$SERIAL_ID + This endpoint is used to suppress select elements of reserve balance summary wrong inconsistencies. Update the 'suppressed' field of a reserve balance summary wrong inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -2057,12 +1940,12 @@ This API is used to suppress select elements of reserve balance summary wrong in .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. row-minor-inconsistencies-list: +.. _row-minor-inconsistencies-list: Row Minor Inconsistencies ------------------------- @@ -2090,13 +1973,9 @@ but not necessarily point to a monetary loss (yet). **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`RowMinorInconsistencies` objects. + The auditor responds with a top level array of :ts:type:`RowMinorInconsistencies` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2105,31 +1984,32 @@ but not necessarily point to a monetary loss (yet). interface RowMinorInconsistencies { // Number of the row in the affected table - row_id : Integer; + row_id : Integer; // The row number in the affected table - row_table : Integer; + row_table : Integer; // Human readable string describing the problem - diagnostic : string; + diagnostic : string; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. + -This API is used to suppress select elements of row minor inconsistencies .. http:patch:: /monitoring/row-minor-inconsistencies/$SERIAL_ID + This endpoint is used to suppress select elements of row minor inconsistencies. Update the 'suppressed' field of a row minor inconsistencies element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. **Response:** @@ -2139,7 +2019,7 @@ This API is used to suppress select elements of row minor inconsistencies .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. ------------------------- @@ -2170,7 +2050,6 @@ Contains a record of balances alongside the exchange. :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. :query balance_key: a string identifying a balance. If specified, only returns elements with this exact key. The default value is NULL. @@ -2179,13 +2058,9 @@ Contains a record of balances alongside the exchange. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`Balances` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`Balances` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2194,27 +2069,27 @@ Contains a record of balances alongside the exchange. interface Balances { // Unique row identifier - row_id : Integer; + row_id : Integer; // String identifying a balance - balance_key : string; + balance_key : string; // Amount of the balance - balance_value : Amount; + balance_value : Amount; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. historic-denomination-revenue-list: +.. _historic-denomination-revenue-list: Historic Denomination Revenue ----------------------------- -This API is used to obtain a list of historic denomination revenue +This endpoint is used to obtain a list of historic denomination revenue #FIXME: this is missing some information @@ -2228,21 +2103,16 @@ This API is used to obtain a list of historic denomination revenue :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. - + With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`HistoricDenominationRevenue` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`HistoricDenominationRevenue` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2251,55 +2121,36 @@ This API is used to obtain a list of historic denomination revenue interface HistoricDenominationRevenue { // Unique row identifier - row_id : Integer; + row_id : Integer; // Hash code of the denomination public key involved denom_pub_hash : HashCode; // #FIXME not sure - revenue_timestamp : Timestamp; + revenue_timestamp : Timestamp; - // #FIXME not sure - revenue_balance : Amount; + //FIXME not sure + revenue_balance : Amount; - // #FIXME not sure - loss_balance : Amount; + //FIXME not sure + loss_balance : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - -FIXME: again, suppression makes no sense for this endpoint! - -This API is used to suppress select elements of historic denomination revenue - -.. http:patch:: /monitoring/historic-denomination-revenue/$SERIAL_ID - - Update the 'suppressed' field of a historic denomination revenue element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. - - **Response:** - - :http:statuscode:`204 No Content`: - The element has been updated. - - .. note:: - - This API is still experimental. The API will be further developed as needed. - + This endpoint is still experimental. The endpoint will be further developed as needed. -.. denomination-pending-list: +.. _denomination-pending-list: Denomination Pending -------------------- -This API is used to obtain a list of denomination pending +This endpoint is used to obtain a list of denomination pending #FIXME: this is missing some information @@ -2313,21 +2164,16 @@ This API is used to obtain a list of denomination pending :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. - + With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`DenominationPending` objects. + The auditor responds with a top level array of :ts:type:`DenominationPending` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2336,55 +2182,34 @@ This API is used to obtain a list of denomination pending interface DenominationPending { // Unique row identifier - row_id : Integer; + row_id : Integer; // Hash of the denomination public key - denom_pub_hash : HashCode; + denom_pub_hash : HashCode; - // #FIXME not sure - denom_balance : Amount; + //FIXME not sure + denom_balance : Amount; - denom_loss : Amount; + denom_loss : Amount; - num_issued : Integer; + num_issued : Integer; - denom_risk : Amount; + denom_risk : Amount; - recoup_loss : Amount; + recoup_loss : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - -FIXME: again, suppression makes no sense for this endpoint! + This endpoint is still experimental. The endpoint will be further developed as needed. -This API is used to suppress select elements of denomination pending - -.. http:patch:: /monitoring/denomination-pending/$SERIAL_ID - - Update the 'suppressed' field of a denomination pending element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. - - **Response:** - - :http:statuscode:`204 No Content`: - The element has been updated. - - .. note:: - - This API is still experimental. The API will be further developed as needed. - - - - -.. historic-reserve-summary-list: +.. _historic-reserve-summary-list: Historic Reserve Summary ------------------------ @@ -2404,21 +2229,16 @@ differs from its actual summary. :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. - + With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`HistoricReserveSummary` objects. + The auditor responds with a top level array of :ts:type:`HistoricReserveSummary` objects. If no elements could be found, an empty array is returned - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2427,47 +2247,25 @@ differs from its actual summary. interface HistoricReserveSummary { // Unique row identifier - row_id : Integer; + row_id : Integer; // From when the summary starts - start_date : Timestamp; + start_date : Timestamp; // When the summary ends - end_date : Timestamp; + end_date : Timestamp; // Profits the exchange charged for the reserve - reserve_profits : Amount; + reserve_profits : Amount; // True if this diagnostic was suppressed. - suppressed : boolean; + suppressed : boolean; } .. note:: - This API is still experimental. The API will be further developed as needed. - - -FIXME: again, suppression makes no sense for this endpoint! - - -This API is used to suppress select elements of historic reserve summary - -.. http:patch:: /monitoring/historic-reserve-summary/$SERIAL_ID - - Update the 'suppressed' field of a historic reserve summary element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. - - **Response:** - - :http:statuscode:`204 No Content`: - The element has been updated. - - .. note:: - - This API is still experimental. The API will be further developed as needed. - - - + This endpoint is still experimental. The endpoint will be further developed as needed. .. _reserves-list: @@ -2476,7 +2274,7 @@ This API is used to suppress select elements of historic reserve summary Reserves -------- -This API is used to obtain a list of reserves +This endpoint is used to obtain a list of reserves #FIXME: this is missing some information @@ -2490,21 +2288,15 @@ This API is used to obtain a list of reserves :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. FIXME: instead of a suppression filter, it would be useful to filter reserves with a balance of zero *or* below a certain threshold (default: minimum denomination unit?). - + With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`Reserves` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`Reserves` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. **Details:** @@ -2513,44 +2305,44 @@ This API is used to obtain a list of reserves interface Reserves { // Unique row identifier - auditor_reserves_rowid : Integer; + auditor_reserves_rowid : Integer; // Public key of the reserve - reserve_pub : EddsaPublicKey; + reserve_pub : EddsaPublicKey; // Amount in the balance - reserve_balance : Amount; + reserve_balance : Amount; - #FIMXE not sure - reserve_loss : Amount; + //FIMXE not sure + reserve_loss : Amount; // Amount earned by charging withdraw fees - withdraw_fee_balance : Amount; + withdraw_fee_balance : Amount; // Amount earned by charging a closing fee on the reserve - close_fee_balance : Amount; + close_fee_balance : Amount; - #FIXME not sure - purse_fee_balance : Amount; + //FIXME not sure + purse_fee_balance : Amount; - open_fee_balance : Amount; + open_fee_balance : Amount; - history_fee_balance : Amount; + history_fee_balance : Amount; // When the purse expires - expiration_date : Timestamp; + expiration_date : Timestamp; // Who created the account - origin_account : string; + origin_account : string; } .. note:: - This API is still experimental. The API will be further developed as needed. + This endpoint is still experimental. The endpoint will be further developed as needed. -.. purses-list: +.. _purses-list: Purses ------ @@ -2569,21 +2361,15 @@ This section is used to obtain a list of purses. :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. - With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`Purses` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. + The auditor responds with a top level array of :ts:type:`Purses` objects. If no elements could be found, an empty array is returned - :http:statuscode:`404 Not Found`: - No elements could be found. + **Details:** @@ -2592,37 +2378,31 @@ This section is used to obtain a list of purses. interface Purses { // Unique row identifier - auditor_purses_rowid : Integer; + auditor_purses_rowid : Integer; // Public key of the purse - purse_pub : EddsaPublicKey; + purse_pub : EddsaPublicKey; // Amount currently stored in the purse - balance : Amount; + balance : Amount; // Amount the purse is intended for / the maximum amount that can be in the purse - target : Amount; + target : Amount; // When the purse expires - expiration_date : Timestamp; + expiration_date : Timestamp; } .. note:: - This API is still experimental. The API will be further developed as needed. - - - - -This API is used to suppress select elements of purses - + This endpoint is still experimental. The endpoint will be further developed as needed. ---------- Complaints ---------- -This API is used by the wallet or merchants to submit proof of +This endpoint is used by the wallet or merchants to submit proof of misbehavior of an exchange to the auditor. .. note:: @@ -2631,102 +2411,4 @@ misbehavior of an exchange to the auditor. .. http:put:: /complain -Complain about misbehavior to the auditor. - - - ---------- -REMOVE ME ---------- - - -.. exchange-signkeys-list: - -Exchange Signkeys ------------------ - -This API is used to obtain a list of exchange signkeys. - -FIXME: this endpoint doesn't make *any* sense, this is -purely boring internal cached information of the auditor, -nothing interesting to report on at all! - -#FIXME: this is missing some information - -.. http:get:: /monitoring/exchange-signkeys - - Get a list of exchange signkeys stored by the auditor. - - The following query parameters are optional, and can be used to customise the response: - - **Request:** - - :query limit: A signed integer, indicating how many elements relative to the offset query parameter should be returned. The default value is -20. - :query offset: An unsigned integer, indicating from which row onward to return elements. The default value is INT_MAX. - :query return_suppressed: A boolean. If true, returns all eligible rows, otherwise only returns eligible rows that are not suppressed. The default value is false. - - - With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed. - - **Response:** - - :http:statuscode:`200 OK`: - The auditor responds with a top level array of :ts:type:`ExchangeSignkeys` objects. - - :http:statuscode:`403 Forbidden`: - No or bad Bearer token provided. - - :http:statuscode:`404 Not Found`: - No elements could be found. - - **Details:** - - .. ts:def:: ExchangeSignkeys - - interface ExchangeSignkeys { - - // Unique row identifier - row_id : Integer - - // Public key of the exchange - exchange_pub : EddsaPublicKey; - - #FIXME not sure - master_sig : EddsaSignature; - - // From when the exchange public key is valid - ep_valid_from : Timestamp; - - #FIXMME not sure - ep_expire_sign : Timestamp; - - ep_expire_legal : Timestamp; - - // True if this diagnostic was suppressed. - suppressed : boolean; - - - } - - .. note:: - - This API is still experimental. The API will be further developed as needed. - - -FIXME: again, suppression makes no sense for this endpoint! - - -This API is used to suppress select elements of exchange signkeys - -.. http:patch:: /monitoring/exchange-signkeys/$SERIAL_ID - - Update the 'suppressed' field of an exchange signkeys element with row_id $SERIAL_ID, according to :ts:type:`GenericAuditorMonitorPatchRequest`, stored by the auditor. - - **Response:** - - :http:statuscode:`204 No Content`: - The element has been updated. - - .. note:: - - This API is still experimental. The API will be further developed as needed. +Complain about misbehavior to the auditor. +\ No newline at end of file