So here's what worked for me in the end.
I tried using actionpoll() function as a guide but it threw me off. Also tried looking at the ajax requested/sent info which again. Threw me off. The api looks for different data.
Traced content_text to poll.php in api folder. Led me to what it was looking for so I could give it the info. 'polloptions' needed to actually be called 'options' in a multi-dimensional array with 'titles'.
This is what worked for me in case someone comes to see this.
Code:
function startpoll($userid, $forum_id, $postmsg, $title){
global $vbulletin;
$api = Api_InterfaceAbstract::instance();
$user = $api->callApi('user', 'fetchUserinfo', array($userid));
$input = array(
'title' => $title,
'authorname' => $user['username'],
'rawtext' => $postmsg,
'nodeid' => 0,
'parentid' => $forum_id,
'channelid' => $forum_id,
'ret' => '',
'tags' => '',
'reason' => '',
'iconid' => 0,
'prefixid' => '',
'hvinput' => '',
'subtype' => '',
'userid' => $userid,
'username' => 'User',
'nl2br' => false,
'options' => array(array ('title' => 'Yes, I support.'), array ('title' => 'No, I do not support.')),
'timeout' => 0,
'multiple' => false,
'ret' => '',
'public' => false,
'parseurl' => false,
);
$options = array(
'skipDupCheck' => true
);
$nodeId = $api->callApi('content_poll', 'add', [$input, $options]);
return $nodeId;
}
Thanks to Glenn for pointing me in the right direction.