airbyte-agent-stripe 0.5.28__py3-none-any.whl → 0.5.37__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- airbyte_agent_stripe/__init__.py +103 -83
- airbyte_agent_stripe/_vendored/connector_sdk/connector_model_loader.py +10 -2
- airbyte_agent_stripe/_vendored/connector_sdk/constants.py +1 -1
- airbyte_agent_stripe/_vendored/connector_sdk/executor/local_executor.py +54 -4
- airbyte_agent_stripe/_vendored/connector_sdk/extensions.py +42 -3
- airbyte_agent_stripe/_vendored/connector_sdk/introspection.py +262 -0
- airbyte_agent_stripe/_vendored/connector_sdk/observability/config.py +179 -0
- airbyte_agent_stripe/_vendored/connector_sdk/observability/session.py +35 -28
- airbyte_agent_stripe/_vendored/connector_sdk/schema/components.py +2 -1
- airbyte_agent_stripe/_vendored/connector_sdk/schema/operations.py +1 -1
- airbyte_agent_stripe/_vendored/connector_sdk/schema/security.py +10 -0
- airbyte_agent_stripe/_vendored/connector_sdk/telemetry/events.py +2 -1
- airbyte_agent_stripe/_vendored/connector_sdk/telemetry/tracker.py +3 -0
- airbyte_agent_stripe/_vendored/connector_sdk/types.py +5 -1
- airbyte_agent_stripe/connector.py +379 -61
- airbyte_agent_stripe/connector_model.py +3444 -692
- airbyte_agent_stripe/models.py +926 -766
- airbyte_agent_stripe/types.py +41 -13
- {airbyte_agent_stripe-0.5.28.dist-info → airbyte_agent_stripe-0.5.37.dist-info}/METADATA +12 -16
- {airbyte_agent_stripe-0.5.28.dist-info → airbyte_agent_stripe-0.5.37.dist-info}/RECORD +21 -19
- {airbyte_agent_stripe-0.5.28.dist-info → airbyte_agent_stripe-0.5.37.dist-info}/WHEEL +0 -0
airbyte_agent_stripe/__init__.py
CHANGED
|
@@ -7,143 +7,156 @@ Auto-generated from OpenAPI specification.
|
|
|
7
7
|
from .connector import StripeConnector
|
|
8
8
|
from .models import (
|
|
9
9
|
StripeAuthConfig,
|
|
10
|
-
CustomerShippingAddress,
|
|
11
|
-
CustomerShipping,
|
|
12
10
|
CustomerSourcesDataItem,
|
|
13
11
|
CustomerSources,
|
|
14
|
-
CustomerInvoiceSettingsCustomFieldsItem,
|
|
15
|
-
CustomerInvoiceSettingsRenderingOptions,
|
|
16
|
-
CustomerInvoiceSettings,
|
|
17
12
|
CustomerAddress,
|
|
18
13
|
CustomerCashBalanceSettings,
|
|
19
14
|
CustomerCashBalance,
|
|
20
|
-
|
|
21
|
-
|
|
15
|
+
CustomerInvoiceSettingsRenderingOptions,
|
|
16
|
+
CustomerInvoiceSettingsCustomFieldsItem,
|
|
17
|
+
CustomerInvoiceSettings,
|
|
22
18
|
SubscriptionBillingCycleAnchorConfig,
|
|
23
|
-
|
|
19
|
+
SubscriptionCancellationDetails,
|
|
24
20
|
SubscriptionBillingModeFlexible,
|
|
25
21
|
SubscriptionBillingMode,
|
|
26
|
-
SubscriptionPaymentSettings,
|
|
27
|
-
SubscriptionDefaultTaxRatesItemFlatAmount,
|
|
28
|
-
SubscriptionDefaultTaxRatesItem,
|
|
29
|
-
SubscriptionCancellationDetails,
|
|
30
22
|
SubscriptionTrialSettingsEndBehavior,
|
|
31
23
|
SubscriptionTrialSettings,
|
|
32
|
-
|
|
24
|
+
SubscriptionItemsDataItemBillingThresholds,
|
|
25
|
+
SubscriptionItemsDataItem,
|
|
26
|
+
SubscriptionItems,
|
|
27
|
+
SubscriptionPaymentSettings,
|
|
33
28
|
SubscriptionInvoiceSettingsIssuer,
|
|
34
29
|
SubscriptionInvoiceSettings,
|
|
35
30
|
SubscriptionAutomaticTaxLiability,
|
|
36
31
|
SubscriptionAutomaticTax,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
SubscriptionBillingThresholds,
|
|
33
|
+
SubscriptionPauseCollection,
|
|
34
|
+
SubscriptionDefaultTaxRatesItemFlatAmount,
|
|
35
|
+
SubscriptionDefaultTaxRatesItem,
|
|
40
36
|
Subscription,
|
|
41
37
|
CustomerSubscriptions,
|
|
38
|
+
CustomerShippingAddress,
|
|
39
|
+
CustomerShipping,
|
|
40
|
+
CustomerDiscountSource,
|
|
41
|
+
CustomerDiscount,
|
|
42
42
|
Customer,
|
|
43
43
|
CustomerList,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
CustomerCreateParamsAddress,
|
|
45
|
+
CustomerCreateParams,
|
|
46
|
+
CustomerUpdateParamsAddress,
|
|
47
|
+
CustomerUpdateParams,
|
|
48
|
+
CustomerDeletedResponse,
|
|
49
|
+
InvoiceCustomerTaxIdsItem,
|
|
50
|
+
InvoiceFromInvoice,
|
|
51
|
+
InvoiceTotalTaxesItem,
|
|
52
|
+
InvoiceThresholdReasonItemReasonsItem,
|
|
53
|
+
InvoiceThresholdReason,
|
|
54
|
+
InvoiceDefaultTaxRatesItemFlatAmount,
|
|
55
|
+
InvoiceDefaultTaxRatesItem,
|
|
49
56
|
InvoiceAutomaticTaxLiability,
|
|
50
57
|
InvoiceAutomaticTax,
|
|
51
|
-
|
|
52
|
-
|
|
58
|
+
InvoiceLastFinalizationError,
|
|
59
|
+
InvoiceCustomFieldsItem,
|
|
60
|
+
InvoiceCustomerAddress,
|
|
61
|
+
InvoiceSubscriptionDetails,
|
|
62
|
+
InvoiceDiscountCoupon,
|
|
63
|
+
InvoiceDiscount,
|
|
64
|
+
InvoiceTotalDiscountAmountsItem,
|
|
65
|
+
InvoiceTotalTaxAmountsItem,
|
|
66
|
+
InvoiceIssuer,
|
|
67
|
+
InvoiceShippingCostTaxesItem,
|
|
68
|
+
InvoiceShippingCost,
|
|
53
69
|
InvoiceLinesDataItemPeriod,
|
|
70
|
+
InvoiceLinesDataItemDiscountAmountsItem,
|
|
54
71
|
InvoiceLinesDataItem,
|
|
55
72
|
InvoiceLines,
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
InvoiceThresholdReasonItemReasonsItem,
|
|
61
|
-
InvoiceThresholdReason,
|
|
73
|
+
InvoiceConfirmationSecret,
|
|
74
|
+
InvoiceParentQuoteDetails,
|
|
75
|
+
InvoiceParentSubscriptionDetails,
|
|
76
|
+
InvoiceParent,
|
|
62
77
|
InvoiceTotalPretaxCreditAmountsItem,
|
|
63
78
|
InvoicePaymentSettings,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
InvoiceLastFinalizationError,
|
|
68
|
-
InvoiceDiscountCoupon,
|
|
69
|
-
InvoiceDiscount,
|
|
79
|
+
InvoiceShippingDetailsAddress,
|
|
80
|
+
InvoiceShippingDetails,
|
|
81
|
+
InvoiceStatusTransitions,
|
|
70
82
|
InvoicePaymentsDataItem,
|
|
71
83
|
InvoicePayments,
|
|
72
84
|
InvoiceCustomerShippingAddress,
|
|
73
85
|
InvoiceCustomerShipping,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
InvoiceCustomFieldsItem,
|
|
77
|
-
InvoiceShippingCostTaxesItem,
|
|
78
|
-
InvoiceShippingCost,
|
|
79
|
-
InvoiceTotalTaxesItem,
|
|
80
|
-
InvoiceParentSubscriptionDetails,
|
|
81
|
-
InvoiceParentQuoteDetails,
|
|
82
|
-
InvoiceParent,
|
|
86
|
+
InvoiceRenderingPdf,
|
|
87
|
+
InvoiceRendering,
|
|
83
88
|
Invoice,
|
|
84
89
|
InvoiceList,
|
|
85
|
-
ChargeRefunds,
|
|
86
|
-
ChargeOutcome,
|
|
87
|
-
ChargePresentmentDetails,
|
|
88
|
-
ChargeFraudDetails,
|
|
89
90
|
ChargeBillingDetailsAddress,
|
|
90
91
|
ChargeBillingDetails,
|
|
91
|
-
|
|
92
|
-
|
|
92
|
+
ChargeOutcome,
|
|
93
|
+
ChargeFraudDetails,
|
|
94
|
+
ChargePresentmentDetails,
|
|
95
|
+
ChargeRefunds,
|
|
93
96
|
ChargePaymentMethodDetailsCardMulticapture,
|
|
94
|
-
ChargePaymentMethodDetailsCardOvercapture,
|
|
95
97
|
ChargePaymentMethodDetailsCardChecks,
|
|
98
|
+
ChargePaymentMethodDetailsCardIncrementalAuthorization,
|
|
99
|
+
ChargePaymentMethodDetailsCardOvercapture,
|
|
96
100
|
ChargePaymentMethodDetailsCardExtendedAuthorization,
|
|
101
|
+
ChargePaymentMethodDetailsCardNetworkToken,
|
|
97
102
|
ChargePaymentMethodDetailsCard,
|
|
98
103
|
ChargePaymentMethodDetails,
|
|
99
104
|
Charge,
|
|
100
105
|
ChargeList,
|
|
101
106
|
SubscriptionList,
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
RefundDestinationDetailsThBankTransfer,
|
|
106
|
-
RefundDestinationDetailsPaypal,
|
|
107
|
-
RefundDestinationDetailsSwish,
|
|
107
|
+
RefundNextActionDisplayDetailsEmailSent,
|
|
108
|
+
RefundNextActionDisplayDetails,
|
|
109
|
+
RefundNextAction,
|
|
108
110
|
RefundDestinationDetailsBlik,
|
|
109
|
-
|
|
110
|
-
RefundDestinationDetailsEuBankTransfer,
|
|
111
|
-
RefundDestinationDetailsCard,
|
|
111
|
+
RefundDestinationDetailsThBankTransfer,
|
|
112
112
|
RefundDestinationDetailsCrypto,
|
|
113
|
+
RefundDestinationDetailsSwish,
|
|
113
114
|
RefundDestinationDetailsMxBankTransfer,
|
|
115
|
+
RefundDestinationDetailsPaypal,
|
|
116
|
+
RefundDestinationDetailsGbBankTransfer,
|
|
117
|
+
RefundDestinationDetailsCard,
|
|
118
|
+
RefundDestinationDetailsEuBankTransfer,
|
|
119
|
+
RefundDestinationDetailsMbWay,
|
|
114
120
|
RefundDestinationDetailsUsBankTransfer,
|
|
115
|
-
|
|
121
|
+
RefundDestinationDetailsP24,
|
|
116
122
|
RefundDestinationDetailsJpBankTransfer,
|
|
123
|
+
RefundDestinationDetailsBrBankTransfer,
|
|
124
|
+
RefundDestinationDetailsMultibanco,
|
|
117
125
|
RefundDestinationDetails,
|
|
118
|
-
RefundNextActionDisplayDetailsEmailSent,
|
|
119
|
-
RefundNextActionDisplayDetails,
|
|
120
|
-
RefundNextAction,
|
|
121
126
|
Refund,
|
|
122
127
|
RefundList,
|
|
128
|
+
RefundCreateParams,
|
|
123
129
|
ProductPackageDimensions,
|
|
124
|
-
ProductFeaturesItem,
|
|
125
130
|
ProductMarketingFeaturesItem,
|
|
131
|
+
ProductFeaturesItem,
|
|
126
132
|
Product,
|
|
127
133
|
ProductList,
|
|
128
134
|
ProductSearchResult,
|
|
135
|
+
ProductCreateParamsPackageDimensions,
|
|
136
|
+
ProductCreateParamsMarketingFeaturesItem,
|
|
137
|
+
ProductCreateParams,
|
|
138
|
+
ProductUpdateParamsMarketingFeaturesItem,
|
|
139
|
+
ProductUpdateParamsPackageDimensions,
|
|
140
|
+
ProductUpdateParams,
|
|
141
|
+
ProductDeletedResponse,
|
|
129
142
|
BalanceAvailableItemSourceTypes,
|
|
130
143
|
BalanceAvailableItem,
|
|
131
|
-
BalanceInstantAvailableItemSourceTypes,
|
|
132
144
|
BalanceInstantAvailableItemNetAvailableItemSourceTypes,
|
|
133
145
|
BalanceInstantAvailableItemNetAvailableItem,
|
|
146
|
+
BalanceInstantAvailableItemSourceTypes,
|
|
134
147
|
BalanceInstantAvailableItem,
|
|
135
148
|
BalanceIssuingAvailableItemSourceTypes,
|
|
136
149
|
BalanceIssuingAvailableItem,
|
|
137
150
|
BalanceIssuing,
|
|
138
|
-
BalancePendingItemSourceTypes,
|
|
139
|
-
BalancePendingItem,
|
|
140
|
-
BalanceConnectReservedItemSourceTypes,
|
|
141
|
-
BalanceConnectReservedItem,
|
|
142
151
|
BalanceRefundAndDisputePrefundingAvailableItemSourceTypes,
|
|
143
152
|
BalanceRefundAndDisputePrefundingAvailableItem,
|
|
144
153
|
BalanceRefundAndDisputePrefundingPendingItemSourceTypes,
|
|
145
154
|
BalanceRefundAndDisputePrefundingPendingItem,
|
|
146
155
|
BalanceRefundAndDisputePrefunding,
|
|
156
|
+
BalanceConnectReservedItemSourceTypes,
|
|
157
|
+
BalanceConnectReservedItem,
|
|
158
|
+
BalancePendingItemSourceTypes,
|
|
159
|
+
BalancePendingItem,
|
|
147
160
|
Balance,
|
|
148
161
|
BalanceTransactionFeeDetailsItem,
|
|
149
162
|
BalanceTransaction,
|
|
@@ -162,31 +175,31 @@ from .models import (
|
|
|
162
175
|
ChargeSearchResult,
|
|
163
176
|
SubscriptionSearchResult,
|
|
164
177
|
CustomersListResultMeta,
|
|
165
|
-
|
|
178
|
+
CustomersApiSearchResultMeta,
|
|
166
179
|
InvoicesListResultMeta,
|
|
167
180
|
ChargesListResultMeta,
|
|
168
181
|
SubscriptionsListResultMeta,
|
|
169
182
|
RefundsListResultMeta,
|
|
170
183
|
ProductsListResultMeta,
|
|
171
|
-
|
|
184
|
+
ProductsApiSearchResultMeta,
|
|
172
185
|
BalanceTransactionsListResultMeta,
|
|
173
186
|
PaymentIntentsListResultMeta,
|
|
174
|
-
|
|
187
|
+
PaymentIntentsApiSearchResultMeta,
|
|
175
188
|
DisputesListResultMeta,
|
|
176
189
|
PayoutsListResultMeta,
|
|
177
190
|
StripeExecuteResult,
|
|
178
191
|
StripeExecuteResultWithMeta,
|
|
179
192
|
CustomersListResult,
|
|
180
|
-
|
|
193
|
+
CustomersApiSearchResult,
|
|
181
194
|
InvoicesListResult,
|
|
182
195
|
ChargesListResult,
|
|
183
196
|
SubscriptionsListResult,
|
|
184
197
|
RefundsListResult,
|
|
185
198
|
ProductsListResult,
|
|
186
|
-
|
|
199
|
+
ProductsApiSearchResult,
|
|
187
200
|
BalanceTransactionsListResult,
|
|
188
201
|
PaymentIntentsListResult,
|
|
189
|
-
|
|
202
|
+
PaymentIntentsApiSearchResult,
|
|
190
203
|
DisputesListResult,
|
|
191
204
|
PayoutsListResult
|
|
192
205
|
)
|
|
@@ -206,32 +219,39 @@ from .types import (
|
|
|
206
219
|
PayoutsListParamsArrivalDate,
|
|
207
220
|
PayoutsListParamsCreated,
|
|
208
221
|
CustomersListParams,
|
|
222
|
+
CustomersCreateParams,
|
|
209
223
|
CustomersGetParams,
|
|
210
|
-
|
|
224
|
+
CustomersUpdateParams,
|
|
225
|
+
CustomersDeleteParams,
|
|
226
|
+
CustomersApiSearchParams,
|
|
211
227
|
InvoicesListParams,
|
|
212
228
|
InvoicesGetParams,
|
|
213
|
-
|
|
229
|
+
InvoicesApiSearchParams,
|
|
214
230
|
ChargesListParams,
|
|
215
231
|
ChargesGetParams,
|
|
216
|
-
|
|
232
|
+
ChargesApiSearchParams,
|
|
217
233
|
SubscriptionsListParams,
|
|
218
234
|
SubscriptionsGetParams,
|
|
219
|
-
|
|
235
|
+
SubscriptionsApiSearchParams,
|
|
220
236
|
RefundsListParams,
|
|
237
|
+
RefundsCreateParams,
|
|
221
238
|
RefundsGetParams,
|
|
222
239
|
ProductsListParams,
|
|
240
|
+
ProductsCreateParams,
|
|
223
241
|
ProductsGetParams,
|
|
224
|
-
|
|
242
|
+
ProductsUpdateParams,
|
|
243
|
+
ProductsDeleteParams,
|
|
244
|
+
ProductsApiSearchParams,
|
|
225
245
|
BalanceGetParams,
|
|
226
246
|
BalanceTransactionsListParams,
|
|
227
247
|
BalanceTransactionsGetParams,
|
|
228
248
|
PaymentIntentsListParams,
|
|
229
249
|
PaymentIntentsGetParams,
|
|
230
|
-
|
|
250
|
+
PaymentIntentsApiSearchParams,
|
|
231
251
|
DisputesListParams,
|
|
232
252
|
DisputesGetParams,
|
|
233
253
|
PayoutsListParams,
|
|
234
254
|
PayoutsGetParams
|
|
235
255
|
)
|
|
236
256
|
|
|
237
|
-
__all__ = ["StripeConnector", "StripeAuthConfig", "
|
|
257
|
+
__all__ = ["StripeConnector", "StripeAuthConfig", "CustomerSourcesDataItem", "CustomerSources", "CustomerAddress", "CustomerCashBalanceSettings", "CustomerCashBalance", "CustomerInvoiceSettingsRenderingOptions", "CustomerInvoiceSettingsCustomFieldsItem", "CustomerInvoiceSettings", "SubscriptionBillingCycleAnchorConfig", "SubscriptionCancellationDetails", "SubscriptionBillingModeFlexible", "SubscriptionBillingMode", "SubscriptionTrialSettingsEndBehavior", "SubscriptionTrialSettings", "SubscriptionItemsDataItemBillingThresholds", "SubscriptionItemsDataItem", "SubscriptionItems", "SubscriptionPaymentSettings", "SubscriptionInvoiceSettingsIssuer", "SubscriptionInvoiceSettings", "SubscriptionAutomaticTaxLiability", "SubscriptionAutomaticTax", "SubscriptionBillingThresholds", "SubscriptionPauseCollection", "SubscriptionDefaultTaxRatesItemFlatAmount", "SubscriptionDefaultTaxRatesItem", "Subscription", "CustomerSubscriptions", "CustomerShippingAddress", "CustomerShipping", "CustomerDiscountSource", "CustomerDiscount", "Customer", "CustomerList", "CustomerCreateParamsAddress", "CustomerCreateParams", "CustomerUpdateParamsAddress", "CustomerUpdateParams", "CustomerDeletedResponse", "InvoiceCustomerTaxIdsItem", "InvoiceFromInvoice", "InvoiceTotalTaxesItem", "InvoiceThresholdReasonItemReasonsItem", "InvoiceThresholdReason", "InvoiceDefaultTaxRatesItemFlatAmount", "InvoiceDefaultTaxRatesItem", "InvoiceAutomaticTaxLiability", "InvoiceAutomaticTax", "InvoiceLastFinalizationError", "InvoiceCustomFieldsItem", "InvoiceCustomerAddress", "InvoiceSubscriptionDetails", "InvoiceDiscountCoupon", "InvoiceDiscount", "InvoiceTotalDiscountAmountsItem", "InvoiceTotalTaxAmountsItem", "InvoiceIssuer", "InvoiceShippingCostTaxesItem", "InvoiceShippingCost", "InvoiceLinesDataItemPeriod", "InvoiceLinesDataItemDiscountAmountsItem", "InvoiceLinesDataItem", "InvoiceLines", "InvoiceConfirmationSecret", "InvoiceParentQuoteDetails", "InvoiceParentSubscriptionDetails", "InvoiceParent", "InvoiceTotalPretaxCreditAmountsItem", "InvoicePaymentSettings", "InvoiceShippingDetailsAddress", "InvoiceShippingDetails", "InvoiceStatusTransitions", "InvoicePaymentsDataItem", "InvoicePayments", "InvoiceCustomerShippingAddress", "InvoiceCustomerShipping", "InvoiceRenderingPdf", "InvoiceRendering", "Invoice", "InvoiceList", "ChargeBillingDetailsAddress", "ChargeBillingDetails", "ChargeOutcome", "ChargeFraudDetails", "ChargePresentmentDetails", "ChargeRefunds", "ChargePaymentMethodDetailsCardMulticapture", "ChargePaymentMethodDetailsCardChecks", "ChargePaymentMethodDetailsCardIncrementalAuthorization", "ChargePaymentMethodDetailsCardOvercapture", "ChargePaymentMethodDetailsCardExtendedAuthorization", "ChargePaymentMethodDetailsCardNetworkToken", "ChargePaymentMethodDetailsCard", "ChargePaymentMethodDetails", "Charge", "ChargeList", "SubscriptionList", "RefundNextActionDisplayDetailsEmailSent", "RefundNextActionDisplayDetails", "RefundNextAction", "RefundDestinationDetailsBlik", "RefundDestinationDetailsThBankTransfer", "RefundDestinationDetailsCrypto", "RefundDestinationDetailsSwish", "RefundDestinationDetailsMxBankTransfer", "RefundDestinationDetailsPaypal", "RefundDestinationDetailsGbBankTransfer", "RefundDestinationDetailsCard", "RefundDestinationDetailsEuBankTransfer", "RefundDestinationDetailsMbWay", "RefundDestinationDetailsUsBankTransfer", "RefundDestinationDetailsP24", "RefundDestinationDetailsJpBankTransfer", "RefundDestinationDetailsBrBankTransfer", "RefundDestinationDetailsMultibanco", "RefundDestinationDetails", "Refund", "RefundList", "RefundCreateParams", "ProductPackageDimensions", "ProductMarketingFeaturesItem", "ProductFeaturesItem", "Product", "ProductList", "ProductSearchResult", "ProductCreateParamsPackageDimensions", "ProductCreateParamsMarketingFeaturesItem", "ProductCreateParams", "ProductUpdateParamsMarketingFeaturesItem", "ProductUpdateParamsPackageDimensions", "ProductUpdateParams", "ProductDeletedResponse", "BalanceAvailableItemSourceTypes", "BalanceAvailableItem", "BalanceInstantAvailableItemNetAvailableItemSourceTypes", "BalanceInstantAvailableItemNetAvailableItem", "BalanceInstantAvailableItemSourceTypes", "BalanceInstantAvailableItem", "BalanceIssuingAvailableItemSourceTypes", "BalanceIssuingAvailableItem", "BalanceIssuing", "BalanceRefundAndDisputePrefundingAvailableItemSourceTypes", "BalanceRefundAndDisputePrefundingAvailableItem", "BalanceRefundAndDisputePrefundingPendingItemSourceTypes", "BalanceRefundAndDisputePrefundingPendingItem", "BalanceRefundAndDisputePrefunding", "BalanceConnectReservedItemSourceTypes", "BalanceConnectReservedItem", "BalancePendingItemSourceTypes", "BalancePendingItem", "Balance", "BalanceTransactionFeeDetailsItem", "BalanceTransaction", "BalanceTransactionList", "PaymentIntent", "PaymentIntentList", "PaymentIntentSearchResult", "DisputeEvidenceDetails", "Dispute", "DisputeList", "PayoutTraceId", "Payout", "PayoutList", "CustomerSearchResult", "InvoiceSearchResult", "ChargeSearchResult", "SubscriptionSearchResult", "CustomersListResultMeta", "CustomersApiSearchResultMeta", "InvoicesListResultMeta", "ChargesListResultMeta", "SubscriptionsListResultMeta", "RefundsListResultMeta", "ProductsListResultMeta", "ProductsApiSearchResultMeta", "BalanceTransactionsListResultMeta", "PaymentIntentsListResultMeta", "PaymentIntentsApiSearchResultMeta", "DisputesListResultMeta", "PayoutsListResultMeta", "StripeExecuteResult", "StripeExecuteResultWithMeta", "CustomersListResult", "CustomersApiSearchResult", "InvoicesListResult", "ChargesListResult", "SubscriptionsListResult", "RefundsListResult", "ProductsListResult", "ProductsApiSearchResult", "BalanceTransactionsListResult", "PaymentIntentsListResult", "PaymentIntentsApiSearchResult", "DisputesListResult", "PayoutsListResult", "CustomersListParamsCreated", "InvoicesListParamsCreated", "ChargesListParamsCreated", "SubscriptionsListParamsAutomaticTax", "SubscriptionsListParamsCreated", "SubscriptionsListParamsCurrentPeriodEnd", "SubscriptionsListParamsCurrentPeriodStart", "RefundsListParamsCreated", "ProductsListParamsCreated", "BalanceTransactionsListParamsCreated", "PaymentIntentsListParamsCreated", "DisputesListParamsCreated", "PayoutsListParamsArrivalDate", "PayoutsListParamsCreated", "CustomersListParams", "CustomersCreateParams", "CustomersGetParams", "CustomersUpdateParams", "CustomersDeleteParams", "CustomersApiSearchParams", "InvoicesListParams", "InvoicesGetParams", "InvoicesApiSearchParams", "ChargesListParams", "ChargesGetParams", "ChargesApiSearchParams", "SubscriptionsListParams", "SubscriptionsGetParams", "SubscriptionsApiSearchParams", "RefundsListParams", "RefundsCreateParams", "RefundsGetParams", "ProductsListParams", "ProductsCreateParams", "ProductsGetParams", "ProductsUpdateParams", "ProductsDeleteParams", "ProductsApiSearchParams", "BalanceGetParams", "BalanceTransactionsListParams", "BalanceTransactionsGetParams", "PaymentIntentsListParams", "PaymentIntentsGetParams", "PaymentIntentsApiSearchParams", "DisputesListParams", "DisputesGetParams", "PayoutsListParams", "PayoutsGetParams"]
|
|
@@ -393,16 +393,24 @@ def convert_openapi_to_connector_model(spec: OpenAPIConnector) -> ConnectorModel
|
|
|
393
393
|
for entity_name, endpoints_dict in entities_map.items():
|
|
394
394
|
actions = list(endpoints_dict.keys())
|
|
395
395
|
|
|
396
|
-
# Get schema from components if available
|
|
396
|
+
# Get schema and stream_name from components if available
|
|
397
397
|
schema = None
|
|
398
|
+
entity_stream_name = None
|
|
398
399
|
if spec.components:
|
|
399
400
|
# Look for a schema matching the entity name
|
|
400
401
|
for schema_name, schema_def in spec.components.schemas.items():
|
|
401
402
|
if schema_def.x_airbyte_entity_name == entity_name or schema_name.lower() == entity_name.lower():
|
|
402
403
|
schema = schema_def.model_dump(by_alias=True)
|
|
404
|
+
entity_stream_name = schema_def.x_airbyte_stream_name
|
|
403
405
|
break
|
|
404
406
|
|
|
405
|
-
entity = EntityDefinition(
|
|
407
|
+
entity = EntityDefinition(
|
|
408
|
+
name=entity_name,
|
|
409
|
+
stream_name=entity_stream_name,
|
|
410
|
+
actions=actions,
|
|
411
|
+
endpoints=endpoints_dict,
|
|
412
|
+
schema=schema,
|
|
413
|
+
)
|
|
406
414
|
entities.append(entity)
|
|
407
415
|
|
|
408
416
|
# Extract retry config from x-airbyte-retry-config extension
|
|
@@ -844,10 +844,58 @@ class LocalExecutor:
|
|
|
844
844
|
return self._extract_body(endpoint.body_fields, params)
|
|
845
845
|
return None
|
|
846
846
|
|
|
847
|
+
def _flatten_form_data(self, data: dict[str, Any], parent_key: str = "") -> dict[str, Any]:
|
|
848
|
+
"""Flatten nested dict/list structures into bracket notation for form encoding.
|
|
849
|
+
|
|
850
|
+
Stripe and similar APIs require nested arrays/objects to be encoded using bracket
|
|
851
|
+
notation when using application/x-www-form-urlencoded content type.
|
|
852
|
+
|
|
853
|
+
Args:
|
|
854
|
+
data: Nested dict with arrays/objects to flatten
|
|
855
|
+
parent_key: Parent key for nested structures (used in recursion)
|
|
856
|
+
|
|
857
|
+
Returns:
|
|
858
|
+
Flattened dict with bracket notation keys
|
|
859
|
+
|
|
860
|
+
Examples:
|
|
861
|
+
>>> _flatten_form_data({"items": [{"price": "p1", "qty": 1}]})
|
|
862
|
+
{"items[0][price]": "p1", "items[0][qty]": 1}
|
|
863
|
+
|
|
864
|
+
>>> _flatten_form_data({"customer": "cus_123", "metadata": {"key": "value"}})
|
|
865
|
+
{"customer": "cus_123", "metadata[key]": "value"}
|
|
866
|
+
"""
|
|
867
|
+
flattened = {}
|
|
868
|
+
|
|
869
|
+
for key, value in data.items():
|
|
870
|
+
new_key = f"{parent_key}[{key}]" if parent_key else key
|
|
871
|
+
|
|
872
|
+
if isinstance(value, dict):
|
|
873
|
+
# Recursively flatten nested dicts
|
|
874
|
+
flattened.update(self._flatten_form_data(value, new_key))
|
|
875
|
+
elif isinstance(value, list):
|
|
876
|
+
# Flatten arrays with indexed bracket notation
|
|
877
|
+
for i, item in enumerate(value):
|
|
878
|
+
indexed_key = f"{new_key}[{i}]"
|
|
879
|
+
if isinstance(item, dict):
|
|
880
|
+
# Nested dict in array - recurse
|
|
881
|
+
flattened.update(self._flatten_form_data(item, indexed_key))
|
|
882
|
+
elif isinstance(item, list):
|
|
883
|
+
# Nested list in array - recurse
|
|
884
|
+
flattened.update(self._flatten_form_data({str(i): item}, new_key))
|
|
885
|
+
else:
|
|
886
|
+
# Primitive value in array
|
|
887
|
+
flattened[indexed_key] = item
|
|
888
|
+
else:
|
|
889
|
+
# Primitive value - add directly
|
|
890
|
+
flattened[new_key] = value
|
|
891
|
+
|
|
892
|
+
return flattened
|
|
893
|
+
|
|
847
894
|
def _determine_request_format(self, endpoint: EndpointDefinition, body: dict[str, Any] | None) -> dict[str, Any]:
|
|
848
895
|
"""Determine json/data parameters for HTTP request.
|
|
849
896
|
|
|
850
897
|
GraphQL always uses JSON, regardless of content_type setting.
|
|
898
|
+
For form-encoded requests, nested structures are flattened into bracket notation.
|
|
851
899
|
|
|
852
900
|
Args:
|
|
853
901
|
endpoint: Endpoint definition
|
|
@@ -864,7 +912,9 @@ class LocalExecutor:
|
|
|
864
912
|
if is_graphql or endpoint.content_type.value == "application/json":
|
|
865
913
|
return {"json": body}
|
|
866
914
|
elif endpoint.content_type.value == "application/x-www-form-urlencoded":
|
|
867
|
-
|
|
915
|
+
# Flatten nested structures for form encoding
|
|
916
|
+
flattened_body = self._flatten_form_data(body)
|
|
917
|
+
return {"data": flattened_body}
|
|
868
918
|
|
|
869
919
|
return {}
|
|
870
920
|
|
|
@@ -1079,7 +1129,7 @@ class LocalExecutor:
|
|
|
1079
1129
|
if not action:
|
|
1080
1130
|
return response_data
|
|
1081
1131
|
|
|
1082
|
-
is_array_action = action in (Action.LIST, Action.
|
|
1132
|
+
is_array_action = action in (Action.LIST, Action.API_SEARCH)
|
|
1083
1133
|
|
|
1084
1134
|
try:
|
|
1085
1135
|
# Parse and apply JSONPath expression
|
|
@@ -1209,7 +1259,7 @@ class LocalExecutor:
|
|
|
1209
1259
|
|
|
1210
1260
|
|
|
1211
1261
|
class _StandardOperationHandler:
|
|
1212
|
-
"""Handler for standard REST operations (GET, LIST, CREATE, UPDATE, DELETE,
|
|
1262
|
+
"""Handler for standard REST operations (GET, LIST, CREATE, UPDATE, DELETE, API_SEARCH, AUTHORIZE)."""
|
|
1213
1263
|
|
|
1214
1264
|
def __init__(self, context: _OperationContext):
|
|
1215
1265
|
self.ctx = context
|
|
@@ -1222,7 +1272,7 @@ class _StandardOperationHandler:
|
|
|
1222
1272
|
Action.CREATE,
|
|
1223
1273
|
Action.UPDATE,
|
|
1224
1274
|
Action.DELETE,
|
|
1225
|
-
Action.
|
|
1275
|
+
Action.API_SEARCH,
|
|
1226
1276
|
Action.AUTHORIZE,
|
|
1227
1277
|
}
|
|
1228
1278
|
|
|
@@ -159,6 +159,38 @@ Example:
|
|
|
159
159
|
```
|
|
160
160
|
"""
|
|
161
161
|
|
|
162
|
+
AIRBYTE_STREAM_NAME = "x-airbyte-stream-name"
|
|
163
|
+
"""
|
|
164
|
+
Extension: x-airbyte-stream-name
|
|
165
|
+
Location: Schema object (in components.schemas)
|
|
166
|
+
Type: string
|
|
167
|
+
Required: No
|
|
168
|
+
|
|
169
|
+
Description:
|
|
170
|
+
Specifies the Airbyte stream name for cache lookup purposes. This maps the entity
|
|
171
|
+
to the corresponding Airbyte stream, enabling cache-based data retrieval. When
|
|
172
|
+
specified, the EntityDefinition.stream_name field will be populated with this value.
|
|
173
|
+
|
|
174
|
+
This extension is placed on Schema objects alongside x-airbyte-entity-name, following
|
|
175
|
+
the same pattern. The stream name is an entity-level property (not operation-level)
|
|
176
|
+
since an entity maps to exactly one Airbyte stream.
|
|
177
|
+
|
|
178
|
+
Example:
|
|
179
|
+
```yaml
|
|
180
|
+
components:
|
|
181
|
+
schemas:
|
|
182
|
+
Customer:
|
|
183
|
+
type: object
|
|
184
|
+
x-airbyte-entity-name: customers
|
|
185
|
+
x-airbyte-stream-name: customers
|
|
186
|
+
properties:
|
|
187
|
+
id:
|
|
188
|
+
type: string
|
|
189
|
+
name:
|
|
190
|
+
type: string
|
|
191
|
+
```
|
|
192
|
+
"""
|
|
193
|
+
|
|
162
194
|
AIRBYTE_TOKEN_PATH = "x-airbyte-token-path"
|
|
163
195
|
"""
|
|
164
196
|
Extension: x-airbyte-token-path
|
|
@@ -495,8 +527,8 @@ class ActionType(str, Enum):
|
|
|
495
527
|
DELETE = "delete"
|
|
496
528
|
"""Delete a record"""
|
|
497
529
|
|
|
498
|
-
|
|
499
|
-
"""Search for records matching specific query criteria"""
|
|
530
|
+
API_SEARCH = "api_search"
|
|
531
|
+
"""Search for records matching specific query criteria via API"""
|
|
500
532
|
|
|
501
533
|
DOWNLOAD = "download"
|
|
502
534
|
"""Download file content from a URL specified in the metadata response"""
|
|
@@ -514,7 +546,7 @@ class BodyType(str, Enum):
|
|
|
514
546
|
|
|
515
547
|
|
|
516
548
|
# Type alias for use in Pydantic models
|
|
517
|
-
ActionTypeLiteral = Literal["get", "list", "create", "update", "delete", "
|
|
549
|
+
ActionTypeLiteral = Literal["get", "list", "create", "update", "delete", "api_search", "download"]
|
|
518
550
|
|
|
519
551
|
|
|
520
552
|
# =============================================================================
|
|
@@ -548,6 +580,7 @@ def get_all_extension_names() -> list[str]:
|
|
|
548
580
|
AIRBYTE_ENTITY,
|
|
549
581
|
AIRBYTE_ACTION,
|
|
550
582
|
AIRBYTE_ENTITY_NAME,
|
|
583
|
+
AIRBYTE_STREAM_NAME,
|
|
551
584
|
AIRBYTE_TOKEN_PATH,
|
|
552
585
|
AIRBYTE_BODY_TYPE,
|
|
553
586
|
AIRBYTE_PATH_OVERRIDE,
|
|
@@ -594,6 +627,12 @@ EXTENSION_REGISTRY = {
|
|
|
594
627
|
"required": False,
|
|
595
628
|
"description": "Links schema to an entity/stream",
|
|
596
629
|
},
|
|
630
|
+
AIRBYTE_STREAM_NAME: {
|
|
631
|
+
"location": "schema",
|
|
632
|
+
"type": "string",
|
|
633
|
+
"required": False,
|
|
634
|
+
"description": "Maps entity to Airbyte stream for cache lookup",
|
|
635
|
+
},
|
|
597
636
|
AIRBYTE_TOKEN_PATH: {
|
|
598
637
|
"location": "securityScheme",
|
|
599
638
|
"type": "string",
|