# `Medplum.Workflows.Scheduling`
[🔗](https://github.com/CodeDuckers-LLC/medplum_elixir/blob/v0.3.0/lib/medplum/workflows/scheduling.ex#L1)

Medplum scheduling workflow helpers built on Appointment FHIR operations.

# `book_appointment`

```elixir
@spec book_appointment(Medplum.Client.t(), map(), keyword()) ::
  Medplum.result() | {:ok, Medplum.async_result()}
```

# `cancel_appointment`

```elixir
@spec cancel_appointment(Medplum.Client.t(), String.t(), map(), keyword()) ::
  Medplum.result() | {:ok, Medplum.async_result()}
```

# `confirm_appointment`

```elixir
@spec confirm_appointment(Medplum.Client.t(), String.t(), map(), keyword()) ::
  Medplum.result() | {:ok, Medplum.async_result()}
```

# `find_appointments`

```elixir
@spec find_appointments(Medplum.Client.t(), map(), keyword()) ::
  Medplum.result() | {:ok, Medplum.async_result()}
```

# `hold_appointment`

```elixir
@spec hold_appointment(Medplum.Client.t(), map(), keyword()) ::
  Medplum.result() | {:ok, Medplum.async_result()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
