How can I apply an Optional in which I want to call a method?
This looks mostly correct. IMO, should not use response in the map function, but results. I.e.
final ResultDO response = transformJsonToResponseDO(rawDataResponse, ResultDO.class);

return Optional.ofNullable(response)
            .map(results -&gt; createPOIs(Collections.singletonList(results), providerResponse))
            .orElse(Collections.emptyList());

Even though they are the same in this case, typically this is how you are supposed to use Optional when you're not wrapping in #ofNullable.
Furthermore, this lets you put it all on one line:
return Optional.ofNullable(transformJsonToResponseDO(rawDataResponse, ResultDO.class))
            .map(results -&gt; createPOIs(Collections.singletonList(results), providerResponse))
            .orElse(Collections.emptyList());