taler-docs

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

get-aml-OFFICER_PUB-legitimizations.rst (3259B)


      1 .. http:get:: /aml/$OFFICER_PUB/legitimizations
      2 
      3   Enables AML staff to see which legitimizations are pending
      4   or have been completed.
      5   returns a list of active or finished legitimization
      6   measures (by account).
      7 
      8   This endpoint was introduced in protocol **v23**.
      9 
     10   **Request:**
     11 
     12   *Taler-AML-Officer-Signature*:
     13     The client must provide Base-32 encoded EdDSA signature with
     14     ``$OFFICER_PRIV``, affirming the desire to obtain AML data.  Note that
     15     this is merely a simple authentication mechanism, the details of the
     16     request are not protected by the signature.
     17 
     18   :query limit:
     19     *Optional*. takes value of the form ``N (-N)``, so that at
     20     most ``N`` values strictly older (younger) than ``start`` are returned.
     21     Defaults to ``-20`` to return the last 20 entries (before ``start``).
     22   :query offset:
     23     *Optional*. Row number threshold, see ``limit`` for its
     24     interpretation.  Defaults to ``INT64_MAX``, namely the biggest row id
     25     possible in the database.
     26   :query h_payto:
     27     *Optional*. Account selector using the *normalized* payto URI.
     28     All matching accounts are returned if this
     29     filter is absent, otherwise only decisions for this account.
     30   :query active:
     31     *Optional*. If set to yes, only return active decisions, if no only
     32     decisions that have been superseded. Do not give (or use "all") to
     33     see all decisions regardless of activity status.
     34 
     35   **Response:**
     36 
     37   :http:statuscode:`200 Ok`:
     38     Information about possible measures is returned in a
     39     `LegitimizationMeasuresListResponse` object.
     40   :http:statuscode:`204 No content`:
     41     There are no matching legitimization measures.
     42   :http:statuscode:`400 Bad Request`:
     43     The request is malformed. Cases include:
     44     - The ``$H_OFFICER_PUB`` path segment is malformed.
     45       This response comes with a standard `ErrorDetail` response with
     46       a code of ``TALER_EC_GENERIC_PATH_SEGMENT_MALFORMED``.
     47     - The required HTTP header with the signature is missing. Returned with
     48       ``TALER_EC_GENERIC_HTTP_HEADERS_MALFORMED``.
     49   :http:statuscode:`403 Forbidden`:
     50     Two cases:
     51     - The signature is invalid. Returned with a code of
     52       ``TALER_EC_EXCHANGE_GENERIC_AML_OFFICER_GET_SIGNATURE_INVALID``.
     53     - The specific officer is unknown or disabled. Returned with a code of
     54       ``TALER_EC_EXCHANGE_GENERIC_AML_OFFICER_ACCESS_DENIED``.
     55   :http:statuscode:`500 Internal server error`:
     56     The server had an internal problem handling the request.
     57     The error code is usually a ``TALER_EC_GENERIC_DB_FETCH_FAILED``.
     58 
     59   **Details:**
     60 
     61   .. ts:def:: LegitimizationMeasuresListResponse
     62 
     63     interface LegitimizationMeasuresListResponse {
     64 
     65       // Legitimization measures.
     66       measures: LegitimizationMeasureDetails[];
     67 
     68     }
     69 
     70   .. ts:def:: LegitimizationMeasureDetails
     71 
     72     interface LegitimizationMeasureDetails {
     73 
     74       // Hash of the normalized payto:// URI of the account the
     75       // measure applies to.
     76       h_payto: HashCode;
     77 
     78       // Row of the measure in the exchange database.
     79       rowid: Integer;
     80 
     81       // When was the measure started?
     82       start_time: Timestamp;
     83 
     84       // The the actual measures.
     85       measures: LegitimizationMeasures;
     86 
     87       // Was this measure finished by the customer?
     88       is_finished: boolean;
     89 
     90     }