Skip to main content

Crate dimescheduler

Crate dimescheduler 

Source
Expand description

Official Rust client library for the Dime.Scheduler API.

use dimescheduler::{entities::Tag, DimeSchedulerClient};

let client = DimeSchedulerClient::from_env()?; // reads DIMESCHEDULER_API_KEY
client
    .tags
    .create(&Tag { code: "VIP".into(), ..Default::default() })
    .await?;
let entries = client.time_entries.get("2026-03-01", "2026-03-31").await?;
println!("{} time entries", entries.len());

Unlike the other Dime.Scheduler SDKs, this crate does not retry failed requests. A 429 or 5xx surfaces as Error::Api; retry at the call site if your workload needs it.

Modules§

entities
models
types

Structs§

AppointmentApi
CRUD for appointments plus the date-range query and lookup by id. get_all is inherited from CrudApi but this route requires query parameters; use get.
ConnectorApi
Register webhook-style connectors.
CrudApi
Generic accessor for every import-shaped entity (~33 of them). All write verbs accept one entity or a slice; the API accepts either shape.
DimeSchedulerClient
The Dime.Scheduler client. Every entity lives behind a public accessor field (client.appointments, client.resources, …) that exposes CRUD methods, mirroring the other Dime.Scheduler SDKs.
GeocodeApi
Convert addresses to geographic coordinates.
ImportApi
Bulk imports: stored-procedure data records and setup payloads.
JobApi
CRUD for jobs plus lookup by job number.
MessageApi
Send a transient message to a user, or to every user in the tenant.
NotificationApi
CRUD for notifications plus the paginated query. get_all is inherited from CrudApi but this route requires query parameters; use get.
NotificationListOptions
Optional sort / group / filter expressions for NotificationApi::get.
OptimizationApi
Run the optimisation solvers.
ReadOnlyApi
Read-only listing for entities the API exposes no write verbs on (calendars, resource types, appointment dependencies, appointment fields).
RecommendationApi
Resource recommendation engine.
RecurringAppointmentApi
Create or delete a recurring appointment series.
ResourceCapacityApi
CRUD for resource capacities plus the date-range query. get_all is inherited from CrudApi but this route requires query parameters; use get.
TaskApi
CRUD for tasks plus the filtered, paginated list query.
TaskAssignmentApi
Assign a resource to a task, or remove that assignment. Takes one request object per call; the API answers with an empty 200.
TaskBudgetEntryApi
Task budget entries are append-only budget movements: the API exposes create and delete, but no update or list verb.
TaskListOptions
Optional filters for TaskApi::list. Unset fields are omitted from the query.
TimeEntryApi
CRUD for time entries plus the date-range query over time sheet entries. get_all is inherited from CrudApi but this route requires query parameters; use get.
TimeSessionApi
CRUD for time sessions plus the date-range query over session overviews. get_all is inherited from CrudApi but this route requires query parameters; use get.
UserApi
API user administration.

Enums§

Environment
A Dime.Scheduler API environment. Each has a fixed base URL.
Error
Errors that can occur when using the Dime.Scheduler client.

Type Aliases§

Result
Convenience alias for results returned by this crate.