Find an API

Search public APIs with auth details & Postman guides

← All APIs

AWS Single Sign-On

amazonaws · Cloud

Cloud No Auth Free & Open cloud Sandbox

AWS IAM Identity Center (successor to AWS Single Sign-On) Portal is a web service that makes it easy for you to assign user access to IAM Identity Center resources such as the AWS access portal. Users can get AWS account applications and roles assigned to them and get federated into the application. Although AWS Single Sign-On was renamed, the sso and identitystore API namespaces will continue to retain their original name for backward compatibility pur

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

GET GetRoleCredentials

Returns the STS short-term credentials for a given role name that is assigned to the user.

https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token?role_name=example&account_id=1

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
x-amz-sso_bearer_token example
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token?role_name=example&account_id=1" \
  -H "x-amz-sso_bearer_token: example"
import requests
params = {
    "role_name": "example",
    "account_id": "1"
}
headers = {
    "x-amz-sso_bearer_token": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token');
url.searchParams.set('role_name', 'example');
url.searchParams.set('account_id', '1');

const response = await fetch(url, {
  headers: {
    'x-amz-sso_bearer_token': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token")
	q := baseURL.Query()
	q.Set("role_name", "example")
	q.Set("account_id", "1")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("x-amz-sso_bearer_token", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token")
uri.query = URI.encode_www_form({
  "role_name" => "example",
  "account_id" => "1"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["x-amz-sso_bearer_token"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/federation/credentials#role_name&account_id&x-amz-sso_bearer_token?" . http_build_query([
    "role_name" => "example",
    "account_id" => "1"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "x-amz-sso_bearer_token: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET ListAccountRoles

Lists all roles that are assigned to the user for a given AWS account.

https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id?nextToken=example&account_id=1&maxResults=example&max_result=1&next_token=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
x-amz-sso_bearer_token example
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id?nextToken=example&account_id=1&maxResults=example&max_result=1&next_token=example" \
  -H "x-amz-sso_bearer_token: example"
import requests
params = {
    "nextToken": "example",
    "account_id": "1",
    "maxResults": "example",
    "max_result": "1",
    "next_token": "example"
}
headers = {
    "x-amz-sso_bearer_token": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('account_id', '1');
url.searchParams.set('maxResults', 'example');
url.searchParams.set('max_result', '1');
url.searchParams.set('next_token', 'example');

const response = await fetch(url, {
  headers: {
    'x-amz-sso_bearer_token': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id")
	q := baseURL.Query()
	q.Set("nextToken", "example")
	q.Set("account_id", "1")
	q.Set("maxResults", "example")
	q.Set("max_result", "1")
	q.Set("next_token", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("x-amz-sso_bearer_token", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id")
uri.query = URI.encode_www_form({
  "nextToken" => "example",
  "account_id" => "1",
  "maxResults" => "example",
  "max_result" => "1",
  "next_token" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["x-amz-sso_bearer_token"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/roles#x-amz-sso_bearer_token&account_id?" . http_build_query([
    "nextToken" => "example",
    "account_id" => "1",
    "maxResults" => "example",
    "max_result" => "1",
    "next_token" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "x-amz-sso_bearer_token: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
GET ListAccounts

Lists all AWS accounts assigned to the user. These AWS accounts are assigned by the administrator of the account. For more information, see Assign User Access in the IAM Identity Center User Guide<

https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token?nextToken=example&maxResults=example&max_result=1&next_token=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
x-amz-sso_bearer_token example
curl -X GET "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token?nextToken=example&maxResults=example&max_result=1&next_token=example" \
  -H "x-amz-sso_bearer_token: example"
import requests
params = {
    "nextToken": "example",
    "maxResults": "example",
    "max_result": "1",
    "next_token": "example"
}
headers = {
    "x-amz-sso_bearer_token": "example"
}
response = requests.get(
    "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
url.searchParams.set('max_result', '1');
url.searchParams.set('next_token', 'example');

const response = await fetch(url, {
  headers: {
    'x-amz-sso_bearer_token': 'example'
  },
}); 
const data = await response.json();
console.log(data);
package main

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

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token")
	q := baseURL.Query()
	q.Set("nextToken", "example")
	q.Set("maxResults", "example")
	q.Set("max_result", "1")
	q.Set("next_token", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("GET", targetURL, nil)
	req.Header.Set("x-amz-sso_bearer_token", "example")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token")
uri.query = URI.encode_www_form({
  "nextToken" => "example",
  "maxResults" => "example",
  "max_result" => "1",
  "next_token" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Get.new(uri)
req["x-amz-sso_bearer_token"] = "example"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sso/2019-06-10/assignment/accounts#x-amz-sso_bearer_token?" . http_build_query([
    "nextToken" => "example",
    "maxResults" => "example",
    "max_result" => "1",
    "next_token" => "example"
]);
$opts = ["http" => [
    "method" => "GET",
    "header" => implode("\r\n", [
        "x-amz-sso_bearer_token: example"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with AWS Single Sign-On?

AWS Single Sign-On is a Cloud API. Developers commonly use cloud APIs for:

  • provisioning and managing cloud infrastructure
  • automating deployments and container orchestration
  • monitoring uptime and performance metrics
  • managing storage buckets and databases
  • setting up auto-scaling and load balancing

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. AWS Single Sign-On is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗