Removing initialize methods from the main/manager class also allows for different iniitalizers in specific task services
26 lines
718 B
Ruby
26 lines
718 B
Ruby
class LndhubV2 < Lndhub
|
|
|
|
def post(path, payload, options={})
|
|
headers = { "Content-Type" => "application/json" }
|
|
if auth_token
|
|
headers.merge!({ "Authorization" => "Bearer #{auth_token}" })
|
|
elsif options[:admin_token]
|
|
headers.merge!({ "Authorization" => "Bearer #{options[:admin_token]}" })
|
|
end
|
|
res = Faraday.post endpoint_url(path), payload.to_json, headers
|
|
log_error(res) if res.status != 200
|
|
|
|
JSON.parse(res.body)
|
|
end
|
|
|
|
def create_account(payload={})
|
|
post "v2/users", payload, admin_token: Setting.lndhub_admin_token
|
|
end
|
|
|
|
def create_invoice(payload)
|
|
# Payload: { amount: 1000, description: "", description_hash: "" }
|
|
post "v2/invoices", payload
|
|
end
|
|
|
|
end
|