# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
# https://openapi-generator.tech
# Do not edit the class manually.
defmodule ChatKitty.Api.Imports do
@moduledoc """
API calls for all endpoints tagged `Imports`.
"""
alias ChatKitty.Connection
import ChatKitty.RequestBuilder
@doc """
Import channel members
Batch imports channel members from a JSON array file
## Parameters
- connection (ChatKitty.Connection): Connection to server
- id (integer()):
- file (String.t): JSON array file with user references to be added as members
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, ChatKitty.Model.ApplicationJobResource.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec import_channel_members(Tesla.Env.client, integer(), String.t, keyword()) :: {:ok, ChatKitty.Model.ApiError.t} | {:ok, ChatKitty.Model.ApplicationJobResource.t} | {:ok, ChatKitty.Model.AuthenticationError.t} | {:error, Tesla.Env.t}
def import_channel_members(connection, id, file, _opts \\ []) do
%{}
|> method(:post)
|> url("/v1/imports/channels/#{id}/members")
|> add_param(:file, :"file", file)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, %ChatKitty.Model.AuthenticationError{}},
{ 400, %ChatKitty.Model.ApiError{}},
{ 401, %ChatKitty.Model.AuthenticationError{}},
{ 404, %ChatKitty.Model.ApiError{}},
{ 202, %ChatKitty.Model.ApplicationJobResource{}}
])
end
@doc """
Import channels
Batch imports channels from a JSON array file
## Parameters
- connection (ChatKitty.Connection): Connection to server
- file (String.t): JSON array file with channels
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, ChatKitty.Model.ApplicationJobResource.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec import_channels(Tesla.Env.client, String.t, keyword()) :: {:ok, ChatKitty.Model.ApiError.t} | {:ok, ChatKitty.Model.ApplicationJobResource.t} | {:ok, ChatKitty.Model.AuthenticationError.t} | {:error, Tesla.Env.t}
def import_channels(connection, file, _opts \\ []) do
%{}
|> method(:post)
|> url("/v1/imports/channels")
|> add_param(:file, :"file", file)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, %ChatKitty.Model.AuthenticationError{}},
{ 400, %ChatKitty.Model.ApiError{}},
{ 401, %ChatKitty.Model.AuthenticationError{}},
{ 404, %ChatKitty.Model.ApiError{}},
{ 202, %ChatKitty.Model.ApplicationJobResource{}}
])
end
@doc """
Import messages
Batch imports messages from a JSON array file
## Parameters
- connection (ChatKitty.Connection): Connection to server
- file (String.t): JSON array file with messages
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, ChatKitty.Model.ApplicationJobResource.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec import_messages(Tesla.Env.client, String.t, keyword()) :: {:ok, ChatKitty.Model.ApiError.t} | {:ok, ChatKitty.Model.ApplicationJobResource.t} | {:ok, ChatKitty.Model.AuthenticationError.t} | {:error, Tesla.Env.t}
def import_messages(connection, file, _opts \\ []) do
%{}
|> method(:post)
|> url("/v1/imports/messages")
|> add_param(:file, :"file", file)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, %ChatKitty.Model.AuthenticationError{}},
{ 400, %ChatKitty.Model.ApiError{}},
{ 401, %ChatKitty.Model.AuthenticationError{}},
{ 404, %ChatKitty.Model.ApiError{}},
{ 202, %ChatKitty.Model.ApplicationJobResource{}}
])
end
@doc """
Import users
Batch imports users from a JSON array file
## Parameters
- connection (ChatKitty.Connection): Connection to server
- file (String.t): JSON array file with users
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, ChatKitty.Model.ApplicationJobResource.t} on success
{:error, Tesla.Env.t} on failure
"""
@spec import_users(Tesla.Env.client, String.t, keyword()) :: {:ok, ChatKitty.Model.ApiError.t} | {:ok, ChatKitty.Model.ApplicationJobResource.t} | {:ok, ChatKitty.Model.AuthenticationError.t} | {:error, Tesla.Env.t}
def import_users(connection, file, _opts \\ []) do
%{}
|> method(:post)
|> url("/v1/imports/users")
|> add_param(:file, :"file", file)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 403, %ChatKitty.Model.AuthenticationError{}},
{ 400, %ChatKitty.Model.ApiError{}},
{ 401, %ChatKitty.Model.AuthenticationError{}},
{ 404, %ChatKitty.Model.ApiError{}},
{ 202, %ChatKitty.Model.ApplicationJobResource{}}
])
end
end