summaryrefslogtreecommitdiff
path: root/libeufin/api-sandbox.rst
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2019-09-25 18:27:04 +0200
committerFlorian Dold <florian.dold@gmail.com>2019-09-25 18:27:04 +0200
commite612ab17157a4fd5a9f37d545918586517133e98 (patch)
treea5e4c658b89b03912abc0cc52b07b16d9f5f8154 /libeufin/api-sandbox.rst
parent24275f1c2280c33edf31640b41a4da5f64911681 (diff)
downloaddocs-e612ab17157a4fd5a9f37d545918586517133e98.tar.gz
docs-e612ab17157a4fd5a9f37d545918586517133e98.tar.bz2
docs-e612ab17157a4fd5a9f37d545918586517133e98.zip
sandbox
Diffstat (limited to 'libeufin/api-sandbox.rst')
-rw-r--r--libeufin/api-sandbox.rst82
1 files changed, 82 insertions, 0 deletions
diff --git a/libeufin/api-sandbox.rst b/libeufin/api-sandbox.rst
new file mode 100644
index 00000000..c020ccce
--- /dev/null
+++ b/libeufin/api-sandbox.rst
@@ -0,0 +1,82 @@
+Sandbox API
+###########
+
+
+Entities
+========
+
+Customer
+ ...
+
+Bank Account
+ ...
+
+EBICS Subscriber
+ ...
+
+
+Assumption for sandbox: One customer corresponds to exactly one EBICS subscriber.
+
+
+HTTP API
+========
+
+
+.. http:post:: /ebicsweb
+
+ Submit an EBICS request to the sandbox.
+
+
+.. http:post:: /admin/customers
+
+ Create a new customer. A customer identifies a human that
+ may own multiple bank accounts.
+
+ When creating a customer, one EBICS subscriber is automatically
+ created for the customer.
+
+ In the future, we might add an API to create multiple additional subscribers for
+ a customer.
+
+ When creating a new customer, an ID will be assigned automatically.
+
+ .. code-block:: tsref
+
+ interface CustomerCreationRequest {
+ // human-readable name for the customer
+ name: string;
+ }
+
+.. http:get:: /admin/customers/:id
+
+ Get information about a customer.
+
+
+ .. code-block:: tsref
+
+ interface CustomerInfo {
+ ebicsInfo?: CustomerEbicsInfo;
+ finTsInfo?: CustomerFinTsInfo;
+ }
+
+ interface CustomerEbicsInfo {
+ ebicsHostId: string;
+ ebicsParterId: string;
+ ebicsUserId: string;
+
+ // Info for the customer's "main subscriber"
+ subscriberInitializationState: "NEW" | "PARTIALLY_INITIALIZED_INI" | "PARTIALLY_INITIALIZED_HIA" | "READY" | "INITIALIZED";
+ }
+
+.. http:post:: /admin/customers/:id/ebics/keyletter
+
+ Accept the information from the customer's ("virtual") INI-Letter and HIA-Letter
+ and change the key's state as required.
+
+ .. code-block:: tsref
+
+ interface KeyLetterRequest {
+ partnerId: string;
+ userId: string;
+ // FIXME: other fields: see spec and put here
+ }