taler-docs

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

commit 1036e1abd87deeb94fb527a02346e31098d1be14
parent 6ad0e19fc0417f7ec55063b1d883fe999c18d953
Author: Cedric Zwahlen <cedric.zwahlen@students.bfh.ch>
Date:   Thu, 16 May 2024 15:23:35 +0200

Extend api-auditor doc

Diffstat:
Mcore/api-auditor.rst | 3176++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 2996 insertions(+), 180 deletions(-)

diff --git a/core/api-auditor.rst b/core/api-auditor.rst @@ -97,327 +97,3143 @@ know-your-customer (KYC) registration before issuing contracts. time of this writing). -.. _exchange_signkeys-list: ------------------------------------- -Obtaining Exchange Signing Keys List ------------------------------------- +.. fee-time-inconsistency-list: -This API is used by auditor to obtain a list of all exchanges signing keys to be audited. +-------------------------------------------- +Obtaining a list of fee time inconsistencies +-------------------------------------------- -.. http:get:: /exchange-sign-keys +This API is used to obtain a list of fee time inconsistencies - Get a list of all exchange signing keys to be audited by the auditor. +.. http:get:: /fee-time-inconsistency + + Get a list of fee time inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`FeeTimeInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: FeeTimeInconsistency + + interface FeeTimeInconsistency { + + + row_id : Integer; + + type : string; + + time : Timestamp; + + diagnostic : string; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. fee-time-inconsistency-update: + +----------------------------------------------- +Supressing elements of fee time inconsistencies +----------------------------------------------- + +This API is used to suppress select elements of fee time inconsistencies + +.. http:patch:: /fee-time-inconsistency + + Update the 'suppressed' field of an fee time inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. emergency-by-count-list: + +-------------------------------------- +Obtaining a list of emergency by count +-------------------------------------- + +This API is used to obtain a list of emergency by count + +.. http:get:: /emergency-by-count + + Get a list of emergency by count 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. 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; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. emergency-by-count-update: + +----------------------------------------- +Supressing elements of emergency by count +----------------------------------------- + +This API is used to suppress select elements of emergency by count + +.. http:patch:: /emergency-by-count + + Update the 'suppressed' field of an emergency by count element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. row-inconsistency-list: + +--------------------------------------- +Obtaining a list of row inconsistencies +--------------------------------------- + +This API is used to obtain a list of row inconsistencies + +.. http:get:: /row-inconsistency + + Get a list of row inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: RowInconsistency + + interface RowInconsistency { + + + row_id : Integer; + + row_table : string; + + diagnostic : string; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. row-inconsistency-update: + +------------------------------------------ +Supressing elements of row inconsistencies +------------------------------------------ + +This API is used to suppress select elements of row inconsistencies + +.. http:patch:: /row-inconsistency + + Update the 'suppressed' field of an row inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-in-inconsistency-list: + +---------------------------------------------- +Obtaining a list of reserve in inconsistencies +---------------------------------------------- + +This API is used to obtain a list of reserve in inconsistencies + +.. http:get:: /reserve-in-inconsistency + + Get a list of reserve in inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. 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; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-in-inconsistency-update: + +------------------------------------------------- +Supressing elements of reserve in inconsistencies +------------------------------------------------- + +This API is used to suppress select elements of reserve in inconsistencies + +.. http:patch:: /reserve-in-inconsistency + + Update the 'suppressed' field of an reserve in inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. purse-not-closed-inconsistencies-list: + +---------------------------------------------------- +Obtaining a list of purse not closed inconsistencies +---------------------------------------------------- + +This API is used to obtain a list of purse not closed inconsistencies + +.. http:get:: /purse-not-closed-inconsistencies + + Get a list of purse not closed inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: PurseNotClosedInconsistencies + + interface PurseNotClosedInconsistencies { + + + row_id : Integer; + + purse_pub : EddsaPublicKey; + + amount : Amount; + + expiration_date : Timestamp; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. purse-not-closed-inconsistencies-update: + +------------------------------------------------------- +Supressing elements of purse not closed inconsistencies +------------------------------------------------------- + +This API is used to suppress select elements of purse not closed inconsistencies + +.. http:patch:: /purse-not-closed-inconsistencies + + Update the 'suppressed' field of an purse not closed inconsistencies element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-not-closed-inconsistency-list: + +------------------------------------------------------ +Obtaining a list of reserve not closed inconsistencies +------------------------------------------------------ + +This API is used to obtain a list of reserve not closed inconsistencies + +.. http:get:: /reserve-not-closed-inconsistency + + Get a list of reserve not closed inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: ReserveNotClosedInconsistency + + interface ReserveNotClosedInconsistency { + + + row_id : Integer; + + reserve_pub : EddsaPublicKey; + + balance : Amount; + + expiration_time : Timestamp; + + diagnostic : string; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-not-closed-inconsistency-update: + +--------------------------------------------------------- +Supressing elements of reserve not closed inconsistencies +--------------------------------------------------------- + +This API is used to suppress select elements of reserve not closed inconsistencies + +.. http:patch:: /reserve-not-closed-inconsistency + + Update the 'suppressed' field of an reserve not closed inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-balance-insufficient-inconsistency-list: + +---------------------------------------------------------------- +Obtaining a list of reserve balance insufficient inconsistencies +---------------------------------------------------------------- + +This API is used to obtain a list of reserve balance insufficient inconsistencies + +.. http:get:: /reserve-balance-insufficient-inconsistency + + Get a list of reserve balance insufficient inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: ReserveBalanceInsufficientInconsistency + + interface ReserveBalanceInsufficientInconsistency { + + + row_id : Integer; + + reserve_pub : EddsaPublicKey; + + inconsistency_gain : boolean; + + inconsistency_amount : Amount; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserve-balance-insufficient-inconsistency-update: + +------------------------------------------------------------------- +Supressing elements of reserve balance insufficient inconsistencies +------------------------------------------------------------------- + +This API is used to suppress select elements of reserve balance insufficient inconsistencies + +.. http:patch:: /reserve-balance-insufficient-inconsistency + + Update the 'suppressed' field of an reserve balance insufficient inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. bad-sig-losses-list: + +---------------------------------- +Obtaining a list of bad sig losses +---------------------------------- + +This API is used to obtain a list of bad sig losses + +.. http:get:: /bad-sig-losses + + Get a list of bad sig losses 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. + :query operation: A string. If specified, only returns eligible rows with this :ts:type:`BadSigLosses`.operation value. The default value is NULL. + :query use_op_spec_pub: A boolean. If true, use the value of :ts:type:`OpSpecPub` to only return eligible rows with this :ts:type:`BadSigLosses`.operation_specific_pub value. The default value is NULL. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: BadSigLosses + + interface BadSigLosses { + + + row_id : Integer; + + operation : string; + + loss : Amount; + + operation_specific_pub : EddsaPublicKey; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. bad-sig-losses-update: + +------------------------------------- +Supressing elements of bad sig losses +------------------------------------- + +This API is used to suppress select elements of bad sig losses + +.. http:patch:: /bad-sig-losses + + Update the 'suppressed' field of an bad sig losses element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. coin-inconsistency-list: + +---------------------------------------- +Obtaining a list of coin inconsistencies +---------------------------------------- + +This API is used to obtain a list of coin inconsistencies + +.. http:get:: /coin-inconsistency + + Get a list of coin inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: CoinInconsistency + + interface CoinInconsistency { + + + row_id : Integer; + + operation : string; + + exchange_amount : Amount; + + auditor_amount : Amount; + + coin_pub : EddsaPublicKey; + + profitable : boolean; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. coin-inconsistency-update: + +------------------------------------------- +Supressing elements of coin inconsistencies +------------------------------------------- + +This API is used to suppress select elements of coin inconsistencies + +.. http:patch:: /coin-inconsistency + + Update the 'suppressed' field of an coin inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. balances-list: + +---------------------------- +Obtaining a list of balances +---------------------------- + +This API is used to obtain a list of balances + +.. http:get:: /balances + + Get a list of balances 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. + :query balance_key: a string identifying a balance. If specified, only returns elements with this exact key. The default value is NULL. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`Balances` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: Balances + + interface Balances { + + + row_id : Integer; + + balance_key : string; + + balance_value : Amount; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. balances-update: + +------------------------------- +Supressing elements of balances +------------------------------- + +This API is used to suppress select elements of balances + +.. http:patch:: /balances + + Update the 'suppressed' field of an balances element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denominations-without-sigs-list: + +---------------------------------------------- +Obtaining a list of denominations without sigs +---------------------------------------------- + +This API is used to obtain a list of denominations without sigs + +.. http:get:: /denominations-without-sigs + + Get a list of denominations without sigs 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: DenominationsWithoutSigs + + interface DenominationsWithoutSigs { + + + row_id : Integer; + + denompub_h : HashCode; + + value : Amount; + + start_time : Timestamp; + + end_time : Timestamp; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denominations-without-sigs-update: + +------------------------------------------------- +Supressing elements of denominations without sigs +------------------------------------------------- + +This API is used to suppress select elements of denominations without sigs + +.. http:patch:: /denominations-without-sigs + + Update the 'suppressed' field of an denominations without sigs element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. misattribution-in-inconsistency-list: + +----------------------------------------------------- +Obtaining a list of misattribution in inconsistencies +----------------------------------------------------- + +This API is used to obtain a list of misattribution in inconsistencies + +.. http:get:: /misattribution-in-inconsistency + + Get a list of misattribution in inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. ts:def:: MisattributionInInconsistency + + interface MisattributionInInconsistency { + + + row_id : Integer; + + amount : Amount; + + bank_row : Integer; + + reserve_pub : EddsaPublicKey; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. misattribution-in-inconsistency-update: + +-------------------------------------------------------- +Supressing elements of misattribution in inconsistencies +-------------------------------------------------------- + +This API is used to suppress select elements of misattribution in inconsistencies + +.. http:patch:: /misattribution-in-inconsistency + + Update the 'suppressed' field of an misattribution in inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. progress-list: + +---------------------------- +Obtaining a list of progress +---------------------------- + +This API is used to obtain a list of progress + +.. http:get:: /progress + + Get a list of progress 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`Progress` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **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. + + + + +.. progress-update: + +------------------------------- +Supressing elements of progress +------------------------------- + +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:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserves-list: + +---------------------------- +Obtaining a list of reserves +---------------------------- + +This API is used to obtain a list of reserves + +.. http:get:: /reserves + + Get a list of reserves 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. + + + The default values, thus, return at max 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` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: Reserves + + 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:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. reserves-update: + +------------------------------- +Supressing elements of reserves +------------------------------- + +This API is used to suppress select elements of reserves + +.. http:patch:: /reserves + + Update the 'suppressed' field of an reserves element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. deposit-confirmations-list: + +----------------------------------------- +Obtaining a list of deposit confirmations +----------------------------------------- + +This API is used to obtain a list of deposit confirmations + +.. http:get:: /deposit-confirmations + + Get a list of deposit confirmations 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :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:** + + .. 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; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. deposit-confirmations-update: + +-------------------------------------------- +Supressing elements of deposit confirmations +-------------------------------------------- + +This API is used to suppress select elements of deposit confirmations + +.. http:patch:: /deposit-confirmations + + Update the 'suppressed' field of an deposit confirmations element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denomination-key-validity-withdraw-inconsistency-list: + +---------------------------------------------------------------------- +Obtaining a list of denomination key validity withdraw inconsistencies +---------------------------------------------------------------------- + +This API is used to obtain a list of denomination key validity withdraw inconsistencies + +.. http:get:: /denomination-key-validity-withdraw-inconsistency + + Get a list of denomination key validity withdraw inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`DenominationKeyValidityWithdrawInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: DenominationKeyValidityWithdrawInconsistency + + interface DenominationKeyValidityWithdrawInconsistency { + + + row_id : Integer; + + execution_date : Timestamp; + + reserve_pub : EddsaPublicKey; + + denompub_h : HashCode; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denomination-key-validity-withdraw-inconsistency-update: + +------------------------------------------------------------------------- +Supressing elements of denomination key validity withdraw inconsistencies +------------------------------------------------------------------------- + +This API is used to suppress select elements of denomination key validity withdraw inconsistencies + +.. http:patch:: /denomination-key-validity-withdraw-inconsistency + + Update the 'suppressed' field of an denomination key validity withdraw inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. purses-list: + +-------------------------- +Obtaining a list of purses +-------------------------- + +This API is used to obtain a list of purses + +.. http:get:: /purses + + Get a list of purses 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. + + + The default values, thus, return at max 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` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: Purses + + interface Purses { + + + auditor_purses_rowid : Integer; + + purse_pub : EddsaPublicKey; + + balance : Amount; + + target : Amount; + + expiration_date : Timestamp; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. purses-update: + +----------------------------- +Supressing elements of purses +----------------------------- + +This API is used to suppress select elements of purses + +.. http:patch:: /purses + + Update the 'suppressed' field of an purses element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. amount-arithmetic-inconsistency-list: + +----------------------------------------------------- +Obtaining a list of amount arithmetic inconsistencies +----------------------------------------------------- + +This API is used to obtain a list of amount arithmetic inconsistencies + +.. http:get:: /amount-arithmetic-inconsistency + + Get a list of amount arithmetic inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`AmountArithmeticInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: AmountArithmeticInconsistency + + interface AmountArithmeticInconsistency { + + + row_id : Integer; + + operation : string; + + exchange_amount : Amount; + + auditor_amount : Amount; + + profitable : boolean; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. amount-arithmetic-inconsistency-update: + +-------------------------------------------------------- +Supressing elements of amount arithmetic inconsistencies +-------------------------------------------------------- + +This API is used to suppress select elements of amount arithmetic inconsistencies + +.. http:patch:: /amount-arithmetic-inconsistency + + Update the 'suppressed' field of an amount arithmetic inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. historic-denomination-revenue-list: + +------------------------------------------------- +Obtaining a list of historic denomination revenue +------------------------------------------------- + +This API is used to obtain a list of historic denomination revenue + +.. http:get:: /historic-denomination-revenue + + Get a list of historic denomination revenue 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. + + + The default values, thus, return at max 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` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: HistoricDenominationRevenue + + interface HistoricDenominationRevenue { + + + denom_pub_hash : HashCode; + + revenue_timestamp : Timestamp; + + revenue_balance : Amount; + + loss_balance : Amount; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. historic-denomination-revenue-update: + +---------------------------------------------------- +Supressing elements of historic denomination revenue +---------------------------------------------------- + +This API is used to suppress select elements of historic denomination revenue + +.. http:patch:: /historic-denomination-revenue + + Update the 'suppressed' field of an historic denomination revenue element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denomination-pending-list: + +---------------------------------------- +Obtaining a list of denomination pending +---------------------------------------- + +This API is used to obtain a list of denomination pending + +.. http:get:: /denomination-pending + + Get a list of denomination pending 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. + + + The default values, thus, return at max 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` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. 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; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. denomination-pending-update: + +------------------------------------------- +Supressing elements of denomination pending +------------------------------------------- + +This API is used to suppress select elements of denomination pending + +.. http:patch:: /denomination-pending + + Update the 'suppressed' field of an denomination pending element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. historic-reserve-summary-list: + +-------------------------------------------- +Obtaining a list of historic reserve summary +-------------------------------------------- + +This API is used to obtain a list of historic reserve summary + +.. http:get:: /historic-reserve-summary + + Get a list of historic reserve summary 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. + + + The default values, thus, return at max 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` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: HistoricReserveSummary + + interface HistoricReserveSummary { + + + row_id : Integer; + + start_date : Timestamp; + + end_date : Timestamp; + + reserve_profits : Amount; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. historic-reserve-summary-update: + +----------------------------------------------- +Supressing elements of historic reserve summary +----------------------------------------------- + +This API is used to suppress select elements of historic reserve summary + +.. http:patch:: /historic-reserve-summary + + Update the 'suppressed' field of an historic reserve summary element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. exchange-signkeys-list: + +------------------------------------- +Obtaining a list of exchange signkeys +------------------------------------- + +This API is used to obtain a list of exchange signkeys + +.. http:get:: /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. + + + The default values, thus, return at max 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` objecs. + + :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 { + + + exchange_pub : EddsaPublicKey; + + master_sig : EddsaSignature; + + ep_valid_from : Timestamp; + + ep_expire_sign : Timestamp; + + ep_expire_legal : Timestamp; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. exchange-signkeys-update: + +---------------------------------------- +Supressing elements of exchange signkeys +---------------------------------------- + +This API is used to suppress select elements of exchange signkeys + +.. http:patch:: /exchange-signkeys + + Update the 'suppressed' field of an exchange signkeys element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. wire-format-inconsistency-list: + +----------------------------------------------- +Obtaining a list of wire format inconsistencies +----------------------------------------------- + +This API is used to obtain a list of wire format inconsistencies + +.. http:get:: /wire-format-inconsistency + + Get a list of wire format inconsistencies 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. + + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`WireFormatInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: WireFormatInconsistency + + interface WireFormatInconsistency { + + + row_id : Integer; + + amount : Amount; + + wire_offset : Integer; + + diagnostic : string; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. wire-format-inconsistency-update: + +-------------------------------------------------- +Supressing elements of wire format inconsistencies +-------------------------------------------------- + +This API is used to suppress select elements of wire format inconsistencies + +.. http:patch:: /wire-format-inconsistency + + Update the 'suppressed' field of an wire format inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. refreshes-hanging-list: + +------------------------------------- +Obtaining a list of refreshes hanging +------------------------------------- + +This API is used to obtain a list of refreshes hanging + +.. http:get:: /refreshes-hanging + + Get a list of refreshes hanging 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a :ts:type:`ExchangeSignKeysList` object. This request should - virtually always be successful. + The auditor responds with a top level array of :ts:type:`RefreshesHanging` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. **Details:** - .. ts:def:: ExchangeSignKeysList + .. ts:def:: RefreshesHanging - interface ExchangeSignKeysList { - // Exchange signing keys to be audited by the auditor. - exchange-sign-key: ExchangeSignKeyEntry[]; + interface RefreshesHanging { + + + row_id : Integer; + + amount : Amount; + + coin_pub : EddsaPublicKey; + + suppressed : boolean; + + } - .. ts:def:: ExchangeSignKeyEntry + .. note:: + + This API is still experimental. The API will be further developed as needed. + - interface ExchangeSignKeyEntry { - // Public online signing key of the exchange. - exchange_pub: EddsaPublicKey; - // Base URL of the exchange. - master_sig: EddsaSignature; +.. refreshes-hanging-update: - // Time when online signing key will first be use. - ep_valid_from: Timestamp; +---------------------------------------- +Supressing elements of refreshes hanging +---------------------------------------- - // Time when this online signing key will no longer be used. - ep_expire_sign: Timestamp; +This API is used to suppress select elements of refreshes hanging - // Time when this online signing key legally expires. - ep_expire_legal: Timestamp; +.. http:patch:: /refreshes-hanging + + Update the 'suppressed' field of an refreshes hanging element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + } .. note:: - This API is still experimental (and is not yet implemented at the - time of this writing). + This API is still experimental. The API will be further developed as needed. -.. _deposit-confirmation: ---------------------- -Deposit Confirmations ---------------------- -Merchants should probabilistically submit some of the deposit -confirmations they receive from the exchange to auditors to ensure -that the exchange does not lie about recording deposit confirmations -with the exchange. Participating in this scheme ensures that in case -an exchange runs into financial trouble to pay its obligations, the -merchants that did participate in detecting the bad behavior can be -paid out first. -.. http:put:: /deposit-confirmation +.. emergency-list: - Submits a `DepositConfirmation` to the exchange. Should succeed - unless the signature provided is invalid or the exchange is not - audited by this auditor. +----------------------------- +Obtaining a list of emergency +----------------------------- + +This API is used to obtain a list of emergency + +.. http:get:: /emergency + + Get a list of emergency 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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. **Response:** - :http:statuscode:`200 Ok`: - The auditor responds with a `DepositAudited` object. - This request should virtually always be successful. + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`Emergency` objecs. + :http:statuscode:`403 Forbidden`: - The signature on the deposit confirmation is invalid. - :http:statuscode:`410 Gone`: - The public key used to sign the deposit confirmation - was revoked. + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. **Details:** - .. ts:def:: DepositAudited + .. ts:def:: Emergency + + interface Emergency { + + + row_id : Integer; + + denompub_h : HashCode; + + denom_risk : Amount; + + denom_loss : Amount; + + deposit_start : Timestamp; - interface DepositAudited { - // TODO: maybe change to ``204 No content`` instead? + deposit_end : Timestamp; + + value : Amount; + + } - .. ts:def:: DepositConfirmation + .. note:: - interface DepositConfirmation { + This API is still experimental. The API will be further developed as needed. - // Hash over the contract for which this deposit is made. - h_contract_terms: HashCode; - // Hash over the extensions. - h_extensions: HashCode; - // Hash over the wiring information of the merchant. - h_wire: HashCode; - // Time when the deposit confirmation confirmation was generated. - timestamp: Timestamp; +.. emergency-update: - // How much time does the merchant have to issue a refund - // request? Zero if refunds are not allowed. - refund_deadline: Timestamp; +-------------------------------- +Supressing elements of emergency +-------------------------------- - // By what time does the exchange have to wire the funds? - wire_deadline: Timestamp; +This API is used to suppress select elements of emergency - // Amount to be deposited, excluding fee. Calculated from the - // amount with fee and the fee from the deposit request. - amount_without_fee: Amount; +.. http:patch:: /emergency - // Array of public keys of the deposited coins. - coin_pubs: EddsaPublicKey[]; + Update the 'suppressed' field of an emergency element according to :ts:type:`GenericUpdate`, stored by the auditor. - // Array of deposit signatures of the deposited coins. - // Must have the same length as ``coin_pubs``. - coin_sigs: EddsaSignature[]; + **Response:** - // The Merchant's public key. Allows the merchant to later refund - // the transaction or to inquire about the wire transfer identifier. - merchant_pub: EddsaPublicKey; + :http:statuscode:`204 No Content`: + The element was updated. - // Signature from the exchange of type - // ``TALER_SIGNATURE_EXCHANGE_CONFIRM_DEPOSIT``. - exchange_sig: EddsaSignature; + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. - // Public signing key from the exchange matching ``exchange_sig``. - exchange_pub: EddsaPublicKey; + :http:statuscode:`404 Not Found`: + No elements could be found. - // Master public key of the exchange corresponding to ``master_sig``. - // Identifies the exchange this is about. - // @deprecated since v1 (now ignored, global per auditor) - master_pub: EddsaPublicKey; + **Details:** - // When does the validity of the exchange_pub end? - ep_start: Timestamp; + .. ts:def:: GenericUpdate - // When will the exchange stop using the signing key? - ep_expire: Timestamp; + interface GenericUpdate { - // When does the validity of the exchange_pub end? - ep_end: Timestamp; + row_id : Integer; - // Exchange master signature over ``exchange_sig``. - master_sig: EddsaSignature; + suppressed : boolean; + + // unused + ancient : boolean; + } .. note:: - This API 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. + This API is still experimental. The API will be further developed as needed. + + + + +.. closure-lags-list: + +-------------------------------- +Obtaining a list of closure lags +-------------------------------- + +This API is used to obtain a list of closure lags + +.. http:get:: /closure-lags + + Get a list of closure lags stored by the auditor. -This API is used by the auditor to obtain a list of all deposit confirmations that the auditor -did not receive by the exchange, only by the merchant. + The following query parameters are optional, and can be used to customise the response: -.. http:get:: /deposit-confirmation + **Request:** - Get a list of all deposit confirmations that were not received by the auditor from the exchange to be manually audited. + :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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a :ts:type:`DepositConfirmationList` object. + The auditor responds with a top level array of :ts:type:`ClosureLags` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: ClosureLags + + interface ClosureLags { + + + row_id : Integer; + + amount : Amount; + + deadline : Timestamp; + + wtid : Integer; + + account : string; + + suppressed : boolean; + + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. closure-lags-update: + +----------------------------------- +Supressing elements of closure lags +----------------------------------- + +This API is used to suppress select elements of closure lags + +.. http:patch:: /closure-lags + + Update the 'suppressed' field of an closure lags element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + :http:statuscode:`204 No Content`: - No missing deposit confirmations found. + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. **Details:** - .. ts:def:: DepositConfirmationList + .. ts:def:: GenericUpdate + + interface GenericUpdate { - interface DepositConfirmationList { - // Deposit confirmations to be audited. - deposit-confirmations: DepositConfirmation[]; + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + } - .. ts:def:: DepositConfirmation + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. wire-out-inconsistency-list: + +-------------------------------------------- +Obtaining a list of wire out inconsistencies +-------------------------------------------- + +This API is used to obtain a list of wire out inconsistencies + +.. http:get:: /wire-out-inconsistency + + Get a list of wire out inconsistencies 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. + - interface DepositConfirmation { + The default values, thus, return at max the 20 latest elements that are not suppressed. - // Database row id of entry - row_id: Integer; + **Response:** + + :http:statuscode:`200 OK`: + The auditor responds with a top level array of :ts:type:`WireOutInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** - // Time when the deposit confirmation confirmation was generated. - timestamp: Timestamp; + .. ts:def:: WireOutInconsistency - // How much time does the merchant have to issue a refund - // request? Zero if refunds are not allowed. - refund_deadline: Timestamp; + interface WireOutInconsistency { - // By what time does the exchange have to wire the funds? - wire_deadline: Timestamp; + + row_id : Integer; - // Amount to be deposited, excluding fee. Calculated from the - // amount with fee and the fee from the deposit request. - amount_without_fee: Amount; + destination_account : string; + + expected : Amount; + + claimed : Amount; + + suppressed : boolean; + + } .. note:: - This API is still experimental (and is not yet implemented at the - time of this writing). + This API is still experimental. The API will be further developed as needed. + + -This API is used by the auditor to delete an audited deposit confirmation. -.. http:delete:: /deposit-confirmation/$SERIAL_ID +.. wire-out-inconsistency-update: - Delete deposit confirmation entry with given serial_id. +----------------------------------------------- +Supressing elements of wire out inconsistencies +----------------------------------------------- + +This API is used to suppress select elements of wire out inconsistencies + +.. http:patch:: /wire-out-inconsistency + + Update the 'suppressed' field of an wire out inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. **Response:** - :http:statuscode:`204 No content`: - The deposit confirmation was deleted. + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate - :http:statuscode:`401 Unauthorized`: - Unauthorized request. + interface GenericUpdate { - :http:statuscode:`404 Not found`: - The deposit confirmation was unknown. + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } .. note:: - This API is still experimental (and is not yet implemented at the - time of this writing). + This API is still experimental. The API will be further developed as needed. -.. balances-list: ----------------------------------- -Obtaining list of auditor balances ----------------------------------- -This API is used to obtain a list of all the balances that are stored by the auditor. -.. http:get:: /balances +.. reserve-balance-summary-wrong-inconsistency-list: + +----------------------------------------------------------------- +Obtaining a list of 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 + + Get a list of reserve balance summary wrong inconsistencies stored by the auditor. + + The following query parameters are optional, and can be used to customise the response: + + **Request:** - Get a list of all balances stored by the auditor. + :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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a :ts:type:`BalanceList` object. + The auditor responds with a top level array of :ts:type:`ReserveBalanceSummaryWrongInconsistency` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. - :http:statuscode:`409 Conflict`: - Balance missing or other error occured. + :http:statuscode:`404 Not Found`: + No elements could be found. **Details:** - .. ts:def:: BalanceList + .. ts:def:: ReserveBalanceSummaryWrongInconsistency + + interface ReserveBalanceSummaryWrongInconsistency { - interface BalanceList { - // Total amount reported - auditor_total_reported_balance: Amount; + + row_id : Integer; - // Amount potentially missing - auditor_missing_balance: Amount; + reserve_pub : EddsaPublicKey; - //... + exchange_amount : Amount; + + auditor_amount : Amount; + + suppressed : boolean; + + } .. note:: - This API is still experimental (and is not yet implemented at the - time of this writing). The API will be further developed as needed. + This API is still experimental. The API will be further developed as needed. -.. denominations-pending-list: ---------------------------------------- -Obtaining list of pending denominations ---------------------------------------- -This API is used by the auditor to obtain a list of pending denominations -.. http:get:: /pending-denominations +.. reserve-balance-summary-wrong-inconsistency-update: + +-------------------------------------------------------------------- +Supressing elements of reserve balance summary wrong inconsistencies +-------------------------------------------------------------------- + +This API is used to suppress select elements of reserve balance summary wrong inconsistencies + +.. http:patch:: /reserve-balance-summary-wrong-inconsistency + + Update the 'suppressed' field of an reserve balance summary wrong inconsistency element according to :ts:type:`GenericUpdate`, stored by the auditor. + + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** + + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + + } + + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. row-minor-inconsistencies-list: + +--------------------------------------------- +Obtaining a list of row minor inconsistencies +--------------------------------------------- + +This API is used to obtain a list of row minor inconsistencies + +.. http:get:: /row-minor-inconsistencies + + Get a list of row minor inconsistencies stored by the auditor. + + The following query parameters are optional, and can be used to customise the response: - Get a list of all pending denominations. + **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. + + + The default values, thus, return at max the 20 latest elements that are not suppressed. **Response:** :http:statuscode:`200 OK`: - The auditor responds with a :ts:type:`PendingDenominationList` object. + The auditor responds with a top level array of :ts:type:`RowMinorInconsistencies` objecs. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. - :http:statuscode:`204 No content`: - No pending demoninations found. + :http:statuscode:`404 Not Found`: + No elements could be found. **Details:** - .. ts:def:: PendingDenominationList + .. ts:def:: RowMinorInconsistencies + + interface RowMinorInconsistencies { + + + row_id : Integer; + + row_table : Integer; + + diagnostic : string; - interface PendingDenominationList { - // PendingDenominationList of the auditor. - pending_denomination: PendingDenomination[]; + suppressed : boolean; + + } - .. ts:def:: PendingDenomination + .. note:: + + This API is still experimental. The API will be further developed as needed. + + + + +.. row-minor-inconsistencies-update: + +------------------------------------------------ +Supressing elements of row minor inconsistencies +------------------------------------------------ - interface PendingDenomination { +This API is used to suppress select elements of row minor inconsistencies - // Balance of denomination. - denom_balance: Amount; +.. http:patch:: /row-minor-inconsistencies - // Amount that was lost due to failures by the exchange. - denom_loss: Amount; + Update the 'suppressed' field of an row minor inconsistencies element according to :ts:type:`GenericUpdate`, stored by the auditor. - // Amount at risk of loss due to recoup operations. - denom_risk: Amount; + **Response:** + + :http:statuscode:`204 No Content`: + The element was updated. + + :http:statuscode:`403 Forbidden`: + No or bad Bearer token provided. + + :http:statuscode:`404 Not Found`: + No elements could be found. + + **Details:** - // Amount actually lost due to recoup operations after a revocation. - recoup_loss: Amount; + .. ts:def:: GenericUpdate + + interface GenericUpdate { + + row_id : Integer; + + suppressed : boolean; + + // unused + ancient : boolean; + } .. note:: - This API is still experimental (and is not yet implemented at the - time of this writing). + This API is still experimental. The API will be further developed as needed. + + + ---------- Complaints