airbyte-agent-shopify 0.1.9__tar.gz → 0.1.11__tar.gz
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-0.1.9 → airbyte_agent_shopify-0.1.11}/AUTH.md +1 -1
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/CHANGELOG.md +10 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/PKG-INFO +4 -4
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/README.md +3 -3
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/__init__.py +4 -4
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/connector_model_loader.py +54 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/pyproject.toml +1 -1
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/.gitignore +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/REFERENCE.md +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/auth_strategies.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/auth_template.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/cloud_utils/client.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/constants.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/exceptions.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/executor/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/executor/hosted_executor.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/executor/local_executor.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/executor/models.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/extensions.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/adapters/httpx_adapter.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/config.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/exceptions.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/protocols.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http/response.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/http_client.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/introspection.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/logging/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/logging/logger.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/logging/types.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/observability/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/observability/config.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/observability/models.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/observability/redactor.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/observability/session.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/performance/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/performance/instrumentation.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/performance/metrics.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/base.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/components.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/connector.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/extensions.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/operations.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/schema/security.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/secrets.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/telemetry/__init__.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/telemetry/config.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/telemetry/events.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/telemetry/tracker.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/types.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/utils.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/_vendored/connector_sdk/validation.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/connector.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/connector_model.py +0 -0
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/models.py +50 -50
- {airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/types.py +0 -0
|
@@ -65,7 +65,7 @@ After creating the connector, execute operations using either the Python SDK or
|
|
|
65
65
|
from airbyte_agent_shopify import ShopifyConnector
|
|
66
66
|
|
|
67
67
|
connector = ShopifyConnector(
|
|
68
|
-
external_user_id="<
|
|
68
|
+
external_user_id="<your_external_user_id>",
|
|
69
69
|
airbyte_client_id="<your-client-id>",
|
|
70
70
|
airbyte_client_secret="<your-client-secret>"
|
|
71
71
|
)
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Shopify changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.11] - 2026-01-26
|
|
4
|
+
- Updated connector definition (YAML version 0.1.1)
|
|
5
|
+
- Source commit: 74809153
|
|
6
|
+
- SDK version: 0.1.0
|
|
7
|
+
|
|
8
|
+
## [0.1.10] - 2026-01-26
|
|
9
|
+
- Updated connector definition (YAML version 0.1.1)
|
|
10
|
+
- Source commit: b73c71e0
|
|
11
|
+
- SDK version: 0.1.0
|
|
12
|
+
|
|
3
13
|
## [0.1.9] - 2026-01-24
|
|
4
14
|
- Updated connector definition (YAML version 0.1.1)
|
|
5
15
|
- Source commit: 609c1d86
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-agent-shopify
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.11
|
|
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/
|
|
@@ -108,7 +108,7 @@ This example assumes you've already authenticated your connector with Airbyte. S
|
|
|
108
108
|
from airbyte_agent_shopify import ShopifyConnector
|
|
109
109
|
|
|
110
110
|
connector = ShopifyConnector(
|
|
111
|
-
external_user_id="<
|
|
111
|
+
external_user_id="<your_external_user_id>",
|
|
112
112
|
airbyte_client_id="<your-client-id>",
|
|
113
113
|
airbyte_client_secret="<your-client-secret>"
|
|
114
114
|
)
|
|
@@ -168,6 +168,6 @@ For the service's official API docs, see the [Shopify API reference](https://sho
|
|
|
168
168
|
|
|
169
169
|
## Version information
|
|
170
170
|
|
|
171
|
-
- **Package version:** 0.1.
|
|
171
|
+
- **Package version:** 0.1.11
|
|
172
172
|
- **Connector version:** 0.1.1
|
|
173
|
-
- **Generated with Connector SDK commit SHA:**
|
|
173
|
+
- **Generated with Connector SDK commit SHA:** 74809153299f81ed3e220538146012ee2abd2e0d
|
|
@@ -75,7 +75,7 @@ This example assumes you've already authenticated your connector with Airbyte. S
|
|
|
75
75
|
from airbyte_agent_shopify import ShopifyConnector
|
|
76
76
|
|
|
77
77
|
connector = ShopifyConnector(
|
|
78
|
-
external_user_id="<
|
|
78
|
+
external_user_id="<your_external_user_id>",
|
|
79
79
|
airbyte_client_id="<your-client-id>",
|
|
80
80
|
airbyte_client_secret="<your-client-secret>"
|
|
81
81
|
)
|
|
@@ -135,6 +135,6 @@ For the service's official API docs, see the [Shopify API reference](https://sho
|
|
|
135
135
|
|
|
136
136
|
## Version information
|
|
137
137
|
|
|
138
|
-
- **Package version:** 0.1.
|
|
138
|
+
- **Package version:** 0.1.11
|
|
139
139
|
- **Connector version:** 0.1.1
|
|
140
|
-
- **Generated with Connector SDK commit SHA:**
|
|
140
|
+
- **Generated with Connector SDK commit SHA:** 74809153299f81ed3e220538146012ee2abd2e0d
|
{airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/__init__.py
RENAMED
|
@@ -13,14 +13,14 @@ from .models import (
|
|
|
13
13
|
CustomerAddressList,
|
|
14
14
|
MarketingConsent,
|
|
15
15
|
OrderAddress,
|
|
16
|
+
LineItem,
|
|
16
17
|
Transaction,
|
|
17
18
|
Refund,
|
|
18
|
-
LineItem,
|
|
19
19
|
Fulfillment,
|
|
20
20
|
Order,
|
|
21
21
|
OrderList,
|
|
22
|
-
ProductImage,
|
|
23
22
|
ProductVariant,
|
|
23
|
+
ProductImage,
|
|
24
24
|
Product,
|
|
25
25
|
ProductList,
|
|
26
26
|
ProductVariantList,
|
|
@@ -186,14 +186,14 @@ __all__ = [
|
|
|
186
186
|
"CustomerAddressList",
|
|
187
187
|
"MarketingConsent",
|
|
188
188
|
"OrderAddress",
|
|
189
|
+
"LineItem",
|
|
189
190
|
"Transaction",
|
|
190
191
|
"Refund",
|
|
191
|
-
"LineItem",
|
|
192
192
|
"Fulfillment",
|
|
193
193
|
"Order",
|
|
194
194
|
"OrderList",
|
|
195
|
-
"ProductImage",
|
|
196
195
|
"ProductVariant",
|
|
196
|
+
"ProductImage",
|
|
197
197
|
"Product",
|
|
198
198
|
"ProductList",
|
|
199
199
|
"ProductVariantList",
|
|
@@ -62,6 +62,53 @@ class TokenExtractValidationError(ConnectorModelLoaderError):
|
|
|
62
62
|
pass
|
|
63
63
|
|
|
64
64
|
|
|
65
|
+
# Expected auth_mapping keys for each auth type.
|
|
66
|
+
# These are the auth parameters that each security scheme expects, NOT the user's credential field names.
|
|
67
|
+
EXPECTED_AUTH_MAPPING_KEYS: dict[AuthType, set[str]] = {
|
|
68
|
+
AuthType.BEARER: {"token"},
|
|
69
|
+
AuthType.BASIC: {"username", "password"},
|
|
70
|
+
AuthType.API_KEY: {"api_key"},
|
|
71
|
+
AuthType.OAUTH2: {"access_token", "refresh_token", "client_id", "client_secret"},
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def _validate_auth_mapping_keys(
|
|
76
|
+
auth_type: AuthType,
|
|
77
|
+
auth_config: AirbyteAuthConfig | None,
|
|
78
|
+
scheme_name: str = "default",
|
|
79
|
+
) -> None:
|
|
80
|
+
"""Validate that auth_mapping keys match expected parameters for the auth type.
|
|
81
|
+
|
|
82
|
+
The auth_mapping keys must be the parameters expected by the security scheme
|
|
83
|
+
(e.g., "token" for bearer), not the user's credential field names.
|
|
84
|
+
|
|
85
|
+
Args:
|
|
86
|
+
auth_type: The authentication type
|
|
87
|
+
auth_config: The x-airbyte-auth-config containing auth_mapping
|
|
88
|
+
scheme_name: Name of the security scheme for error messages
|
|
89
|
+
|
|
90
|
+
Raises:
|
|
91
|
+
InvalidOpenAPIError: If auth_mapping keys don't match expected parameters
|
|
92
|
+
"""
|
|
93
|
+
if auth_config is None or auth_config.auth_mapping is None:
|
|
94
|
+
return # No explicit auth_mapping, will use defaults
|
|
95
|
+
|
|
96
|
+
expected_keys = EXPECTED_AUTH_MAPPING_KEYS.get(auth_type)
|
|
97
|
+
if expected_keys is None:
|
|
98
|
+
return # Unknown auth type, skip validation
|
|
99
|
+
|
|
100
|
+
actual_keys = set(auth_config.auth_mapping.keys())
|
|
101
|
+
invalid_keys = actual_keys - expected_keys
|
|
102
|
+
|
|
103
|
+
if invalid_keys:
|
|
104
|
+
raise InvalidOpenAPIError(
|
|
105
|
+
f"Invalid auth_mapping keys for {auth_type.value} auth in scheme '{scheme_name}': {invalid_keys}. "
|
|
106
|
+
f"Expected keys for {auth_type.value}: {sorted(expected_keys)}. "
|
|
107
|
+
f"Note: auth_mapping keys must be the auth parameters (e.g., 'token' for bearer), "
|
|
108
|
+
f'not your credential field names. Use template syntax to map: token: "${{your_field}}"'
|
|
109
|
+
)
|
|
110
|
+
|
|
111
|
+
|
|
65
112
|
def extract_path_params(path: str) -> list[str]:
|
|
66
113
|
"""Extract parameter names from path template.
|
|
67
114
|
|
|
@@ -924,6 +971,9 @@ def _parse_single_security_scheme(scheme: Any) -> AuthConfig:
|
|
|
924
971
|
oauth2_config = _parse_oauth2_config(scheme)
|
|
925
972
|
# Use explicit x-airbyte-auth-config if present, otherwise generate default
|
|
926
973
|
auth_config_obj = scheme.x_airbyte_auth_config or _generate_default_auth_config(AuthType.OAUTH2)
|
|
974
|
+
# Validate auth_mapping keys if explicitly provided
|
|
975
|
+
if scheme.x_airbyte_auth_config:
|
|
976
|
+
_validate_auth_mapping_keys(AuthType.OAUTH2, scheme.x_airbyte_auth_config)
|
|
927
977
|
return AuthConfig(
|
|
928
978
|
type=AuthType.OAUTH2,
|
|
929
979
|
config=oauth2_config,
|
|
@@ -934,6 +984,10 @@ def _parse_single_security_scheme(scheme: Any) -> AuthConfig:
|
|
|
934
984
|
# Use explicit x-airbyte-auth-config if present, otherwise generate default
|
|
935
985
|
auth_config_obj = scheme.x_airbyte_auth_config or _generate_default_auth_config(auth_type)
|
|
936
986
|
|
|
987
|
+
# Validate auth_mapping keys if explicitly provided
|
|
988
|
+
if scheme.x_airbyte_auth_config:
|
|
989
|
+
_validate_auth_mapping_keys(auth_type, scheme.x_airbyte_auth_config)
|
|
990
|
+
|
|
937
991
|
return AuthConfig(
|
|
938
992
|
type=auth_type,
|
|
939
993
|
config=auth_config,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/connector.py
RENAMED
|
File without changes
|
|
File without changes
|
{airbyte_agent_shopify-0.1.9 → airbyte_agent_shopify-0.1.11}/airbyte_agent_shopify/models.py
RENAMED
|
@@ -119,6 +119,40 @@ 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 LineItem(BaseModel):
|
|
123
|
+
"""LineItem type definition"""
|
|
124
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
125
|
+
|
|
126
|
+
id: Union[int, Any] = Field(default=None)
|
|
127
|
+
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
128
|
+
attributed_staffs: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
129
|
+
current_quantity: Union[int | None, Any] = Field(default=None)
|
|
130
|
+
fulfillable_quantity: Union[int | None, Any] = Field(default=None)
|
|
131
|
+
fulfillment_service: Union[str | None, Any] = Field(default=None)
|
|
132
|
+
fulfillment_status: Union[str | None, Any] = Field(default=None)
|
|
133
|
+
gift_card: Union[bool | None, Any] = Field(default=None)
|
|
134
|
+
grams: Union[int | None, Any] = Field(default=None)
|
|
135
|
+
name: Union[str | None, Any] = Field(default=None)
|
|
136
|
+
price: Union[str | None, Any] = Field(default=None)
|
|
137
|
+
price_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
138
|
+
product_exists: Union[bool | None, Any] = Field(default=None)
|
|
139
|
+
product_id: Union[int | None, Any] = Field(default=None)
|
|
140
|
+
properties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
141
|
+
quantity: Union[int | None, Any] = Field(default=None)
|
|
142
|
+
requires_shipping: Union[bool | None, Any] = Field(default=None)
|
|
143
|
+
sku: Union[str | None, Any] = Field(default=None)
|
|
144
|
+
taxable: Union[bool | None, Any] = Field(default=None)
|
|
145
|
+
title: Union[str | None, Any] = Field(default=None)
|
|
146
|
+
total_discount: Union[str | None, Any] = Field(default=None)
|
|
147
|
+
total_discount_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
148
|
+
variant_id: Union[int | None, Any] = Field(default=None)
|
|
149
|
+
variant_inventory_management: Union[str | None, Any] = Field(default=None)
|
|
150
|
+
variant_title: Union[str | None, Any] = Field(default=None)
|
|
151
|
+
vendor: Union[str | None, Any] = Field(default=None)
|
|
152
|
+
tax_lines: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
153
|
+
duties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
154
|
+
discount_allocations: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
155
|
+
|
|
122
156
|
class Transaction(BaseModel):
|
|
123
157
|
"""An order transaction"""
|
|
124
158
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -168,40 +202,6 @@ class Refund(BaseModel):
|
|
|
168
202
|
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
169
203
|
refund_shipping_lines: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
170
204
|
|
|
171
|
-
class LineItem(BaseModel):
|
|
172
|
-
"""LineItem type definition"""
|
|
173
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
174
|
-
|
|
175
|
-
id: Union[int, Any] = Field(default=None)
|
|
176
|
-
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
177
|
-
attributed_staffs: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
178
|
-
current_quantity: Union[int | None, Any] = Field(default=None)
|
|
179
|
-
fulfillable_quantity: Union[int | None, Any] = Field(default=None)
|
|
180
|
-
fulfillment_service: Union[str | None, Any] = Field(default=None)
|
|
181
|
-
fulfillment_status: Union[str | None, Any] = Field(default=None)
|
|
182
|
-
gift_card: Union[bool | None, Any] = Field(default=None)
|
|
183
|
-
grams: Union[int | None, Any] = Field(default=None)
|
|
184
|
-
name: Union[str | None, Any] = Field(default=None)
|
|
185
|
-
price: Union[str | None, Any] = Field(default=None)
|
|
186
|
-
price_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
187
|
-
product_exists: Union[bool | None, Any] = Field(default=None)
|
|
188
|
-
product_id: Union[int | None, Any] = Field(default=None)
|
|
189
|
-
properties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
190
|
-
quantity: Union[int | None, Any] = Field(default=None)
|
|
191
|
-
requires_shipping: Union[bool | None, Any] = Field(default=None)
|
|
192
|
-
sku: Union[str | None, Any] = Field(default=None)
|
|
193
|
-
taxable: Union[bool | None, Any] = Field(default=None)
|
|
194
|
-
title: Union[str | None, Any] = Field(default=None)
|
|
195
|
-
total_discount: Union[str | None, Any] = Field(default=None)
|
|
196
|
-
total_discount_set: Union[dict[str, Any] | None, Any] = Field(default=None)
|
|
197
|
-
variant_id: Union[int | None, Any] = Field(default=None)
|
|
198
|
-
variant_inventory_management: Union[str | None, Any] = Field(default=None)
|
|
199
|
-
variant_title: Union[str | None, Any] = Field(default=None)
|
|
200
|
-
vendor: Union[str | None, Any] = Field(default=None)
|
|
201
|
-
tax_lines: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
202
|
-
duties: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
203
|
-
discount_allocations: Union[list[dict[str, Any]] | None, Any] = Field(default=None)
|
|
204
|
-
|
|
205
205
|
class Fulfillment(BaseModel):
|
|
206
206
|
"""A fulfillment"""
|
|
207
207
|
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)
|
|
File without changes
|