defmodule Stripe.WebhookEndpoint do
use Stripe.Entity
@moduledoc "You can configure [webhook endpoints](https://stripe.com/docs/webhooks/) via the API to be\nnotified about events that happen in your Stripe account or connected\naccounts.\n\nMost users configure webhooks from [the dashboard](https://dashboard.stripe.com/webhooks), which provides a user interface for registering and testing your webhook endpoints.\n\nRelated guide: [Setting up webhooks](https://stripe.com/docs/webhooks/configure)"
(
defstruct [
:api_version,
:application,
:created,
:description,
:enabled_events,
:id,
:livemode,
:metadata,
:object,
:secret,
:status,
:url
]
@typedoc "The `webhook_endpoint` type.\n\n * `api_version` The API version events are rendered as for this webhook endpoint.\n * `application` The ID of the associated Connect application.\n * `created` Time at which the object was created. Measured in seconds since the Unix epoch.\n * `description` An optional description of what the webhook is used for.\n * `enabled_events` The list of events to enable for this endpoint. `['*']` indicates that all events are enabled, except those that require explicit selection.\n * `id` Unique identifier for the object.\n * `livemode` Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.\n * `metadata` Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.\n * `object` String representing the object's type. Objects of the same type share the same value.\n * `secret` The endpoint's secret, used to generate [webhook signatures](https://stripe.com/docs/webhooks/signatures). Only returned at creation.\n * `status` The status of the webhook. It can be `enabled` or `disabled`.\n * `url` The URL of the webhook endpoint.\n"
@type t :: %__MODULE__{
api_version: binary | nil,
application: binary | nil,
created: integer,
description: binary | nil,
enabled_events: term,
id: binary,
livemode: boolean,
metadata: term,
object: binary,
secret: binary,
status: binary,
url: binary
}
)
(
nil
@doc "<p>Returns a list of your webhook endpoints.</p>\n\n#### Details\n\n * Method: `get`\n * Path: `/v1/webhook_endpoints`\n"
(
@spec list(
params :: %{
optional(:ending_before) => binary,
optional(:expand) => list(binary),
optional(:limit) => integer,
optional(:starting_after) => binary
},
opts :: Keyword.t()
) ::
{:ok, Stripe.List.t(Stripe.WebhookEndpoint.t())}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def list(params \\ %{}, opts \\ []) do
path = Stripe.OpenApi.Path.replace_path_params("/v1/webhook_endpoints", [], [])
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_params(params)
|> Stripe.Request.put_method(:get)
|> Stripe.Request.make_request()
end
)
)
(
nil
@doc "<p>Retrieves the webhook endpoint with the given ID.</p>\n\n#### Details\n\n * Method: `get`\n * Path: `/v1/webhook_endpoints/{webhook_endpoint}`\n"
(
@spec retrieve(
webhook_endpoint :: binary(),
params :: %{optional(:expand) => list(binary)},
opts :: Keyword.t()
) ::
{:ok, Stripe.WebhookEndpoint.t()}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def retrieve(webhook_endpoint, params \\ %{}, opts \\ []) do
path =
Stripe.OpenApi.Path.replace_path_params(
"/v1/webhook_endpoints/{webhook_endpoint}",
[
%OpenApiGen.Blueprint.Parameter{
in: "path",
name: "webhook_endpoint",
required: true,
schema: %OpenApiGen.Blueprint.Parameter.Schema{
name: "webhook_endpoint",
title: nil,
type: "string",
items: [],
properties: [],
any_of: []
}
}
],
[webhook_endpoint]
)
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_params(params)
|> Stripe.Request.put_method(:get)
|> Stripe.Request.make_request()
end
)
)
(
nil
@doc "<p>A webhook endpoint must have a <code>url</code> and a list of <code>enabled_events</code>. You may optionally specify the Boolean <code>connect</code> parameter. If set to true, then a Connect webhook endpoint that notifies the specified <code>url</code> about events from all connected accounts is created; otherwise an account webhook endpoint that notifies the specified <code>url</code> only about events from your account is created. You can also create webhook endpoints in the <a href=\"https://dashboard.stripe.com/account/webhooks\">webhooks settings</a> section of the Dashboard.</p>\n\n#### Details\n\n * Method: `post`\n * Path: `/v1/webhook_endpoints`\n"
(
@spec create(
params :: %{
optional(:api_version) =>
:"2011-01-01"
| :"2011-06-21"
| :"2011-06-28"
| :"2011-08-01"
| :"2011-09-15"
| :"2011-11-17"
| :"2012-02-23"
| :"2012-03-25"
| :"2012-06-18"
| :"2012-06-28"
| :"2012-07-09"
| :"2012-09-24"
| :"2012-10-26"
| :"2012-11-07"
| :"2013-02-11"
| :"2013-02-13"
| :"2013-07-05"
| :"2013-08-12"
| :"2013-08-13"
| :"2013-10-29"
| :"2013-12-03"
| :"2014-01-31"
| :"2014-03-13"
| :"2014-03-28"
| :"2014-05-19"
| :"2014-06-13"
| :"2014-06-17"
| :"2014-07-22"
| :"2014-07-26"
| :"2014-08-04"
| :"2014-08-20"
| :"2014-09-08"
| :"2014-10-07"
| :"2014-11-05"
| :"2014-11-20"
| :"2014-12-08"
| :"2014-12-17"
| :"2014-12-22"
| :"2015-01-11"
| :"2015-01-26"
| :"2015-02-10"
| :"2015-02-16"
| :"2015-02-18"
| :"2015-03-24"
| :"2015-04-07"
| :"2015-06-15"
| :"2015-07-07"
| :"2015-07-13"
| :"2015-07-28"
| :"2015-08-07"
| :"2015-08-19"
| :"2015-09-03"
| :"2015-09-08"
| :"2015-09-23"
| :"2015-10-01"
| :"2015-10-12"
| :"2015-10-16"
| :"2016-02-03"
| :"2016-02-19"
| :"2016-02-22"
| :"2016-02-23"
| :"2016-02-29"
| :"2016-03-07"
| :"2016-06-15"
| :"2016-07-06"
| :"2016-10-19"
| :"2017-01-27"
| :"2017-02-14"
| :"2017-04-06"
| :"2017-05-25"
| :"2017-06-05"
| :"2017-08-15"
| :"2017-12-14"
| :"2018-01-23"
| :"2018-02-05"
| :"2018-02-06"
| :"2018-02-28"
| :"2018-05-21"
| :"2018-07-27"
| :"2018-08-23"
| :"2018-09-06"
| :"2018-09-24"
| :"2018-10-31"
| :"2018-11-08"
| :"2019-02-11"
| :"2019-02-19"
| :"2019-03-14"
| :"2019-05-16"
| :"2019-08-14"
| :"2019-09-09"
| :"2019-10-08"
| :"2019-10-17"
| :"2019-11-05"
| :"2019-12-03"
| :"2020-03-02"
| :"2020-08-27"
| :"2022-08-01"
| :"2022-11-15"
| :"2023-08-16"
| :"2023-10-16",
optional(:connect) => boolean,
optional(:description) => binary | binary,
optional(:enabled_events) =>
list(
:*
| :"account.application.authorized"
| :"account.application.deauthorized"
| :"account.external_account.created"
| :"account.external_account.deleted"
| :"account.external_account.updated"
| :"account.updated"
| :"application_fee.created"
| :"application_fee.refund.updated"
| :"application_fee.refunded"
| :"balance.available"
| :"billing_portal.configuration.created"
| :"billing_portal.configuration.updated"
| :"billing_portal.session.created"
| :"capability.updated"
| :"cash_balance.funds_available"
| :"charge.captured"
| :"charge.dispute.closed"
| :"charge.dispute.created"
| :"charge.dispute.funds_reinstated"
| :"charge.dispute.funds_withdrawn"
| :"charge.dispute.updated"
| :"charge.expired"
| :"charge.failed"
| :"charge.pending"
| :"charge.refund.updated"
| :"charge.refunded"
| :"charge.succeeded"
| :"charge.updated"
| :"checkout.session.async_payment_failed"
| :"checkout.session.async_payment_succeeded"
| :"checkout.session.completed"
| :"checkout.session.expired"
| :"coupon.created"
| :"coupon.deleted"
| :"coupon.updated"
| :"credit_note.created"
| :"credit_note.updated"
| :"credit_note.voided"
| :"customer.created"
| :"customer.deleted"
| :"customer.discount.created"
| :"customer.discount.deleted"
| :"customer.discount.updated"
| :"customer.source.created"
| :"customer.source.deleted"
| :"customer.source.expiring"
| :"customer.source.updated"
| :"customer.subscription.created"
| :"customer.subscription.deleted"
| :"customer.subscription.paused"
| :"customer.subscription.pending_update_applied"
| :"customer.subscription.pending_update_expired"
| :"customer.subscription.resumed"
| :"customer.subscription.trial_will_end"
| :"customer.subscription.updated"
| :"customer.tax_id.created"
| :"customer.tax_id.deleted"
| :"customer.tax_id.updated"
| :"customer.updated"
| :"customer_cash_balance_transaction.created"
| :"file.created"
| :"financial_connections.account.created"
| :"financial_connections.account.deactivated"
| :"financial_connections.account.disconnected"
| :"financial_connections.account.reactivated"
| :"financial_connections.account.refreshed_balance"
| :"identity.verification_session.canceled"
| :"identity.verification_session.created"
| :"identity.verification_session.processing"
| :"identity.verification_session.redacted"
| :"identity.verification_session.requires_input"
| :"identity.verification_session.verified"
| :"invoice.created"
| :"invoice.deleted"
| :"invoice.finalization_failed"
| :"invoice.finalized"
| :"invoice.marked_uncollectible"
| :"invoice.paid"
| :"invoice.payment_action_required"
| :"invoice.payment_failed"
| :"invoice.payment_succeeded"
| :"invoice.sent"
| :"invoice.upcoming"
| :"invoice.updated"
| :"invoice.voided"
| :"invoiceitem.created"
| :"invoiceitem.deleted"
| :"issuing_authorization.created"
| :"issuing_authorization.request"
| :"issuing_authorization.updated"
| :"issuing_card.created"
| :"issuing_card.updated"
| :"issuing_cardholder.created"
| :"issuing_cardholder.updated"
| :"issuing_dispute.closed"
| :"issuing_dispute.created"
| :"issuing_dispute.funds_reinstated"
| :"issuing_dispute.submitted"
| :"issuing_dispute.updated"
| :"issuing_token.created"
| :"issuing_token.updated"
| :"issuing_transaction.created"
| :"issuing_transaction.updated"
| :"mandate.updated"
| :"payment_intent.amount_capturable_updated"
| :"payment_intent.canceled"
| :"payment_intent.created"
| :"payment_intent.partially_funded"
| :"payment_intent.payment_failed"
| :"payment_intent.processing"
| :"payment_intent.requires_action"
| :"payment_intent.succeeded"
| :"payment_link.created"
| :"payment_link.updated"
| :"payment_method.attached"
| :"payment_method.automatically_updated"
| :"payment_method.detached"
| :"payment_method.updated"
| :"payout.canceled"
| :"payout.created"
| :"payout.failed"
| :"payout.paid"
| :"payout.reconciliation_completed"
| :"payout.updated"
| :"person.created"
| :"person.deleted"
| :"person.updated"
| :"plan.created"
| :"plan.deleted"
| :"plan.updated"
| :"price.created"
| :"price.deleted"
| :"price.updated"
| :"product.created"
| :"product.deleted"
| :"product.updated"
| :"promotion_code.created"
| :"promotion_code.updated"
| :"quote.accepted"
| :"quote.canceled"
| :"quote.created"
| :"quote.finalized"
| :"radar.early_fraud_warning.created"
| :"radar.early_fraud_warning.updated"
| :"refund.created"
| :"refund.updated"
| :"reporting.report_run.failed"
| :"reporting.report_run.succeeded"
| :"reporting.report_type.updated"
| :"review.closed"
| :"review.opened"
| :"setup_intent.canceled"
| :"setup_intent.created"
| :"setup_intent.requires_action"
| :"setup_intent.setup_failed"
| :"setup_intent.succeeded"
| :"sigma.scheduled_query_run.created"
| :"source.canceled"
| :"source.chargeable"
| :"source.failed"
| :"source.mandate_notification"
| :"source.refund_attributes_required"
| :"source.transaction.created"
| :"source.transaction.updated"
| :"subscription_schedule.aborted"
| :"subscription_schedule.canceled"
| :"subscription_schedule.completed"
| :"subscription_schedule.created"
| :"subscription_schedule.expiring"
| :"subscription_schedule.released"
| :"subscription_schedule.updated"
| :"tax.settings.updated"
| :"tax_rate.created"
| :"tax_rate.updated"
| :"terminal.reader.action_failed"
| :"terminal.reader.action_succeeded"
| :"test_helpers.test_clock.advancing"
| :"test_helpers.test_clock.created"
| :"test_helpers.test_clock.deleted"
| :"test_helpers.test_clock.internal_failure"
| :"test_helpers.test_clock.ready"
| :"topup.canceled"
| :"topup.created"
| :"topup.failed"
| :"topup.reversed"
| :"topup.succeeded"
| :"transfer.created"
| :"transfer.reversed"
| :"transfer.updated"
| :"treasury.credit_reversal.created"
| :"treasury.credit_reversal.posted"
| :"treasury.debit_reversal.completed"
| :"treasury.debit_reversal.created"
| :"treasury.debit_reversal.initial_credit_granted"
| :"treasury.financial_account.closed"
| :"treasury.financial_account.created"
| :"treasury.financial_account.features_status_updated"
| :"treasury.inbound_transfer.canceled"
| :"treasury.inbound_transfer.created"
| :"treasury.inbound_transfer.failed"
| :"treasury.inbound_transfer.succeeded"
| :"treasury.outbound_payment.canceled"
| :"treasury.outbound_payment.created"
| :"treasury.outbound_payment.expected_arrival_date_updated"
| :"treasury.outbound_payment.failed"
| :"treasury.outbound_payment.posted"
| :"treasury.outbound_payment.returned"
| :"treasury.outbound_transfer.canceled"
| :"treasury.outbound_transfer.created"
| :"treasury.outbound_transfer.expected_arrival_date_updated"
| :"treasury.outbound_transfer.failed"
| :"treasury.outbound_transfer.posted"
| :"treasury.outbound_transfer.returned"
| :"treasury.received_credit.created"
| :"treasury.received_credit.failed"
| :"treasury.received_credit.succeeded"
| :"treasury.received_debit.created"
),
optional(:expand) => list(binary),
optional(:metadata) => %{optional(binary) => binary} | binary,
optional(:url) => binary
},
opts :: Keyword.t()
) ::
{:ok, Stripe.WebhookEndpoint.t()}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def create(params \\ %{}, opts \\ []) do
path = Stripe.OpenApi.Path.replace_path_params("/v1/webhook_endpoints", [], [])
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_params(params)
|> Stripe.Request.put_method(:post)
|> Stripe.Request.make_request()
end
)
)
(
nil
@doc "<p>Updates the webhook endpoint. You may edit the <code>url</code>, the list of <code>enabled_events</code>, and the status of your endpoint.</p>\n\n#### Details\n\n * Method: `post`\n * Path: `/v1/webhook_endpoints/{webhook_endpoint}`\n"
(
@spec update(
webhook_endpoint :: binary(),
params :: %{
optional(:description) => binary | binary,
optional(:disabled) => boolean,
optional(:enabled_events) =>
list(
:*
| :"account.application.authorized"
| :"account.application.deauthorized"
| :"account.external_account.created"
| :"account.external_account.deleted"
| :"account.external_account.updated"
| :"account.updated"
| :"application_fee.created"
| :"application_fee.refund.updated"
| :"application_fee.refunded"
| :"balance.available"
| :"billing_portal.configuration.created"
| :"billing_portal.configuration.updated"
| :"billing_portal.session.created"
| :"capability.updated"
| :"cash_balance.funds_available"
| :"charge.captured"
| :"charge.dispute.closed"
| :"charge.dispute.created"
| :"charge.dispute.funds_reinstated"
| :"charge.dispute.funds_withdrawn"
| :"charge.dispute.updated"
| :"charge.expired"
| :"charge.failed"
| :"charge.pending"
| :"charge.refund.updated"
| :"charge.refunded"
| :"charge.succeeded"
| :"charge.updated"
| :"checkout.session.async_payment_failed"
| :"checkout.session.async_payment_succeeded"
| :"checkout.session.completed"
| :"checkout.session.expired"
| :"coupon.created"
| :"coupon.deleted"
| :"coupon.updated"
| :"credit_note.created"
| :"credit_note.updated"
| :"credit_note.voided"
| :"customer.created"
| :"customer.deleted"
| :"customer.discount.created"
| :"customer.discount.deleted"
| :"customer.discount.updated"
| :"customer.source.created"
| :"customer.source.deleted"
| :"customer.source.expiring"
| :"customer.source.updated"
| :"customer.subscription.created"
| :"customer.subscription.deleted"
| :"customer.subscription.paused"
| :"customer.subscription.pending_update_applied"
| :"customer.subscription.pending_update_expired"
| :"customer.subscription.resumed"
| :"customer.subscription.trial_will_end"
| :"customer.subscription.updated"
| :"customer.tax_id.created"
| :"customer.tax_id.deleted"
| :"customer.tax_id.updated"
| :"customer.updated"
| :"customer_cash_balance_transaction.created"
| :"file.created"
| :"financial_connections.account.created"
| :"financial_connections.account.deactivated"
| :"financial_connections.account.disconnected"
| :"financial_connections.account.reactivated"
| :"financial_connections.account.refreshed_balance"
| :"identity.verification_session.canceled"
| :"identity.verification_session.created"
| :"identity.verification_session.processing"
| :"identity.verification_session.redacted"
| :"identity.verification_session.requires_input"
| :"identity.verification_session.verified"
| :"invoice.created"
| :"invoice.deleted"
| :"invoice.finalization_failed"
| :"invoice.finalized"
| :"invoice.marked_uncollectible"
| :"invoice.paid"
| :"invoice.payment_action_required"
| :"invoice.payment_failed"
| :"invoice.payment_succeeded"
| :"invoice.sent"
| :"invoice.upcoming"
| :"invoice.updated"
| :"invoice.voided"
| :"invoiceitem.created"
| :"invoiceitem.deleted"
| :"issuing_authorization.created"
| :"issuing_authorization.request"
| :"issuing_authorization.updated"
| :"issuing_card.created"
| :"issuing_card.updated"
| :"issuing_cardholder.created"
| :"issuing_cardholder.updated"
| :"issuing_dispute.closed"
| :"issuing_dispute.created"
| :"issuing_dispute.funds_reinstated"
| :"issuing_dispute.submitted"
| :"issuing_dispute.updated"
| :"issuing_token.created"
| :"issuing_token.updated"
| :"issuing_transaction.created"
| :"issuing_transaction.updated"
| :"mandate.updated"
| :"payment_intent.amount_capturable_updated"
| :"payment_intent.canceled"
| :"payment_intent.created"
| :"payment_intent.partially_funded"
| :"payment_intent.payment_failed"
| :"payment_intent.processing"
| :"payment_intent.requires_action"
| :"payment_intent.succeeded"
| :"payment_link.created"
| :"payment_link.updated"
| :"payment_method.attached"
| :"payment_method.automatically_updated"
| :"payment_method.detached"
| :"payment_method.updated"
| :"payout.canceled"
| :"payout.created"
| :"payout.failed"
| :"payout.paid"
| :"payout.reconciliation_completed"
| :"payout.updated"
| :"person.created"
| :"person.deleted"
| :"person.updated"
| :"plan.created"
| :"plan.deleted"
| :"plan.updated"
| :"price.created"
| :"price.deleted"
| :"price.updated"
| :"product.created"
| :"product.deleted"
| :"product.updated"
| :"promotion_code.created"
| :"promotion_code.updated"
| :"quote.accepted"
| :"quote.canceled"
| :"quote.created"
| :"quote.finalized"
| :"radar.early_fraud_warning.created"
| :"radar.early_fraud_warning.updated"
| :"refund.created"
| :"refund.updated"
| :"reporting.report_run.failed"
| :"reporting.report_run.succeeded"
| :"reporting.report_type.updated"
| :"review.closed"
| :"review.opened"
| :"setup_intent.canceled"
| :"setup_intent.created"
| :"setup_intent.requires_action"
| :"setup_intent.setup_failed"
| :"setup_intent.succeeded"
| :"sigma.scheduled_query_run.created"
| :"source.canceled"
| :"source.chargeable"
| :"source.failed"
| :"source.mandate_notification"
| :"source.refund_attributes_required"
| :"source.transaction.created"
| :"source.transaction.updated"
| :"subscription_schedule.aborted"
| :"subscription_schedule.canceled"
| :"subscription_schedule.completed"
| :"subscription_schedule.created"
| :"subscription_schedule.expiring"
| :"subscription_schedule.released"
| :"subscription_schedule.updated"
| :"tax.settings.updated"
| :"tax_rate.created"
| :"tax_rate.updated"
| :"terminal.reader.action_failed"
| :"terminal.reader.action_succeeded"
| :"test_helpers.test_clock.advancing"
| :"test_helpers.test_clock.created"
| :"test_helpers.test_clock.deleted"
| :"test_helpers.test_clock.internal_failure"
| :"test_helpers.test_clock.ready"
| :"topup.canceled"
| :"topup.created"
| :"topup.failed"
| :"topup.reversed"
| :"topup.succeeded"
| :"transfer.created"
| :"transfer.reversed"
| :"transfer.updated"
| :"treasury.credit_reversal.created"
| :"treasury.credit_reversal.posted"
| :"treasury.debit_reversal.completed"
| :"treasury.debit_reversal.created"
| :"treasury.debit_reversal.initial_credit_granted"
| :"treasury.financial_account.closed"
| :"treasury.financial_account.created"
| :"treasury.financial_account.features_status_updated"
| :"treasury.inbound_transfer.canceled"
| :"treasury.inbound_transfer.created"
| :"treasury.inbound_transfer.failed"
| :"treasury.inbound_transfer.succeeded"
| :"treasury.outbound_payment.canceled"
| :"treasury.outbound_payment.created"
| :"treasury.outbound_payment.expected_arrival_date_updated"
| :"treasury.outbound_payment.failed"
| :"treasury.outbound_payment.posted"
| :"treasury.outbound_payment.returned"
| :"treasury.outbound_transfer.canceled"
| :"treasury.outbound_transfer.created"
| :"treasury.outbound_transfer.expected_arrival_date_updated"
| :"treasury.outbound_transfer.failed"
| :"treasury.outbound_transfer.posted"
| :"treasury.outbound_transfer.returned"
| :"treasury.received_credit.created"
| :"treasury.received_credit.failed"
| :"treasury.received_credit.succeeded"
| :"treasury.received_debit.created"
),
optional(:expand) => list(binary),
optional(:metadata) => %{optional(binary) => binary} | binary,
optional(:url) => binary
},
opts :: Keyword.t()
) ::
{:ok, Stripe.WebhookEndpoint.t()}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def update(webhook_endpoint, params \\ %{}, opts \\ []) do
path =
Stripe.OpenApi.Path.replace_path_params(
"/v1/webhook_endpoints/{webhook_endpoint}",
[
%OpenApiGen.Blueprint.Parameter{
in: "path",
name: "webhook_endpoint",
required: true,
schema: %OpenApiGen.Blueprint.Parameter.Schema{
name: "webhook_endpoint",
title: nil,
type: "string",
items: [],
properties: [],
any_of: []
}
}
],
[webhook_endpoint]
)
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_params(params)
|> Stripe.Request.put_method(:post)
|> Stripe.Request.make_request()
end
)
)
(
nil
@doc "<p>You can also delete webhook endpoints via the <a href=\"https://dashboard.stripe.com/account/webhooks\">webhook endpoint management</a> page of the Stripe dashboard.</p>\n\n#### Details\n\n * Method: `delete`\n * Path: `/v1/webhook_endpoints/{webhook_endpoint}`\n"
(
@spec delete(webhook_endpoint :: binary(), opts :: Keyword.t()) ::
{:ok, Stripe.DeletedWebhookEndpoint.t()}
| {:error, Stripe.ApiErrors.t()}
| {:error, term()}
def delete(webhook_endpoint, opts \\ []) do
path =
Stripe.OpenApi.Path.replace_path_params(
"/v1/webhook_endpoints/{webhook_endpoint}",
[
%OpenApiGen.Blueprint.Parameter{
in: "path",
name: "webhook_endpoint",
required: true,
schema: %OpenApiGen.Blueprint.Parameter.Schema{
name: "webhook_endpoint",
title: nil,
type: "string",
items: [],
properties: [],
any_of: []
}
}
],
[webhook_endpoint]
)
Stripe.Request.new_request(opts)
|> Stripe.Request.put_endpoint(path)
|> Stripe.Request.put_method(:delete)
|> Stripe.Request.make_request()
end
)
)
end