# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). # https://openapi-generator.tech # Do not edit the class manually. defmodule FoyerAPI.Api.Transaction do @moduledoc """ API calls for all endpoints tagged `Transaction`. """ alias FoyerAPI.Connection import FoyerAPI.RequestBuilder @doc """ Create or Update Transaction Create or Update a single Transaction and report User activity ## Parameters - connection (FoyerAPI.Connection): Connection to server - create_or_update_request (CreateOrUpdateRequest): - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, FoyerAPI.Model.Transaction.t} on success {:error, Tesla.Env.t} on failure """ @spec create_or_update(Tesla.Env.client, FoyerAPI.Model.CreateOrUpdateRequest.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Transaction.t} | {:error, Tesla.Env.t} def create_or_update(connection, create_or_update_request, _opts \\ []) do %{} |> method(:post) |> url("/Transaction/createOrUpdate") |> add_param(:body, :body, create_or_update_request) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %FoyerAPI.Model.Transaction{}}, { 401, false} ]) end @doc """ Delete Transaction By Id Get a specific Transaction with unique id ## Parameters - connection (FoyerAPI.Connection): Connection to server - id (integer()): - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, nil} on success {:error, Tesla.Env.t} on failure """ @spec delete_transaction_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:error, Tesla.Env.t} def delete_transaction_by_id(connection, id, _opts \\ []) do %{} |> method(:delete) |> url("/Transaction/#{id}") |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 204, false}, { 401, false} ]) end @doc """ Find One Transaction Find a specific Transaction according to defined filter criteria ## Parameters - connection (FoyerAPI.Connection): Connection to server - filter (String.t): - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, FoyerAPI.Model.Transaction.t} on success {:error, Tesla.Env.t} on failure """ @spec find_one_transaction(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Transaction.t} | {:error, Tesla.Env.t} def find_one_transaction(connection, filter, _opts \\ []) do %{} |> method(:get) |> url("/Transaction/findOne") |> add_param(:headers, :filter, filter) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %FoyerAPI.Model.Transaction{}}, { 401, false} ]) end @doc """ Get Transaction By Id Get a specific Transaction with unique id ## Parameters - connection (FoyerAPI.Connection): Connection to server - id (integer()): - opts (KeywordList): [optional] Optional parameters - :filter (String.t): ## Returns {:ok, FoyerAPI.Model.Transaction.t} on success {:error, Tesla.Env.t} on failure """ @spec get_transaction_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Transaction.t} | {:error, Tesla.Env.t} def get_transaction_by_id(connection, id, opts \\ []) do optional_params = %{ :filter => :headers } %{} |> method(:get) |> url("/Transaction/#{id}") |> add_optional_params(optional_params, opts) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %FoyerAPI.Model.Transaction{}}, { 401, false} ]) end @doc """ Get Transactions Get Transactions according to defined filter criteria ## Parameters - connection (FoyerAPI.Connection): Connection to server - opts (KeywordList): [optional] Optional parameters - :filter (String.t): ## Returns {:ok, [%Transaction{}, ...]} on success {:error, Tesla.Env.t} on failure """ @spec get_transactions(Tesla.Env.client, keyword()) :: {:ok, nil} | {:ok, list(FoyerAPI.Model.Transaction.t)} | {:error, Tesla.Env.t} def get_transactions(connection, opts \\ []) do optional_params = %{ :filter => :headers } %{} |> method(:get) |> url("/Transaction") |> add_optional_params(optional_params, opts) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, [%FoyerAPI.Model.Transaction{}]}, { 401, false} ]) end @doc """ Patch Transaction By Id Patch a specific Transaction with unique id ## Parameters - connection (FoyerAPI.Connection): Connection to server - id (integer()): - opts (KeywordList): [optional] Optional parameters - :body ([FoyerAPI.Model.PatchDocument.t]): ## Returns {:ok, FoyerAPI.Model.Transaction.t} on success {:error, Tesla.Env.t} on failure """ @spec patch_transaction_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Transaction.t} | {:error, Tesla.Env.t} def patch_transaction_by_id(connection, id, opts \\ []) do optional_params = %{ :body => :body } %{} |> method(:patch) |> url("/Transaction/#{id}") |> add_optional_params(optional_params, opts) |> ensure_body() |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %FoyerAPI.Model.Transaction{}}, { 401, false} ]) end @doc """ Post Transactions Post an array of Transaction objects ## Parameters - connection (FoyerAPI.Connection): Connection to server - transaction (Transaction): - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, FoyerAPI.Model.Transaction.t} on success {:error, Tesla.Env.t} on failure """ @spec post_transactions(Tesla.Env.client, FoyerAPI.Model.Transaction.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Transaction.t} | {:error, Tesla.Env.t} def post_transactions(connection, transaction, _opts \\ []) do %{} |> method(:post) |> url("/Transaction") |> add_param(:body, :body, transaction) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %FoyerAPI.Model.Transaction{}}, { 401, false} ]) end end