Примеры

JavaScript (PKCE)

// 1. Сгенерируйте code_verifier и code_challenge (S256)
// 2. Redirect:
window.location = 'https://user.igoevent.com/oauth/authorize?' + new URLSearchParams({
  response_type: 'code',
  client_id: 'YOUR_CLIENT_ID',
  redirect_uri: 'https://example.com/callback',
  scope: 'openid profile email',
  state: crypto.randomUUID(),
  code_challenge: challenge,
  code_challenge_method: 'S256',
});

PHP (server-side)

$response = file_get_contents('https://user.igoevent.com/oauth/token', false, stream_context_create([
    'http' => [
        'method' => 'POST',
        'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
        'content' => http_build_query([
            'grant_type' => 'authorization_code',
            'client_id' => $clientId,
            'client_secret' => $clientSecret,
            'redirect_uri' => $redirectUri,
            'code' => $_GET['code'],
            'code_verifier' => $codeVerifier,
        ]),
    ],
]));
$tokens = json_decode($response, true);