.. _sandbox-api: Sandbox API ########### HTTP API ======== .. Payments. .. http:post:: /admin/payments/camt Return the history of one IBAN in Camt.053 format. **Request** .. code-block:: tsref interface CamtParams { // IBAN managed by the running Sandbox, for which // the Camt.053 response is going to be generated. iban: string; // The Camt type to return. Only '53' is allowed // at this moment. type: number; } **Response** The expected Camt.053 document. .. http:get:: /admin/payments Return the list of *all* the payments known by the sandbox. **Response** .. code-block:: tsref interface SandboxPayments { // The list of all known payments, regardless // of any IBAN involved in them. payments: SandboxPayment[]; } .. http:post:: /admin/payments Adds a new payment to the book. Mainly used for testing purposes. **Request:** One object of type `SandboxPayment` .. ts:def:: SandboxPayment interface SandboxPayment { // IBAN that will receive the payment. creditorIban: string; // FIXME creditorBic: string; // FIXME creditorName: string; // IBAN that will send the payment. debitorIban: string; // FIXME debitorBic: string; // FIXME debitorName: string; amount: string; currency: string; // subject of the payment. subject: string; // Whether the payment is credit or debit *for* the // account being managed *by* the running sandbox. // Can take the values: "CRDT" or "DBIT". direction: string; } .. Host management. .. http:post:: /admin/ebics/hosts Creates a new Ebics host. **Request:** .. ts:def:: EbicsHostRequest interface EbicsHostRequest { // Ebics version. hostID: string; // Name of the host. ebicsVersion: string; } .. http:get:: /admin/ebics/hosts Shows the list of all the hosts in the system. **Response:** .. ts:def:: EbicsHostResponse interface EbicsHostResponse { // shows the host IDs that are active in the system. // The Ebics version *is* missing, but it's still available // via the HEV message. ebicsHosts: string[]; } .. http:post:: /admin/ebics/hosts/$hostID/rotate-keys Overwrite the bank's Ebics keys with random ones. This is entirely meant for tests (as the Sandbox itself is) and no backup will be produced along this operation. .. Subscriber management. .. http:post:: /admin/ebics/subscribers Creates a new Ebics subscriber. **Request:** .. ts:def:: SubscriberRequest interface SubscriberRequest { // hostID hostID: string; // userID userID: string; // partnerID partnerID: string; // systemID systemID: string; } .. http:get:: /admin/ebics/subscribers Shows the list of all the subscribers in the system. **Response:** .. ts:def:: SubscribersResponse interface SubscribersResponse { subscribers: Subscriber[] } .. ts:def:: Subscriber interface Subscriber { // userID userID: string; // partnerID partnerID: string; // hostID hostID: string; } .. http:post:: /admin/ebics/bank-accounts Associates a new bank account to an existing subscriber. **Request:** .. ts:def:: BankAccountRequest interface BankAccountRequest { // Ebics subscriber subscriber: string; // IBAN iban: string; // BIC bic: string; // human name name: string; // bank account label label: string; } .. Main EBICS service. .. http:post:: /ebicsweb Serves all the Ebics requests.