-module(fireball). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([get_doc/5]). -file("/export/gleam/fireball/src/fireball.gleam", 11). -spec get_doc(binary(), binary(), binary(), binary(), binary()) -> {ok, objects@document:fireball_document()} | {error, error:fireball_error()}. get_doc(Apikey, Apiver, Database, Doc, Proj_id) -> case gleam@http@request:to( <<<<<<<<<<<<<<<<<<"https://firestore.googleapis.com/"/utf8, Apiver/binary>>/binary, "/projects/"/utf8>>/binary, Proj_id/binary>>/binary, "/databases/"/utf8>>/binary, Database/binary>>/binary, "/documents/"/utf8>>/binary, Doc/binary>>/binary, "?key="/utf8>>/binary, Apikey/binary>> ) of {ok, Base_req} -> Req = begin _pipe = gleam@http@request:prepend_header( Base_req, <<"Content-type"/utf8>>, <<"application/json"/utf8>> ), gleam@http@request:set_method(_pipe, get) end, case gleam@httpc:send(Req) of {ok, Resp} -> {ok, {fireball_document, erlang:element(4, Resp), <<""/utf8>>}}; {error, _} -> {error, {fireball_error, <<"error while sending request"/utf8>>}} end; {error, _} -> {error, {fireball_error, <<"error while forming request"/utf8>>}} end.