Packages

An Elixir client library for the Pomelo API — the Latin American fintech platform for card issuing, digital accounts, KYC/KYB, fraud prevention, loyalty, and credit products.

Current section

Files

Jump to
pomelo_ex lib pomelo_ex general users modify_user.ex
Raw

lib/pomelo_ex/general/users/modify_user.ex

defmodule PomeloEx.General.Users.ModifyUser do
@moduledoc false
alias PomeloEx.Types.General.Users.ModifyUserType
def execute(%ModifyUserType{id: id, token: token} = payload) do
headers = build_headers(token)
body =
payload
|> Map.from_struct()
|> Map.delete(:token)
|> Enum.reject(fn {_, v} -> v == nil end)
|> Enum.into(%{})
|> Jason.encode!()
PomeloEx.Client.request(:patch, "/users/v1/#{id}", body, headers)
end
defp build_headers(token) do
[
{"Content-Type", "application/json"},
{"Authorization", "Bearer #{token}"}
]
end
end