Current section
Files
Jump to
Current section
Files
lib/foyer_api/api/user.ex
# 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.User do
@moduledoc """
API calls for all endpoints tagged `User`.
"""
alias FoyerAPI.Connection
import FoyerAPI.RequestBuilder
@doc """
Change Password
Change current User's log in password
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- change_password_request (ChangePasswordRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec change_password(Tesla.Env.client, FoyerAPI.Model.ChangePasswordRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def change_password(connection, change_password_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/changePassword")
|> add_param(:body, :body, change_password_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false},
{ 401, false}
])
end
@doc """
Get User By Id
Find specific User with unique id
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- id (integer()):
- opts (KeywordList): [optional] Optional parameters
- :filter (String.t):
## Returns
{:ok, FoyerAPI.Model.User.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec get_user_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.User.t} | {:error, Tesla.Env.t}
def get_user_by_id(connection, id, opts \\ []) do
optional_params = %{
:filter => :headers
}
%{}
|> method(:get)
|> url("/User/#{id}")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.User{}},
{ 401, false}
])
end
@doc """
Get Users
Find users according to defined filter criteria
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :filter (String.t):
## Returns
{:ok, [%User{}, ...]} on success
{:error, Tesla.Env.t} on failure
"""
@spec get_users(Tesla.Env.client, keyword()) :: {:ok, nil} | {:ok, list(FoyerAPI.Model.User.t)} | {:error, Tesla.Env.t}
def get_users(connection, opts \\ []) do
optional_params = %{
:filter => :headers
}
%{}
|> method(:get)
|> url("/User")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, [%FoyerAPI.Model.User{}]},
{ 401, false}
])
end
@doc """
Login
Login with credentials and receive auth token for use in subsequent API calls
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- login_request (LoginRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec login(Tesla.Env.client, FoyerAPI.Model.LoginRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def login(connection, login_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/login")
|> add_param(:body, :body, login_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false},
{ 401, false}
])
end
@doc """
Patch User By Id
Patch specific User 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.User.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec patch_user_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.User.t} | {:error, Tesla.Env.t}
def patch_user_by_id(connection, id, opts \\ []) do
optional_params = %{
:body => :body
}
%{}
|> method(:patch)
|> url("/User/#{id}")
|> add_optional_params(optional_params, opts)
|> ensure_body()
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.User{}},
{ 401, false}
])
end
@doc """
Post Users
Post an array of User objects
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- user (User):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.User.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec post_users(Tesla.Env.client, FoyerAPI.Model.User.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.User.t} | {:error, Tesla.Env.t}
def post_users(connection, user, _opts \\ []) do
%{}
|> method(:post)
|> url("/User")
|> add_param(:body, :body, user)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.User{}},
{ 401, false}
])
end
@doc """
Sign Up as a Publisher
Sign up for Foyer Syndication Services
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- publisher_sign_up_request (PublisherSignUpRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec publisher_sign_up(Tesla.Env.client, FoyerAPI.Model.PublisherSignUpRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def publisher_sign_up(connection, publisher_sign_up_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/publisherSignup")
|> add_param(:body, :body, publisher_sign_up_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false},
{ 401, false}
])
end
@doc """
Request SMS Verification
Generate and send code to User's provided phone number for verification
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- id (integer()):
- phone (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec request_sms_verification(Tesla.Env.client, integer(), String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def request_sms_verification(connection, id, phone, _opts \\ []) do
%{}
|> method(:get)
|> url("/User/#{id}/requestSMSVerification")
|> add_param(:query, :phone, phone)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false},
{ 401, false}
])
end
@doc """
Send Reset Password Request
Sends a message to provided email to aid in password reset
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- reset_password_step_one_request (ResetPasswordStepOneRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec reset_password_step_one(Tesla.Env.client, FoyerAPI.Model.ResetPasswordStepOneRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def reset_password_step_one(connection, reset_password_step_one_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/resetPasswordStepOne")
|> add_param(:body, :body, reset_password_step_one_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false},
{ 401, false}
])
end
@doc """
Confirm Reset Password
Send user provided newPassword along with previously requested token to finish resetting password
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- reset_password_step_two_request (ResetPasswordStepTwoRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec reset_password_step_two(Tesla.Env.client, FoyerAPI.Model.ResetPasswordStepTwoRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def reset_password_step_two(connection, reset_password_step_two_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/resetPasswordStepTwo")
|> add_param(:body, :body, reset_password_step_two_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false},
{ 401, false}
])
end
@doc """
Sign Up
Sign up a new User for access to Foyer Services
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- sign_up_request (SignUpRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec sign_up(Tesla.Env.client, FoyerAPI.Model.SignUpRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def sign_up(connection, sign_up_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/signUp")
|> add_param(:body, :body, sign_up_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false},
{ 401, false}
])
end
@doc """
Update User Location
Update a user's location for use with Home Discovery
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- id (integer()):
- update_user_location_request (UpdateUserLocationRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.User.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec update_user_location(Tesla.Env.client, integer(), FoyerAPI.Model.UpdateUserLocationRequest.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.User.t} | {:error, Tesla.Env.t}
def update_user_location(connection, id, update_user_location_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/#{id}/updateUserLocation")
|> add_param(:body, :body, update_user_location_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.User{}},
{ 401, false}
])
end
@doc """
Verify SMS
Send user provided code to complete verification
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- id (integer()):
- verify_sms_request (VerifySmsRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec verify_sms(Tesla.Env.client, integer(), FoyerAPI.Model.VerifySmsRequest.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def verify_sms(connection, id, verify_sms_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/User/#{id}/verifySMS")
|> add_param(:body, :body, verify_sms_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false},
{ 401, false}
])
end
end