Using Guzzle 6.3.3, the headers fail to send.
I resolved by using my own Guzzle Client in the constructor like so:
$dbot = new DeployBot($this->settings['deploybot']['key'], $this->settings['deploybot']['user'],
new Client([
'base_uri' => "https://" . $this->settings['deploybot']['user'] . ".deploybot.com/api/v1/",
'headers' => [
'X-Api-Token' => $this->settings['deploybot']['key'],
'Accept' => 'application/json',
]
])
);
Notice use of base_uri instead of base_url and moving the headers up to the root element (no defaults) needed.