The official Python SDK for Dime.Scheduler
Project description
Dime.Scheduler SDK for Python
The official Python SDK for Dime.Scheduler.
Status: alpha. The domain-grouped accessor surface is in place; typed entity models are landing.
Installation
pip install dimescheduler
# or
uv add dimescheduler
Prereleases
Alpha / beta / release-candidate builds (e.g. 0.1.1b0 for 0.1.1-beta.0) ship as PyPI prereleases. To opt into them:
pip install --pre dimescheduler
Quick start
from dimescheduler import DimeSchedulerClient, Environment
with DimeSchedulerClient(api_key="MY_API_KEY", environment=Environment.Sandbox) as client:
result = client.categories.create({
"name": "INSTALL",
"displayName": "Install",
"color": "#22d3ee",
})
if not result.ok:
raise RuntimeError(result.error)
By default the client targets Environment.Production. Switch to Sandbox or Test for non-prod.
API surface
Every entity hangs off a typed accessor on the client. CRUD-shaped entities expose create / update / delete / get_all:
client.categories.create(category)
client.categories.update(category)
client.categories.delete(category)
result = client.categories.get_all()
Endpoints with required parameters expose them directly:
client.appointments.get(start_date, end_date, resources=["R1", "R2"])
client.notifications.get(page=1, limit=50, sort="createdAt:desc")
client.geocoding.geocode_text("221B Baker Street", "GB")
client.optimization.field_service(request)
Every method returns a Result:
result = client.categories.get_all()
result.ok # bool — convenience over response.is_success
result.data # parsed JSON body on success, else None
result.error # parsed JSON error body on 4xx/5xx, else None
result.response # underlying httpx.Response
The accessor names mirror the .NET and JS SDKs 1:1 (with idiomatic snake_case), so cross-language code reads the same.
Development
This package is part of the dime-scheduler/sdk monorepo. From packages/python/:
uv sync --extra dev # install runtime + dev deps
uv run pytest # run unit tests
uv run ruff check # lint
./scripts/codegen.sh # regenerate typed client from ../../spec/openapi.json
License
Project details
Release history Release notifications | RSS feed
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 dimescheduler-0.2.0.tar.gz.
File metadata
- Download URL: dimescheduler-0.2.0.tar.gz
- Upload date:
- Size: 10.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
540c977947592bf36a8dcde0a2ac77c909dd5b7682af48d3e46373b895fa2f40
|
|
| MD5 |
eb70b2555bd7bafd3fa0e289ff53891e
|
|
| BLAKE2b-256 |
0633c48f680cba9faf50a1c258bf200f1f02059ec2b53adcc584d92ef5238df8
|
Provenance
The following attestation bundles were made for dimescheduler-0.2.0.tar.gz:
Publisher:
python-publish.yml on dime-scheduler/sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dimescheduler-0.2.0.tar.gz -
Subject digest:
540c977947592bf36a8dcde0a2ac77c909dd5b7682af48d3e46373b895fa2f40 - Sigstore transparency entry: 1513089531
- Sigstore integration time:
-
Permalink:
dime-scheduler/sdk@0d7eacb07f3a6de1b15f8e6f56cb21b2e455b89b -
Branch / Tag:
refs/tags/python-v0.2.0 - Owner: https://github.com/dime-scheduler
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@0d7eacb07f3a6de1b15f8e6f56cb21b2e455b89b -
Trigger Event:
push
-
Statement type:
File details
Details for the file dimescheduler-0.2.0-py3-none-any.whl.
File metadata
- Download URL: dimescheduler-0.2.0-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8626d779be4e3ee7f6e1557ddc68839f2b5a41a6e4d72a119b24e4a3240e66a7
|
|
| MD5 |
de75c24e304a27608316994091a78a59
|
|
| BLAKE2b-256 |
7bc6b09117cd3203956d9cb5b5b5dcecd1e2d0de5bcaa1b0802232e94a9c63f2
|
Provenance
The following attestation bundles were made for dimescheduler-0.2.0-py3-none-any.whl:
Publisher:
python-publish.yml on dime-scheduler/sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dimescheduler-0.2.0-py3-none-any.whl -
Subject digest:
8626d779be4e3ee7f6e1557ddc68839f2b5a41a6e4d72a119b24e4a3240e66a7 - Sigstore transparency entry: 1513089637
- Sigstore integration time:
-
Permalink:
dime-scheduler/sdk@0d7eacb07f3a6de1b15f8e6f56cb21b2e455b89b -
Branch / Tag:
refs/tags/python-v0.2.0 - Owner: https://github.com/dime-scheduler
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@0d7eacb07f3a6de1b15f8e6f56cb21b2e455b89b -
Trigger Event:
push
-
Statement type: