Qronomnom.Items (Qronomnom v0.1.1)
Functions for interacting with Items resource.
Link to this section Summary
Functions
Shows an item's calendar.
Creates an item.
Lists items.
Shows a single item.
Shows an item's timeblocks.
Updates an item.
Link to this section Types
Link to this type
booking_interval_type()
Specs
booking_interval_type() :: :daily | :hourly
Link to this type
item_type()
Specs
item_type() :: %{ optional(:id) => String.t(), :name => String.t(), optional(:default_image) => String.t(), :handle => String.t(), optional(:description) => String.t(), :account => String.t(), optional(:booking_interval) => booking_interval_type(), optional(:default_available) => boolean(), optional(:metadata) => %{atom: String.t()} }
Link to this section Functions
Link to this function
calendar(client, item_id, start_datetime, end_datetime)
Specs
Shows an item's calendar.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.calendar() {:ok, [%{}, %{}]}
Link to this function
create(client, item_data)
Specs
create(Tesla.Client.t(), item_type()) :: {:error, any()} | {:ok, item_type()}
Creates an item.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.create(%{
name: "string",
default_image: "string",
handle: "string",
description: "string",
metadata: %{
additionalProp: "foo"
},
booking_interval: :daily,
default_available: true
}) {:ok, %{item_id: "itm_EwYbBY2"}}
Link to this function
index(client)
Specs
index(Tesla.Client.t()) :: {:error, any()} | {:ok, item_type()}
Lists items.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.index()
{:ok, [%{item_id: 1}, %{item_id: 2}]}
Link to this function
show(client, item_id)
Specs
show(Tesla.Client.t(), String.t()) :: {:error, any()} | {:ok, item_type()}
Shows a single item.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.index()
{:ok, [%{item_id: "itm_EwYbBY2"}, %{item_id: "itm_LKH5L"}]}
Link to this function
timeblocks(client, item_id, start_datetime, end_datetime)
Specs
Shows an item's timeblocks.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.timeblocks() {:ok, [%{}, %{}]}
Link to this function
update(client, item_id, item_data)
Specs
update(Tesla.Client.t(), String.t(), item_type()) :: {:error, any()} | {:ok, item_type()}
Updates an item.
Examples
iex> Qronomnom.client(%{api_key: "MY_KEY"}) |> Qronomnom.Items.update("itm_EwYbBY2", %{
name: "string",
default_image: "string",
handle: "string",
description: "string",
metadata: %{
additionalProp: "foo"
},
booking_interval: :daily,
default_available: true
})
{:ok, %{item_id: "itm_EwYbBY2"}}