Authorization

This page will guide you through how to get the OAuth 2.0 access token

Your security is our number 1 priority. You can follow OAuth 2.0 client credential flow.

In short, once you have registered, you should receive a client ID and a client secret. Once you have those, you can get an access token from GET API_BASE_PATH/oauth/token. You can access the remaining APIs using this access token.

The access token will expire according to the API responses. If it is expired, simply call GET /oauth/token again to refresh the token.

Replace CLIENT_ID & CLIENT_SECRET by your client ID and a client secret in the code snippet below:

require "uri"
require "net/http"
require "json"

url = URI("https://API_BASE_PATH/oauth/token")

https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
payload = {
  client_id: "CLIENT_ID",
  client_secret: "CLIENT_SECRET",
  grant_type: "client_credentials"
}
request.body = JSON.generate(payload)
response = https.request(request)

response_payload = JSON.parse(response.read_body)

puts "access_token #{response_payload['access_token']}"
puts "expired in #{response_payload['expires_in']} seconds"
<?php

$curl = curl_init();
$payload = [
  "client_id" => "CLIENT_ID",
  "client_secret" => "CLIENT_SECRET",
  "grant_type" => "client_credentials",
];

curl_setopt_array($curl, [
  CURLOPT_URL => "https://API_BASE_PATH/oauth/token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode($payload),
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);

curl_close($curl);
$responsePayload = json_decode($response, true);

echo "access_token {$response_payload['access_token']}" . PHP_EOL;
echo "expired in {$response_payload['expires_in']} seconds" . PHP_EOL;
curl --location --request POST 'https://API_BASE_PATH/oauth/token' \
--header 'Content-Type: application/json' \
--data-raw '{
	"client_id": "CLIENT_ID",
	"client_secret": "CLIENT_SECRET",
	"grant_type": "client_credentials"
}'