# NOTE: This file is auto generated by OpenAPI Generator 6.3.0-SNAPSHOT (https://openapi-generator.tech).
# Do not edit this file manually.
defmodule PlacetelAPI.Api.Subscriptions do
@moduledoc """
API calls for all endpoints tagged `Subscriptions`.
"""
alias PlacetelAPI.Connection
import PlacetelAPI.RequestBuilder
@doc """
Delete a subscription
### Parameters
- `connection` (PlacetelAPI.Connection): Connection to server
- `id` (String.t):
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, nil}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec delete_subscriptions_id(Tesla.Env.client(), String.t(), keyword()) ::
{:ok, nil} | {:error, Tesla.Env.t()}
def delete_subscriptions_id(connection, id, _opts \\ []) do
request =
%{}
|> method(:delete)
|> url("/subscriptions/#{id}")
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{204, false}
])
end
@doc """
List subscriptions
Fetch a list of all registered subscriptions
### Parameters
- `connection` (PlacetelAPI.Connection): Connection to server
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, [%Subscription{}, ...]}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec get_subscriptions(Tesla.Env.client(), keyword()) ::
{:ok, list(PlacetelAPI.Model.Subscription.t())} | {:error, Tesla.Env.t()}
def get_subscriptions(connection, _opts \\ []) do
request =
%{}
|> method(:get)
|> url("/subscriptions")
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{200, [%PlacetelAPI.Model.Subscription{}]}
])
end
@doc """
Add a subscription
### Parameters
- `connection` (PlacetelAPI.Connection): Connection to server
- `subscriptions` (PutSubscriptions):
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, nil}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec put_subscriptions(Tesla.Env.client(), PlacetelAPI.Model.PutSubscriptions.t(), keyword()) ::
{:ok, nil} | {:error, Tesla.Env.t()}
def put_subscriptions(connection, subscriptions, _opts \\ []) do
request =
%{}
|> method(:put)
|> url("/subscriptions")
|> add_param(:body, :body, subscriptions)
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{200, false}
])
end
end