delete-private-accounts-H_WIRE.h (2490B)
1 /* 2 This file is part of TALER 3 Copyright (C) 2014-2026 Taler Systems SA 4 5 TALER is free software; you can redistribute it and/or modify it under the 6 terms of the GNU Lesser General Public License as published by the Free Software 7 Foundation; either version 2.1, or (at your option) any later version. 8 9 TALER is distributed in the hope that it will be useful, but WITHOUT ANY 10 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 11 A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. 12 13 You should have received a copy of the GNU Lesser General Public License along with 14 TALER; see the file COPYING.LGPL. If not, see 15 <http://www.gnu.org/licenses/> 16 */ 17 /** 18 * @file include/taler/taler-merchant/delete-private-accounts-H_WIRE.h 19 * @brief C interface for DELETE /private/accounts/$H_WIRE of the merchant backend 20 * @author Christian Grothoff 21 */ 22 #ifndef _TALER_MERCHANT__DELETE_PRIVATE_ACCOUNTS_H_WIRE_H 23 #define _TALER_MERCHANT__DELETE_PRIVATE_ACCOUNTS_H_WIRE_H 24 25 #include <taler/taler-merchant/common.h> 26 27 28 /** 29 * Handle for a DELETE /private/accounts/$H_WIRE request. 30 */ 31 struct TALER_MERCHANT_AccountDeleteHandle; 32 33 34 /** 35 * Response details for a DELETE /private/accounts/$H_WIRE request. 36 */ 37 struct TALER_MERCHANT_AccountDeleteResponse 38 { 39 40 /** 41 * HTTP response details. 42 */ 43 struct TALER_MERCHANT_HttpResponse hr; 44 45 }; 46 47 48 /** 49 * Callback for a DELETE /private/accounts/$H_WIRE request. 50 * 51 * @param cls closure 52 * @param adr response details 53 */ 54 typedef void 55 (*TALER_MERCHANT_AccountDeleteCallback)( 56 void *cls, 57 const struct TALER_MERCHANT_AccountDeleteResponse *adr); 58 59 60 /** 61 * Issue a DELETE /private/accounts/$H_WIRE request to remove a wire account. 62 * 63 * @param ctx CURL context to use 64 * @param backend_url base URL of the merchant backend 65 * @param h_wire hash of the wire details identifying the account to delete 66 * @param cb callback to invoke with the result 67 * @param cb_cls closure for @a cb 68 * @return handle for the request, NULL on hard error 69 */ 70 struct TALER_MERCHANT_AccountDeleteHandle * 71 TALER_MERCHANT_account_delete ( 72 struct GNUNET_CURL_Context *ctx, 73 const char *backend_url, 74 const struct TALER_MerchantWireHashP *h_wire, 75 TALER_MERCHANT_AccountDeleteCallback cb, 76 void *cb_cls); 77 78 79 /** 80 * Cancel a DELETE /private/accounts/$H_WIRE request. 81 * 82 * @param[in] adh handle to cancel 83 */ 84 void 85 TALER_MERCHANT_account_delete_cancel ( 86 struct TALER_MERCHANT_AccountDeleteHandle *adh); 87 88 89 #endif