When I get a response from the Spartan Image endpoint in Profiles, It seems like returns the actual PNG file, not a link or base 64 image. How do I actually get this as a URL to add to the source for the HTML img tags? Any help would be much appreciated, thanks 
You can either save the response as a .png on your server(which is probably what they want). Or you can check the response headers for “url” which returns a link.
> Golden Path. The Location header should point at the corresponding emblem image.
Take a look at this, convert to base 64 (use btoa()), and chuck it in an image tag (<img src=“data:image/png;base64,{your base 64 str here}” />.
Completely untested, but should work.
From the documentation:
> This API returns an HTTP Redirect (302 Found) response to the caller with the URL of an image of the player’s Spartan’s appearance. The initial request to this API that returns the HTTP Redirect is throttled and requires a subscription key. However, the image itself (at hostname “image.halocdn.com”) is not throttled and does not require a subscription key. Note that if the player later changes their Spartan’s appearance, the image itself is not refreshed and will need to be refreshed via a new request to this API.
Just grab the location from the response header, as OcR Envy suggests. Should give you something like
https://image.halocdn.com/h5/spartans/1053001_0_2015_3022_12_14?width=95&crop=Full&hash=FR1PQIp7CgdYSRaYXrOqQ%2B4fFVjNpI3cb%2FuAzFt%2BDkY%3D
Alright awesome, I managed to get it to work! thanks for all your quick responses 