The answer in this case is that no, the permissions are not required in this instance, as Dipendra has pointed out in his answer, as the application is sending it's requests as Intents via external applications and aren't direct requests to the network from within his application.
A little background:
The easiest way you can know whether you need the permission is to use your application on a test device. Does it work as you intended it? Do you get any errors without the INTERNET
permission?
If you do, then its clear that you need it! If not (and in the case of this question's scenario), you do not need the INTERNET
permission.
The permissions are there as a security feature.
The permission in question is:
public static final String INTERNET
Allows applications to open network sockets.
Constant Value: "android.permission.INTERNET"
If your application needs network sockets, then your application needs permission to use them. Simple as that.
Add the below line to your manifest if you require the permission:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
The permissions are there to protect the user, so it is about being upfront and clear of what your applications intentions are.