You basically have to setup your Schedules Direct account from the command line before you can use it with Tvheadend. Once you can run your grabber from the command line as the user that Tvheadend runs as, then you can get it working with Tvheadend.
Get a current version of the XMLTV project's utilities so you will have the grabbers installed. The one you want is tv_grab_zz_sdjson. This is the grabber for Schedules Direct that uses their JSON API.
From the command line, switch to the user that Tvheadend runs as (in this example, it's 'hts' which is what it is on my machine). Then, run the grabber in its configure mode, which will set up your lineups and channels to grab information for.
Code:
$ su - hts
$ tv_grab_zz_sdjson --configure
Once your grabber is configured, then you can (re-)start Tvheadend, so that it will pick up the XMLTV grabber. In the Tvheadend WebUI go to "Configuration > Channel / EPG > EPG Grabber Modules". From the, select the one for "Internal: Schedules Direct JSON API", click "Enable", "Save" and then "Re-Run EPG Grabber Modules". After the grabber runs, you will find your guide channels on the "EPG Channels" tab, where you can map them to your Channels.