Hi<br><br>I'm new to Erlang so please forgive my ignorance. I'm trying to stream data from a REST API using httpc, and although I have scoured the internet and the documentation I can't find a good example of how to do this, in particular how the "sync" and "receiver" options interoperate. My unsuccessful module looks like this...<br><br>-module(streaming).<br><br>-export([data/0]). <br><br>data() -><br><span>    </span>{ok, RequestId} = httpc:request(get, {"http://my_streaming_data_source.com", []}, [], [{sync, false}, {receiver, self()]),<br><span>    </span>receive_data(RequestId).<br><br>receive_data(RequestId) -><br><span>    </span>receive<br><span>    </span><span>    </span>{http, {RequestId, stream_start, Headers}} -> do something...; <br><span>    </span><span>    </span><span></span>{http, {RequestId, stream, Data}}               - > do something...; <br><span>    </span><span>    </span>{http, {RequestId, stream_end, Headers}}   -> do something...;<br>    end,<br>    receive_data(RequestId).<br><br><br>Is the above how I should be structuring my module?<br><br>Kind regards<br><br>John Duffy<br><br><br><br>