Skip to main content
GET
/
api
/
auth
/
.well-known
/
jwks-pub.json
Get JWKS public keys
curl --request GET \
  --url https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json
import requests

url = "https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json"

response = requests.get(url)

print(response.text)
const options = {method: 'GET'};

fetch('https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://sdp.suki.ai/api/auth/.well-known/jwks-pub.json")

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

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
{
  "keys": [
    {
      "alg": "RS256",
      "e": "AQAB",
      "kid": "partner-jwks-key-1",
      "kty": "RSA",
      "n": "yeNlzlub94YgerT030codqEztjfU_S6X4DbDA_iVKkjAWtYfPHDzz_sPCT1Axz6isZdf3lHpq_gYX4Sz-cbe4rjmigxUxr-FgKHQy3HeCdK6hNq9ASQvMK9LBOpXDNn7mei6RZWom4wo3CMvvsY1w8tjtfLb-yQwJPltHxShZq5-ihC9irpLI9xEBTgG12q5lGIFPhTl_7inA1PFK97LuSLnTJzW0bj096v_TMDg7pOWm_zHtF53qbVsI0e3v5nmdKXdFf9BjIARRfVrbxVxiZHjU6zL6jY5QJdh1QCmENoejj_ytspMmGW7yMRxzUqgxcAqOBpVm0b-_mW3HoBdjQ",
      "use": "sig"
    }
  ]
}
Use this public endpoint to get the (JSON Web Key Set) containing Suki’s public keys. Use these keys to verify the signature of any issued by Suki, such as the suki_token. This endpoint follows the RFC 7517 standard.
AuthenticationThis is a public endpoint and does not require authentication.

Key use cases

  • Verify Tokens: Confirm the authenticity of the suki_token you receive from our authentication API.
  • Handle Key Rotation: Automatically discover new public keys when Suki rotates its signing keys.
  • Maintain Security: Follow industry best practices for JWT validation.

Code examples

import requests

url = "https://sdp.suki-stage.com/api/auth/.well-known/jwks-pub.json"

response = requests.get(url)

if response.status_code == 200:
    jwks = response.json()
    print("Public keys retrieved successfully")
    print(f"Keys: {jwks}")
else:
    print(f"Failed to retrieve JWKS: {response.status_code}")

Response

200 - */*

JWKS document with public keys for partner token verification.

JSON Web Key Set document for partner token verification.

keys
object[]

Array of JSON Web Keys used to verify partner token signatures.

Last modified on May 22, 2026