Current section
Files
Jump to
Current section
Files
lib/client/webhook_subscription_routes.ex
defmodule ExOura.Client.WebhookSubscriptionRoutes do
@moduledoc """
Provides API endpoints related to webhook subscription routes
"""
@default_client ExOura.Client
@doc """
Create Webhook Subscription
"""
@spec create_webhook_subscription_v2_webhook_subscription_post(
ExOura.Client.CreateWebhookSubscriptionRequest.t(),
keyword
) ::
{:ok, ExOura.Client.WebhookSubscriptionModel.t()}
| {:error, ExOura.Client.HTTPValidationError.t()}
def create_webhook_subscription_v2_webhook_subscription_post(body, opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [body: body],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:create_webhook_subscription_v2_webhook_subscription_post},
url: "/v2/webhook/subscription",
body: body,
method: :post,
request: [{"application/json", {ExOura.Client.CreateWebhookSubscriptionRequest, :t}}],
response: [
{201, {ExOura.Client.WebhookSubscriptionModel, :t}},
{422, {ExOura.Client.HTTPValidationError, :t}}
],
opts: opts
})
end
@doc """
Delete Webhook Subscription
"""
@spec delete_webhook_subscription_v2_webhook_subscription_id_delete(String.t(), keyword) ::
:ok | {:error, ExOura.Client.HTTPValidationError.t()}
def delete_webhook_subscription_v2_webhook_subscription_id_delete(id, opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [id: id],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:delete_webhook_subscription_v2_webhook_subscription_id_delete},
url: "/v2/webhook/subscription/#{id}",
method: :delete,
response: [{204, :null}, {403, :null}, {422, {ExOura.Client.HTTPValidationError, :t}}],
opts: opts
})
end
@doc """
Get Webhook Subscription
"""
@spec get_webhook_subscription_v2_webhook_subscription_id_get(String.t(), keyword) ::
{:ok, ExOura.Client.WebhookSubscriptionModel.t()}
| {:error, ExOura.Client.HTTPValidationError.t()}
def get_webhook_subscription_v2_webhook_subscription_id_get(id, opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [id: id],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:get_webhook_subscription_v2_webhook_subscription_id_get},
url: "/v2/webhook/subscription/#{id}",
method: :get,
response: [
{200, {ExOura.Client.WebhookSubscriptionModel, :t}},
{403, :null},
{422, {ExOura.Client.HTTPValidationError, :t}}
],
opts: opts
})
end
@doc """
List Webhook Subscriptions
"""
@spec list_webhook_subscriptions_v2_webhook_subscription_get(keyword) ::
{:ok, [ExOura.Client.WebhookSubscriptionModel.t()]} | :error
def list_webhook_subscriptions_v2_webhook_subscription_get(opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:list_webhook_subscriptions_v2_webhook_subscription_get},
url: "/v2/webhook/subscription",
method: :get,
response: [{200, [{ExOura.Client.WebhookSubscriptionModel, :t}]}],
opts: opts
})
end
@doc """
Renew Webhook Subscription
"""
@spec renew_webhook_subscription_v2_webhook_subscription_renew_id_put(String.t(), keyword) ::
{:ok, ExOura.Client.WebhookSubscriptionModel.t()}
| {:error, ExOura.Client.HTTPValidationError.t()}
def renew_webhook_subscription_v2_webhook_subscription_renew_id_put(id, opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [id: id],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:renew_webhook_subscription_v2_webhook_subscription_renew_id_put},
url: "/v2/webhook/subscription/renew/#{id}",
method: :put,
response: [
{200, {ExOura.Client.WebhookSubscriptionModel, :t}},
{403, :null},
{422, {ExOura.Client.HTTPValidationError, :t}}
],
opts: opts
})
end
@doc """
Update Webhook Subscription
"""
@spec update_webhook_subscription_v2_webhook_subscription_id_put(
String.t(),
ExOura.Client.UpdateWebhookSubscriptionRequest.t(),
keyword
) ::
{:ok, ExOura.Client.WebhookSubscriptionModel.t()}
| {:error, ExOura.Client.HTTPValidationError.t()}
def update_webhook_subscription_v2_webhook_subscription_id_put(id, body, opts \\ []) do
client = opts[:client] || @default_client
client.request(%{
args: [id: id, body: body],
call:
{ExOura.Client.WebhookSubscriptionRoutes,
:update_webhook_subscription_v2_webhook_subscription_id_put},
url: "/v2/webhook/subscription/#{id}",
body: body,
method: :put,
request: [{"application/json", {ExOura.Client.UpdateWebhookSubscriptionRequest, :t}}],
response: [
{200, {ExOura.Client.WebhookSubscriptionModel, :t}},
{403, :null},
{422, {ExOura.Client.HTTPValidationError, :t}}
],
opts: opts
})
end
end