taler-docs

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

commit 9ee5d90ab358dbac83faefca0ef4ee7cf6e3ba01
parent a347e11359648bad1291f28f4f4fd1ac6426a8ac
Author: Christian Grothoff <christian@grothoff.org>
Date:   Wed, 17 Feb 2021 12:57:21 +0100

document 'add_provider' transition

Diffstat:
Manastasis.rst | 177+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 177 insertions(+), 0 deletions(-)

diff --git a/anastasis.rst b/anastasis.rst @@ -1310,6 +1310,183 @@ Optional arguments to try uploading recovery document to specific providers (exa Backup transitions """""""""""""""""" +**add_provider:** + +This operation can be performed in state "AUTHENTICATIONS_EDITING". + +Arguments (example): + +.. code-block:: json + + { + "urls": [ + "http://localhost:8888/", + "http://localhost:8089/" + ] + } + +Example for an expected new state (presuming service on port 8089 is +unreachable, service on port 8088 was previously known, and service on port +8888 was now added): + +.. code-block:: json + + { + "backup_state": "AUTHENTICATIONS_EDITING", + "continents": [ + "Europe", + "North_America" + ], + "selected_continent": "Europe", + "countries": [ + { + "code": "ch", + "name": "Switzerland", + "continent": "Europe", + "name_i18n": { + "de_DE": "Schweiz", + "de_CH": "Schwiiz", + "fr": "Suisse", + "en": "Swiss" + }, + "currency": "CHF" + }, + { + "code": "de", + "name": "Germany", + "continent": "Europe", + "continent_i18n": { + "de": "Europa" + }, + "name_i18n": { + "de_DE": "Deutschland", + "de_CH": "Deutschland", + "fr": "Allemagne", + "en": "Germany" + }, + "currency": "EUR" + } + ], + "selected_country": "de", + "currency": "EUR", + "required_attributes": [ + { + "type": "string", + "name": "full_name", + "label": "Full name", + "label_i18n": { + "de_DE": "Vollstaendiger Name", + "de_CH": "Vollstaendiger Name", + "fr": "Nom complet", + "en": "Full name" + }, + "widget": "anastasis_gtk_ia_full_name" + }, + { + "type": "date", + "name": "birthdate", + "label": "Birthdate", + "label_i18n": { + "de_DE": "Geburtsdatum", + "de_CH": "Geburtsdatum", + "fr": "Date de naissance", + "en": "Birthdate" + }, + "widget": "anastasis_gtk_ia_birthdate" + }, + { + "type": "string", + "name": "social_security_number", + "label": "Social security number", + "label_i18n": { + "de_DE": "Sozialversicherungsnummer", + "de_CH": "Sozialversicherungsnummer", + "fr": "Numéro de sécurité sociale", + "en": "Social security number" + }, + "widget": "anastasis_gtk_ia_ssn" + } + ], + "authentication_providers": { + "http://localhost:8089/": { + "error_code": 11, + "http_status": 0 + }, + "http://localhost:8088/": { + "methods": [ + { "name" : "question", + "usage_fee" : "EUR:0.01" }, + { "name" : "sms", + "usage_fee" : "EUR:0.55" } + ], + "annual_fee": "EUR:0.99", + "truth_upload_fee": "EUR:3.99", + "liability_limit": "EUR:1", + "currency": "EUR", + "truth_lifetime": { "d_ms" : 50000000 }, + "storage_limit_in_megabytes": 1, + "provider_name": "Anastasis 4", + "salt": "CXAPCKSH9D3MYJTS9536RHJHCW" + } + "http://localhost:8888/": { + "methods": [ + { "name" : "question", + "usage_fee" : "EUR:0.01" }, + { "name" : "sms", + "usage_fee" : "EUR:0.55" } + ], + "annual_fee": "EUR:0.99", + "truth_upload_fee": "EUR:3.99", + "liability_limit": "EUR:1", + "currency": "EUR", + "truth_lifetime": { "d_ms" : 50000000 }, + "storage_limit_in_megabytes": 1, + "provider_name": "Anastasis 42", + "salt": "BXAPCKSH9D3MYJTS9536RHJHCX" + } + }, + "identity_attributes": { + "full_name": "Max Musterman", + "social_security_number": "123456789", + "birth_year": 2000, + "birth_month": 1, + "birth_day": 1 + }, + "authentication_methods": [ + { + "method": "question", + "data": { + "question": "Whats the name of your grandmother?", + "answer": "Trudi" + } + }, + { + "method": "email", + "data": { + "email_address": "max@musterman.de" + } + }, + { + "method": "question", + "data": { + "question": "Whats the name of your grandfather?", + "answer": "Fredi" + } + }, + { + "method": "question", + "data": { + "question": "Whats your name?", + "answer": "Hans" + } + } + ] + } + + + + + **add_authentication:** Arguments (example):