Toying with ESI and C#

Hi everyone. Just to preface: I may have some stupid questions or glaring obvious answers I cannot see due to RL issues.

I’m messing around with C# as usual and decided to see what I could play with in the ESI data and stuff.

My aim is to first get authorized/logged in, then as a first example, get a character ID or something simple like that just to get me started and with an idea of how to start requesting information.

I’m stuck on the very first part already!

string CallBackURL = "eveauth-app://callback/";
string ClientID = "****";
string SecretKey = "****";
ESI myESI = new ESI(CallBackURL, ClientID, SecretKey);

which is calling this:

public ESI(string callBackURL, string clientID, string secretKey)
{
BuildScopes();
CallBackURL = “eveauth-app://callback/”;
ClientID = clientID;
SecretKey = secretKey;
Scope = Scopes[0];
}

BuildScopes() is reading a text file with all the scopes from the dev page.

A successful URL is built :slight_smile:

string URL
{
get
{
return @“https://login.eveonline.com/oauth/authorize/?response_type=code&redirect_uri=” + CallBackURL + “&client_id=” + ClientID + “&scope=” + Scope;
}
}

(Side note, how to request multiple scopes? Other apps I use have several items on the auth page).

The built URL is successful is I copy and paste into a browser, correct character etc. I just can’t figure out what to do next!

Hello. After you press authorize, the web browser should redirect and url would look like

https://<your-callback-url>/?code=<super-secret-code>&state=<unique-state-string-from-you>

You would then use the value in the code parameter to get the tokens. For more details, take a look at the documention in

https://github.com/ccpgames/eveonline-third-party-documentation/blob/master/docs/sso/authentication.md

To request for multiple scopes, I use

string.Join(“%20”, scopeListToAuthenticate)

https://github.com/esi/esi-docs/tree/master/docs/sso Would be the updated SSO docs.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.