taler-docs

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

get-config.rst (3372B)


      1 .. http:get:: /config
      2 
      3   Return the protocol version and currency supported by this exchange backend,
      4   as well as the list of possible KYC requirements.  This endpoint is largely
      5   for the SPA for AML officers. Merchants should use :http:get:`/keys </keys>` which also
      6   contains the protocol version and currency.
      7 
      8   **Response:**
      9 
     10   :http:statuscode:`200 OK`:
     11     The body is a `VersionResponse`.
     12 
     13   .. ts:def:: ExchangeVersionResponse
     14 
     15     interface ExchangeVersionResponse {
     16       // libtool-style representation of the Exchange protocol version, see
     17       // https://www.gnu.org/software/libtool/manual/html_node/Versioning.html#Versioning
     18       // The format is "current:revision:age".
     19       version: string;
     20 
     21       // Release version of the source code.
     22       // The format is MAJOR.MINOR.MICOR[-GITDATA]
     23       // and generally follows the "-v" option of the codebase.
     24       // Since **v38**.
     25       build_version: string;
     26 
     27       // Name of the protocol.
     28       name: "taler-exchange";
     29 
     30       // URN of the implementation (needed to interpret 'revision' in version).
     31       // @since protocol **v18**, may become mandatory in the future.
     32       implementation?: string;
     33 
     34       // Currency supported by this exchange, given
     35       // as a currency code ("USD" or "EUR").
     36       currency: string;
     37 
     38       // Shopping URL where users may find shops that accept
     39       // digital cash issued by this exchange.
     40       // @since protocol **v21**.
     41       shopping_url?: WebURL;
     42 
     43       // How wallets should render this currency.
     44       currency_specification: CurrencySpecification;
     45 
     46       // Names of supported KYC requirements.
     47       // @deprected in **v24**.
     48       supported_kyc_requirements: string[];
     49 
     50       // Bank-specific dialect for the AML SPA. Determines
     51       // which set of forms is available as well as statistics
     52       // to show and sets of properties/events to trigger in
     53       // AML decisions.
     54       // @since protocol **v24**.
     55       aml_spa_dialect?: string;
     56 
     57     }
     58 
     59   .. ts:def:: CurrencySpecification
     60 
     61     interface CurrencySpecification {
     62       // Name of the currency. Like "US Dollar".
     63       name: string;
     64 
     65       // Code of the currency.
     66       // @deprecated in protocol **v18** for the exchange, and
     67       // @deprecated in protocol **v6** for the merchant.
     68       currency: string;
     69 
     70       // how many digits the user may enter after the decimal_separator
     71       num_fractional_input_digits: Integer;
     72 
     73       // Number of fractional digits to render in normal font and size.
     74       num_fractional_normal_digits: Integer;
     75 
     76       // Number of fractional digits to render always, if needed by
     77       // padding with zeros.
     78       num_fractional_trailing_zero_digits: Integer;
     79 
     80       // map of powers of 10 to alternative currency names / symbols, must
     81       // always have an entry under "0" that defines the base name,
     82       // e.g.  "0 => €" or "3 => k€". For BTC, would be "0 => BTC, -3 => mBTC".
     83       // Communicates the currency symbol to be used.
     84       alt_unit_names: { log10 : string };
     85 
     86       // An array of common amounts that should be turned into
     87       // display buttons in dialogs where the user might like
     88       // a short-cut.  The array should have four entries, but
     89       // may have fewer or more entries. Wallets may omit
     90       // later entries in the array.
     91       // @since protocol **v30** (rev 2)
     92       common_amounts: Amount[];
     93 
     94     }