Packages

Reference spec for interacting with Foyer API services

Current section

Files

Jump to
foyer_api_sdk lib foyer_api api media.ex
Raw

lib/foyer_api/api/media.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.Media do
@moduledoc """
API calls for all endpoints tagged `Media`.
"""
alias FoyerAPI.Connection
import FoyerAPI.RequestBuilder
@doc """
Run Insight on an array of images as files or urls
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- classify_request (ClassifyRequest):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.Classify200Response.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec classify(Tesla.Env.client, FoyerAPI.Model.ClassifyRequest.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Classify200Response.t} | {:error, Tesla.Env.t}
def classify(connection, classify_request, _opts \\ []) do
%{}
|> method(:post)
|> url("/Media/classify")
|> add_param(:body, :body, classify_request)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, false},
{ 200, %FoyerAPI.Model.Classify200Response{}}
])
end
@doc """
Run Insight given a properly formatted RESO Property with nested Media
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.ClassifyReso200Response.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec classify_reso(Tesla.Env.client, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.ClassifyReso200Response.t} | {:error, Tesla.Env.t}
def classify_reso(connection, _opts \\ []) do
%{}
|> method(:post)
|> url("/Media/classifyReso")
|> ensure_body()
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, false},
{ 200, %FoyerAPI.Model.ClassifyReso200Response{}}
])
end
@doc """
Delete Media by Id
Delete specific Media 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_media_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_media_by_id(connection, id, _opts \\ []) do
%{}
|> method(:delete)
|> url("/Media/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false},
{ 401, false}
])
end
@doc """
Find One Media
Fine one Media according to defined filter criteria
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- filter (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.Media.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec find_one_media(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Media.t} | {:error, Tesla.Env.t}
def find_one_media(connection, filter, _opts \\ []) do
%{}
|> method(:get)
|> url("/Media/findOne")
|> add_param(:headers, :filter, filter)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.Media{}},
{ 401, false}
])
end
@doc """
Get Media
Get an array of Media according to defined filter criteria
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :filter (String.t):
## Returns
{:ok, [%Media{}, ...]} on success
{:error, Tesla.Env.t} on failure
"""
@spec get_media(Tesla.Env.client, keyword()) :: {:ok, list(FoyerAPI.Model.Media.t)} | {:ok, nil} | {:error, Tesla.Env.t}
def get_media(connection, opts \\ []) do
optional_params = %{
:filter => :headers
}
%{}
|> method(:get)
|> url("/Media")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, [%FoyerAPI.Model.Media{}]},
{ 401, false}
])
end
@doc """
Get Media by Id
Get a specific Media with unique id
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- id (integer()):
- opts (KeywordList): [optional] Optional parameters
- :filter (String.t):
## Returns
{:ok, FoyerAPI.Model.Media.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec get_media_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Media.t} | {:error, Tesla.Env.t}
def get_media_by_id(connection, id, opts \\ []) do
optional_params = %{
:filter => :headers
}
%{}
|> method(:get)
|> url("/Media/#{id}")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.Media{}},
{ 401, false}
])
end
@doc """
Patch Media by Id
Patch specific Media 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.Media.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec patch_media_by_id(Tesla.Env.client, integer(), keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Media.t} | {:error, Tesla.Env.t}
def patch_media_by_id(connection, id, opts \\ []) do
optional_params = %{
:body => :body
}
%{}
|> method(:patch)
|> url("/Media/#{id}")
|> add_optional_params(optional_params, opts)
|> ensure_body()
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.Media{}},
{ 401, false}
])
end
@doc """
Post Media
Post an array of Media objects
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- media (Media):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, FoyerAPI.Model.Media.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec post_media(Tesla.Env.client, FoyerAPI.Model.Media.t, keyword()) :: {:ok, nil} | {:ok, FoyerAPI.Model.Media.t} | {:error, Tesla.Env.t}
def post_media(connection, media, _opts \\ []) do
%{}
|> method(:post)
|> url("/Media")
|> add_param(:body, :body, media)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %FoyerAPI.Model.Media{}},
{ 401, false}
])
end
@doc """
For Foyer internal use.
## Parameters
- connection (FoyerAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :body (ReportClassificationErrorRequest):
## Returns
{:ok, nil} on success
{:error, Tesla.Env.t} on failure
"""
@spec report_classification_error(Tesla.Env.client, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def report_classification_error(connection, opts \\ []) do
optional_params = %{
:body => :body
}
%{}
|> method(:post)
|> url("/Media/reportClassificationError")
|> add_optional_params(optional_params, opts)
|> ensure_body()
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false},
{ 401, false}
])
end
end