taler-docs

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

get-monitoring-bad-sig-losses.rst (2733B)


      1 .. http:get:: /monitoring/bad-sig-losses
      2 
      3   Get a list of invalid signature losses stored by the auditor.
      4 
      5   The following query parameters are optional, and can be used to customise the response:
      6 
      7   **Request:**
      8 
      9   Pagination follows the :ref:`row-id-pagination` convention.  The non-zero signed
     10   ``limit`` defaults to ``-20``.
     11 
     12   :query limit: Optional non-zero signed number of records; negative values request descending row IDs.
     13   :query offset: Optional :ts:type:`SafeUint64` row ID from which to begin.
     14   :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.
     15   :query operation: A string. If specified, only returns eligible rows with this :ts:type:`BadSigLosses`.operation value. The default value is NULL which means to not filter by operation.
     16   :query op_spec_pub: An EddsaPublicKey (in base32 encoding). If given, use its value to only return rows with this :ts:type:`BadSigLosses`.operation_specific_pub value. The default value is NULL.
     17 
     18   With the default settings, the endpoint returns at most the 20 latest elements that are not suppressed.
     19 
     20   **Response:**
     21 
     22   :http:statuscode:`200 OK`:
     23     The auditor responds with a :ts:type:`BadSigLossesResponse` object. Its ``records`` field is empty if no matching elements were found.
     24   :http:statuscode:`400 Bad request`:
     25     The request is malformed. Returned with an
     26     ``TALER_EC_GENERIC_PARAMETER_MALFORMED`` error code.
     27   :http:statuscode:`401 Unauthorized`:
     28     The request lacks valid authentication credentials.
     29     The response comes with a ``TALER_EC_AUDITOR_GENERIC_UNAUTHORIZED``.
     30   :http:statuscode:`500 Internal Server Error`:
     31     The server experienced an internal error.
     32     The response comes with a ``TALER_EC_GENERIC_DB_SETUP_FAILED``,
     33     ``TALER_EC_GENERIC_DB_FETCH_FAILED``, or
     34     ``TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE`` error code.
     35 
     36   **Details:**
     37 
     38   .. ts:def:: BadSigLossesResponse
     39 
     40     interface BadSigLossesResponse {
     41 
     42       records: BadSigLosses[];
     43 
     44     }
     45 
     46   .. ts:def:: BadSigLosses
     47 
     48     interface BadSigLosses {
     49 
     50       // Unique row identifier
     51       row_id : SafeUint64;
     52 
     53       // Row identifier of the record with the invalid signature.
     54       problem_row_id : SafeUint64;
     55 
     56       // Operation performed, even though a signature was invalid
     57       operation : string;
     58 
     59       // Amount considered lost by the exchange
     60       loss : Amount;
     61 
     62       // Public key associated with an operation
     63       operation_specific_pub : EddsaPublicKey;
     64 
     65       // True if this diagnostic was suppressed.
     66       suppressed : boolean;
     67 
     68     }
     69 
     70   .. note::
     71 
     72     This endpoint is still experimental. The endpoint will be further developed as needed.