AOTG API Authenticate: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 1:
 
==DRAFTAPI==
Method: /api/public/v1/TokenAuth/Authenticate
 
Http Method: POST
 
Content-Type: application/json
 
<br/>
==Description==
Obtain '''AccessToken''' from AOTG Cloud Server is required to gain access to AOTG API.
 
Line 6 ⟶ 14:
Which means programmer only need to authenticate with AOTG Cloud Server once, and make subsequent request until it is expired.
 
==Code Snippets==
<tabber>
C# (with RestSharp)=
<syntaxhighlight lang="C#">
var client = new RestClient("http://aotg.cloud:8080/api/public/v1/TokenAuth/Authenticate");
var request = new RestRequest(Method.POST);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("undefined", "{\n \"UserName\": \"tester@autocountsoft.com\",\n \"Password\": \"Test123Password\",\n \"ApiKey\": \"3DT88-3BF2-4D08-BA6C-E8E8E\"\n}\n", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
</syntaxhighlight>
|-|
PHP cURL=
<syntaxhighlight lang="PHP">
<?php
 
$curl = curl_init();
 
curl_setopt_array($curl, array(
CURLOPT_PORT => "8080",
CURLOPT_URL => "http://aotg.cloud:8080/api/public/v1/TokenAuth/Authenticate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\n \"UserName\": \"tester@autocountsoft.com\",\n \"Password\": \"Test123Password\",\n \"ApiKey\": \"3DT88-3BF2-4D08-BA6C-E8E8E\"\n}\n",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"cache-control: no-cache"
),
));
 
$response = curl_exec($curl);
$err = curl_error($curl);
 
curl_close($curl);
 
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
</syntaxhighlight>
|-|
PHP Http Request=
<syntaxhighlight lang="PHP">
<?php
 
$request = new HttpRequest();
$request->setUrl('http://aotg.cloud:8080/api/public/v1/TokenAuth/Authenticate');
$request->setMethod(HTTP_METH_POST);
 
$request->setHeaders(array(
'cache-control' => 'no-cache',
'Content-Type' => 'application/json'
));
 
$request->setBody('{
"UserName": "tester@autocountsoft.com",
"Password": "Test123Password",
"ApiKey": "3DT88-3BF2-4D08-BA6C-E8E8E"
}
');
 
try {
$response = $request->send();
 
echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}
</syntaxhighlight>
</tabber>
 
==Response==
<syntaxhighlight lang="json-object" highlight="4">
{
"Id": "dddd32d-d99d-261f-dd90-8dcdd1de7d29",
"Name": "ApiAuthenticate",
"AccessToken": "SAMc13a36d2-a139-e911-b8b3-000d3aa04f3d",
"ExpireTimestamp": 636874006917389182
}
</syntaxhighlight>
Access Token is returned after successful authentication.
 
<br/>