airbyte-agent-zendesk-support 0.18.50__py3-none-any.whl → 0.18.52__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_zendesk_support/_vendored/connector_sdk/executor/local_executor.py +3 -1
- airbyte_agent_zendesk_support/_vendored/connector_sdk/http_client.py +2 -0
- airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/logger.py +10 -1
- airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/types.py +1 -0
- airbyte_agent_zendesk_support/_vendored/connector_sdk/validation.py +12 -6
- {airbyte_agent_zendesk_support-0.18.50.dist-info → airbyte_agent_zendesk_support-0.18.52.dist-info}/METADATA +3 -3
- {airbyte_agent_zendesk_support-0.18.50.dist-info → airbyte_agent_zendesk_support-0.18.52.dist-info}/RECORD +8 -8
- {airbyte_agent_zendesk_support-0.18.50.dist-info → airbyte_agent_zendesk_support-0.18.52.dist-info}/WHEEL +0 -0
|
@@ -987,7 +987,9 @@ class LocalExecutor:
|
|
|
987
987
|
|
|
988
988
|
# Substitute variables from params
|
|
989
989
|
if "variables" in graphql_config and graphql_config["variables"]:
|
|
990
|
-
|
|
990
|
+
variables = self._interpolate_variables(graphql_config["variables"], params, param_defaults)
|
|
991
|
+
# Filter out None values (optional fields not provided) - matches REST _extract_body() behavior
|
|
992
|
+
body["variables"] = {k: v for k, v in variables.items() if v is not None}
|
|
991
993
|
|
|
992
994
|
# Add operation name if specified
|
|
993
995
|
if "operationName" in graphql_config:
|
|
@@ -478,6 +478,7 @@ class HTTPClient:
|
|
|
478
478
|
request_id=request_id,
|
|
479
479
|
status_code=status_code,
|
|
480
480
|
response_body=f"<binary content, {response.headers.get('content-length', 'unknown')} bytes>",
|
|
481
|
+
response_headers=dict(response.headers),
|
|
481
482
|
)
|
|
482
483
|
return response, dict(response.headers)
|
|
483
484
|
|
|
@@ -504,6 +505,7 @@ class HTTPClient:
|
|
|
504
505
|
request_id=request_id,
|
|
505
506
|
status_code=status_code,
|
|
506
507
|
response_body=response_data,
|
|
508
|
+
response_headers=dict(response.headers),
|
|
507
509
|
)
|
|
508
510
|
return response_data, dict(response.headers)
|
|
509
511
|
|
|
@@ -134,6 +134,7 @@ class RequestLogger:
|
|
|
134
134
|
request_id: str,
|
|
135
135
|
status_code: int,
|
|
136
136
|
response_body: Any | None = None,
|
|
137
|
+
response_headers: Dict[str, str] | None = None,
|
|
137
138
|
) -> None:
|
|
138
139
|
"""
|
|
139
140
|
Log a successful HTTP response.
|
|
@@ -142,6 +143,7 @@ class RequestLogger:
|
|
|
142
143
|
request_id: ID returned from log_request
|
|
143
144
|
status_code: HTTP status code
|
|
144
145
|
response_body: Response body
|
|
146
|
+
response_headers: Response headers
|
|
145
147
|
"""
|
|
146
148
|
if request_id not in self._active_requests:
|
|
147
149
|
return
|
|
@@ -166,6 +168,7 @@ class RequestLogger:
|
|
|
166
168
|
body=request_data["body"],
|
|
167
169
|
response_status=status_code,
|
|
168
170
|
response_body=serializable_body,
|
|
171
|
+
response_headers=response_headers or {},
|
|
169
172
|
timing_ms=timing_ms,
|
|
170
173
|
)
|
|
171
174
|
|
|
@@ -243,7 +246,13 @@ class NullLogger:
|
|
|
243
246
|
"""No-op log_request."""
|
|
244
247
|
return ""
|
|
245
248
|
|
|
246
|
-
def log_response(
|
|
249
|
+
def log_response(
|
|
250
|
+
self,
|
|
251
|
+
request_id: str,
|
|
252
|
+
status_code: int,
|
|
253
|
+
response_body: Any | None = None,
|
|
254
|
+
response_headers: Dict[str, str] | None = None,
|
|
255
|
+
) -> None:
|
|
247
256
|
"""No-op log_response."""
|
|
248
257
|
pass
|
|
249
258
|
|
|
@@ -486,30 +486,36 @@ def validate_meta_extractor_fields(
|
|
|
486
486
|
response_body = spec.captured_response.body
|
|
487
487
|
|
|
488
488
|
# Validate each meta extractor field
|
|
489
|
-
for field_name,
|
|
489
|
+
for field_name, extractor_expr in endpoint.meta_extractor.items():
|
|
490
|
+
# Skip header-based extractors - they extract from headers, not response body
|
|
491
|
+
# @link.next extracts from RFC 5988 Link header
|
|
492
|
+
# @header.X-Name extracts raw header value
|
|
493
|
+
if extractor_expr.startswith("@link.") or extractor_expr.startswith("@header."):
|
|
494
|
+
continue
|
|
495
|
+
|
|
490
496
|
# Check 1: Does the JSONPath find data in the actual response?
|
|
491
497
|
try:
|
|
492
|
-
parsed_expr = parse_jsonpath(
|
|
498
|
+
parsed_expr = parse_jsonpath(extractor_expr)
|
|
493
499
|
matches = [match.value for match in parsed_expr.find(response_body)]
|
|
494
500
|
|
|
495
501
|
if not matches:
|
|
496
502
|
warnings.append(
|
|
497
503
|
f"{entity_name}.{action}: x-airbyte-meta-extractor field '{field_name}' "
|
|
498
|
-
f"with JSONPath '{
|
|
504
|
+
f"with JSONPath '{extractor_expr}' found no matches in cassette response"
|
|
499
505
|
)
|
|
500
506
|
except Exception as e:
|
|
501
507
|
warnings.append(
|
|
502
|
-
f"{entity_name}.{action}: x-airbyte-meta-extractor field '{field_name}' has invalid JSONPath '{
|
|
508
|
+
f"{entity_name}.{action}: x-airbyte-meta-extractor field '{field_name}' has invalid JSONPath '{extractor_expr}': {str(e)}"
|
|
503
509
|
)
|
|
504
510
|
|
|
505
511
|
# Check 2: Is this field path declared in the response schema?
|
|
506
512
|
if endpoint.response_schema:
|
|
507
|
-
field_in_schema = _check_field_in_schema(
|
|
513
|
+
field_in_schema = _check_field_in_schema(extractor_expr, endpoint.response_schema)
|
|
508
514
|
|
|
509
515
|
if not field_in_schema:
|
|
510
516
|
warnings.append(
|
|
511
517
|
f"{entity_name}.{action}: x-airbyte-meta-extractor field '{field_name}' "
|
|
512
|
-
f"extracts from '{
|
|
518
|
+
f"extracts from '{extractor_expr}' but this path is not declared in response schema"
|
|
513
519
|
)
|
|
514
520
|
|
|
515
521
|
except Exception as e:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-agent-zendesk-support
|
|
3
|
-
Version: 0.18.
|
|
3
|
+
Version: 0.18.52
|
|
4
4
|
Summary: Airbyte Zendesk-Support 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/
|
|
@@ -140,6 +140,6 @@ For the service's official API docs, see the [Zendesk-Support API reference](htt
|
|
|
140
140
|
|
|
141
141
|
## Version information
|
|
142
142
|
|
|
143
|
-
- **Package version:** 0.18.
|
|
143
|
+
- **Package version:** 0.18.52
|
|
144
144
|
- **Connector version:** 0.1.6
|
|
145
|
-
- **Generated with Connector SDK commit SHA:**
|
|
145
|
+
- **Generated with Connector SDK commit SHA:** c7dab97573a377c99c730f5f0f2c02733d2b3161
|
|
@@ -11,17 +11,17 @@ airbyte_agent_zendesk_support/_vendored/connector_sdk/connector_model_loader.py,
|
|
|
11
11
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/constants.py,sha256=AtzOvhDMWbRJgpsQNWl5tkogHD6mWgEY668PgRmgtOY,2737
|
|
12
12
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/exceptions.py,sha256=ss5MGv9eVPmsbLcLWetuu3sDmvturwfo6Pw3M37Oq5k,481
|
|
13
13
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/extensions.py,sha256=XWRRoJOOrwUHSKbuQt5DU7CCu8ePzhd_HuP7c_uD77w,21376
|
|
14
|
-
airbyte_agent_zendesk_support/_vendored/connector_sdk/http_client.py,sha256=
|
|
14
|
+
airbyte_agent_zendesk_support/_vendored/connector_sdk/http_client.py,sha256=yucwu3OvJh5wLQa1mk-gTKjtqjKKucMw5ltmlE7mk1c,28000
|
|
15
15
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/introspection.py,sha256=2CyKXZHT74-1Id97uw1RLeyOi6TV24_hoNbQ6-6y7uI,10335
|
|
16
16
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/secrets.py,sha256=J9ezMu4xNnLW11xY5RCre6DHP7YMKZCqwGJfk7ufHAM,6855
|
|
17
17
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/types.py,sha256=CStkOsLtmZZdXylkdCsbYORDzughxygt1-Ucma0j-qE,8287
|
|
18
18
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/utils.py,sha256=G4LUXOC2HzPoND2v4tQW68R9uuPX9NQyCjaGxb7Kpl0,1958
|
|
19
|
-
airbyte_agent_zendesk_support/_vendored/connector_sdk/validation.py,sha256=
|
|
19
|
+
airbyte_agent_zendesk_support/_vendored/connector_sdk/validation.py,sha256=4MPrxYmQh8TbCU0KdvvRKe35Lg1YYLEBd0u4aKySl_E,32122
|
|
20
20
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/cloud_utils/__init__.py,sha256=4799Hv9f2zxDVj1aLyQ8JpTEuFTp_oOZMRz-NZCdBJg,134
|
|
21
21
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/cloud_utils/client.py,sha256=YxdRpQr9XjDzih6csSseBVGn9kfMtaqbOCXP0TPuzFY,7189
|
|
22
22
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/executor/__init__.py,sha256=EmG9YQNAjSuYCVB4D5VoLm4qpD1KfeiiOf7bpALj8p8,702
|
|
23
23
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/executor/hosted_executor.py,sha256=ydHcG-biRS1ITT5ELwPShdJW-KYpvK--Fos1ipNgHho,6995
|
|
24
|
-
airbyte_agent_zendesk_support/_vendored/connector_sdk/executor/local_executor.py,sha256=
|
|
24
|
+
airbyte_agent_zendesk_support/_vendored/connector_sdk/executor/local_executor.py,sha256=oJDliuS7zU8GILJUjn7T_WNIu25sy5serJHxhnBKyB8,71411
|
|
25
25
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/executor/models.py,sha256=lYVT_bNcw-PoIks4WHNyl2VY-lJVf2FntzINSOBIheE,5845
|
|
26
26
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/http/__init__.py,sha256=y8fbzZn-3yV9OxtYz8Dy6FFGI5v6TOqADd1G3xHH3Hw,911
|
|
27
27
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/http/config.py,sha256=6J7YIIwHC6sRu9i-yKa5XvArwK2KU60rlnmxzDZq3lw,3283
|
|
@@ -31,8 +31,8 @@ airbyte_agent_zendesk_support/_vendored/connector_sdk/http/response.py,sha256=Q-
|
|
|
31
31
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/http/adapters/__init__.py,sha256=gjbWdU4LfzUG2PETI0TkfkukdzoCAhpL6FZtIEnkO-s,209
|
|
32
32
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/http/adapters/httpx_adapter.py,sha256=dkYhzBWiKBmzWZlc-cRTx50Hb6fy3OI8kOQvXRfS1CQ,8465
|
|
33
33
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/__init__.py,sha256=IZoE5yXhwSA0m3xQqh0FiCifjp1sB3S8jnnFPuJLYf8,227
|
|
34
|
-
airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/logger.py,sha256=
|
|
35
|
-
airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/types.py,sha256=
|
|
34
|
+
airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/logger.py,sha256=rUdKDEQe3pOODmBLEcvhgZeEZi48BvrgKXKq1xvCXu0,8387
|
|
35
|
+
airbyte_agent_zendesk_support/_vendored/connector_sdk/logging/types.py,sha256=ONb9xKNXUkrR2lojSBMF7ruof7S2r92WjrO_kEZic84,3239
|
|
36
36
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/observability/__init__.py,sha256=ojx1n9vaWCXFFvb3-90Pwtg845trFdV2v6wcCoO75Ko,269
|
|
37
37
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/observability/config.py,sha256=uWvRAPHnEusVKviQQncqcpnHKNhoZ4ZoFK6nUOSVClY,5372
|
|
38
38
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/observability/models.py,sha256=IRGjlJia28_IU7BMSBb5RHWs47yAOLvE20JIIXHazLY,448
|
|
@@ -52,6 +52,6 @@ airbyte_agent_zendesk_support/_vendored/connector_sdk/telemetry/__init__.py,sha2
|
|
|
52
52
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/telemetry/config.py,sha256=tLmQwAFD0kP1WyBGWBS3ysaudN9H3e-3EopKZi6cGKg,885
|
|
53
53
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/telemetry/events.py,sha256=8Y1NbXiwISX-V_wRofY7PqcwEXD0dLMnntKkY6XFU2s,1328
|
|
54
54
|
airbyte_agent_zendesk_support/_vendored/connector_sdk/telemetry/tracker.py,sha256=Ftrk0_ddfM7dZG8hF9xBuPwhbc9D6JZ7Q9qs5o3LEyA,5579
|
|
55
|
-
airbyte_agent_zendesk_support-0.18.
|
|
56
|
-
airbyte_agent_zendesk_support-0.18.
|
|
57
|
-
airbyte_agent_zendesk_support-0.18.
|
|
55
|
+
airbyte_agent_zendesk_support-0.18.52.dist-info/METADATA,sha256=1rAzVErCOawkW6t0yODdMl5ONVURKHuLTZuQRMdA8-0,6246
|
|
56
|
+
airbyte_agent_zendesk_support-0.18.52.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
57
|
+
airbyte_agent_zendesk_support-0.18.52.dist-info/RECORD,,
|
|
File without changes
|