post-management-wire.rst (3080B)
1 .. http:post:: /management/wire 2 3 This request will be used to enable a wire method (exchange bank account). 4 5 **Request:** 6 7 The request must be a `WireSetupRequest`. 8 9 **Response:** 10 11 :http:statuscode:`204 No content`: 12 The wire method was successfully enabled. 13 :http:statuscode:`400 Bad Request`: 14 The payto URI or another parameter is malformed. 15 This response comes with a standard `ErrorDetail` response with 16 a code of ``TALER_EC_GENERIC_PAYTO_URI_MALFORMED`` or 17 ``TALER_EC_GENERIC_PARAMETER_MALFORMED``. 18 :http:statuscode:`403 Forbidden`: 19 A master signature is invalid. Return with error codes of: 20 - ``TALER_EC_EXCHANGE_MANAGEMENT_WIRE_ADD_SIGNATURE_INVALID`` 21 - ``TALER_EC_EXCHANGE_MANAGEMENT_WIRE_DETAILS_SIGNATURE_INVALID`` 22 :http:statuscode:`409 Conflict`: 23 The exchange has a more recent request related to this wire method (replay detected). 24 Returned with an error code of 25 ``TALER_EC_EXCHANGE_MANAGEMENT_WIRE_MORE_RECENT_PRESENT``. 26 :http:statuscode:`413 Request entity too large`: 27 The uploaded body is to long, it exceeds the size limit. 28 Returned with an error code of 29 ``TALER_EC_GENERIC_UPLOAD_EXCEEDS_LIMIT``. 30 31 32 **Details:** 33 34 .. ts:def:: WireSetupRequest 35 36 interface WireSetupRequest { 37 38 // Full ``payto://`` URL identifying the account and wire method 39 payto_uri: string; 40 41 // Signature using the exchange's offline key 42 // over a `TALER_MasterWireDetailsPS` 43 // with purpose ``TALER_SIGNATURE_MASTER_WIRE_DETAILS``. 44 master_sig_wire: EddsaSignature; 45 46 // Signature using the exchange's offline key over a 47 // `TALER_MasterAddWirePS` 48 // with purpose ``TALER_SIGNATURE_MASTER_WIRE_ADD``. 49 master_sig_add: EddsaSignature; 50 51 // When does the wire method become active? 52 // Should be the time when the signature was created, 53 // using the (monotonic!) local time of the system 54 // with the offline master public key. Note that 55 // even if the time is in the future, the wire method will 56 // become active immediately! Used ONLY to detect replay attacks. 57 validity_start: Timestamp; 58 59 // Base URL of a conversion service. 60 // Only given if available. 61 conversion_url?: string; 62 63 // Base URL of a open banking gateway service. 64 // Only given if available. 65 // @since protocol **v34**. 66 open_banking_gateway?: string; 67 68 // Base URL of a wire transfer gateway service. 69 // Only given if available. 70 // @since protocol **v34**. 71 wire_transfer_gateway?: string; 72 73 // Restrictions imposed on crediting the account. 74 credit_restrictions: AccountRestriction[]; 75 76 // Restrictions imposed on debiting the account. 77 debit_restrictions: AccountRestriction[]; 78 79 // Display label wallets should use to show this 80 // bank account. 81 // @since protocol **v19**. 82 bank_label?: string; 83 84 // *Signed* integer with the display priority for 85 // this bank account. 86 // @since protocol **v19**. 87 priority?: Integer; 88 89 }