src/Services/ApplicationService.php
public function postApplication(Array $postVars=array())
    {
        $this->validateRequiredFields($postVars);
        $postParams = $this->_apiClient->formatPostParameters($postVars);
        $headers    = array('Authorization' => $this->_authorizationHeader);
        
        return $this->_apiClient->post($postParams, $headers);
    }
public function postApplication(Array $postVars=array())
    {
        $this->validateRequiredFields($postVars);
        $postParams = $this->_apiClient->formatPostParameters($postVars);
        $headers    = array('Authorization' => $this->_authorizationHeader);
        
        return $this->_apiClient->post($postParams, $headers);
    }
Post an application to Greenhouse.  The post parameters should be defined in an
array similar to the way you would send the item using libcurl.  The difference is
that instead of sending multiselect with indexed arrays; ie:

'var[0]' => 'foo',
'var[1]' => 'bar'

You will instead send them as an array

'var' => array('foo', 'bar')

We'll use the client interface to transform this in to whatever works for the
given client and then post the application.

Document attachments may also be defined with CurlFile.

This method will also verify that required fields are not empty.  As this currently
requires verification on the client-side, we will run that verification before we
submit anything to the API.

@params  Array   $postVars       An array of questions to be posted to the
Applications endpoint.
@return  boolean
@throws  GreenhouseApplicationException  if required fields are not included.
@throws  GreenhouseAPIResponseException  if a non-200 response is returned.