airbyte-agent-zendesk-chat 0.1.13__tar.gz → 0.1.20__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_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/AUTH.md +26 -4
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/CHANGELOG.md +35 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/PKG-INFO +12 -12
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/README.md +11 -11
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/REFERENCE.md +0 -32
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/__init__.py +2 -2
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/connector_model_loader.py +0 -8
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http_client.py +1 -1
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/introspection.py +12 -5
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/security.py +0 -1
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/connector.py +7 -2
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/connector_model.py +1 -2
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/pyproject.toml +1 -1
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/.gitignore +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/auth_strategies.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/auth_template.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/cloud_utils/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/cloud_utils/client.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/constants.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/exceptions.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/executor/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/executor/hosted_executor.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/executor/local_executor.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/executor/models.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/extensions.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/adapters/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/adapters/httpx_adapter.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/config.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/exceptions.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/protocols.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/http/response.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/logging/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/logging/logger.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/logging/types.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/observability/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/observability/config.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/observability/models.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/observability/redactor.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/observability/session.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/performance/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/performance/instrumentation.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/performance/metrics.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/base.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/components.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/connector.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/extensions.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/schema/operations.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/secrets.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/telemetry/__init__.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/telemetry/config.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/telemetry/events.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/telemetry/tracker.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/types.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/utils.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/_vendored/connector_sdk/validation.py +0 -0
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/models.py +19 -19
- {airbyte_agent_zendesk_chat-0.1.13 → airbyte_agent_zendesk_chat-0.1.20}/airbyte_agent_zendesk_chat/types.py +0 -0
|
@@ -10,10 +10,15 @@ 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
|
| `access_token` | `str` | Yes | Your Zendesk Chat OAuth 2.0 access token |
|
|
16
19
|
|
|
20
|
+
Example request:
|
|
21
|
+
|
|
17
22
|
```python
|
|
18
23
|
from airbyte_agent_zendesk-chat import ZendeskChatConnector
|
|
19
24
|
from airbyte_agent_zendesk-chat.models import ZendeskChatAuthConfig
|
|
@@ -33,19 +38,36 @@ This authentication method isn't available for this connector.
|
|
|
33
38
|
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).
|
|
34
39
|
|
|
35
40
|
#### OAuth
|
|
41
|
+
Create a connector with OAuth credentials.
|
|
42
|
+
|
|
43
|
+
`credentials` fields you need:
|
|
36
44
|
|
|
37
|
-
|
|
45
|
+
|
|
46
|
+
| Field Name | Type | Required | Description |
|
|
47
|
+
|------------|------|----------|-------------|
|
|
48
|
+
| `access_token` | `str` | Yes | Your Zendesk Chat OAuth 2.0 access token |
|
|
49
|
+
|
|
50
|
+
`replication_config` fields you need:
|
|
51
|
+
|
|
52
|
+
| Field Name | Type | Required | Description |
|
|
53
|
+
|------------|------|----------|-------------|
|
|
54
|
+
| `start_date` | `str (date-time)` | Yes | The date from which to start replicating data, in the format YYYY-MM-DDT00:00:00Z. |
|
|
55
|
+
|
|
56
|
+
Example request:
|
|
38
57
|
|
|
39
58
|
```bash
|
|
40
|
-
curl -X POST
|
|
41
|
-
-H
|
|
42
|
-
-H
|
|
59
|
+
curl -X POST "https://api.airbyte.ai/v1/integrations/connectors" \
|
|
60
|
+
-H "Authorization: Bearer <SCOPED_TOKEN>" \
|
|
61
|
+
-H "Content-Type: application/json" \
|
|
43
62
|
-d '{
|
|
44
63
|
"external_user_id": "<EXTERNAL_USER_ID>",
|
|
45
64
|
"connector_type": "Zendesk-Chat",
|
|
46
65
|
"name": "My Zendesk-Chat Connector",
|
|
47
66
|
"credentials": {
|
|
48
67
|
"access_token": "<Your Zendesk Chat OAuth 2.0 access token>"
|
|
68
|
+
},
|
|
69
|
+
"replication_config": {
|
|
70
|
+
"start_date": "<The date from which to start replicating data, in the format YYYY-MM-DDT00:00:00Z.>"
|
|
49
71
|
}
|
|
50
72
|
}'
|
|
51
73
|
```
|
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# Zendesk Chat changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.20] - 2026-01-28
|
|
4
|
+
- Updated connector definition (YAML version 0.1.6)
|
|
5
|
+
- Source commit: f6c6fca2
|
|
6
|
+
- SDK version: 0.1.0
|
|
7
|
+
|
|
8
|
+
## [0.1.19] - 2026-01-28
|
|
9
|
+
- Updated connector definition (YAML version 0.1.6)
|
|
10
|
+
- Source commit: 9aef9bd2
|
|
11
|
+
- SDK version: 0.1.0
|
|
12
|
+
|
|
13
|
+
## [0.1.18] - 2026-01-28
|
|
14
|
+
- Updated connector definition (YAML version 0.1.5)
|
|
15
|
+
- Source commit: 71f48c10
|
|
16
|
+
- SDK version: 0.1.0
|
|
17
|
+
|
|
18
|
+
## [0.1.17] - 2026-01-27
|
|
19
|
+
- Updated connector definition (YAML version 0.1.5)
|
|
20
|
+
- Source commit: 0f5e1914
|
|
21
|
+
- SDK version: 0.1.0
|
|
22
|
+
|
|
23
|
+
## [0.1.16] - 2026-01-27
|
|
24
|
+
- Updated connector definition (YAML version 0.1.5)
|
|
25
|
+
- Source commit: a01f6b16
|
|
26
|
+
- SDK version: 0.1.0
|
|
27
|
+
|
|
28
|
+
## [0.1.15] - 2026-01-27
|
|
29
|
+
- Updated connector definition (YAML version 0.1.5)
|
|
30
|
+
- Source commit: c9b05509
|
|
31
|
+
- SDK version: 0.1.0
|
|
32
|
+
|
|
33
|
+
## [0.1.14] - 2026-01-27
|
|
34
|
+
- Updated connector definition (YAML version 0.1.4)
|
|
35
|
+
- Source commit: 4bded58d
|
|
36
|
+
- SDK version: 0.1.0
|
|
37
|
+
|
|
3
38
|
## [0.1.13] - 2026-01-26
|
|
4
39
|
- Updated connector definition (YAML version 0.1.4)
|
|
5
40
|
- Source commit: 74809153
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-agent-zendesk-chat
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.20
|
|
4
4
|
Summary: Airbyte Zendesk-Chat 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/
|
|
@@ -130,13 +130,11 @@ async def zendesk-chat_execute(entity: str, action: str, params: dict | None = N
|
|
|
130
130
|
return await connector.execute(entity, action, params or {})
|
|
131
131
|
```
|
|
132
132
|
|
|
133
|
-
## Replication Configuration
|
|
134
|
-
|
|
135
|
-
This connector supports replication configuration for MULTI mode sources. See the [full reference documentation](./REFERENCE.md#replication-configuration) for details on available options like `start_date`.
|
|
136
|
-
|
|
137
133
|
## Full documentation
|
|
138
134
|
|
|
139
|
-
|
|
135
|
+
### Entities and actions
|
|
136
|
+
|
|
137
|
+
This connector supports the following entities and actions. For more details, see this connector's [full reference documentation](REFERENCE.md).
|
|
140
138
|
|
|
141
139
|
| Entity | Actions |
|
|
142
140
|
|--------|---------|
|
|
@@ -154,14 +152,16 @@ This connector supports the following entities and actions.
|
|
|
154
152
|
| Triggers | [List](./REFERENCE.md#triggers-list) |
|
|
155
153
|
|
|
156
154
|
|
|
157
|
-
|
|
155
|
+
### Authentication and configuration
|
|
156
|
+
|
|
157
|
+
For all authentication and configuration options, see the connector's [authentication documentation](AUTH.md).
|
|
158
158
|
|
|
159
|
-
|
|
159
|
+
### Zendesk-Chat API docs
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
See the official [Zendesk-Chat API reference](https://developer.zendesk.com/api-reference/live-chat/chat-api/introduction/).
|
|
162
162
|
|
|
163
163
|
## Version information
|
|
164
164
|
|
|
165
|
-
- **Package version:** 0.1.
|
|
166
|
-
- **Connector version:** 0.1.
|
|
167
|
-
- **Generated with Connector SDK commit SHA:**
|
|
165
|
+
- **Package version:** 0.1.20
|
|
166
|
+
- **Connector version:** 0.1.6
|
|
167
|
+
- **Generated with Connector SDK commit SHA:** f6c6fca292b291b200b31e4056856465129ae703
|
|
@@ -97,13 +97,11 @@ async def zendesk-chat_execute(entity: str, action: str, params: dict | None = N
|
|
|
97
97
|
return await connector.execute(entity, action, params or {})
|
|
98
98
|
```
|
|
99
99
|
|
|
100
|
-
## Replication Configuration
|
|
101
|
-
|
|
102
|
-
This connector supports replication configuration for MULTI mode sources. See the [full reference documentation](./REFERENCE.md#replication-configuration) for details on available options like `start_date`.
|
|
103
|
-
|
|
104
100
|
## Full documentation
|
|
105
101
|
|
|
106
|
-
|
|
102
|
+
### Entities and actions
|
|
103
|
+
|
|
104
|
+
This connector supports the following entities and actions. For more details, see this connector's [full reference documentation](REFERENCE.md).
|
|
107
105
|
|
|
108
106
|
| Entity | Actions |
|
|
109
107
|
|--------|---------|
|
|
@@ -121,14 +119,16 @@ This connector supports the following entities and actions.
|
|
|
121
119
|
| Triggers | [List](./REFERENCE.md#triggers-list) |
|
|
122
120
|
|
|
123
121
|
|
|
124
|
-
|
|
122
|
+
### Authentication and configuration
|
|
123
|
+
|
|
124
|
+
For all authentication and configuration options, see the connector's [authentication documentation](AUTH.md).
|
|
125
125
|
|
|
126
|
-
|
|
126
|
+
### Zendesk-Chat API docs
|
|
127
127
|
|
|
128
|
-
|
|
128
|
+
See the official [Zendesk-Chat API reference](https://developer.zendesk.com/api-reference/live-chat/chat-api/introduction/).
|
|
129
129
|
|
|
130
130
|
## Version information
|
|
131
131
|
|
|
132
|
-
- **Package version:** 0.1.
|
|
133
|
-
- **Connector version:** 0.1.
|
|
134
|
-
- **Generated with Connector SDK commit SHA:**
|
|
132
|
+
- **Package version:** 0.1.20
|
|
133
|
+
- **Connector version:** 0.1.6
|
|
134
|
+
- **Generated with Connector SDK commit SHA:** f6c6fca292b291b200b31e4056856465129ae703
|
|
@@ -1467,35 +1467,3 @@ curl --location 'https://api.airbyte.ai/api/v1/connectors/sources/{your_source_i
|
|
|
1467
1467
|
|
|
1468
1468
|
</details>
|
|
1469
1469
|
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
## Replication Configuration
|
|
1473
|
-
|
|
1474
|
-
Settings for data replication from Zendesk Chat
|
|
1475
|
-
|
|
1476
|
-
These settings control how data is replicated from the source. Pass them via the `replication_config` parameter when creating a source.
|
|
1477
|
-
|
|
1478
|
-
| Field Name | Type | Required | Description |
|
|
1479
|
-
|------------|------|----------|-------------|
|
|
1480
|
-
| `start_date` | `str (date-time)` | Yes | The date from which to start replicating data, in the format YYYY-MM-DDT00:00:00Z. |
|
|
1481
|
-
|
|
1482
|
-
### Example
|
|
1483
|
-
|
|
1484
|
-
**API**
|
|
1485
|
-
|
|
1486
|
-
```bash
|
|
1487
|
-
curl --location 'https://api.airbyte.ai/integrations/connectors' \
|
|
1488
|
-
--header 'Content-Type: application/json' \
|
|
1489
|
-
--header 'Authorization: Bearer {your_auth_token}' \
|
|
1490
|
-
--data '{
|
|
1491
|
-
"external_user_id": "{your_external_user_id}",
|
|
1492
|
-
"connector_type": "zendesk-chat",
|
|
1493
|
-
"credentials": {
|
|
1494
|
-
...
|
|
1495
|
-
},
|
|
1496
|
-
"replication_config": {
|
|
1497
|
-
"start_date": "<The date from which to start replicating data, in the format YYYY-MM-DDT00:00:00Z.>"
|
|
1498
|
-
},
|
|
1499
|
-
"name": "My Zendesk-Chat Connector"
|
|
1500
|
-
}'
|
|
1501
|
-
```
|
|
@@ -14,8 +14,8 @@ from .models import (
|
|
|
14
14
|
AgentRoles,
|
|
15
15
|
AgentTimeline,
|
|
16
16
|
Ban,
|
|
17
|
-
ChatHistoryItem,
|
|
18
17
|
ChatEngagement,
|
|
18
|
+
ChatHistoryItem,
|
|
19
19
|
ChatConversion,
|
|
20
20
|
WebpathItem,
|
|
21
21
|
Chat,
|
|
@@ -109,8 +109,8 @@ __all__ = [
|
|
|
109
109
|
"AgentRoles",
|
|
110
110
|
"AgentTimeline",
|
|
111
111
|
"Ban",
|
|
112
|
-
"ChatHistoryItem",
|
|
113
112
|
"ChatEngagement",
|
|
113
|
+
"ChatHistoryItem",
|
|
114
114
|
"ChatConversion",
|
|
115
115
|
"WebpathItem",
|
|
116
116
|
"Chat",
|
|
@@ -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(
|
|
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
|
|
|
@@ -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
|
|
|
@@ -136,7 +136,7 @@ class ZendeskChatConnector:
|
|
|
136
136
|
"""
|
|
137
137
|
|
|
138
138
|
connector_name = "zendesk-chat"
|
|
139
|
-
connector_version = "0.1.
|
|
139
|
+
connector_version = "0.1.6"
|
|
140
140
|
vendored_sdk_version = "0.1.0" # Version of vendored connector-sdk
|
|
141
141
|
|
|
142
142
|
# Map of (entity, action) -> needs_envelope for envelope wrapping decision
|
|
@@ -520,6 +520,7 @@ class ZendeskChatConnector:
|
|
|
520
520
|
func: _F | None = None,
|
|
521
521
|
*,
|
|
522
522
|
update_docstring: bool = True,
|
|
523
|
+
enable_hosted_mode_features: bool = True,
|
|
523
524
|
max_output_chars: int | None = DEFAULT_MAX_OUTPUT_CHARS,
|
|
524
525
|
) -> _F | Callable[[_F], _F]:
|
|
525
526
|
"""
|
|
@@ -538,12 +539,16 @@ class ZendeskChatConnector:
|
|
|
538
539
|
|
|
539
540
|
Args:
|
|
540
541
|
update_docstring: When True, append connector capabilities to __doc__.
|
|
542
|
+
enable_hosted_mode_features: When False, omit hosted-mode search sections from docstrings.
|
|
541
543
|
max_output_chars: Max serialized output size before raising. Use None to disable.
|
|
542
544
|
"""
|
|
543
545
|
|
|
544
546
|
def decorate(inner: _F) -> _F:
|
|
545
547
|
if update_docstring:
|
|
546
|
-
description = generate_tool_description(
|
|
548
|
+
description = generate_tool_description(
|
|
549
|
+
ZendeskChatConnectorModel,
|
|
550
|
+
enable_hosted_mode_features=enable_hosted_mode_features,
|
|
551
|
+
)
|
|
547
552
|
original_doc = inner.__doc__ or ""
|
|
548
553
|
if original_doc.strip():
|
|
549
554
|
full_doc = f"{original_doc.strip()}\n{description}"
|
|
@@ -26,7 +26,7 @@ from uuid import (
|
|
|
26
26
|
ZendeskChatConnectorModel: ConnectorModel = ConnectorModel(
|
|
27
27
|
id=UUID('40d24d0f-b8f9-4fe0-9e6c-b06c0f3f45e4'),
|
|
28
28
|
name='zendesk-chat',
|
|
29
|
-
version='0.1.
|
|
29
|
+
version='0.1.6',
|
|
30
30
|
base_url='https://{subdomain}.zendesk.com/api/v2/chat',
|
|
31
31
|
auth=AuthConfig(
|
|
32
32
|
type=AuthType.BEARER,
|
|
@@ -40,7 +40,6 @@ ZendeskChatConnectorModel: ConnectorModel = ConnectorModel(
|
|
|
40
40
|
'access_token': AuthConfigFieldSpec(
|
|
41
41
|
title='Access Token',
|
|
42
42
|
description='Your Zendesk Chat OAuth 2.0 access token',
|
|
43
|
-
airbyte_secret=True,
|
|
44
43
|
),
|
|
45
44
|
},
|
|
46
45
|
auth_mapping={'token': '${access_token}'},
|
|
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
|
|
@@ -132,25 +132,6 @@ class Ban(BaseModel):
|
|
|
132
132
|
reason: Union[str | None, Any] = Field(default=None)
|
|
133
133
|
created_at: Union[str | None, Any] = Field(default=None)
|
|
134
134
|
|
|
135
|
-
class ChatHistoryItem(BaseModel):
|
|
136
|
-
"""ChatHistoryItem type definition"""
|
|
137
|
-
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
138
|
-
|
|
139
|
-
type: Union[str | None, Any] = Field(default=None)
|
|
140
|
-
timestamp: Union[str | None, Any] = Field(default=None)
|
|
141
|
-
name: Union[str | None, Any] = Field(default=None)
|
|
142
|
-
nick: Union[str | None, Any] = Field(default=None)
|
|
143
|
-
msg: Union[str | None, Any] = Field(default=None)
|
|
144
|
-
msg_id: Union[str | None, Any] = Field(default=None)
|
|
145
|
-
channel: Union[str | None, Any] = Field(default=None)
|
|
146
|
-
department_id: Union[int | None, Any] = Field(default=None)
|
|
147
|
-
department_name: Union[str | None, Any] = Field(default=None)
|
|
148
|
-
rating: Union[str | None, Any] = Field(default=None)
|
|
149
|
-
new_rating: Union[str | None, Any] = Field(default=None)
|
|
150
|
-
tags: Union[list[str] | None, Any] = Field(default=None)
|
|
151
|
-
new_tags: Union[list[str] | None, Any] = Field(default=None)
|
|
152
|
-
options: Union[str | None, Any] = Field(default=None)
|
|
153
|
-
|
|
154
135
|
class ChatEngagement(BaseModel):
|
|
155
136
|
"""ChatEngagement type definition"""
|
|
156
137
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
@@ -172,6 +153,25 @@ class ChatEngagement(BaseModel):
|
|
|
172
153
|
skills_requested: Union[list[int] | None, Any] = Field(default=None)
|
|
173
154
|
skills_fulfilled: Union[bool | None, Any] = Field(default=None)
|
|
174
155
|
|
|
156
|
+
class ChatHistoryItem(BaseModel):
|
|
157
|
+
"""ChatHistoryItem type definition"""
|
|
158
|
+
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
159
|
+
|
|
160
|
+
type: Union[str | None, Any] = Field(default=None)
|
|
161
|
+
timestamp: Union[str | None, Any] = Field(default=None)
|
|
162
|
+
name: Union[str | None, Any] = Field(default=None)
|
|
163
|
+
nick: Union[str | None, Any] = Field(default=None)
|
|
164
|
+
msg: Union[str | None, Any] = Field(default=None)
|
|
165
|
+
msg_id: Union[str | None, Any] = Field(default=None)
|
|
166
|
+
channel: Union[str | None, Any] = Field(default=None)
|
|
167
|
+
department_id: Union[int | None, Any] = Field(default=None)
|
|
168
|
+
department_name: Union[str | None, Any] = Field(default=None)
|
|
169
|
+
rating: Union[str | None, Any] = Field(default=None)
|
|
170
|
+
new_rating: Union[str | None, Any] = Field(default=None)
|
|
171
|
+
tags: Union[list[str] | None, Any] = Field(default=None)
|
|
172
|
+
new_tags: Union[list[str] | None, Any] = Field(default=None)
|
|
173
|
+
options: Union[str | None, Any] = Field(default=None)
|
|
174
|
+
|
|
175
175
|
class ChatConversion(BaseModel):
|
|
176
176
|
"""ChatConversion type definition"""
|
|
177
177
|
model_config = ConfigDict(extra="allow", populate_by_name=True)
|
|
File without changes
|