public function getProfile($orcid = null)
    {
        $this->http->setUrl($this->getApiEndpoint('record', $orcid));

        if ($this->level == 'api') {
            // If using the members api, we have to have an access token set
            if (!$this->getAccessToken()) {
                throw new Exception('You must first set an access token or authenticate');
            }

            $this->http->setHeader([
                'Content-Type'  => 'application/vnd.orcid+json',
                'Authorization' => 'Bearer ' . $this->getAccessToken()
            ]);
        } else {
            $this->http->setHeader('Accept: application/vnd.orcid+json');
        }

        return json_decode($this->http->execute());
    }