airbyte-agent-shopify 0.1.16__py3-none-any.whl → 0.1.17__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 +2 -2
- airbyte_agent_shopify/_vendored/connector_sdk/introspection.py +12 -5
- airbyte_agent_shopify/connector.py +6 -1
- airbyte_agent_shopify/models.py +16 -16
- {airbyte_agent_shopify-0.1.16.dist-info → airbyte_agent_shopify-0.1.17.dist-info}/METADATA +11 -8
- {airbyte_agent_shopify-0.1.16.dist-info → airbyte_agent_shopify-0.1.17.dist-info}/RECORD +7 -7
- {airbyte_agent_shopify-0.1.16.dist-info → airbyte_agent_shopify-0.1.17.dist-info}/WHEEL +0 -0
|
@@ -19,8 +19,8 @@ from .models import (
|
|
|
19
19
|
Refund,
|
|
20
20
|
Order,
|
|
21
21
|
OrderList,
|
|
22
|
-
ProductVariant,
|
|
23
22
|
ProductImage,
|
|
23
|
+
ProductVariant,
|
|
24
24
|
Product,
|
|
25
25
|
ProductList,
|
|
26
26
|
ProductVariantList,
|
|
@@ -192,8 +192,8 @@ __all__ = [
|
|
|
192
192
|
"Refund",
|
|
193
193
|
"Order",
|
|
194
194
|
"OrderList",
|
|
195
|
-
"ProductVariant",
|
|
196
195
|
"ProductImage",
|
|
196
|
+
"ProductVariant",
|
|
197
197
|
"Product",
|
|
198
198
|
"ProductList",
|
|
199
199
|
"ProductVariantList",
|
|
@@ -380,7 +380,11 @@ def describe_entities(model: ConnectorModelProtocol) -> list[dict[str, Any]]:
|
|
|
380
380
|
return entities
|
|
381
381
|
|
|
382
382
|
|
|
383
|
-
def generate_tool_description(
|
|
383
|
+
def generate_tool_description(
|
|
384
|
+
model: ConnectorModelProtocol,
|
|
385
|
+
*,
|
|
386
|
+
enable_hosted_mode_features: bool = True,
|
|
387
|
+
) -> str:
|
|
384
388
|
"""Generate AI tool description from connector metadata.
|
|
385
389
|
|
|
386
390
|
Produces a detailed description that includes:
|
|
@@ -393,6 +397,7 @@ def generate_tool_description(model: ConnectorModelProtocol) -> str:
|
|
|
393
397
|
|
|
394
398
|
Args:
|
|
395
399
|
model: Object conforming to ConnectorModelProtocol (e.g., ConnectorModel)
|
|
400
|
+
enable_hosted_mode_features: When False, omit hosted-mode search guidance from the docstring.
|
|
396
401
|
|
|
397
402
|
Returns:
|
|
398
403
|
Formatted description string suitable for AI tool documentation
|
|
@@ -402,8 +407,9 @@ def generate_tool_description(model: ConnectorModelProtocol) -> str:
|
|
|
402
407
|
# at the first empty line and only keeps the initial section.
|
|
403
408
|
|
|
404
409
|
# Entity/action parameter details (including pagination params like limit, starting_after)
|
|
405
|
-
search_field_paths = _collect_search_field_paths(model)
|
|
406
|
-
|
|
410
|
+
search_field_paths = _collect_search_field_paths(model) if enable_hosted_mode_features else {}
|
|
411
|
+
# Avoid a "PARAMETERS:" header because some docstring parsers treat it as a params section marker.
|
|
412
|
+
lines.append("ENTITIES (ACTIONS + PARAMS):")
|
|
407
413
|
for entity in model.entities:
|
|
408
414
|
lines.append(f" {entity.name}:")
|
|
409
415
|
actions = getattr(entity, "actions", []) or []
|
|
@@ -427,8 +433,9 @@ def generate_tool_description(model: ConnectorModelProtocol) -> str:
|
|
|
427
433
|
lines.append(" To paginate: pass starting_after=<last_id> while has_more is true")
|
|
428
434
|
|
|
429
435
|
lines.append("GUIDELINES:")
|
|
430
|
-
|
|
431
|
-
|
|
436
|
+
if enable_hosted_mode_features:
|
|
437
|
+
lines.append(' - Prefer cached search over direct API calls when using execute(): action="search" whenever possible.')
|
|
438
|
+
lines.append(" - Direct API actions (list/get/download) are slower and should be used only if search cannot answer the query.")
|
|
432
439
|
lines.append(" - Keep results small: use params.fields, params.query.filter, small params.limit, and cursor pagination.")
|
|
433
440
|
lines.append(" - If output is too large, refine the query with tighter filters/fields/limit.")
|
|
434
441
|
|
|
@@ -908,6 +908,7 @@ class ShopifyConnector:
|
|
|
908
908
|
func: _F | None = None,
|
|
909
909
|
*,
|
|
910
910
|
update_docstring: bool = True,
|
|
911
|
+
enable_hosted_mode_features: bool = True,
|
|
911
912
|
max_output_chars: int | None = DEFAULT_MAX_OUTPUT_CHARS,
|
|
912
913
|
) -> _F | Callable[[_F], _F]:
|
|
913
914
|
"""
|
|
@@ -926,12 +927,16 @@ class ShopifyConnector:
|
|
|
926
927
|
|
|
927
928
|
Args:
|
|
928
929
|
update_docstring: When True, append connector capabilities to __doc__.
|
|
930
|
+
enable_hosted_mode_features: When False, omit hosted-mode search sections from docstrings.
|
|
929
931
|
max_output_chars: Max serialized output size before raising. Use None to disable.
|
|
930
932
|
"""
|
|
931
933
|
|
|
932
934
|
def decorate(inner: _F) -> _F:
|
|
933
935
|
if update_docstring:
|
|
934
|
-
description = generate_tool_description(
|
|
936
|
+
description = generate_tool_description(
|
|
937
|
+
ShopifyConnectorModel,
|
|
938
|
+
enable_hosted_mode_features=enable_hosted_mode_features,
|
|
939
|
+
)
|
|
935
940
|
original_doc = inner.__doc__ or ""
|
|
936
941
|
if original_doc.strip():
|
|
937
942
|
full_doc = f"{original_doc.strip()}\n{description}"
|
airbyte_agent_shopify/models.py
CHANGED
|
@@ -329,6 +329,22 @@ 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
|
+
|
|
332
348
|
class ProductVariant(BaseModel):
|
|
333
349
|
"""A product variant"""
|
|
334
350
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -360,22 +376,6 @@ class ProductVariant(BaseModel):
|
|
|
360
376
|
requires_shipping: Union[bool | None, Any] = Field(default=None)
|
|
361
377
|
admin_graphql_api_id: Union[str | None, Any] = Field(default=None)
|
|
362
378
|
|
|
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.17
|
|
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/
|
|
@@ -119,10 +119,11 @@ async def shopify_execute(entity: str, action: str, params: dict | None = None):
|
|
|
119
119
|
return await connector.execute(entity, action, params or {})
|
|
120
120
|
```
|
|
121
121
|
|
|
122
|
-
|
|
123
122
|
## Full documentation
|
|
124
123
|
|
|
125
|
-
|
|
124
|
+
### Entities and actions
|
|
125
|
+
|
|
126
|
+
This connector supports the following entities and actions. For more details, see this connector's [full reference documentation](REFERENCE.md).
|
|
126
127
|
|
|
127
128
|
| Entity | Actions |
|
|
128
129
|
|--------|---------|
|
|
@@ -160,14 +161,16 @@ This connector supports the following entities and actions.
|
|
|
160
161
|
| Fulfillment Orders | [List](./REFERENCE.md#fulfillment-orders-list), [Get](./REFERENCE.md#fulfillment-orders-get) |
|
|
161
162
|
|
|
162
163
|
|
|
163
|
-
|
|
164
|
+
### Authentication and configuration
|
|
165
|
+
|
|
166
|
+
For all authentication and configuration options, see the connector's [authentication documentation](AUTH.md).
|
|
164
167
|
|
|
165
|
-
|
|
168
|
+
### Shopify API docs
|
|
166
169
|
|
|
167
|
-
|
|
170
|
+
See the official [Shopify API reference](https://shopify.dev/docs/api/admin-rest).
|
|
168
171
|
|
|
169
172
|
## Version information
|
|
170
173
|
|
|
171
|
-
- **Package version:** 0.1.
|
|
174
|
+
- **Package version:** 0.1.17
|
|
172
175
|
- **Connector version:** 0.1.2
|
|
173
|
-
- **Generated with Connector SDK commit SHA:**
|
|
176
|
+
- **Generated with Connector SDK commit SHA:** f6c6fca292b291b200b31e4056856465129ae703
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
airbyte_agent_shopify/__init__.py,sha256=
|
|
2
|
-
airbyte_agent_shopify/connector.py,sha256=
|
|
1
|
+
airbyte_agent_shopify/__init__.py,sha256=oQjq6z4WrcRTVOr6IqajzImVUCyyiPWsfWE4S2auJB8,9661
|
|
2
|
+
airbyte_agent_shopify/connector.py,sha256=fnlv35f3Vg0ktwdeegm7OKldNrI7yJPPg7DC1Y0qkFU,94062
|
|
3
3
|
airbyte_agent_shopify/connector_model.py,sha256=AVa7n--wns14y5tdsiKymVUMS7HboqVD8sdzvKPlBRM,691010
|
|
4
|
-
airbyte_agent_shopify/models.py,sha256=
|
|
4
|
+
airbyte_agent_shopify/models.py,sha256=F5Sx9acQJqDG_p1szZMFvqhxY8ernkH8lQctxcUVckM,60917
|
|
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
|
|
@@ -12,7 +12,7 @@ airbyte_agent_shopify/_vendored/connector_sdk/constants.py,sha256=AtzOvhDMWbRJgp
|
|
|
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
|
-
airbyte_agent_shopify/_vendored/connector_sdk/introspection.py,sha256=
|
|
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
17
|
airbyte_agent_shopify/_vendored/connector_sdk/types.py,sha256=in8gHsn5nsScujOfHZmkOgNmqmJKiPyNNjg59m5fGWc,8807
|
|
18
18
|
airbyte_agent_shopify/_vendored/connector_sdk/utils.py,sha256=G4LUXOC2HzPoND2v4tQW68R9uuPX9NQyCjaGxb7Kpl0,1958
|
|
@@ -52,6 +52,6 @@ airbyte_agent_shopify/_vendored/connector_sdk/telemetry/__init__.py,sha256=RaLgk
|
|
|
52
52
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/config.py,sha256=tLmQwAFD0kP1WyBGWBS3ysaudN9H3e-3EopKZi6cGKg,885
|
|
53
53
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/events.py,sha256=8Y1NbXiwISX-V_wRofY7PqcwEXD0dLMnntKkY6XFU2s,1328
|
|
54
54
|
airbyte_agent_shopify/_vendored/connector_sdk/telemetry/tracker.py,sha256=Ftrk0_ddfM7dZG8hF9xBuPwhbc9D6JZ7Q9qs5o3LEyA,5579
|
|
55
|
-
airbyte_agent_shopify-0.1.
|
|
56
|
-
airbyte_agent_shopify-0.1.
|
|
57
|
-
airbyte_agent_shopify-0.1.
|
|
55
|
+
airbyte_agent_shopify-0.1.17.dist-info/METADATA,sha256=zInAAvvpl3oA9smRK5KDj5n2nSfWxsJ30tmuBVeWQxE,7868
|
|
56
|
+
airbyte_agent_shopify-0.1.17.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
57
|
+
airbyte_agent_shopify-0.1.17.dist-info/RECORD,,
|
|
File without changes
|