edit method

Future<Response<RazorpayWebhook>> edit({
  1. required String webhookId,
  2. required RazorpayWebhookUpdateRequestBody params,
  3. String? accountId,
  4. void callback(
    1. RazorpayApiException?,
    2. Response<RazorpayWebhook>?
    )?,
})

Update a webhook

@param webhookId - The unique identifier of the webhook. @param params - Check doc for required params @param accountId - Optional: The unique identifier of the partner account.

Implementation

Future<Response<RazorpayWebhook>> edit({
  required String webhookId,
  required RazorpayWebhookUpdateRequestBody params,
  String? accountId,
  void Function(RazorpayApiException?, Response<RazorpayWebhook>?)? callback,
}) async {
  if (webhookId.isEmpty) {
    throw ArgumentError('webhookId is required');
  }

  if (accountId != null && accountId.isNotEmpty) {
    return api.patch<RazorpayWebhook>(
      // V2 uses PATCH
      {
        'version': 'v2',
        'url': '$BASE_URL/$accountId$WEBHOOKS_BASE/$webhookId',
        'data': params.toJson(),
      },
      fromJsonFactory: RazorpayWebhook.fromJson,
      callback: callback,
    );
  } else {
    return api.put<RazorpayWebhook>(
      // V1 uses PUT
      {
        'url': '$WEBHOOKS_BASE/$webhookId',
        'data': params.toJson(),
      },
      fromJsonFactory: RazorpayWebhook.fromJson,
      callback: callback,
    );
  }
}