List Credentials
curl --request POST \
--url https://api.thehyperstack.com/v1/credentials/all \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '
{
"page": 123,
"page_size": 123
}
'import requests
url = "https://api.thehyperstack.com/v1/credentials/all"
payload = {
"page": 123,
"page_size": 123
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({page: 123, page_size: 123})
};
fetch('https://api.thehyperstack.com/v1/credentials/all', 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://api.thehyperstack.com/v1/credentials/all",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'page' => 123,
'page_size' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.thehyperstack.com/v1/credentials/all"
payload := strings.NewReader("{\n \"page\": 123,\n \"page_size\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.thehyperstack.com/v1/credentials/all")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"page\": 123,\n \"page_size\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.thehyperstack.com/v1/credentials/all")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"page\": 123,\n \"page_size\": 123\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"total": 1,
"page": 1,
"page_size": 50,
"credentials": [
{
"document_id": "6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"document_url": "https://hyperstack.id/credential/6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"recipient": { "name": "Jane Doe", "email": "jane.doe@example.com" },
"group": { "title": "Cloud Security Fundamentals", "key": "Kq7Zp2LmX9aB", "code": "CSF-2026" },
"issued_on": "2026-03-15T10:30:04.903512Z",
"valid_until": null,
"metadata": { "custom_grade": "A" },
"status": "active",
"privacy": "public"
}
]
}
{
"success": false,
"error": "page must be a whole number of 1 or more, and page_size a whole number up to 500",
"error_code": "invalid_page"
}
{
"detail": "Invalid token or organization not found"
}
Credentials
List Credentials
POST
/
v1
/
credentials
/
all
List Credentials
curl --request POST \
--url https://api.thehyperstack.com/v1/credentials/all \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '
{
"page": 123,
"page_size": 123
}
'import requests
url = "https://api.thehyperstack.com/v1/credentials/all"
payload = {
"page": 123,
"page_size": 123
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({page: 123, page_size: 123})
};
fetch('https://api.thehyperstack.com/v1/credentials/all', 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://api.thehyperstack.com/v1/credentials/all",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'page' => 123,
'page_size' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.thehyperstack.com/v1/credentials/all"
payload := strings.NewReader("{\n \"page\": 123,\n \"page_size\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.thehyperstack.com/v1/credentials/all")
.header("Authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"page\": 123,\n \"page_size\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.thehyperstack.com/v1/credentials/all")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"page\": 123,\n \"page_size\": 123\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"total": 1,
"page": 1,
"page_size": 50,
"credentials": [
{
"document_id": "6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"document_url": "https://hyperstack.id/credential/6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"recipient": { "name": "Jane Doe", "email": "jane.doe@example.com" },
"group": { "title": "Cloud Security Fundamentals", "key": "Kq7Zp2LmX9aB", "code": "CSF-2026" },
"issued_on": "2026-03-15T10:30:04.903512Z",
"valid_until": null,
"metadata": { "custom_grade": "A" },
"status": "active",
"privacy": "public"
}
]
}
{
"success": false,
"error": "page must be a whole number of 1 or more, and page_size a whole number up to 500",
"error_code": "invalid_page"
}
{
"detail": "Invalid token or organization not found"
}
Description
Returns all published credentials of your organization, page by page, newest first. Drafts are not included.Headers
string
required
Your API key:
Bearer YOUR_API_KEY. Create a key in the Studio under Settings → Developers.Body Parameters
number
default:"1"
Page number. Starts at
1. Send a whole number, such as 2 or "2".number
default:"50"
How many credentials on each page, up to
500. A bigger value is cut to 500, and page_size in the response shows the size used.Success Response Fields
boolean
true when the request worked.number
Number of published credentials in your organization.
number
The page number of this response.
number
The page size used.
array[object]
The credentials on this page. Each has the same fields as View Credential, without
success.Show credential
Show credential
string
ID of the credential.
string
Public page of the credential.
object
The recipient’s
name and email.object
The group’s
title, key and code.string
Issue date (ISO 8601, UTC).
string | null
Expiry date, or
null when it never expires.object
Custom attribute values.
string
string
"public" or "private".Responses
{
"success": true,
"total": 1,
"page": 1,
"page_size": 50,
"credentials": [
{
"document_id": "6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"document_url": "https://hyperstack.id/credential/6f1c2a8e-3b4d-4e5f-9a7b-1c2d3e4f5a6b",
"recipient": { "name": "Jane Doe", "email": "jane.doe@example.com" },
"group": { "title": "Cloud Security Fundamentals", "key": "Kq7Zp2LmX9aB", "code": "CSF-2026" },
"issued_on": "2026-03-15T10:30:04.903512Z",
"valid_until": null,
"metadata": { "custom_grade": "A" },
"status": "active",
"privacy": "public"
}
]
}
{
"success": false,
"error": "page must be a whole number of 1 or more, and page_size a whole number up to 500",
"error_code": "invalid_page"
}
{
"detail": "Invalid token or organization not found"
}
curl -X POST "https://api.thehyperstack.com/v1/credentials/all" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"page": 1,
"page_size": 50
}'
Last modified on October 20, 2026
Was this page helpful?

