o
    Bi$                     @   s   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZmZ d dlmZmZmZmZmZmZ d d	lmZmZmZ G d
d ded ed ed ed ZdS )    )CreateableAPIResource)DeletableAPIResource)
ListObject)ListableAPIResource)RequestOptions)UpdateableAPIResource)class_method_variantsanitize_id)ClassVarDictListOptionalcastoverload)LiteralNotRequiredUnpackc                   @   s  e Zd ZU dZdZeed  ed< G dd deZ	G dd deZ
G dd	 d	eZG d
d deZG dd deZee ed< 	 ee ed< 	 eed< 	 ee ed< 	 ee ed< 	 eed< 	 eed< 	 eeef ed< 	 ed ed< 	 ee ed< 	 eed< 	 eed< 	 eed  ed< 	 eded dd fdd Zeded dd fd!d"Zed#eded$ dd fd%d&Zeed#eded$ dd fd'd(Zeded$ dd fd)d(Zed*ded$ dd fd+d(Zed#eded$ dd fd,d-Zeed#eded$ dd fd.d/Zeded$ dd fd0d/Zed1ded$ dd fd2d/Zeded3 ded  fd4d5Z eded3 ded  fd6d7Z!ededed8 dd fd9d:Z"ededed8 dd fd;d<Z#ededed= dd fd>d?Z$ededed= dd fd@dAZ%dBS )CWebhookEndpointa  
    You can configure [webhook endpoints](https://docs.stripe.com/webhooks/) via the API to be
    notified about events that happen in your Stripe account or connected
    accounts.

    Most users configure webhooks from [the dashboard](https://dashboard.stripe.com/webhooks), which provides a user interface for registering and testing your webhook endpoints.

    Related guide: [Setting up webhooks](https://docs.stripe.com/webhooks/configure)
    webhook_endpointOBJECT_NAMEc                   @   sv   e Zd ZU eed  ed< 	 ee ed< 	 ed ed< 	 eed  ed< 	 eee  ed< 	 ed	 ed
< 	 eed< dS )WebhookEndpoint.CreateParams)fz
2011-01-01z
2011-06-21z
2011-06-28z
2011-08-01z
2011-09-15z
2011-11-17z
2012-02-23z
2012-03-25z
2012-06-18z
2012-06-28z
2012-07-09z
2012-09-24z
2012-10-26z
2012-11-07z
2013-02-11z
2013-02-13z
2013-07-05z
2013-08-12z
2013-08-13z
2013-10-29z
2013-12-03z
2014-01-31z
2014-03-13z
2014-03-28z
2014-05-19z
2014-06-13z
2014-06-17z
2014-07-22z
2014-07-26z
2014-08-04z
2014-08-20z
2014-09-08z
2014-10-07z
2014-11-05z
2014-11-20z
2014-12-08z
2014-12-17z
2014-12-22z
2015-01-11z
2015-01-26z
2015-02-10z
2015-02-16z
2015-02-18z
2015-03-24z
2015-04-07z
2015-06-15z
2015-07-07z
2015-07-13z
2015-07-28z
2015-08-07z
2015-08-19z
2015-09-03z
2015-09-08z
2015-09-23z
2015-10-01z
2015-10-12z
2015-10-16z
2016-02-03z
2016-02-19z
2016-02-22z
2016-02-23z
2016-02-29z
2016-03-07z
2016-06-15z
2016-07-06z
2016-10-19z
2017-01-27z
2017-02-14z
2017-04-06z
2017-05-25z
2017-06-05z
2017-08-15z
2017-12-14z
2018-01-23z
2018-02-05z
2018-02-06z
2018-02-28z
2018-05-21z
2018-07-27z
2018-08-23z
2018-09-06z
2018-09-24z
2018-10-31z
2018-11-08z
2019-02-11z
2019-02-19z
2019-03-14z
2019-05-16z
2019-08-14z
2019-09-09z
2019-10-08z
2019-10-17z
2019-11-05z
2019-12-03z
2020-03-02z
2020-08-27z
2022-08-01z
2022-11-15z
2023-08-16z
2023-10-16z
2024-04-10z
2024-06-20api_versionconnectLiteral['']|strdescription*zaccount.application.authorizedz account.application.deauthorizedz account.external_account.createdz account.external_account.deletedz account.external_account.updatedzaccount.updatedzapplication_fee.createdzapplication_fee.refund.updatedzapplication_fee.refundedzbalance.availablezbilling.alert.triggeredz$billing_portal.configuration.createdz$billing_portal.configuration.updatedzbilling_portal.session.createdzcapability.updatedzcash_balance.funds_availablezcharge.capturedzcharge.dispute.closedzcharge.dispute.createdzcharge.dispute.funds_reinstatedzcharge.dispute.funds_withdrawnzcharge.dispute.updatedzcharge.expiredzcharge.failedzcharge.pendingzcharge.refund.updatedzcharge.refundedzcharge.succeededzcharge.updatedz%checkout.session.async_payment_failedz(checkout.session.async_payment_succeededzcheckout.session.completedzcheckout.session.expiredzclimate.order.canceledzclimate.order.createdzclimate.order.delayedzclimate.order.deliveredz!climate.order.product_substitutedzclimate.product.createdzclimate.product.pricing_updatedzcoupon.createdzcoupon.deletedzcoupon.updatedzcredit_note.createdzcredit_note.updatedzcredit_note.voidedzcustomer.createdzcustomer.deletedzcustomer.discount.createdzcustomer.discount.deletedzcustomer.discount.updatedzcustomer.source.createdzcustomer.source.deletedzcustomer.source.expiringzcustomer.source.updatedzcustomer.subscription.createdzcustomer.subscription.deletedzcustomer.subscription.pausedz,customer.subscription.pending_update_appliedz,customer.subscription.pending_update_expiredzcustomer.subscription.resumedz$customer.subscription.trial_will_endzcustomer.subscription.updatedzcustomer.tax_id.createdzcustomer.tax_id.deletedzcustomer.tax_id.updatedzcustomer.updatedz)customer_cash_balance_transaction.createdz/entitlements.active_entitlement_summary.updatedzfile.createdz%financial_connections.account.createdz)financial_connections.account.deactivatedz*financial_connections.account.disconnectedz)financial_connections.account.reactivatedz/financial_connections.account.refreshed_balancez1financial_connections.account.refreshed_ownershipz4financial_connections.account.refreshed_transactionsz&identity.verification_session.canceledz%identity.verification_session.createdz(identity.verification_session.processingz&identity.verification_session.redactedz,identity.verification_session.requires_inputz&identity.verification_session.verifiedzinvoice.createdzinvoice.deletedzinvoice.finalization_failedzinvoice.finalizedzinvoice.marked_uncollectiblezinvoice.overduezinvoice.paidzinvoice.payment_action_requiredzinvoice.payment_failedzinvoice.payment_succeededzinvoice.sentzinvoice.upcomingzinvoice.updatedzinvoice.voidedzinvoice.will_be_duezinvoiceitem.createdzinvoiceitem.deletedzissuing_authorization.createdzissuing_authorization.requestzissuing_authorization.updatedzissuing_card.createdzissuing_card.updatedzissuing_cardholder.createdzissuing_cardholder.updatedzissuing_dispute.closedzissuing_dispute.createdz issuing_dispute.funds_reinstatedzissuing_dispute.funds_rescindedzissuing_dispute.submittedzissuing_dispute.updatedz(issuing_personalization_design.activatedz*issuing_personalization_design.deactivatedz'issuing_personalization_design.rejectedz&issuing_personalization_design.updatedzissuing_token.createdzissuing_token.updatedzissuing_transaction.createdzissuing_transaction.updatedzmandate.updatedz(payment_intent.amount_capturable_updatedzpayment_intent.canceledzpayment_intent.createdzpayment_intent.partially_fundedzpayment_intent.payment_failedzpayment_intent.processingzpayment_intent.requires_actionzpayment_intent.succeededzpayment_link.createdzpayment_link.updatedzpayment_method.attachedz$payment_method.automatically_updatedzpayment_method.detachedzpayment_method.updatedzpayout.canceledzpayout.createdzpayout.failedzpayout.paidzpayout.reconciliation_completedzpayout.updatedzperson.createdzperson.deletedzperson.updatedzplan.createdzplan.deletedzplan.updatedzprice.createdzprice.deletedzprice.updatedzproduct.createdzproduct.deletedzproduct.updatedzpromotion_code.createdzpromotion_code.updatedzquote.acceptedzquote.canceledzquote.createdzquote.finalizedz!radar.early_fraud_warning.createdz!radar.early_fraud_warning.updatedzrefund.createdzrefund.updatedzreporting.report_run.failedzreporting.report_run.succeededzreporting.report_type.updatedzreview.closedzreview.openedzsetup_intent.canceledzsetup_intent.createdzsetup_intent.requires_actionzsetup_intent.setup_failedzsetup_intent.succeededz!sigma.scheduled_query_run.createdzsource.canceledzsource.chargeablezsource.failedzsource.mandate_notificationz!source.refund_attributes_requiredzsource.transaction.createdzsource.transaction.updatedzsubscription_schedule.abortedzsubscription_schedule.canceledzsubscription_schedule.completedzsubscription_schedule.createdzsubscription_schedule.expiringzsubscription_schedule.releasedzsubscription_schedule.updatedztax.settings.updatedztax_rate.createdztax_rate.updatedzterminal.reader.action_failedz terminal.reader.action_succeededz!test_helpers.test_clock.advancingztest_helpers.test_clock.createdztest_helpers.test_clock.deletedz(test_helpers.test_clock.internal_failureztest_helpers.test_clock.readyztopup.canceledztopup.createdztopup.failedztopup.reversedztopup.succeededztransfer.createdztransfer.reversedztransfer.updatedz treasury.credit_reversal.createdztreasury.credit_reversal.postedz!treasury.debit_reversal.completedztreasury.debit_reversal.createdz.treasury.debit_reversal.initial_credit_grantedz!treasury.financial_account.closedz"treasury.financial_account.createdz2treasury.financial_account.features_status_updatedz"treasury.inbound_transfer.canceledz!treasury.inbound_transfer.createdz treasury.inbound_transfer.failedz#treasury.inbound_transfer.succeededz"treasury.outbound_payment.canceledz!treasury.outbound_payment.createdz7treasury.outbound_payment.expected_arrival_date_updatedz treasury.outbound_payment.failedz treasury.outbound_payment.postedz"treasury.outbound_payment.returnedz2treasury.outbound_payment.tracking_details_updatedz#treasury.outbound_transfer.canceledz"treasury.outbound_transfer.createdz8treasury.outbound_transfer.expected_arrival_date_updatedz!treasury.outbound_transfer.failedz!treasury.outbound_transfer.postedz#treasury.outbound_transfer.returnedz3treasury.outbound_transfer.tracking_details_updatedz treasury.received_credit.createdztreasury.received_credit.failedz"treasury.received_credit.succeededztreasury.received_debit.createdenabled_eventsexpandLiteral['']|Dict[str, str]metadataurlN)	__name__
__module____qualname__r   r   __annotations__boolr   str r(   r(   X/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/_webhook_endpoint.pyCreateParams    s0   
 j sr*   c                   @   s   e Zd ZdS )WebhookEndpoint.DeleteParamsN)r"   r#   r$   r(   r(   r(   r)   DeleteParams  s    r,   c                   @   sH   e Zd ZU ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< dS )WebhookEndpoint.ListParamsending_beforer   limitstarting_afterN)r"   r#   r$   r   r'   r%   r   intr(   r(   r(   r)   
ListParams  s   
 r2   c                   @   sl   e Zd ZU ed ed< 	 ee ed< 	 eeed   ed< 	 eee  ed< 	 ed ed< 	 ee ed	< d
S )WebhookEndpoint.ModifyParamsr   r   disabledr   r   r   r   r    r!   N)	r"   r#   r$   r   r%   r&   r   r   r'   r(   r(   r(   r)   ModifyParams  s(   
  ur5   c                   @   s   e Zd ZU eee  ed< dS )WebhookEndpoint.RetrieveParamsr   N)r"   r#   r$   r   r   r'   r%   r(   r(   r(   r)   RetrieveParams  s   
 r7   r   applicationcreatedr   r   idlivemoder    objectsecretstatusr!   Tdeletedparamsr   returnc                 K   s   t d| jd|  |dS )  
        A webhook endpoint must have a url and a list of enabled_events. You may optionally specify the Boolean connect parameter. If set to true, then a Connect webhook endpoint that notifies the specified url about events from all connected accounts is created; otherwise an account webhook endpoint that notifies the specified url only about events from your account is created. You can also create webhook endpoints in the [webhooks settings](https://dashboard.stripe.com/account/webhooks) section of the Dashboard.
        r   postr@   )r   _static_request	class_urlclsr@   r(   r(   r)   create  s   zWebhookEndpoint.createc                    s"   t d| jd|  |dI dH S )rB   r   rC   rD   N)r   _static_request_asyncrF   rG   r(   r(   r)   create_async  s   
zWebhookEndpoint.create_asyncsidr+   c                 K   *   d|   t|f }td| jd||dS )
        You can also delete webhook endpoints via the [webhook endpoint management](https://dashboard.stripe.com/account/webhooks) page of the Stripe dashboard.
        %s/%sr   deleterD   rF   r	   r   rE   rH   rL   r@   r!   r(   r(   r)   _cls_delete     zWebhookEndpoint._cls_deletec                 K      dS rN   Nr(   rL   r@   r(   r(   r)   rP   &  s   zWebhookEndpoint.deletec                 K   rU   rV   r(   selfr@   r(   r(   r)   rP   0  s   rS   c                 K   s   | j d|  |dS )rN   rP   rD   )_request_and_refreshinstance_urlrX   r(   r(   r)   rP   9  s
   c                    2   d|   t|f }td| jd||dI dH S )rN   rO   r   rP   rD   NrF   r	   r   rJ   rR   r(   r(   r)   _cls_delete_asyncF     
z!WebhookEndpoint._cls_delete_asyncc                       dS rV   r(   rW   r(   r(   r)   delete_asyncW  s   zWebhookEndpoint.delete_asyncc                    r`   rV   r(   rX   r(   r(   r)   ra   a  s   r^   c                    s   | j d|  |dI dH S )rN   rP   rD   N)_request_and_refresh_asyncr[   rX   r(   r(   r)   ra   j  s   r-   c                 K   s4   | j d|  |d}t|tstdt|j |S );
        Returns a list of your webhook endpoints.
        getrD   %Expected list object from API, got %s)rE   rF   
isinstancer   	TypeErrortyper"   rH   r@   resultr(   r(   r)   listw  s   
zWebhookEndpoint.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )rc   rd   rD   Nre   )rJ   rF   rf   r   rg   rh   r"   ri   r(   r(   r)   
list_async  s   
zWebhookEndpoint.list_asyncr3   c                 K   rM   )
        Updates the webhook endpoint. You may edit the url, the list of enabled_events, and the status of your endpoint.
        rO   r   rC   rD   rQ   rH   r:   r@   r!   r(   r(   r)   modify  rT   zWebhookEndpoint.modifyc                    r\   )rm   rO   r   rC   rD   Nr]   rn   r(   r(   r)   modify_async  r_   zWebhookEndpoint.modify_asyncr6   c                 K   s   | |fi |}|   |S )C
        Retrieves the webhook endpoint with the given ID.
        )refreshrH   r:   r@   instancer(   r(   r)   retrieve  s   zWebhookEndpoint.retrievec                    s$   | |fi |}|  I dH  |S )rq   N)refresh_asyncrs   r(   r(   r)   retrieve_async  s   zWebhookEndpoint.retrieve_asyncN)&r"   r#   r$   __doc__r   r
   r   r%   r   r*   r,   r2   r5   r7   r   r'   r1   r   r&   r   classmethodr   rI   rK   rS   r   staticmethodrP   r   r^   ra   r   rk   rl   ro   rp   ru   rw   r(   r(   r(   r)   r      s0  
 
  z  
r   N)stripe._createable_api_resourcer   stripe._deletable_api_resourcer   stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._updateable_api_resourcer   stripe._utilr   r	   typingr
   r   r   r   r   r   typing_extensionsr   r   r   r   r(   r(   r(   r)   <module>   s    
