render-lab-tasks-zendesk
Unreleased Python port: 11 registered tasks from render-lab/render-tasks. Python 3.12+, Render SDK 1.0.1. Requires core 0.1.1 or later.
From the repository root:
uv sync --all-packages --locked
Import render_lab_tasks_zendesk.tasks to register tasks. The package root is inert.
Compose the exported app with Workflows.from_workflows; call tasks through
ctx.run. Every operation also exports *_impl(ctx, input, *, deps=None) for
injection. Client(http, env) accepts a caller-owned HTTPX client, and
Deps(zendesk=client) injects it. Default dependencies open and close the HTTP
client per invocation; credentials are read lazily at use. No HTTP retries or
background vendor polling occur; retry.py owns the durable retry policies.
Task surface
| Registered task | Python export |
|---|---|
zendesk.awaitJob |
await_job |
zendesk.createTicket |
create_ticket |
zendesk.getJobStatus |
get_job_status |
zendesk.getTicket |
get_ticket |
zendesk.incrementalExportTickets |
incremental_export_tickets |
zendesk.listTicketComments |
list_ticket_comments |
zendesk.replyToTicket |
reply_to_ticket |
zendesk.searchTickets |
search_tickets |
zendesk.startBulkUpdate |
start_bulk_update |
zendesk.updateTicket |
update_ticket |
zendesk.verifyWebhook |
verify_webhook |
Typed JSON inputs and results are in types.py. Task names and JSON field names
match the pinned source; Python function names use snake_case.
Environment
| Variable | Requirement |
|---|---|
ZENDESK_SUBDOMAIN |
Required for REST calls. |
ZENDESK_OAUTH_TOKEN |
Preferred REST bearer token. |
ZENDESK_EMAIL |
Required with ZENDESK_API_TOKEN when no OAuth token is set. |
ZENDESK_API_TOKEN |
Basic-auth fallback with ZENDESK_EMAIL. |
ZENDESK_WEBHOOK_SECRET |
Required only for verify_webhook; no REST credentials needed. |
Behavior and limits
Writes preserve safe_update and the caller’s updated_stamp. A 409 from update_ticket raises ZendeskUpdateConflictError with ticketId; re-fetch and decide whether to replay the change. The pinned durable retry policy still retries task errors, so this error class alone does not bypass Render retries. Bulk updates cap at 100 tickets, pages at 100 records, and returned page arrays at 3.5 MB. Signature checks use HMAC-SHA256 over timestamp + rawBody, constant-time comparison, and a default 300-second age limit. Jobs, cursor search support, and real webhook timestamps need live verification.
Verification
All registered tasks have hermetic contract fixtures executed independently against
the pinned TS implementation. SDK-backed tasks also have explicit HTTP request
fixtures. See tests/test_batch3_contracts.py and tests/test_batch3_edges.py.
These are not live vendor results.
Vendor webhooks subpaths and other registration-free TS exports are outside this batch unless explicitly listed above. Full registered-task coverage does not imply all supporting exports are ported.
Pending scopes, test resources, replay, and hosted checks are in the live-testing backlog and verification tracker.
Webhook adapter
render_lab_tasks_zendesk.webhooks.zendesk_adapter(on_event, ...) returns a
registration-free adapter for render_lab_triggers. The callback receives the
verified event and returns {"task": "namespace.task", "args": [event]} or None.
The signing credential ZENDESK_WEBHOOK_SECRET is read inside verification unless
provided explicitly. Importing this module does not register tasks. Signature
checks use the raw body; live delivery remains in the testing backlog.
Installation
pip install render-lab-tasks-zendesk==0.1.0
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file render_lab_tasks_zendesk-0.1.0.tar.gz.
File metadata
- Download URL: render_lab_tasks_zendesk-0.1.0.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e308da1fbb79a3499c2cb99639a95038a4050deb72ebc7c2f5f7a7abd27c3148
|
|
| MD5 |
707c9dd2560dcabc0ad44643cc4b055f
|
|
| BLAKE2b-256 |
d63e58b9817472f3d2c9f15e425f563b70d0c31910ee31465094800d33174ecb
|
Provenance
The following attestation bundles were made for render_lab_tasks_zendesk-0.1.0.tar.gz:
Publisher:
publish.yml on render-lab/render-tasks-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
render_lab_tasks_zendesk-0.1.0.tar.gz -
Subject digest:
e308da1fbb79a3499c2cb99639a95038a4050deb72ebc7c2f5f7a7abd27c3148 - Sigstore transparency entry: 2767994786
- Sigstore integration time:
-
Permalink:
render-lab/render-tasks-python@b601664587ba5882dd7c8efabfc8908151008df6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/render-lab
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b601664587ba5882dd7c8efabfc8908151008df6 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file render_lab_tasks_zendesk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: render_lab_tasks_zendesk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cca4d9225bee16a6594af6cc27b0d8a000de19f42b19ad4305de577f1856a94f
|
|
| MD5 |
d9db1e0434d58347b17b73d0933ed589
|
|
| BLAKE2b-256 |
009db866d7896156af4c998c8a2ebf940d77e2b213d2163386557884231ca04c
|
Provenance
The following attestation bundles were made for render_lab_tasks_zendesk-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on render-lab/render-tasks-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
render_lab_tasks_zendesk-0.1.0-py3-none-any.whl -
Subject digest:
cca4d9225bee16a6594af6cc27b0d8a000de19f42b19ad4305de577f1856a94f - Sigstore transparency entry: 2767994825
- Sigstore integration time:
-
Permalink:
render-lab/render-tasks-python@b601664587ba5882dd7c8efabfc8908151008df6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/render-lab
-
Access:
internal
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b601664587ba5882dd7c8efabfc8908151008df6 -
Trigger Event:
workflow_dispatch
-
Statement type: