airbyte-agent-amazon-ads 0.1.12__tar.gz → 0.1.17__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.
Files changed (61) hide show
  1. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/AUTH.md +19 -4
  2. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/CHANGELOG.md +25 -0
  3. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/PKG-INFO +12 -9
  4. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/README.md +11 -8
  5. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/REFERENCE.md +0 -1
  6. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/connector_model_loader.py +0 -8
  7. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http_client.py +1 -1
  8. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/introspection.py +12 -5
  9. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/security.py +0 -1
  10. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/connector.py +7 -2
  11. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/connector_model.py +1 -4
  12. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/pyproject.toml +1 -1
  13. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/.gitignore +0 -0
  14. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/__init__.py +0 -0
  15. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/__init__.py +0 -0
  16. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/__init__.py +0 -0
  17. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/auth_strategies.py +0 -0
  18. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/auth_template.py +0 -0
  19. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/cloud_utils/__init__.py +0 -0
  20. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/cloud_utils/client.py +0 -0
  21. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/constants.py +0 -0
  22. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/exceptions.py +0 -0
  23. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/executor/__init__.py +0 -0
  24. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/executor/hosted_executor.py +0 -0
  25. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/executor/local_executor.py +0 -0
  26. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/executor/models.py +0 -0
  27. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/extensions.py +0 -0
  28. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/__init__.py +0 -0
  29. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/adapters/__init__.py +0 -0
  30. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/adapters/httpx_adapter.py +0 -0
  31. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/config.py +0 -0
  32. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/exceptions.py +0 -0
  33. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/protocols.py +0 -0
  34. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/http/response.py +0 -0
  35. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/logging/__init__.py +0 -0
  36. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/logging/logger.py +0 -0
  37. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/logging/types.py +0 -0
  38. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/observability/__init__.py +0 -0
  39. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/observability/config.py +0 -0
  40. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/observability/models.py +0 -0
  41. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/observability/redactor.py +0 -0
  42. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/observability/session.py +0 -0
  43. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/performance/__init__.py +0 -0
  44. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/performance/instrumentation.py +0 -0
  45. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/performance/metrics.py +0 -0
  46. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/__init__.py +0 -0
  47. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/base.py +0 -0
  48. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/components.py +0 -0
  49. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/connector.py +0 -0
  50. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/extensions.py +0 -0
  51. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/schema/operations.py +0 -0
  52. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/secrets.py +0 -0
  53. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/telemetry/__init__.py +0 -0
  54. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/telemetry/config.py +0 -0
  55. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/telemetry/events.py +0 -0
  56. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/telemetry/tracker.py +0 -0
  57. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/types.py +0 -0
  58. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/utils.py +0 -0
  59. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/_vendored/connector_sdk/validation.py +0 -0
  60. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/models.py +0 -0
  61. {airbyte_agent_amazon_ads-0.1.12 → airbyte_agent_amazon_ads-0.1.17}/airbyte_agent_amazon_ads/types.py +0 -0
@@ -10,12 +10,17 @@ In open source mode, you provide API credentials directly to the connector.
10
10
 
11
11
  #### OAuth
12
12
 
13
+ `credentials` fields you need:
14
+
15
+
13
16
  | Field Name | Type | Required | Description |
14
17
  |------------|------|----------|-------------|
15
18
  | `client_id` | `str` | Yes | The client ID of your Amazon Ads API application |
16
19
  | `client_secret` | `str` | Yes | The client secret of your Amazon Ads API application |
17
20
  | `refresh_token` | `str` | Yes | The refresh token obtained from the OAuth authorization flow |
18
21
 
22
+ Example request:
23
+
19
24
  ```python
20
25
  from airbyte_agent_amazon-ads import AmazonAdsConnector
21
26
  from airbyte_agent_amazon-ads.models import AmazonAdsAuthConfig
@@ -37,13 +42,23 @@ This authentication method isn't available for this connector.
37
42
  In hosted mode, you first create a connector via the Airbyte API (providing your OAuth or Token credentials), then execute operations using either the Python SDK or API. If you need a step-by-step guide, see the [hosted execution tutorial](https://docs.airbyte.com/ai-agents/quickstarts/tutorial-hosted).
38
43
 
39
44
  #### OAuth
45
+ Create a connector with OAuth credentials.
46
+
47
+ `credentials` fields you need:
40
48
 
41
- Create a connector with OAuth credentials:
49
+
50
+ | Field Name | Type | Required | Description |
51
+ |------------|------|----------|-------------|
52
+ | `client_id` | `str` | Yes | The client ID of your Amazon Ads API application |
53
+ | `client_secret` | `str` | Yes | The client secret of your Amazon Ads API application |
54
+ | `refresh_token` | `str` | Yes | The refresh token obtained from the OAuth authorization flow |
55
+
56
+ Example request:
42
57
 
43
58
  ```bash
44
- curl -X POST 'https://api.airbyte.ai/v1/integrations/connectors' \
45
- -H 'Authorization: Bearer <SCOPED_TOKEN>' \
46
- -H 'Content-Type: application/json' \
59
+ curl -X POST "https://api.airbyte.ai/v1/integrations/connectors" \
60
+ -H "Authorization: Bearer <SCOPED_TOKEN>" \
61
+ -H "Content-Type: application/json" \
47
62
  -d '{
48
63
  "external_user_id": "<EXTERNAL_USER_ID>",
49
64
  "connector_type": "Amazon-Ads",
@@ -1,5 +1,30 @@
1
1
  # Amazon Ads changelog
2
2
 
3
+ ## [0.1.17] - 2026-01-28
4
+ - Updated connector definition (YAML version 1.0.4)
5
+ - Source commit: f6c6fca2
6
+ - SDK version: 0.1.0
7
+
8
+ ## [0.1.16] - 2026-01-28
9
+ - Updated connector definition (YAML version 1.0.4)
10
+ - Source commit: 71f48c10
11
+ - SDK version: 0.1.0
12
+
13
+ ## [0.1.15] - 2026-01-27
14
+ - Updated connector definition (YAML version 1.0.4)
15
+ - Source commit: 0f5e1914
16
+ - SDK version: 0.1.0
17
+
18
+ ## [0.1.14] - 2026-01-27
19
+ - Updated connector definition (YAML version 1.0.4)
20
+ - Source commit: a01f6b16
21
+ - SDK version: 0.1.0
22
+
23
+ ## [0.1.13] - 2026-01-27
24
+ - Updated connector definition (YAML version 1.0.4)
25
+ - Source commit: c9b05509
26
+ - SDK version: 0.1.0
27
+
3
28
  ## [0.1.12] - 2026-01-27
4
29
  - Updated connector definition (YAML version 1.0.3)
5
30
  - Source commit: 4bded58d
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: airbyte-agent-amazon-ads
3
- Version: 0.1.12
3
+ Version: 0.1.17
4
4
  Summary: Airbyte Amazon-Ads 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/
@@ -112,10 +112,11 @@ async def amazon-ads_execute(entity: str, action: str, params: dict | None = Non
112
112
  return await connector.execute(entity, action, params or {})
113
113
  ```
114
114
 
115
-
116
115
  ## Full documentation
117
116
 
118
- This connector supports the following entities and actions.
117
+ ### Entities and actions
118
+
119
+ This connector supports the following entities and actions. For more details, see this connector's [full reference documentation](REFERENCE.md).
119
120
 
120
121
  | Entity | Actions |
121
122
  |--------|---------|
@@ -124,14 +125,16 @@ This connector supports the following entities and actions.
124
125
  | Sponsored Product Campaigns | [List](./REFERENCE.md#sponsored-product-campaigns-list), [Get](./REFERENCE.md#sponsored-product-campaigns-get) |
125
126
 
126
127
 
127
- For all authentication options, see the connector's [authentication documentation](AUTH.md).
128
+ ### Authentication and configuration
129
+
130
+ For all authentication and configuration options, see the connector's [authentication documentation](AUTH.md).
128
131
 
129
- For detailed documentation on available actions and parameters, see this connector's [full reference documentation](./REFERENCE.md).
132
+ ### Amazon-Ads API docs
130
133
 
131
- For the service's official API docs, see the [Amazon-Ads API reference](https://advertising.amazon.com/API/docs/en-us).
134
+ See the official [Amazon-Ads API reference](https://advertising.amazon.com/API/docs/en-us).
132
135
 
133
136
  ## Version information
134
137
 
135
- - **Package version:** 0.1.12
136
- - **Connector version:** 1.0.3
137
- - **Generated with Connector SDK commit SHA:** 4bded58d3cabff3ac257c30c425ccab118f6ed87
138
+ - **Package version:** 0.1.17
139
+ - **Connector version:** 1.0.4
140
+ - **Generated with Connector SDK commit SHA:** f6c6fca292b291b200b31e4056856465129ae703
@@ -79,10 +79,11 @@ async def amazon-ads_execute(entity: str, action: str, params: dict | None = Non
79
79
  return await connector.execute(entity, action, params or {})
80
80
  ```
81
81
 
82
-
83
82
  ## Full documentation
84
83
 
85
- This connector supports the following entities and actions.
84
+ ### Entities and actions
85
+
86
+ This connector supports the following entities and actions. For more details, see this connector's [full reference documentation](REFERENCE.md).
86
87
 
87
88
  | Entity | Actions |
88
89
  |--------|---------|
@@ -91,14 +92,16 @@ This connector supports the following entities and actions.
91
92
  | Sponsored Product Campaigns | [List](./REFERENCE.md#sponsored-product-campaigns-list), [Get](./REFERENCE.md#sponsored-product-campaigns-get) |
92
93
 
93
94
 
94
- For all authentication options, see the connector's [authentication documentation](AUTH.md).
95
+ ### Authentication and configuration
96
+
97
+ For all authentication and configuration options, see the connector's [authentication documentation](AUTH.md).
95
98
 
96
- For detailed documentation on available actions and parameters, see this connector's [full reference documentation](./REFERENCE.md).
99
+ ### Amazon-Ads API docs
97
100
 
98
- For the service's official API docs, see the [Amazon-Ads API reference](https://advertising.amazon.com/API/docs/en-us).
101
+ See the official [Amazon-Ads API reference](https://advertising.amazon.com/API/docs/en-us).
99
102
 
100
103
  ## Version information
101
104
 
102
- - **Package version:** 0.1.12
103
- - **Connector version:** 1.0.3
104
- - **Generated with Connector SDK commit SHA:** 4bded58d3cabff3ac257c30c425ccab118f6ed87
105
+ - **Package version:** 0.1.17
106
+ - **Connector version:** 1.0.4
107
+ - **Generated with Connector SDK commit SHA:** f6c6fca292b291b200b31e4056856465129ae703
@@ -380,4 +380,3 @@ curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_i
380
380
 
381
381
  </details>
382
382
 
383
-
@@ -758,7 +758,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
758
758
  description="Authentication bearer token",
759
759
  format=None,
760
760
  pattern=None,
761
- airbyte_secret=False,
762
761
  default=None,
763
762
  )
764
763
  },
@@ -778,7 +777,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
778
777
  description="Authentication username",
779
778
  format=None,
780
779
  pattern=None,
781
- airbyte_secret=False,
782
780
  default=None,
783
781
  ),
784
782
  "password": AuthConfigFieldSpec(
@@ -787,7 +785,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
787
785
  description="Authentication password",
788
786
  format=None,
789
787
  pattern=None,
790
- airbyte_secret=False,
791
788
  default=None,
792
789
  ),
793
790
  },
@@ -807,7 +804,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
807
804
  description="API authentication key",
808
805
  format=None,
809
806
  pattern=None,
810
- airbyte_secret=False,
811
807
  default=None,
812
808
  )
813
809
  },
@@ -832,7 +828,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
832
828
  description="OAuth2 access token",
833
829
  format=None,
834
830
  pattern=None,
835
- airbyte_secret=False,
836
831
  default=None,
837
832
  ),
838
833
  "refresh_token": AuthConfigFieldSpec(
@@ -841,7 +836,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
841
836
  description="OAuth2 refresh token (optional)",
842
837
  format=None,
843
838
  pattern=None,
844
- airbyte_secret=False,
845
839
  default=None,
846
840
  ),
847
841
  "client_id": AuthConfigFieldSpec(
@@ -850,7 +844,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
850
844
  description="OAuth2 client ID (optional)",
851
845
  format=None,
852
846
  pattern=None,
853
- airbyte_secret=False,
854
847
  default=None,
855
848
  ),
856
849
  "client_secret": AuthConfigFieldSpec(
@@ -859,7 +852,6 @@ def _generate_default_auth_config(auth_type: AuthType) -> AirbyteAuthConfig:
859
852
  description="OAuth2 client secret (optional)",
860
853
  format=None,
861
854
  pattern=None,
862
- airbyte_secret=False,
863
855
  default=None,
864
856
  ),
865
857
  },
@@ -490,7 +490,7 @@ class HTTPClient:
490
490
 
491
491
  if not response_text.strip():
492
492
  response_data = {}
493
- elif "application/json" in content_type or not content_type:
493
+ elif "application/json" in content_type or "+json" in content_type or not content_type:
494
494
  response_data = await response.json()
495
495
  else:
496
496
  error_msg = f"Expected JSON response for {method.upper()} {url}, got content-type: {content_type}"
@@ -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(model: ConnectorModelProtocol) -> str:
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
- lines.append("ENTITIES AND PARAMETERS:")
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
- lines.append(' - Prefer cached search over direct API calls when using execute(): action="search" whenever possible.')
431
- lines.append(" - Direct API actions (list/get/download) are slower and should be used only if search cannot answer the query.")
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
 
@@ -55,7 +55,6 @@ class AuthConfigFieldSpec(BaseModel):
55
55
  description: str | None = None
56
56
  format: str | None = None # e.g., "email", "uri"
57
57
  pattern: str | None = None # Regex validation
58
- airbyte_secret: bool = Field(False, alias="airbyte_secret")
59
58
  default: Any | None = None
60
59
 
61
60
 
@@ -91,7 +91,7 @@ class AmazonAdsConnector:
91
91
  """
92
92
 
93
93
  connector_name = "amazon-ads"
94
- connector_version = "1.0.3"
94
+ connector_version = "1.0.4"
95
95
  vendored_sdk_version = "0.1.0" # Version of vendored connector-sdk
96
96
 
97
97
  # Map of (entity, action) -> needs_envelope for envelope wrapping decision
@@ -338,6 +338,7 @@ class AmazonAdsConnector:
338
338
  func: _F | None = None,
339
339
  *,
340
340
  update_docstring: bool = True,
341
+ enable_hosted_mode_features: bool = True,
341
342
  max_output_chars: int | None = DEFAULT_MAX_OUTPUT_CHARS,
342
343
  ) -> _F | Callable[[_F], _F]:
343
344
  """
@@ -356,12 +357,16 @@ class AmazonAdsConnector:
356
357
 
357
358
  Args:
358
359
  update_docstring: When True, append connector capabilities to __doc__.
360
+ enable_hosted_mode_features: When False, omit hosted-mode search sections from docstrings.
359
361
  max_output_chars: Max serialized output size before raising. Use None to disable.
360
362
  """
361
363
 
362
364
  def decorate(inner: _F) -> _F:
363
365
  if update_docstring:
364
- description = generate_tool_description(AmazonAdsConnectorModel)
366
+ description = generate_tool_description(
367
+ AmazonAdsConnectorModel,
368
+ enable_hosted_mode_features=enable_hosted_mode_features,
369
+ )
365
370
  original_doc = inner.__doc__ or ""
366
371
  if original_doc.strip():
367
372
  full_doc = f"{original_doc.strip()}\n{description}"
@@ -26,7 +26,7 @@ from uuid import (
26
26
  AmazonAdsConnectorModel: ConnectorModel = ConnectorModel(
27
27
  id=UUID('c6b0a29e-1da9-4512-9002-7bfd0cba2246'),
28
28
  name='amazon-ads',
29
- version='1.0.3',
29
+ version='1.0.4',
30
30
  base_url='{region}',
31
31
  auth=AuthConfig(
32
32
  type=AuthType.OAUTH2,
@@ -44,17 +44,14 @@ AmazonAdsConnectorModel: ConnectorModel = ConnectorModel(
44
44
  'client_id': AuthConfigFieldSpec(
45
45
  title='Client ID',
46
46
  description='The client ID of your Amazon Ads API application',
47
- airbyte_secret=True,
48
47
  ),
49
48
  'client_secret': AuthConfigFieldSpec(
50
49
  title='Client Secret',
51
50
  description='The client secret of your Amazon Ads API application',
52
- airbyte_secret=True,
53
51
  ),
54
52
  'refresh_token': AuthConfigFieldSpec(
55
53
  title='Refresh Token',
56
54
  description='The refresh token obtained from the OAuth authorization flow',
57
- airbyte_secret=True,
58
55
  ),
59
56
  },
60
57
  auth_mapping={
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "airbyte-agent-amazon-ads"
3
- version = "0.1.12"
3
+ version = "0.1.17"
4
4
  description = "Airbyte Amazon-Ads Connector for AI platforms"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.13"