View Source Reydenx.Order (Reyden-X v0.1.2)
Provides methods for working with orders
Summary
Functions
All Orders
Detailed Information about Clicks
Detailed Order Information
View statistics for multiple orders. Click-through statistics for multiple orders.
Detailed Information about Users Online
Order Payments
Detailed Information about Sites
Detailed Information about Views
Types
Functions
All Orders
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.all(token)
{:ok, %Reydenx.Model.Result{
request_id: "aeB9_Wdm_dnt43gKSU_WXQ1720074136.561463",
cached: true,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: "XXX",
result: [
%Reydenx.Model.Order{
id: 123456,
created_at: ~U[2024-01-01T10:00:00.049560Z],
updated_at: ~U[2024-01-01T10:00:00.049560Z],
uuid: "4f2ba79b-8c36-4651-84ca-ca6cc0df42cf",
status: "closed",
ordered_view_qty: 10000,
price_per_view: 0.1,
is_autostart: true,
online_users_limit: 1000,
tariff_id: 123456,
platform: "twitch",
content_type: "stream",
parameters: %{
"delay" => false,
"delay_time" => 0,
"even_distribution" => false,
"even_distribution_time" => 0,
"launch_mode" => "auto",
"work_mode" => "with-stream"
},
extras: %{
"game_name" => nil,
"image_url" => "XXX",
"twitch_channel" => "channel",
"twitch_id" => 123456
},
statistics: nil,
content_classification_labels: [
"MatureGame",
"ViolentGraphic"
]
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.all(token)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec clicks(token :: t(), order_id :: pos_integer()) :: res()
Detailed Information about Clicks
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.clicks(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.DateQuantity{
date: "2022-05-30",
quantity: 30
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.clicks(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec details(token :: t(), order_id :: pos_integer()) :: res()
Detailed Order Information
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.details(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "DvXr4OjdKgHHrH0NNkmvzw1720075199.128009",
cached: true,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: %Reydenx.Model.Order{
id: 123456,
created_at: ~U[2024-01-01T10:00:00.049560Z],
updated_at: ~U[2024-01-01T10:00:00.049560Z],
uuid: "e67d9c84-bced-4a8e-b448-00bbf5c49d29",
status: "closed",
ordered_view_qty: 1000,
price_per_view: 0.2,
is_autostart: true,
online_users_limit: 100,
tariff_id: 123456,
platform: "twitch",
content_type: "stream",
parameters: %{
"delay" => false,
"delay_time" => 0,
"even_distribution" => false,
"even_distribution_time" => 0,
"launch_mode" => "manual",
"work_mode" => "with-stream"
},
extras: %{
"game_name" => nil,
"image_url" => "XXX",
"twitch_channel" => "channel",
"twitch_id" => 123456
},
statistics: %{
"active_time_in_seconds" => 0,
"average" => %{
"online" => %{"in_fact" => 0, "in_settings" => 0},
"session_in_seconds" => 0
},
"clicks" => 23,
"ctr" => 2.1,
"views" => 1091
},
content_classification_labels: []
}
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.details(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec multiple(token :: t(), stat_type :: atom(), identifiers :: [pos_integer()]) :: res()
View statistics for multiple orders. Click-through statistics for multiple orders.
Examples:
### Success:
Views:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.multiple(token, :views, [123456])
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.IdQuantity{
id: 123456,
quantity: 1000
}
]
}}
Clicks:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.multiple(token, :clicks, [123456])
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.IdQuantity{
id: 123456,
quantity: 35
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.multiple(token, :views, [123456])
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec online(token :: t(), order_id :: pos_integer()) :: res()
Detailed Information about Users Online
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.online(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.Online{
created_at: ~U[2024-01-01T10:00:00.049560Z],
in_settings: 1000,
in_fact: 998
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.online(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec payments(token :: t(), order_id :: pos_integer()) :: res()
Order Payments
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.payments(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.Payment{
id: 123456,
created_at: ~U[2024-01-01T10:00:00.049560Z],
updated_at: ~U[2024-01-01T10:00:00.049560Z],
payed_at: ~U[2024-01-01T10:00:00.049560Z],
order_id: 123456,
amount: 1000.0,
external_id: "XXX",
uuid: "e67d9c84-bced-4a8e-b448-00bbf5c49d29",
receipt: nil
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.payments(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec payments(token :: t(), order_id :: pos_integer(), cursor :: String.t()) :: res()
@spec sites(token :: t(), order_id :: pos_integer()) :: res()
Detailed Information about Sites
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.sites(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.DomainStat{
domain: "example.com",
views: 100,
clicks: 3,
ctr: 3.0
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.sites(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}
@spec views(token :: t(), order_id :: pos_integer()) :: res()
Detailed Information about Views
Examples:
### Success:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.views(token, 123456)
{:ok, %Reydenx.Model.Result{
request_id: "aE4SaOdwC1to94KdLpnOdA1720076109.665816",
cached: false,
cache_expires_at: "2024-01-01T10:00:00.049560+00:00",
cursor: nil,
result: [
%Reydenx.Model.DateQuantity{
date: "2022-05-30",
quantity: 1000
}
]
}}
### Fail:
iex> {:ok, token} = Reydenx.new()
iex> Reydenx.Order.views(token, 123456)
{:error, %Reydenx.Model.ResponseError{
path: "/",
status_code: 404,
message: "Not Found"
}}