Current section
Files
Jump to
Current section
Files
lib/bingex/api/reply.ex
defmodule Bingex.API.Reply do
@moduledoc """
Represents a standardized API response from BingX.
This module defines a structured format for API replies, including
a status code, message, data payload, and optional additional fields.
It provides utilities to manipulate response data.
"""
@type code() :: non_neg_integer()
@type message() :: binary()
@type data() :: nil | map() | struct()
@type t :: %__MODULE__{
code: code() | nil,
message: message() | nil,
data: any(),
payload: nil | map()
}
@type t(data) :: %__MODULE__{
code: code() | nil,
message: message() | nil,
data: data,
payload: nil | map()
}
defstruct [:code, :message, :data, :payload]
def put_data(%__MODULE__{} = reply, data) do
put_in(reply.data, data)
end
end