commit 818fb71a1b952942867d8e2d7f336ca9794246b9
parent 0e8b95740ab97ebd8c2eaf85f68e7cc8076776fa
Author: Cedric Zwahlen <cedric.zwahlen@students.bfh.ch>
Date: Tue, 28 May 2024 20:43:52 +0200
Add descriptions to Monitoring API
Diffstat:
| M | core/api-auditor.rst | | | 1004 | +++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------- |
1 file changed, 652 insertions(+), 352 deletions(-)
diff --git a/core/api-auditor.rst b/core/api-auditor.rst
@@ -209,7 +209,7 @@ paid out first.
.. _spa-api:
---------------------------
-Single Page Application API
+Monitoring API
---------------------------
The following entries specify how to access the results of an audit.
@@ -222,14 +222,13 @@ To do this, a :ts:type:`GenericUpdate` object may be used.
.. ts:def:: GenericUpdate
interface GenericUpdate {
- // the row_id of a respective table that should be changed
- row_id: Integer;
- // if true, subsequent GET requests will not, by default, receive the row specified in row_id.
- suppressed: boolean;
+ // if true, subsequent GET requests will not this element by default
+ suppressed : boolean;
- // unused
- ancient?: boolean;
+ // unused
+ ancient? : boolean;
+
}
@@ -239,9 +238,13 @@ To do this, a :ts:type:`GenericUpdate` object may be used.
Fee Time Inconsistencies
------------------------
-This API is used to obtain a list of fee time inconsistencies
+This section highlights cases, where validity periods associated with wire fees the
+exchange may charge merchants, are invalid.
+This usually means that a start date of a fee is set to a later date than its end date.
-.. http:get:: /fee-time-inconsistency
+#FIXME: this might be inaccurate
+
+.. http:get:: /monitoring/fee-time-inconsistency
Get a list of fee time inconsistencies stored by the auditor.
@@ -272,11 +275,19 @@ This API is used to obtain a list of fee time inconsistencies
.. ts:def:: FeeTimeInconsistency
interface FeeTimeInconsistency {
- row_id: Integer;
- type: string;
- time: Timestamp;
- diagnostic: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ type : string;
+
+ time : Timestamp;
+
+ diagnostic : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -284,11 +295,13 @@ This API is used to obtain a list of fee time inconsistencies
This API is still experimental. The API will be further developed as needed.
+
+
This API is used to suppress select elements of fee time inconsistencies
-.. http:patch:: /fee-time-inconsistency
+.. http:patch:: /fee-time-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an fee time inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a fee time inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -307,9 +320,20 @@ This API is used to suppress select elements of fee time inconsistencies
Emergencies By Count
--------------------
-This API is used to obtain a list of emergencies by count
+This API is used to obtain a list of emergencies by count.
-.. http:get:: /emergency-by-count
+Emergencies are errors where more coins were deposited than the
+exchange remembers issuing. This usually means that the private keys
+of the exchange were compromised (stolen or factored) and subsequently
+used to sign coins off the books. If this happens, all coins of the
+respective denomination that the exchange has redeemed so far may have
+been created by the attacker, and the exchange would have to refund
+all of the outstanding coins from ordinary users. Thus, the risk
+exposure is the amount of coins in circulation for a particular
+denomination and the maximum loss for the exchange from this type of
+compromise.
+
+.. http:get:: /monitoring/emergency-by-count
Get a list of emergencies by count stored by the auditor.
@@ -340,15 +364,27 @@ This API is used to obtain a list of emergencies by count
.. ts:def:: EmergencyByCount
interface EmergencyByCount {
- row_id: Integer;
- denompub_h: HashCode;
- num_issued: Integer;
- num_known: Integer;
- risk: Amount;
- start: Timestamp;
- deposit_end: Timestamp;
- value: Amount;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ denompub_h : HashCode;
+
+ num_issued : Integer;
+
+ num_known : Integer;
+
+ risk : Amount;
+
+ start : Timestamp;
+
+ deposit_end : Timestamp;
+
+ value : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -360,9 +396,9 @@ This API is used to obtain a list of emergencies by count
This API is used to suppress select elements of emergencies by count
-.. http:patch:: /emergency-by-count
+.. http:patch:: /emergency-by-count/$SERIAL_ID
- Update the 'suppressed' field of an emergency by count element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an emergency by count element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -381,9 +417,16 @@ This API is used to suppress select elements of emergencies by count
Row Inconsistencies
-------------------
-This API is used to obtain a list of row inconsistencies
+This section highlights serious row inconsistencies of the exchange.
+Row inconsistencies are reported from different sources,
+and might point data that is (suddenly) missing from the exchange, or has been manipulated in
+illogical ways. The affected table is noted in the 'table' field. A description of the nature of the
+inconsistency is noted in 'diagnostic'.
+
+#FIXME: this might be inaccurate
-.. http:get:: /row-inconsistency
+
+.. http:get:: /monitoring/row-inconsistency
Get a list of row inconsistencies stored by the auditor.
@@ -414,10 +457,17 @@ This API is used to obtain a list of row inconsistencies
.. ts:def:: RowInconsistency
interface RowInconsistency {
- row_id: Integer;
- row_table: string;
- diagnostic: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ row_table : string;
+
+ diagnostic : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -429,9 +479,9 @@ This API is used to obtain a list of row inconsistencies
This API is used to suppress select elements of row inconsistencies
-.. http:patch:: /row-inconsistency
+.. http:patch:: /row-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an row inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a row inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -452,7 +502,7 @@ Reserve In Inconsistencies
This API is used to obtain a list of reserve in inconsistencies
-.. http:get:: /reserve-in-inconsistency
+.. http:get:: /monitoring/reserve-in-inconsistency
Get a list of reserve in inconsistencies stored by the auditor.
@@ -483,25 +533,39 @@ This API is used to obtain a list of reserve in inconsistencies
.. ts:def:: ReserveInInconsistency
interface ReserveInInconsistency {
- row_id: Integer;
- amount_exchange_expected: Amount;
- amount_wired: Amount;
- reserve_pub: EddsaPublicKey;
- timestamp: Timestamp;
- account: string;
- diagnostic: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ amount_exchange_expected : Amount;
+
+ amount_wired : Amount;
+
+ reserve_pub : EddsaPublicKey;
+
+ timestamp : Timestamp;
+
+ account : string;
+
+ diagnostic : string;
+
+ 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 in inconsistencies
-.. http:patch:: /reserve-in-inconsistency
+.. http:patch:: /reserve-in-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an reserve in inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a reserve in inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -512,14 +576,21 @@ This API is used to suppress select elements of reserve in inconsistencies
This API is still experimental. The API will be further developed as needed.
+
+
+
.. purse-not-closed-inconsistencies-list:
Purse Not Closed Inconsistencies
--------------------------------
-This API is used to obtain a list of purse not closed inconsistencies
+This section highlights cases, in which either payer or payee did not finish their part of a transaction,
+causing a purse – which may contain some currency – to expire.
+
+#FIXME: this might be inaccurate
-.. http:get:: /purse-not-closed-inconsistencies
+
+.. http:get:: /monitoring/purse-not-closed-inconsistencies
Get a list of purse not closed inconsistencies stored by the auditor.
@@ -550,11 +621,19 @@ This API is used to obtain a list of purse not closed inconsistencies
.. ts:def:: PurseNotClosedInconsistencies
interface PurseNotClosedInconsistencies {
- row_id: Integer;
- purse_pub: EddsaPublicKey;
- amount: Amount;
- expiration_date: Timestamp;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ purse_pub : EddsaPublicKey;
+
+ amount : Amount;
+
+ expiration_date : Timestamp;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -562,11 +641,13 @@ This API is used to obtain a list of purse not closed inconsistencies
This API is still experimental. The API will be further developed as needed.
+
+
This API is used to suppress select elements of purse not closed inconsistencies
-.. http:patch:: /purse-not-closed-inconsistencies
+.. http:patch:: /purse-not-closed-inconsistencies/$SERIAL_ID
- Update the 'suppressed' field of an purse not closed inconsistencies element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a purse not closed inconsistencies element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -585,9 +666,9 @@ This API is used to suppress select elements of purse not closed inconsistencies
Reserve Not Closed Inconsistencies
----------------------------------
-This API is used to obtain a list of reserve not closed inconsistencies
+This section highlights cases, in which reserves were not closed, despite being expired.
-.. http:get:: /reserve-not-closed-inconsistency
+.. http:get:: /monitoring/reserve-not-closed-inconsistency
Get a list of reserve not closed inconsistencies stored by the auditor.
@@ -617,13 +698,22 @@ This API is used to obtain a list of reserve not closed inconsistencies
.. ts:def:: ReserveNotClosedInconsistency
- interface ReserveNotClosedInconsistency {
- row_id: Integer;
- reserve_pub: EddsaPublicKey;
- balance: Amount;
- expiration_time: Timestamp;
- diagnostic: string;
- suppressed: boolean;
+ interface ReserveNotClosedInconsistency {
+
+
+ row_id : Integer;
+
+ reserve_pub : EddsaPublicKey;
+
+ balance : Amount;
+
+ expiration_time : Timestamp;
+
+ diagnostic : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -631,11 +721,13 @@ This API is used to obtain a list of reserve not closed inconsistencies
This API is still experimental. The API will be further developed as needed.
+
+
This API is used to suppress select elements of reserve not closed inconsistencies
-.. http:patch:: /reserve-not-closed-inconsistency
+.. http:patch:: /reserve-not-closed-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an reserve not closed inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a reserve not closed inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -647,14 +739,20 @@ This API is used to suppress select elements of reserve not closed inconsistenci
This API is still experimental. The API will be further developed as needed.
+
+
.. reserve-balance-insufficient-inconsistency-list:
Reserve Balance Insufficient Inconsistencies
--------------------------------------------
-This API is used to obtain a list of reserve balance insufficient inconsistencies
+This section highlights cases where more coins were withdrawn from a
+reserve than the reserve contained funding for. This is a serious
+compromise resulting in proportional financial losses to the exchange.
-.. http:get:: /reserve-balance-insufficient-inconsistency
+#FIXME: this might be inaccurate
+
+.. http:get:: /monitoring/reserve-balance-insufficient-inconsistency
Get a list of reserve balance insufficient inconsistencies stored by the auditor.
@@ -685,11 +783,19 @@ This API is used to obtain a list of reserve balance insufficient inconsistencie
.. ts:def:: ReserveBalanceInsufficientInconsistency
interface ReserveBalanceInsufficientInconsistency {
- row_id: Integer;
- reserve_pub: EddsaPublicKey;
- inconsistency_gain: boolean;
- inconsistency_amount: Amount;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ reserve_pub : EddsaPublicKey;
+
+ inconsistency_gain : boolean;
+
+ inconsistency_amount : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -701,9 +807,9 @@ This API is used to obtain a list of reserve balance insufficient inconsistencie
This API is used to suppress select elements of reserve balance insufficient inconsistencies
-.. http:patch:: /reserve-balance-insufficient-inconsistency
+.. http:patch:: /reserve-balance-insufficient-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an reserve balance insufficient inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a reserve balance insufficient inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -717,16 +823,18 @@ This API is used to suppress select elements of reserve balance insufficient inc
-.. bad-sig-losses-list:
+.. invalid-signature-losses-list:
-Bad Sig Losses
+Invalid Signature Losses
--------------
-This API is used to obtain a list of bad sig losses
+This section lists operations that the exchange performed, but for
+which the signatures provided are invalid. Hence the operations were
+invalid and the amount involved should be considered lost.
-.. http:get:: /bad-sig-losses
+.. http:get:: /monitoring/bad-sig-losses
- Get a list of bad sig losses stored by the auditor.
+ Get a list of invalid signature losses stored by the auditor.
The following query parameters are optional, and can be used to customise the response:
@@ -757,11 +865,19 @@ This API is used to obtain a list of bad sig losses
.. ts:def:: BadSigLosses
interface BadSigLosses {
- row_id: Integer;
- operation: string;
- loss: Amount;
- operation_specific_pub: EddsaPublicKey;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ operation : string;
+
+ loss : Amount;
+
+ operation_specific_pub : EddsaPublicKey;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -773,9 +889,9 @@ This API is used to obtain a list of bad sig losses
This API is used to suppress select elements of bad sig losses
-.. http:patch:: /bad-sig-losses
+.. http:patch:: /bad-sig-losses/$SERIAL_ID
- Update the 'suppressed' field of an bad sig losses element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a bad sig losses element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -796,10 +912,16 @@ Coin Inconsistencies
This API is used to obtain a list of coin inconsistencies
-.. http:get:: /coin-inconsistency
+.. http:get:: /monitoring/coin-inconsistency
Get a list of coin inconsistencies stored by the auditor.
+ This section lists cases where the exchange made arithmetic errors found when
+ looking at the transaction history of a coin. The totals sum up the differences
+ in amounts that matter for profit/loss calculations of the exchange. When an
+ exchange merely shifted money from customers to merchants (or vice versa) without
+ any effects on its own balance, those entries are excluded from the total.
+
The following query parameters are optional, and can be used to customise the response:
**Request:**
@@ -827,13 +949,23 @@ This API is used to obtain a list of coin inconsistencies
.. ts:def:: CoinInconsistency
interface CoinInconsistency {
- row_id: Integer;
- operation: string;
- exchange_amount: Amount;
- auditor_amount: Amount;
- coin_pub: EddsaPublicKey;
- profitable: boolean;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ operation : string;
+
+ exchange_amount : Amount;
+
+ auditor_amount : Amount;
+
+ coin_pub : EddsaPublicKey;
+
+ profitable : boolean;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -845,9 +977,9 @@ This API is used to obtain a list of coin inconsistencies
This API is used to suppress select elements of coin inconsistencies
-.. http:patch:: /coin-inconsistency
+.. http:patch:: /coin-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an coin inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a coin inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -866,9 +998,13 @@ This API is used to suppress select elements of coin inconsistencies
Balances
--------
-This API is used to obtain a list of balances
+Unlike many other sections of the auditor, entries in the balances table do not necessarily represent misbehaviour
+or unusual findings. Instead, the auditor keeps its own record of the current balances of purses, to compare them with the
+purse balances.
+
+#FIXME: this might be inaccurate
-.. http:get:: /balances
+.. http:get:: /monitoring/balances
Get a list of balances stored by the auditor.
@@ -900,10 +1036,17 @@ This API is used to obtain a list of balances
.. ts:def:: Balances
interface Balances {
- row_id: Integer;
- balance_key: string;
- balance_value: Amount;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ balance_key : string;
+
+ balance_value : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -915,9 +1058,9 @@ This API is used to obtain a list of balances
This API is used to suppress select elements of balances
-.. http:patch:: /balances
+.. http:patch:: /balances/$SERIAL_ID
- Update the 'suppressed' field of an balances element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a balances element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -931,16 +1074,21 @@ This API is used to suppress select elements of balances
-.. denominations-without-sigs-list:
+.. denominations-without-signatures-list:
-Denominations Without Sigs
---------------------------
+Denominations Without Signatures
+--------------------------------
-This API is used to obtain a list of denominations without sigs
+This section highlights denomination keys that lack a proper
+signature from the taler-auditor-offline tool. This may be
+legitimate, say in case where the auditor's involvement in the
+exchange business is ending and a new auditor is responsible for
+future denominations. So this must be read with a keen eye on the
+business situation.
-.. http:get:: /denominations-without-sigs
+.. http:get:: /monitoring/denominations-without-sigs
- Get a list of denominations without sigs stored by the auditor.
+ Get a list of denominations without signatures stored by the auditor.
The following query parameters are optional, and can be used to customise the response:
@@ -969,12 +1117,21 @@ This API is used to obtain a list of denominations without sigs
.. ts:def:: DenominationsWithoutSigs
interface DenominationsWithoutSigs {
- row_id: Integer;
- denompub_h: HashCode;
- value: Amount;
- start_time: Timestamp;
- end_time: Timestamp;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ denompub_h : HashCode;
+
+ value : Amount;
+
+ start_time : Timestamp;
+
+ end_time : Timestamp;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -986,9 +1143,9 @@ This API is used to obtain a list of denominations without sigs
This API is used to suppress select elements of denominations without sigs
-.. http:patch:: /denominations-without-sigs
+.. http:patch:: /denominations-without-sigs/$SERIAL_ID
- Update the 'suppressed' field of an denominations without sigs element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a denominations without signatures element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1007,9 +1164,15 @@ This API is used to suppress select elements of denominations without sigs
Misattribution In Inconsistencies
---------------------------------
-This API is used to obtain a list of misattribution in inconsistencies
+This section lists cases where the sender account record of an
+incoming wire transfer differs between the exchange and the bank.
+This will cause funds to be sent to the wrong account when the reserve
+is closed and the remaining balance is refunded to the original
+account.
-.. http:get:: /misattribution-in-inconsistency
+#FIXME: not sure if this is accurate
+
+.. http:get:: /monitoring/misattribution-in-inconsistency
Get a list of misattribution in inconsistencies stored by the auditor.
@@ -1040,11 +1203,19 @@ This API is used to obtain a list of misattribution in inconsistencies
.. ts:def:: MisattributionInInconsistency
interface MisattributionInInconsistency {
- row_id: Integer;
- amount: Amount;
- bank_row: Integer;
- reserve_pub: EddsaPublicKey;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ amount : Amount;
+
+ bank_row : Integer;
+
+ reserve_pub : EddsaPublicKey;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1056,9 +1227,9 @@ This API is used to obtain a list of misattribution in inconsistencies
This API is used to suppress select elements of misattribution in inconsistencies
-.. http:patch:: /misattribution-in-inconsistency
+.. http:patch:: /misattribution-in-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an misattribution in inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an misattribution in inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1069,19 +1240,19 @@ This API is used to suppress select elements of misattribution in inconsistencie
This API is still experimental. The API will be further developed as needed.
+.. reserves-list:
-.. progress-list:
-Progress
+Reserves
--------
-This API is used to obtain a list of progress
+This API is used to obtain a list of reserves
-.. http:get:: /progress
+.. http:get:: /monitoring/reserves
- Get a list of progress stored by the auditor.
+ Get a list of reserves stored by the auditor.
The following query parameters are optional, and can be used to customise the response:
@@ -1097,7 +1268,7 @@ This API is used to obtain a list of progress
**Response:**
:http:statuscode:`200 OK`:
- The auditor responds with a top level array of :ts:type:`Progress` objecs.
+ The auditor responds with a top level array of :ts:type:`Reserves` objecs.
:http:statuscode:`403 Forbidden`:
No or bad Bearer token provided.
@@ -1107,89 +1278,36 @@ This API is used to obtain a list of progress
**Details:**
- .. ts:def:: Progress
-
- interface Progress {
- progress_key: string;
- progress_offset: Integer;
- 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 progress
-
-.. http:patch:: /progress
-
- Update the 'suppressed' field of an progress element according to :ts:type:`GenericUpdate`, stored by the auditor.
-
- **Response:**
-
- :http:statuscode:`202 Accepted`:
- The element has been accepted for processing.
-
- .. note::
-
- This API is still experimental. The API will be further developed as needed.
-
-
-
-
-.. reserves-list:
-
-Reserves
---------
+ .. ts:def:: Reserves
-This API is used to obtain a list of reserves
+ interface Reserves {
-.. http:get:: /reserves
+
+ auditor_reserves_rowid : Integer;
- Get a list of reserves stored by the auditor.
+ reserve_pub : EddsaPublicKey;
- The following query parameters are optional, and can be used to customise the response:
+ reserve_balance : Amount;
- **Request:**
+ reserve_loss : Amount;
- :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.
-
+ withdraw_fee_balance : Amount;
- The default values, thus, return at max the 20 latest elements that are not suppressed.
+ close_fee_balance : Amount;
- **Response:**
+ purse_fee_balance : Amount;
- :http:statuscode:`200 OK`:
- The auditor responds with a top level array of :ts:type:`Reserves` objecs.
+ open_fee_balance : Amount;
- :http:statuscode:`403 Forbidden`:
- No or bad Bearer token provided.
+ history_fee_balance : Amount;
- :http:statuscode:`404 Not Found`:
- No elements could be found.
+ expiration_date : Timestamp;
- **Details:**
+ origin_account : string;
- .. ts:def:: Reserves
+ suppressed : boolean;
- interface Reserves {
- auditor_reserves_rowid: Integer;
- reserve_pub: EddsaPublicKey;
- reserve_balance: Amount;
- reserve_loss: Amount;
- withdraw_fee_balance: Amount;
- close_fee_balance: Amount;
- purse_fee_balance: Amount;
- open_fee_balance: Amount;
- history_fee_balance: Amount;
- expiration_date: Timestamp;
- origin_account: string;
- suppressed: boolean;
+
}
.. note::
@@ -1201,9 +1319,9 @@ This API is used to obtain a list of reserves
This API is used to suppress select elements of reserves
-.. http:patch:: /reserves
+.. http:patch:: /reserves/$SERIAL_ID
- Update the 'suppressed' field of an reserves element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an reserves element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1224,7 +1342,7 @@ Deposit Confirmations
This API is used to obtain a list of deposit confirmations
-.. http:get:: /deposit-confirmations
+.. http:get:: /monitoring/deposit-confirmations
Get a list of deposit confirmations stored by the auditor.
@@ -1255,22 +1373,41 @@ This API is used to obtain a list of deposit confirmations
.. ts:def:: DepositConfirmations
interface DepositConfirmations {
- deposit_confirmation_serial_id: Integer;
- h_contract_terms: HashCode;
- h_policy: HashCode;
- h_wire: HashCode;
- exchange_timestamp: Timestamp;
- refund_deadline: Timestamp;
- wire_deadline: Timestamp;
- total_without_fee: Amount;
- coin_pubs: EddsaPublicKey;
- coin_sigs: EddsaSignature;
- merchant_pub: EddsaPublicKey;
- exchange_sig: EddsaSignature;
- exchange_pub: EddsaPublicKey;
- master_sig: EddsaSignature;
- suppressed: boolean;
- ancient: boolean;
+
+
+ deposit_confirmation_serial_id : Integer;
+
+ h_contract_terms : HashCode;
+
+ h_policy : HashCode;
+
+ h_wire : HashCode;
+
+ exchange_timestamp : Timestamp;
+
+ refund_deadline : Timestamp;
+
+ wire_deadline : Timestamp;
+
+ total_without_fee : Amount;
+
+ coin_pubs : EddsaPublicKey;
+
+ coin_sigs : EddsaSignature;
+
+ merchant_pub : EddsaPublicKey;
+
+ exchange_sig : EddsaSignature;
+
+ exchange_pub : EddsaPublicKey;
+
+ master_sig : EddsaSignature;
+
+ suppressed : boolean;
+
+ ancient : boolean;
+
+
}
.. note::
@@ -1282,9 +1419,9 @@ This API is used to obtain a list of deposit confirmations
This API is used to suppress select elements of deposit confirmations
-.. http:patch:: /deposit-confirmations
+.. http:patch:: /deposit-confirmations/$SERIAL_ID
- Update the 'suppressed' field of an deposit confirmations element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an deposit confirmations element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1326,9 +1463,12 @@ This API is used by the auditor to delete an audited deposit confirmation.
Denomination Key Validity Withdraw Inconsistencies
--------------------------------------------------
-This API is used to obtain a list of denomination key validity withdraw inconsistencies
+This section highlights cases, where denomination keys were used to withdraw coins from a reserve,
+after they were already expired.
-.. http:get:: /denomination-key-validity-withdraw-inconsistency
+#FIXME: this might be inaccurate
+
+.. http:get:: /monitoring/denomination-key-validity-withdraw-inconsistency
Get a list of denomination key validity withdraw inconsistencies stored by the auditor.
@@ -1359,11 +1499,19 @@ This API is used to obtain a list of denomination key validity withdraw inconsis
.. ts:def:: DenominationKeyValidityWithdrawInconsistency
interface DenominationKeyValidityWithdrawInconsistency {
- row_id: Integer;
- execution_date: Timestamp;
- reserve_pub: EddsaPublicKey;
- denompub_h: HashCode;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ execution_date : Timestamp;
+
+ reserve_pub : EddsaPublicKey;
+
+ denompub_h : HashCode;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1375,9 +1523,9 @@ This API is used to obtain a list of denomination key validity withdraw inconsis
This API is used to suppress select elements of denomination key validity withdraw inconsistencies
-.. http:patch:: /denomination-key-validity-withdraw-inconsistency
+.. http:patch:: /denomination-key-validity-withdraw-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an denomination key validity withdraw inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a denomination key validity withdraw inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1396,9 +1544,12 @@ This API is used to suppress select elements of denomination key validity withdr
Purses
------
-This API is used to obtain a list of purses
+This section highlights cases, in which a purses summary (balance) does
+not match the balance an exchange expects it to be.
+
+#FIXME: this might be inaccurate
-.. http:get:: /purses
+.. http:get:: /monitoring/purses
Get a list of purses stored by the auditor.
@@ -1429,12 +1580,21 @@ This API is used to obtain a list of purses
.. ts:def:: Purses
interface Purses {
- auditor_purses_rowid: Integer;
- purse_pub: EddsaPublicKey;
- balance: Amount;
- target: Amount;
- expiration_date: Timestamp;
- suppressed: boolean;
+
+
+ auditor_purses_rowid : Integer;
+
+ purse_pub : EddsaPublicKey;
+
+ balance : Amount;
+
+ target : Amount;
+
+ expiration_date : Timestamp;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1446,9 +1606,9 @@ This API is used to obtain a list of purses
This API is used to suppress select elements of purses
-.. http:patch:: /purses
+.. http:patch:: /purses/$SERIAL_ID
- Update the 'suppressed' field of an purses element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a purses element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1469,7 +1629,16 @@ Amount Arithmetic Inconsistencies
This API is used to obtain a list of amount arithmetic inconsistencies
-.. http:get:: /amount-arithmetic-inconsistency
+This section lists cases where the arithmetic of the exchange
+involving amounts disagrees with the arithmetic of the auditor.
+Disagreements imply that either the exchange made a loss (sending out
+too much money), or screwed a customer (and thus at least needs to fix
+the financial damage done to the customer).
+The profitable column is set to true if the arithmetic problem was be determined to be
+profitable for the exchange, false if the problem resulted in a net loss for
+the exchange.
+
+.. http:get:: /monitoring/amount-arithmetic-inconsistency
Get a list of amount arithmetic inconsistencies stored by the auditor.
@@ -1500,12 +1669,21 @@ This API is used to obtain a list of amount arithmetic inconsistencies
.. ts:def:: AmountArithmeticInconsistency
interface AmountArithmeticInconsistency {
- row_id: Integer;
- operation: string;
- exchange_amount: Amount;
- auditor_amount: Amount;
- profitable: boolean;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ operation : string;
+
+ exchange_amount : Amount;
+
+ auditor_amount : Amount;
+
+ profitable : boolean;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1517,9 +1695,9 @@ This API is used to obtain a list of amount arithmetic inconsistencies
This API is used to suppress select elements of amount arithmetic inconsistencies
-.. http:patch:: /amount-arithmetic-inconsistency
+.. http:patch:: /amount-arithmetic-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an amount arithmetic inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an amount arithmetic inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1540,7 +1718,7 @@ Historic Denomination Revenue
This API is used to obtain a list of historic denomination revenue
-.. http:get:: /historic-denomination-revenue
+.. http:get:: /monitoring/historic-denomination-revenue
Get a list of historic denomination revenue stored by the auditor.
@@ -1571,11 +1749,19 @@ This API is used to obtain a list of historic denomination revenue
.. ts:def:: HistoricDenominationRevenue
interface HistoricDenominationRevenue {
- denom_pub_hash: HashCode;
- revenue_timestamp: Timestamp;
- revenue_balance: Amount;
- loss_balance: Amount;
- suppressed: boolean;
+
+
+ denom_pub_hash : HashCode;
+
+ revenue_timestamp : Timestamp;
+
+ revenue_balance : Amount;
+
+ loss_balance : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1587,9 +1773,9 @@ This API is used to obtain a list of historic denomination revenue
This API is used to suppress select elements of historic denomination revenue
-.. http:patch:: /historic-denomination-revenue
+.. http:patch:: /historic-denomination-revenue/$SERIAL_ID
- Update the 'suppressed' field of an historic denomination revenue element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a historic denomination revenue element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1610,7 +1796,7 @@ Denomination Pending
This API is used to obtain a list of denomination pending
-.. http:get:: /denomination-pending
+.. http:get:: /monitoring/denomination-pending
Get a list of denomination pending stored by the auditor.
@@ -1641,13 +1827,23 @@ This API is used to obtain a list of denomination pending
.. ts:def:: DenominationPending
interface DenominationPending {
- denom_pub_hash: HashCode;
- denom_balance: Amount;
- denom_loss: Amount;
- num_issued: Integer;
- denom_risk: Amount;
- recoup_loss: Amount;
- suppressed: boolean;
+
+
+ denom_pub_hash : HashCode;
+
+ denom_balance : Amount;
+
+ denom_loss : Amount;
+
+ num_issued : Integer;
+
+ denom_risk : Amount;
+
+ recoup_loss : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1659,9 +1855,9 @@ This API is used to obtain a list of denomination pending
This API is used to suppress select elements of denomination pending
-.. http:patch:: /denomination-pending
+.. http:patch:: /denomination-pending/$SERIAL_ID
- Update the 'suppressed' field of an denomination pending element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a denomination pending element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1680,9 +1876,12 @@ This API is used to suppress select elements of denomination pending
Historic Reserve Summary
------------------------
-This API is used to obtain a list of historic reserve summary
+This section highlights cases, where the exchanges expectation of the summary in a reserve
+differs from its actual summary.
+
+#FIXME: this might be inaccurate
-.. http:get:: /historic-reserve-summary
+.. http:get:: /monitoring/historic-reserve-summary
Get a list of historic reserve summary stored by the auditor.
@@ -1713,10 +1912,17 @@ This API is used to obtain a list of historic reserve summary
.. ts:def:: HistoricReserveSummary
interface HistoricReserveSummary {
- row_id: Integer;
- start_date: Timestamp;
- end_date: Timestamp;
- reserve_profits: Amount;
+
+
+ row_id : Integer;
+
+ start_date : Timestamp;
+
+ end_date : Timestamp;
+
+ reserve_profits : Amount;
+
+
}
.. note::
@@ -1728,9 +1934,9 @@ This API is used to obtain a list of historic reserve summary
This API is used to suppress select elements of historic reserve summary
-.. http:patch:: /historic-reserve-summary
+.. http:patch:: /historic-reserve-summary/$SERIAL_ID
- Update the 'suppressed' field of an historic reserve summary element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a historic reserve summary element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1751,7 +1957,7 @@ Exchange Signkeys
This API is used to obtain a list of exchange signkeys
-.. http:get:: /exchange-signkeys
+.. http:get:: /monitoring/exchange-signkeys
Get a list of exchange signkeys stored by the auditor.
@@ -1782,12 +1988,21 @@ This API is used to obtain a list of exchange signkeys
.. ts:def:: ExchangeSignkeys
interface ExchangeSignkeys {
- exchange_pub: EddsaPublicKey;
- master_sig: EddsaSignature;
- ep_valid_from: Timestamp;
- ep_expire_sign: Timestamp;
- ep_expire_legal: Timestamp;
- suppressed: boolean;
+
+
+ exchange_pub : EddsaPublicKey;
+
+ master_sig : EddsaSignature;
+
+ ep_valid_from : Timestamp;
+
+ ep_expire_sign : Timestamp;
+
+ ep_expire_legal : Timestamp;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1799,9 +2014,9 @@ This API is used to obtain a list of exchange signkeys
This API is used to suppress select elements of exchange signkeys
-.. http:patch:: /exchange-signkeys
+.. http:patch:: /exchange-signkeys/$SERIAL_ID
- Update the 'suppressed' field of an exchange signkeys element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an exchange signkeys element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1820,9 +2035,9 @@ This API is used to suppress select elements of exchange signkeys
Wire Format Inconsistencies
---------------------------
-This API is used to obtain a list of wire format inconsistencies
+This section highlights cases, where the format of a wire transaction was malformed in some way.
-.. http:get:: /wire-format-inconsistency
+.. http:get:: /monitoring/wire-format-inconsistency
Get a list of wire format inconsistencies stored by the auditor.
@@ -1853,11 +2068,19 @@ This API is used to obtain a list of wire format inconsistencies
.. ts:def:: WireFormatInconsistency
interface WireFormatInconsistency {
- row_id: Integer;
- amount: Amount;
- wire_offset: Integer;
- diagnostic: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ amount : Amount;
+
+ wire_offset : Integer;
+
+ diagnostic : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1869,9 +2092,9 @@ This API is used to obtain a list of wire format inconsistencies
This API is used to suppress select elements of wire format inconsistencies
-.. http:patch:: /wire-format-inconsistency
+.. http:patch:: /wire-format-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an wire format inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a wire format inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1890,9 +2113,13 @@ This API is used to suppress select elements of wire format inconsistencies
Refreshes Hanging
-----------------
-This API is used to obtain a list of refreshes hanging
+This section highlights cases, where refreshed (and then revealed) coins could not be found in an exchanges database.
+This might happen, even if the exchange is operating correctly. In that case, the exchange might simply be slower than
+the auditor.
-.. http:get:: /refreshes-hanging
+#FIXME: this might be inaccurate
+
+.. http:get:: /monitoring/refreshes-hanging
Get a list of refreshes hanging stored by the auditor.
@@ -1923,10 +2150,17 @@ This API is used to obtain a list of refreshes hanging
.. ts:def:: RefreshesHanging
interface RefreshesHanging {
- row_id: Integer;
- amount: Amount;
- coin_pub: EddsaPublicKey;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ amount : Amount;
+
+ coin_pub : EddsaPublicKey;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -1938,9 +2172,9 @@ This API is used to obtain a list of refreshes hanging
This API is used to suppress select elements of refreshes hanging
-.. http:patch:: /refreshes-hanging
+.. http:patch:: /refreshes-hanging/$SERIAL_ID
- Update the 'suppressed' field of an refreshes hanging element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a refreshes hanging element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -1959,9 +2193,22 @@ This API is used to suppress select elements of refreshes hanging
Emergencies
-----------
-This API is used to obtain a list of emergencies
+This API is used to obtain a list of emergencies.
+
+Emergencies are errors where more coins were deposited than the
+exchange remembers issuing. This usually means that the private keys
+of the exchange were compromised (stolen or factored) and subsequently
+used to sign coins off the books. If this happens, all coins of the
+respective denomination that the exchange has redeemed so far may have
+been created by the attacker, and the exchange would have to refund
+all of the outstanding coins from ordinary users. Thus, the risk
+exposure is the amount of coins in circulation for a particular
+denomination and the maximum loss for the exchange from this type of
+compromise.
+
+#FIXME: what is the difference between Emergencies and Emergencies by Count
-.. http:get:: /emergency
+.. http:get:: /monitoring/emergency
Get a list of emergencies stored by the auditor.
@@ -1992,13 +2239,23 @@ This API is used to obtain a list of emergencies
.. ts:def:: Emergency
interface Emergency {
- row_id: Integer;
- denompub_h: HashCode;
- denom_risk: Amount;
- denom_loss: Amount;
- deposit_start: Timestamp;
- deposit_end: Timestamp;
- value: Amount;
+
+
+ row_id : Integer;
+
+ denompub_h : HashCode;
+
+ denom_risk : Amount;
+
+ denom_loss : Amount;
+
+ deposit_start : Timestamp;
+
+ deposit_end : Timestamp;
+
+ value : Amount;
+
+
}
.. note::
@@ -2010,9 +2267,9 @@ This API is used to obtain a list of emergencies
This API is used to suppress select elements of emergencies
-.. http:patch:: /emergency
+.. http:patch:: /emergency/$SERIAL_ID
- Update the 'suppressed' field of an emergency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of an emergency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -2031,9 +2288,16 @@ This API is used to suppress select elements of emergencies
Closure Lags
------------
-This API is used to obtain a list of closure lags
+This API is used to obtain a list of closure lags.
+
+Lag can be due to some component being behind in
+executing transactions. This is usually either the exchange's aggregator, the
+bank's wire transfer logic, or the synchronization of databases between
+exchange and auditor. Significant lag may be indicative of fraud, while
+moderate lag is indicative that the systems may be too slow to handle the
+load. Small amounts of lag can occur in normal operation.
-.. http:get:: /closure-lags
+.. http:get:: /monitoring/closure-lags
Get a list of closure lags stored by the auditor.
@@ -2064,12 +2328,21 @@ This API is used to obtain a list of closure lags
.. ts:def:: ClosureLags
interface ClosureLags {
- row_id: Integer;
- amount: Amount;
- deadline: Timestamp;
- wtid: Integer;
- account: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ amount : Amount;
+
+ deadline : Timestamp;
+
+ wtid : Integer;
+
+ account : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -2081,9 +2354,9 @@ This API is used to obtain a list of closure lags
This API is used to suppress select elements of closure lags
-.. http:patch:: /closure-lags
+.. http:patch:: /closure-lags/$SERIAL_ID
- Update the 'suppressed' field of an closure lags element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a closure lags element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -2102,9 +2375,10 @@ This API is used to suppress select elements of closure lags
Wire Out Inconsistencies
------------------------
-This API is used to obtain a list of wire out inconsistencies
+This section highlights cases where the exchange's record about
+outgoing wire transfers does not match with that of the bank.
-.. http:get:: /wire-out-inconsistency
+.. http:get:: /monitoring/wire-out-inconsistency
Get a list of wire out inconsistencies stored by the auditor.
@@ -2135,11 +2409,19 @@ This API is used to obtain a list of wire out inconsistencies
.. ts:def:: WireOutInconsistency
interface WireOutInconsistency {
- row_id: Integer;
- destination_account: string;
- expected: Amount;
- claimed: Amount;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ destination_account : string;
+
+ expected : Amount;
+
+ claimed : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -2151,9 +2433,9 @@ This API is used to obtain a list of wire out inconsistencies
This API is used to suppress select elements of wire out inconsistencies
-.. http:patch:: /wire-out-inconsistency
+.. http:patch:: /wire-out-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an wire out inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a wire out inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -2174,7 +2456,7 @@ Reserve Balance Summary Wrong Inconsistencies
This API is used to obtain a list of reserve balance summary wrong inconsistencies
-.. http:get:: /reserve-balance-summary-wrong-inconsistency
+.. http:get:: /monitoring/reserve-balance-summary-wrong-inconsistency
Get a list of reserve balance summary wrong inconsistencies stored by the auditor.
@@ -2205,11 +2487,19 @@ This API is used to obtain a list of reserve balance summary wrong inconsistenci
.. ts:def:: ReserveBalanceSummaryWrongInconsistency
interface ReserveBalanceSummaryWrongInconsistency {
- row_id: Integer;
- reserve_pub: EddsaPublicKey;
- exchange_amount: Amount;
- auditor_amount: Amount;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ reserve_pub : EddsaPublicKey;
+
+ exchange_amount : Amount;
+
+ auditor_amount : Amount;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -2221,9 +2511,9 @@ This API is used to obtain a list of reserve balance summary wrong inconsistenci
This API is used to suppress select elements of reserve balance summary wrong inconsistencies
-.. http:patch:: /reserve-balance-summary-wrong-inconsistency
+.. http:patch:: /reserve-balance-summary-wrong-inconsistency/$SERIAL_ID
- Update the 'suppressed' field of an reserve balance summary wrong inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a reserve balance summary wrong inconsistency element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**
@@ -2242,9 +2532,12 @@ This API is used to suppress select elements of reserve balance summary wrong in
Row Minor Inconsistencies
-------------------------
-This API is used to obtain a list of row minor inconsistencies
+The section highlights inconsistencies, which are cause for concern,
+but not necessarily point to a monetary loss (yet).
+
+#FIXME: might not be accurate
-.. http:get:: /row-minor-inconsistencies
+.. http:get:: /monitoring/row-minor-inconsistencies
Get a list of row minor inconsistencies stored by the auditor.
@@ -2275,10 +2568,17 @@ This API is used to obtain a list of row minor inconsistencies
.. ts:def:: RowMinorInconsistencies
interface RowMinorInconsistencies {
- row_id: Integer;
- row_table: Integer;
- diagnostic: string;
- suppressed: boolean;
+
+
+ row_id : Integer;
+
+ row_table : Integer;
+
+ diagnostic : string;
+
+ suppressed : boolean;
+
+
}
.. note::
@@ -2290,9 +2590,9 @@ This API is used to obtain a list of row minor inconsistencies
This API is used to suppress select elements of row minor inconsistencies
-.. http:patch:: /row-minor-inconsistencies
+.. http:patch:: /row-minor-inconsistencies/$SERIAL_ID
- Update the 'suppressed' field of an row minor inconsistencies element according to :ts:type:`GenericUpdate`, stored by the auditor.
+ Update the 'suppressed' field of a row minor inconsistencies element with row_id $SERIAL_ID, according to :ts:type:`GenericUpdate`, stored by the auditor.
**Response:**