airbyte-agent-shopify 0.1.21__py3-none-any.whl → 0.1.24__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_shopify/__init__.py +6 -6
- airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/client.py +62 -0
- airbyte_agent_shopify/_vendored/connector_sdk/connector_model_loader.py +1 -0
- airbyte_agent_shopify/_vendored/connector_sdk/executor/hosted_executor.py +54 -25
- airbyte_agent_shopify/_vendored/connector_sdk/executor/local_executor.py +9 -15
- airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/httpx_adapter.py +10 -1
- airbyte_agent_shopify/_vendored/connector_sdk/schema/base.py +11 -0
- airbyte_agent_shopify/_vendored/connector_sdk/schema/security.py +5 -0
- airbyte_agent_shopify/_vendored/connector_sdk/types.py +4 -0
- airbyte_agent_shopify/_vendored/connector_sdk/utils.py +67 -0
- airbyte_agent_shopify/_vendored/connector_sdk/validation.py +151 -2
- airbyte_agent_shopify/_vendored/connector_sdk/validation_replication.py +970 -0
- airbyte_agent_shopify/connector.py +113 -10
- airbyte_agent_shopify/connector_model.py +1 -1
- airbyte_agent_shopify/models.py +65 -65
- {airbyte_agent_shopify-0.1.21.dist-info → airbyte_agent_shopify-0.1.24.dist-info}/METADATA +4 -4
- {airbyte_agent_shopify-0.1.21.dist-info → airbyte_agent_shopify-0.1.24.dist-info}/RECORD +18 -17
- {airbyte_agent_shopify-0.1.21.dist-info → airbyte_agent_shopify-0.1.24.dist-info}/WHEEL +0 -0
|
@@ -72,6 +72,7 @@ from .types import (
|
|
|
72
72
|
)
|
|
73
73
|
if TYPE_CHECKING:
|
|
74
74
|
from .models import ShopifyAuthConfig
|
|
75
|
+
|
|
75
76
|
# Import response models and envelope models at runtime
|
|
76
77
|
from .models import (
|
|
77
78
|
ShopifyCheckResult,
|
|
@@ -179,7 +180,7 @@ class ShopifyConnector:
|
|
|
179
180
|
"""
|
|
180
181
|
|
|
181
182
|
connector_name = "shopify"
|
|
182
|
-
connector_version = "0.1.
|
|
183
|
+
connector_version = "0.1.3"
|
|
183
184
|
vendored_sdk_version = "0.1.0" # Version of vendored connector-sdk
|
|
184
185
|
|
|
185
186
|
# Map of (entity, action) -> needs_envelope for envelope wrapping decision
|
|
@@ -299,6 +300,7 @@ class ShopifyConnector:
|
|
|
299
300
|
external_user_id: str | None = None,
|
|
300
301
|
airbyte_client_id: str | None = None,
|
|
301
302
|
airbyte_client_secret: str | None = None,
|
|
303
|
+
connector_id: str | None = None,
|
|
302
304
|
on_token_refresh: Any | None = None,
|
|
303
305
|
shop: str | None = None ):
|
|
304
306
|
"""
|
|
@@ -306,20 +308,28 @@ class ShopifyConnector:
|
|
|
306
308
|
|
|
307
309
|
Supports both local and hosted execution modes:
|
|
308
310
|
- Local mode: Provide `auth_config` for direct API calls
|
|
309
|
-
- Hosted mode: Provide
|
|
311
|
+
- Hosted mode: Provide Airbyte credentials with either `connector_id` or `external_user_id`
|
|
310
312
|
|
|
311
313
|
Args:
|
|
312
314
|
auth_config: Typed authentication configuration (required for local mode)
|
|
313
|
-
external_user_id: External user ID (
|
|
315
|
+
external_user_id: External user ID (for hosted mode lookup)
|
|
314
316
|
airbyte_client_id: Airbyte OAuth client ID (required for hosted mode)
|
|
315
317
|
airbyte_client_secret: Airbyte OAuth client secret (required for hosted mode)
|
|
318
|
+
connector_id: Specific connector/source ID (for hosted mode, skips lookup)
|
|
316
319
|
on_token_refresh: Optional callback for OAuth2 token refresh persistence.
|
|
317
320
|
Called with new_tokens dict when tokens are refreshed. Can be sync or async.
|
|
318
321
|
Example: lambda tokens: save_to_database(tokens) shop: Your Shopify store name (e.g., 'my-store' from my-store.myshopify.com)
|
|
319
322
|
Examples:
|
|
320
323
|
# Local mode (direct API calls)
|
|
321
324
|
connector = ShopifyConnector(auth_config=ShopifyAuthConfig(api_key="...", shop="..."))
|
|
322
|
-
# Hosted mode (
|
|
325
|
+
# Hosted mode with explicit connector_id (no lookup needed)
|
|
326
|
+
connector = ShopifyConnector(
|
|
327
|
+
airbyte_client_id="client_abc123",
|
|
328
|
+
airbyte_client_secret="secret_xyz789",
|
|
329
|
+
connector_id="existing-source-uuid"
|
|
330
|
+
)
|
|
331
|
+
|
|
332
|
+
# Hosted mode with lookup by external_user_id
|
|
323
333
|
connector = ShopifyConnector(
|
|
324
334
|
external_user_id="user-123",
|
|
325
335
|
airbyte_client_id="client_abc123",
|
|
@@ -337,21 +347,24 @@ class ShopifyConnector:
|
|
|
337
347
|
on_token_refresh=save_tokens
|
|
338
348
|
)
|
|
339
349
|
"""
|
|
340
|
-
# Hosted mode:
|
|
341
|
-
|
|
350
|
+
# Hosted mode: Airbyte credentials + either connector_id OR external_user_id
|
|
351
|
+
is_hosted = airbyte_client_id and airbyte_client_secret and (connector_id or external_user_id)
|
|
352
|
+
|
|
353
|
+
if is_hosted:
|
|
342
354
|
from ._vendored.connector_sdk.executor import HostedExecutor
|
|
343
355
|
self._executor = HostedExecutor(
|
|
344
|
-
external_user_id=external_user_id,
|
|
345
356
|
airbyte_client_id=airbyte_client_id,
|
|
346
357
|
airbyte_client_secret=airbyte_client_secret,
|
|
347
|
-
|
|
358
|
+
connector_id=connector_id,
|
|
359
|
+
external_user_id=external_user_id,
|
|
360
|
+
connector_definition_id=str(ShopifyConnectorModel.id) if not connector_id else None,
|
|
348
361
|
)
|
|
349
362
|
else:
|
|
350
363
|
# Local mode: auth_config required
|
|
351
364
|
if not auth_config:
|
|
352
365
|
raise ValueError(
|
|
353
|
-
"Either provide (
|
|
354
|
-
"or auth_config for local mode"
|
|
366
|
+
"Either provide Airbyte credentials (airbyte_client_id, airbyte_client_secret) with "
|
|
367
|
+
"connector_id or external_user_id for hosted mode, or auth_config for local mode"
|
|
355
368
|
)
|
|
356
369
|
|
|
357
370
|
from ._vendored.connector_sdk.executor import LocalExecutor
|
|
@@ -1048,6 +1061,96 @@ class ShopifyConnector:
|
|
|
1048
1061
|
)
|
|
1049
1062
|
return entity_def.entity_schema if entity_def else None
|
|
1050
1063
|
|
|
1064
|
+
@property
|
|
1065
|
+
def connector_id(self) -> str | None:
|
|
1066
|
+
"""Get the connector/source ID (only available in hosted mode).
|
|
1067
|
+
|
|
1068
|
+
Returns:
|
|
1069
|
+
The connector ID if in hosted mode, None if in local mode.
|
|
1070
|
+
|
|
1071
|
+
Example:
|
|
1072
|
+
connector = await ShopifyConnector.create_hosted(...)
|
|
1073
|
+
print(f"Created connector: {connector.connector_id}")
|
|
1074
|
+
"""
|
|
1075
|
+
if hasattr(self, '_executor') and hasattr(self._executor, '_connector_id'):
|
|
1076
|
+
return self._executor._connector_id
|
|
1077
|
+
return None
|
|
1078
|
+
|
|
1079
|
+
# ===== HOSTED MODE FACTORY =====
|
|
1080
|
+
|
|
1081
|
+
@classmethod
|
|
1082
|
+
async def create_hosted(
|
|
1083
|
+
cls,
|
|
1084
|
+
*,
|
|
1085
|
+
external_user_id: str,
|
|
1086
|
+
airbyte_client_id: str,
|
|
1087
|
+
airbyte_client_secret: str,
|
|
1088
|
+
auth_config: "ShopifyAuthConfig",
|
|
1089
|
+
name: str | None = None,
|
|
1090
|
+
replication_config: dict[str, Any] | None = None,
|
|
1091
|
+
) -> "ShopifyConnector":
|
|
1092
|
+
"""
|
|
1093
|
+
Create a new hosted connector on Airbyte Cloud.
|
|
1094
|
+
|
|
1095
|
+
This factory method:
|
|
1096
|
+
1. Creates a source on Airbyte Cloud with the provided credentials
|
|
1097
|
+
2. Returns a connector configured with the new connector_id
|
|
1098
|
+
|
|
1099
|
+
Args:
|
|
1100
|
+
external_user_id: Workspace identifier in Airbyte Cloud
|
|
1101
|
+
airbyte_client_id: Airbyte OAuth client ID
|
|
1102
|
+
airbyte_client_secret: Airbyte OAuth client secret
|
|
1103
|
+
auth_config: Typed auth config (same as local mode)
|
|
1104
|
+
name: Optional source name (defaults to connector name + external_user_id)
|
|
1105
|
+
replication_config: Optional replication settings dict.
|
|
1106
|
+
Required for connectors with x-airbyte-replication-config (REPLICATION mode sources).
|
|
1107
|
+
|
|
1108
|
+
Returns:
|
|
1109
|
+
A ShopifyConnector instance configured in hosted mode
|
|
1110
|
+
|
|
1111
|
+
Example:
|
|
1112
|
+
# Create a new hosted connector with API key auth
|
|
1113
|
+
connector = await ShopifyConnector.create_hosted(
|
|
1114
|
+
external_user_id="my-workspace",
|
|
1115
|
+
airbyte_client_id="client_abc",
|
|
1116
|
+
airbyte_client_secret="secret_xyz",
|
|
1117
|
+
auth_config=ShopifyAuthConfig(api_key="...", shop="..."),
|
|
1118
|
+
)
|
|
1119
|
+
|
|
1120
|
+
# Use the connector
|
|
1121
|
+
result = await connector.execute("entity", "list", {})
|
|
1122
|
+
"""
|
|
1123
|
+
from ._vendored.connector_sdk.cloud_utils import AirbyteCloudClient
|
|
1124
|
+
|
|
1125
|
+
client = AirbyteCloudClient(
|
|
1126
|
+
client_id=airbyte_client_id,
|
|
1127
|
+
client_secret=airbyte_client_secret,
|
|
1128
|
+
)
|
|
1129
|
+
|
|
1130
|
+
try:
|
|
1131
|
+
# Build credentials from auth_config
|
|
1132
|
+
credentials = auth_config.model_dump(exclude_none=True)
|
|
1133
|
+
replication_config_dict = replication_config.model_dump(exclude_none=True) if replication_config else None
|
|
1134
|
+
|
|
1135
|
+
# Create source on Airbyte Cloud
|
|
1136
|
+
source_name = name or f"{cls.connector_name} - {external_user_id}"
|
|
1137
|
+
source_id = await client.create_source(
|
|
1138
|
+
name=source_name,
|
|
1139
|
+
connector_definition_id=str(ShopifyConnectorModel.id),
|
|
1140
|
+
external_user_id=external_user_id,
|
|
1141
|
+
credentials=credentials,
|
|
1142
|
+
replication_config=replication_config_dict,
|
|
1143
|
+
)
|
|
1144
|
+
finally:
|
|
1145
|
+
await client.close()
|
|
1146
|
+
|
|
1147
|
+
# Return connector configured with the new connector_id
|
|
1148
|
+
return cls(
|
|
1149
|
+
airbyte_client_id=airbyte_client_id,
|
|
1150
|
+
airbyte_client_secret=airbyte_client_secret,
|
|
1151
|
+
connector_id=source_id,
|
|
1152
|
+
)
|
|
1153
|
+
|
|
1051
1154
|
|
|
1052
1155
|
|
|
1053
1156
|
class CustomersQuery:
|
|
@@ -26,7 +26,7 @@ from uuid import (
|
|
|
26
26
|
ShopifyConnectorModel: ConnectorModel = ConnectorModel(
|
|
27
27
|
id=UUID('9da77001-af33-4bcd-be46-6252bf9342b9'),
|
|
28
28
|
name='shopify',
|
|
29
|
-
version='0.1.
|
|
29
|
+
version='0.1.3',
|
|
30
30
|
base_url='https://{shop}.myshopify.com/admin/api/2025-01',
|
|
31
31
|
auth=AuthConfig(
|
|
32
32
|
type=AuthType.API_KEY,
|
airbyte_agent_shopify/models.py
CHANGED
|
@@ -119,55 +119,6 @@ class OrderAddress(BaseModel):
|
|
|
119
119
|
latitude: Union[float | None, Any] = Field(default=None)
|
|
120
120
|
longitude: Union[float | None, Any] = Field(default=None)
|
|
121
121
|
|
|
122
|
-
class Transaction(BaseModel):
|
|
123
|
-
"""An order transaction"""
|
|
124
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
125
|
-
|
|
126
|
-
id: Union[int, Any] = Field(default=None)
|
|
127
|
-
order_id: Union[int | None, Any] = Field(default=None)
|
|
128
|
-
kind: Union[str | None, Any] = Field(default=None)
|
|
129
|
-
gateway: Union[str | None, Any] = Field(default=None)
|
|
130
|
-
status: Union[str | None, Any] = Field(default=None)
|
|
131
|
-
message: Union[str | None, Any] = Field(default=None)
|
|
132
|
-
created_at: Union[str | None, Any] = Field(default=None)
|
|
133
|
-
test: Union[bool | None, Any] = Field(default=None)
|
|
134
|
-
authorization: Union[str | None, Any] = Field(default=None)
|
|
135
|
-
location_id: Union[int | None, Any] = Field(default=None)
|
|
136
|
-
user_id: Union[int | None, Any] = Field(default=None)
|
|
137
|
-
parent_id: Union[int | None, Any] = Field(default=None)
|
|
138
|
-
processed_at: Union[str | None, Any] = Field(default=None)
|
|
139
|
-
device_id: Union[int | None, Any] = Field(default=None)
|
|
140
|
-
error_code: Union[str | None, Any] = Field(default=None)
|
|
141
|
-
source_name: Union[str | None, Any] = Field(default=None)
|
|
142
|
-
receipt: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
143
|
-
currency_exchange_adjustment: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
144
|
-
amount: Union[str | None, Any] = Field(default=None)
|
|
145
|
-
currency: Union[str | None, Any] = Field(default=None)
|
|
146
|
-
payment_id: Union[str | None, Any] = Field(default=None)
|
|
147
|
-
total_unsettled_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
148
|
-
manual_payment_gateway: Union[bool | None, Any] = Field(default=None)
|
|
149
|
-
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
150
|
-
|
|
151
|
-
class Refund(BaseModel):
|
|
152
|
-
"""An order refund"""
|
|
153
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
154
|
-
|
|
155
|
-
id: Union[int, Any] = Field(default=None)
|
|
156
|
-
order_id: Union[int | None, Any] = Field(default=None)
|
|
157
|
-
created_at: Union[str | None, Any] = Field(default=None)
|
|
158
|
-
note: Union[str | None, Any] = Field(default=None)
|
|
159
|
-
user_id: Union[int | None, Any] = Field(default=None)
|
|
160
|
-
processed_at: Union[str | None, Any] = Field(default=None)
|
|
161
|
-
restock: Union[bool | None, Any] = Field(default=None)
|
|
162
|
-
duties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
163
|
-
total_duties_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
164
|
-
return_: Union[dict[str, Any] | None, Any] = Field(default=None, alias="return")
|
|
165
|
-
refund_line_items: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
166
|
-
transactions: Union[list[Transaction] | None, Any] = Field(default=None)
|
|
167
|
-
order_adjustments: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
168
|
-
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
169
|
-
refund_shipping_lines: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
170
|
-
|
|
171
122
|
class LineItem(BaseModel):
|
|
172
123
|
"""LineItem type definition"""
|
|
173
124
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -225,6 +176,55 @@ class Fulfillment(BaseModel):
|
|
|
225
176
|
name: Union[str | None, Any] = Field(default=None)
|
|
226
177
|
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
227
178
|
|
|
179
|
+
class Transaction(BaseModel):
|
|
180
|
+
"""An order transaction"""
|
|
181
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
182
|
+
|
|
183
|
+
id: Union[int, Any] = Field(default=None)
|
|
184
|
+
order_id: Union[int | None, Any] = Field(default=None)
|
|
185
|
+
kind: Union[str | None, Any] = Field(default=None)
|
|
186
|
+
gateway: Union[str | None, Any] = Field(default=None)
|
|
187
|
+
status: Union[str | None, Any] = Field(default=None)
|
|
188
|
+
message: Union[str | None, Any] = Field(default=None)
|
|
189
|
+
created_at: Union[str | None, Any] = Field(default=None)
|
|
190
|
+
test: Union[bool | None, Any] = Field(default=None)
|
|
191
|
+
authorization: Union[str | None, Any] = Field(default=None)
|
|
192
|
+
location_id: Union[int | None, Any] = Field(default=None)
|
|
193
|
+
user_id: Union[int | None, Any] = Field(default=None)
|
|
194
|
+
parent_id: Union[int | None, Any] = Field(default=None)
|
|
195
|
+
processed_at: Union[str | None, Any] = Field(default=None)
|
|
196
|
+
device_id: Union[int | None, Any] = Field(default=None)
|
|
197
|
+
error_code: Union[str | None, Any] = Field(default=None)
|
|
198
|
+
source_name: Union[str | None, Any] = Field(default=None)
|
|
199
|
+
receipt: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
200
|
+
currency_exchange_adjustment: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
201
|
+
amount: Union[str | None, Any] = Field(default=None)
|
|
202
|
+
currency: Union[str | None, Any] = Field(default=None)
|
|
203
|
+
payment_id: Union[str | None, Any] = Field(default=None)
|
|
204
|
+
total_unsettled_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
205
|
+
manual_payment_gateway: Union[bool | None, Any] = Field(default=None)
|
|
206
|
+
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
207
|
+
|
|
208
|
+
class Refund(BaseModel):
|
|
209
|
+
"""An order refund"""
|
|
210
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
211
|
+
|
|
212
|
+
id: Union[int, Any] = Field(default=None)
|
|
213
|
+
order_id: Union[int | None, Any] = Field(default=None)
|
|
214
|
+
created_at: Union[str | None, Any] = Field(default=None)
|
|
215
|
+
note: Union[str | None, Any] = Field(default=None)
|
|
216
|
+
user_id: Union[int | None, Any] = Field(default=None)
|
|
217
|
+
processed_at: Union[str | None, Any] = Field(default=None)
|
|
218
|
+
restock: Union[bool | None, Any] = Field(default=None)
|
|
219
|
+
duties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
220
|
+
total_duties_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
221
|
+
return_: Union[dict[str, Any] | None, Any] = Field(default=None, alias="return")
|
|
222
|
+
refund_line_items: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
223
|
+
transactions: Union[list[Transaction] | None, Any] = Field(default=None)
|
|
224
|
+
order_adjustments: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
225
|
+
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
226
|
+
refund_shipping_lines: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
227
|
+
|
|
228
228
|
class Order(BaseModel):
|
|
229
229
|
"""A Shopify order"""
|
|
230
230
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -329,22 +329,6 @@ class OrderList(BaseModel):
|
|
|
329
329
|
|
|
330
330
|
orders: Union[list[Order], Any] = Field(default=None)
|
|
331
331
|
|
|
332
|
-
class ProductImage(BaseModel):
|
|
333
|
-
"""A product image"""
|
|
334
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
335
|
-
|
|
336
|
-
id: Union[int, Any] = Field(default=None)
|
|
337
|
-
product_id: Union[int | None, Any] = Field(default=None)
|
|
338
|
-
position: Union[int | None, Any] = Field(default=None)
|
|
339
|
-
created_at: Union[str | None, Any] = Field(default=None)
|
|
340
|
-
updated_at: Union[str | None, Any] = Field(default=None)
|
|
341
|
-
alt: Union[str | None, Any] = Field(default=None)
|
|
342
|
-
width: Union[int | None, Any] = Field(default=None)
|
|
343
|
-
height: Union[int | None, Any] = Field(default=None)
|
|
344
|
-
src: Union[str | None, Any] = Field(default=None)
|
|
345
|
-
variant_ids: Union[list[int] | None, Any] = Field(default=None)
|
|
346
|
-
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
347
|
-
|
|
348
332
|
class ProductVariant(BaseModel):
|
|
349
333
|
"""A product variant"""
|
|
350
334
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -376,6 +360,22 @@ class ProductVariant(BaseModel):
|
|
|
376
360
|
requires_shipping: Union[bool | None, Any] = Field(default=None)
|
|
377
361
|
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
378
362
|
|
|
363
|
+
class ProductImage(BaseModel):
|
|
364
|
+
"""A product image"""
|
|
365
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
366
|
+
|
|
367
|
+
id: Union[int, Any] = Field(default=None)
|
|
368
|
+
product_id: Union[int | None, Any] = Field(default=None)
|
|
369
|
+
position: Union[int | None, Any] = Field(default=None)
|
|
370
|
+
created_at: Union[str | None, Any] = Field(default=None)
|
|
371
|
+
updated_at: Union[str | None, Any] = Field(default=None)
|
|
372
|
+
alt: Union[str | None, Any] = Field(default=None)
|
|
373
|
+
width: Union[int | None, Any] = Field(default=None)
|
|
374
|
+
height: Union[int | None, Any] = Field(default=None)
|
|
375
|
+
src: Union[str | None, Any] = Field(default=None)
|
|
376
|
+
variant_ids: Union[list[int] | None, Any] = Field(default=None)
|
|
377
|
+
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
378
|
+
|
|
379
379
|
class Product(BaseModel):
|
|
380
380
|
"""A Shopify product"""
|
|
381
381
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-agent-shopify
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.24
|
|
4
4
|
Summary: Airbyte Shopify Connector for AI platforms
|
|
5
5
|
Project-URL: Homepage, https://github.com/airbytehq/airbyte-agent-connectors
|
|
6
6
|
Project-URL: Documentation, https://docs.airbyte.com/ai-agents/
|
|
@@ -171,7 +171,7 @@ See the official [Shopify API reference](https://shopify.dev/docs/api/admin-rest
|
|
|
171
171
|
|
|
172
172
|
## Version information
|
|
173
173
|
|
|
174
|
-
- **Package version:** 0.1.
|
|
175
|
-
- **Connector version:** 0.1.
|
|
176
|
-
- **Generated with Connector SDK commit SHA:**
|
|
174
|
+
- **Package version:** 0.1.24
|
|
175
|
+
- **Connector version:** 0.1.3
|
|
176
|
+
- **Generated with Connector SDK commit SHA:** b184da3e22ef8521d2eeebf3c96a0fe8da2424f5
|
|
177
177
|
- **Changelog:** [View changelog](https://github.com/airbytehq/airbyte-agent-connectors/blob/main/connectors/shopify/CHANGELOG.md)
|
|
@@ -1,27 +1,28 @@
|
|
|
1
|
-
airbyte_agent_shopify/__init__.py,sha256=
|
|
2
|
-
airbyte_agent_shopify/connector.py,sha256=
|
|
3
|
-
airbyte_agent_shopify/connector_model.py,sha256=
|
|
4
|
-
airbyte_agent_shopify/models.py,sha256=
|
|
1
|
+
airbyte_agent_shopify/__init__.py,sha256=VzEfKBOuvkw1Kxz_VgySeuOUzh9cC936EkU9O7xI-aU,9711
|
|
2
|
+
airbyte_agent_shopify/connector.py,sha256=6G3HzGH2YqnSTFnrxFDx1Hqy7YhjW8iH8XaD74_YG04,99334
|
|
3
|
+
airbyte_agent_shopify/connector_model.py,sha256=OOKD-zmjbVv-MX-r3c-QF3alQqn6vKTDjRjAF6y0ddQ,691056
|
|
4
|
+
airbyte_agent_shopify/models.py,sha256=hpXPTZ25RVc6a-nMbkLcGVq3zOeDx6oc8tQMUdfJnHg,61514
|
|
5
5
|
airbyte_agent_shopify/types.py,sha256=AwQ4PR2wZmHNuryriCFdRxf9q48J1mnPwspUB1b-L_o,10221
|
|
6
6
|
airbyte_agent_shopify/_vendored/__init__.py,sha256=ILl7AHXMui__swyrjxrh9yRa4dLiwBvV6axPWFWty80,38
|
|
7
7
|
airbyte_agent_shopify/_vendored/connector_sdk/__init__.py,sha256=T5o7roU6NSpH-lCAGZ338sE5dlh4ZU6i6IkeG1zpems,1949
|
|
8
8
|
airbyte_agent_shopify/_vendored/connector_sdk/auth_strategies.py,sha256=5Sb9moUp623o67Q2wMa8iZldJH08y4gQdoutoO_75Iw,42088
|
|
9
9
|
airbyte_agent_shopify/_vendored/connector_sdk/auth_template.py,sha256=nju4jqlFC_KI82ILNumNIyiUtRJcy7J94INIZ0QraI4,4454
|
|
10
|
-
airbyte_agent_shopify/_vendored/connector_sdk/connector_model_loader.py,sha256=
|
|
10
|
+
airbyte_agent_shopify/_vendored/connector_sdk/connector_model_loader.py,sha256=1AAvSvjxM9Nuto6w7D6skN5VXGb4e6na0lMFcFmmVkI,41761
|
|
11
11
|
airbyte_agent_shopify/_vendored/connector_sdk/constants.py,sha256=AtzOvhDMWbRJgpsQNWl5tkogHD6mWgEY668PgRmgtOY,2737
|
|
12
12
|
airbyte_agent_shopify/_vendored/connector_sdk/exceptions.py,sha256=ss5MGv9eVPmsbLcLWetuu3sDmvturwfo6Pw3M37Oq5k,481
|
|
13
13
|
airbyte_agent_shopify/_vendored/connector_sdk/extensions.py,sha256=XWRRoJOOrwUHSKbuQt5DU7CCu8ePzhd_HuP7c_uD77w,21376
|
|
14
14
|
airbyte_agent_shopify/_vendored/connector_sdk/http_client.py,sha256=09Fclbq4wrg38EM2Yh2kHiykQVXqdAGby024elcEz8E,28027
|
|
15
15
|
airbyte_agent_shopify/_vendored/connector_sdk/introspection.py,sha256=e9uWn2ofpeehoBbzNgts_bjlKLn8ayA1Y3OpDC3b7ZA,19517
|
|
16
16
|
airbyte_agent_shopify/_vendored/connector_sdk/secrets.py,sha256=J9ezMu4xNnLW11xY5RCre6DHP7YMKZCqwGJfk7ufHAM,6855
|
|
17
|
-
airbyte_agent_shopify/_vendored/connector_sdk/types.py,sha256=
|
|
18
|
-
airbyte_agent_shopify/_vendored/connector_sdk/utils.py,sha256=
|
|
19
|
-
airbyte_agent_shopify/_vendored/connector_sdk/validation.py,sha256=
|
|
17
|
+
airbyte_agent_shopify/_vendored/connector_sdk/types.py,sha256=MsWJsQy779r7Mqiqf_gh_4Vs6VDqieoMjLPyWt7qhu8,9412
|
|
18
|
+
airbyte_agent_shopify/_vendored/connector_sdk/utils.py,sha256=UYwYuSLhsDD-4C0dBs7Qy0E0gIcFZXb6VWadJORhQQU,4080
|
|
19
|
+
airbyte_agent_shopify/_vendored/connector_sdk/validation.py,sha256=w5WGnmILkdBslpXhAXhKhE-c8ANBc_OZQxr_fUeAgtc,39666
|
|
20
|
+
airbyte_agent_shopify/_vendored/connector_sdk/validation_replication.py,sha256=v7F5YWd5m4diIF7_4m4nOkC9crg97vqRUUkt9ka9HZ4,36043
|
|
20
21
|
airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/__init__.py,sha256=4799Hv9f2zxDVj1aLyQ8JpTEuFTp_oOZMRz-NZCdBJg,134
|
|
21
|
-
airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/client.py,sha256
|
|
22
|
+
airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/client.py,sha256=-_ibaHVa7KBBw8SnMuxpWz6XkrSgNTFdMgDfTChtywg,9505
|
|
22
23
|
airbyte_agent_shopify/_vendored/connector_sdk/executor/__init__.py,sha256=EmG9YQNAjSuYCVB4D5VoLm4qpD1KfeiiOf7bpALj8p8,702
|
|
23
|
-
airbyte_agent_shopify/_vendored/connector_sdk/executor/hosted_executor.py,sha256=
|
|
24
|
-
airbyte_agent_shopify/_vendored/connector_sdk/executor/local_executor.py,sha256=
|
|
24
|
+
airbyte_agent_shopify/_vendored/connector_sdk/executor/hosted_executor.py,sha256=tv0njAdy-gdHBg4izgcxhEWYbrNiBifEYEca9AWzaL0,8693
|
|
25
|
+
airbyte_agent_shopify/_vendored/connector_sdk/executor/local_executor.py,sha256=RtdTXFzfoJz5Coz9nwQi81Df1402BRgO1Mgd3ZzTkfw,76581
|
|
25
26
|
airbyte_agent_shopify/_vendored/connector_sdk/executor/models.py,sha256=mUUBnuShKXxVIfsTOhMiI2rn2a-50jJG7SFGKT_P6Jk,6281
|
|
26
27
|
airbyte_agent_shopify/_vendored/connector_sdk/http/__init__.py,sha256=y8fbzZn-3yV9OxtYz8Dy6FFGI5v6TOqADd1G3xHH3Hw,911
|
|
27
28
|
airbyte_agent_shopify/_vendored/connector_sdk/http/config.py,sha256=6J7YIIwHC6sRu9i-yKa5XvArwK2KU60rlnmxzDZq3lw,3283
|
|
@@ -29,7 +30,7 @@ airbyte_agent_shopify/_vendored/connector_sdk/http/exceptions.py,sha256=eYdYmxqc
|
|
|
29
30
|
airbyte_agent_shopify/_vendored/connector_sdk/http/protocols.py,sha256=eV7NbBIQOcPLw-iu8mtkV2zCVgScDwP0ek1SbPNQo0g,3323
|
|
30
31
|
airbyte_agent_shopify/_vendored/connector_sdk/http/response.py,sha256=Q-RyM5D0D05ZhmZVJk4hVpmoS8YtyXNOTM5hqBt7rWI,3475
|
|
31
32
|
airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/__init__.py,sha256=gjbWdU4LfzUG2PETI0TkfkukdzoCAhpL6FZtIEnkO-s,209
|
|
32
|
-
airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/httpx_adapter.py,sha256=
|
|
33
|
+
airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/httpx_adapter.py,sha256=7ounOUlpx7RBLLqYSGWzEsOnnCgCBH3WCDaQFJcmKj0,8902
|
|
33
34
|
airbyte_agent_shopify/_vendored/connector_sdk/logging/__init__.py,sha256=IZoE5yXhwSA0m3xQqh0FiCifjp1sB3S8jnnFPuJLYf8,227
|
|
34
35
|
airbyte_agent_shopify/_vendored/connector_sdk/logging/logger.py,sha256=rUdKDEQe3pOODmBLEcvhgZeEZi48BvrgKXKq1xvCXu0,8387
|
|
35
36
|
airbyte_agent_shopify/_vendored/connector_sdk/logging/types.py,sha256=ONb9xKNXUkrR2lojSBMF7ruof7S2r92WjrO_kEZic84,3239
|
|
@@ -42,16 +43,16 @@ airbyte_agent_shopify/_vendored/connector_sdk/performance/__init__.py,sha256=Sp5
|
|
|
42
43
|
airbyte_agent_shopify/_vendored/connector_sdk/performance/instrumentation.py,sha256=_dXvNiqdndIBwDjeDKNViWzn_M5FkSUsMmJtFldrmsM,1504
|
|
43
44
|
airbyte_agent_shopify/_vendored/connector_sdk/performance/metrics.py,sha256=FRff7dKt4iwt_A7pxV5n9kAGBR756PC7q8-weWygPSM,2817
|
|
44
45
|
airbyte_agent_shopify/_vendored/connector_sdk/schema/__init__.py,sha256=Uymu-QuzGJuMxexBagIvUxpVAigIuIhz3KeBl_Vu4Ko,1638
|
|
45
|
-
airbyte_agent_shopify/_vendored/connector_sdk/schema/base.py,sha256=
|
|
46
|
+
airbyte_agent_shopify/_vendored/connector_sdk/schema/base.py,sha256=mOO5eZSK-FB7S-ZXpt5HFG5YBg8x-oM6RZRLPOEGxZM,7115
|
|
46
47
|
airbyte_agent_shopify/_vendored/connector_sdk/schema/components.py,sha256=nJIPieavwX3o3ODvdtLHPk84d_V229xmg6LDfwEHjzc,8119
|
|
47
48
|
airbyte_agent_shopify/_vendored/connector_sdk/schema/connector.py,sha256=mSZk1wr2YSdRj9tTRsPAuIlCzd_xZLw-Bzl1sMwE0rE,3731
|
|
48
49
|
airbyte_agent_shopify/_vendored/connector_sdk/schema/extensions.py,sha256=5hgpFHK7fzpzegCkJk882DeIP79bCx_qairKJhvPMZ8,9590
|
|
49
50
|
airbyte_agent_shopify/_vendored/connector_sdk/schema/operations.py,sha256=St-A75m6sZUZlsoM6WcoPaShYu_X1K19pdyPvJbabOE,6214
|
|
50
|
-
airbyte_agent_shopify/_vendored/connector_sdk/schema/security.py,sha256=
|
|
51
|
+
airbyte_agent_shopify/_vendored/connector_sdk/schema/security.py,sha256=R-21DLnp-ANIRO1Dzqo53TYFJL6lCp0aO8GSuxa_bDI,9225
|
|
51
52
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/__init__.py,sha256=RaLgkBU4dfxn1LC5Y0Q9rr2PJbrwjxvPgBLmq8_WafE,211
|
|
52
53
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/config.py,sha256=tLmQwAFD0kP1WyBGWBS3ysaudN9H3e-3EopKZi6cGKg,885
|
|
53
54
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/events.py,sha256=8Y1NbXiwISX-V_wRofY7PqcwEXD0dLMnntKkY6XFU2s,1328
|
|
54
55
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/tracker.py,sha256=SginFQbHqVUVYG82NnNzG34O-tAQ_wZYjGDcuo0q4Kk,5584
|
|
55
|
-
airbyte_agent_shopify-0.1.
|
|
56
|
-
airbyte_agent_shopify-0.1.
|
|
57
|
-
airbyte_agent_shopify-0.1.
|
|
56
|
+
airbyte_agent_shopify-0.1.24.dist-info/METADATA,sha256=XVJq7Cm7W45sKaztRhMolJ4fvU_S4T0eWPU6NHtwRWY,7999
|
|
57
|
+
airbyte_agent_shopify-0.1.24.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
58
|
+
airbyte_agent_shopify-0.1.24.dist-info/RECORD,,
|
|
File without changes
|