patch-management-instances-INSTANCE.rst (3962B)
1 .. http:patch:: /management/instances/$INSTANCE 2 .. http:patch:: [/instances/$INSTANCE]/private 3 4 Update the configuration of a merchant instance. PATCH operations against 5 an instance are authenticated by checking that an authorization is provided 6 that matches either the credential required by the instance being modified 7 OR the ``admin`` instance, depending on the access path used. 8 9 **Required permission:** ``instances-token-write`` 10 11 **Request** 12 13 The request must be a `InstanceReconfigurationMessage`. 14 Removing an existing ``payto_uri`` deactivates 15 the account (it will no longer be used for future contracts). 16 17 **Response:** 18 19 :http:statuscode:`204 No content`: 20 The backend has successfully created the instance. 21 :http:statuscode:`400 Bad Request`: 22 The request body is malformed or a parameter is invalid. 23 Returned with ``TALER_EC_GENERIC_PARAMETER_MALFORMED`` or 24 ``TALER_EC_GENERIC_PARAMETER_MISSING``. 25 :http:statuscode:`404 Not found`: 26 This instance is unknown and thus cannot be reconfigured. 27 Returned with ``TALER_EC_MERCHANT_GENERIC_INSTANCE_UNKNOWN``. 28 :http:statuscode:`409 Conflict`: 29 The instance configuration requires a purge before it can be changed. 30 Returned with ``TALER_EC_MERCHANT_PRIVATE_PATCH_INSTANCES_PURGE_REQUIRED``. 31 :http:statuscode:`500 Internal Server Error`: 32 The server experienced an internal failure. 33 Returned with ``TALER_EC_GENERIC_DB_STORE_FAILED`` or 34 ``TALER_EC_GENERIC_DB_START_FAILED``. 35 36 **Details:** 37 38 .. ts:def:: InstanceReconfigurationMessage 39 40 interface InstanceReconfigurationMessage { 41 42 // Merchant name corresponding to this instance. 43 name: string; 44 45 // Merchant email for customer contact and password reset. 46 email?: string; 47 48 // Merchant phone number for password reset (2-FA) 49 // @since **v21**. 50 phone_number?: string; 51 52 // Merchant public website. 53 website?: string; 54 55 // Merchant logo. 56 logo?: ImageDataUrl; 57 58 // The merchant's physical address (to be put into contracts). 59 address: Location; 60 61 // The jurisdiction under which the merchant conducts its business 62 // (to be put into contracts). 63 jurisdiction: Location; 64 65 // Use STEFAN curves to determine default fees? 66 // If false, no fees are allowed by default. 67 // Can always be overridden by the frontend on a per-order basis. 68 use_stefan: boolean; 69 70 // If the frontend does NOT specify a payment deadline, how long should 71 // offers we make be valid by default? 72 // A value of "forever" is not allowed. 73 // Optional @since **v22** (before the setting was mandatory). 74 // If not provided, the previous setting will now simply be preserved. 75 default_pay_delay?: RelativeTime; 76 77 // If the frontend does NOT specify a refund deadline, how long should 78 // refunds be allowed by default? Added on top of the payment deadline. 79 // A value of "forever" is not allowed. 80 // @since **v22** 81 default_refund_delay?: RelativeTime; 82 83 // If the frontend does NOT specify an execution date, how long should 84 // we tell the exchange to wait to aggregate transactions before 85 // executing the wire transfer? This delay is added on top of 86 // the refund deadline and afterwards subject to rounding 87 // via the ``default_wire_transfer_rounding_interval``. 88 // A value of "forever" is not allowed. 89 // Optional @since **v22** (before the setting was mandatory). 90 // If not provided, the previous setting will now simply be preserved. 91 default_wire_transfer_delay?: RelativeTime; 92 93 // How far should the wire deadline (if computed with the help of 94 // the ``default_wire_transfer_delay``) be rounded up to compute 95 // the ultimate wire deadline? 96 // @since **v22**, defaults to no rounding if not given. 97 default_wire_transfer_rounding_interval?: RoundingInterval; 98 }