ESI SSO: Invalid Request, some parameters are either missing or invalid

I’m creating a new app using Angular cli (because I apparently hate myself), and whenever I try to authenticate via SSO, I get the response:

error: “invalid_request” error_description: “Some parameters are either missing or invalid”

Which sounds like a simple enough error. But this is the URL I’m sending;

https://login.eveonline.com/oauth/authorize/?response_type=code&redirect_url=http%3A%2F%2Flocalhost%3A4200%2Fauth-callback&client_id={client_id}&scope=publicData%20esi-location.read_location.v1%20esi-characters.read_chat_channels.v1%20esi-location.read_online.v1

And as far as I can see and as far as I’ve compared it to other login url’s, I can’t find where it’s failing.

Any help would be massively appreciated.

Update / Edit: I have also attempted to use the OAauth2 method (/v2/oauth/authorize) and provided a state parameter, and that gives me the helpful message of:

Message: An error has occurred.