EQTY LabDocs

List a program's reviewers

List the members currently assigned to review a Governance Program's assessments, across every version of it, in the order they were assigned. With includeRemoved, list every assignment ever made, ended ones included. Readable by program administrators and the program's current reviewers

gethttps://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers
bash
curl --request GET \
  --url 'https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers' \
  --header 'Authorization: Bearer <token>'
javascript
const response = await fetch("https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers", {
  method: "GET",
  headers: {
    "Authorization": "Bearer <token>"
  }
});

const data = await response.json();
typescript
interface ProgramReviewer {
  assignedAt?: string;
  assignedBy?: string;
  organizationId?: number;
  programSlug?: string;
  removedAt?: string;
  removedBy?: string;
  userId?: string;
  uuid?: string;
}

const response = await fetch("https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers", {
  method: "GET",
  headers: {
    "Authorization": "Bearer <token>"
  }
});
if (!response.ok) throw new Error(`${response.status} ${response.statusText}`);

const data: ProgramReviewer[] = await response.json();
python
import requests

response = requests.get(
    "https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers",
    headers={
        "Authorization": "Bearer <token>",
    },
)
response.raise_for_status()
print(response.json())
go
package main

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

func main() {
	req, err := http.NewRequest(http.MethodGet, "https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("Authorization", "Bearer <token>")

	res, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer res.Body.Close()

	data, err := io.ReadAll(res.Body)
	if err != nil {
		panic(err)
	}
	fmt.Println(res.Status, string(data))
}
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Example {
    public static void main(String[] args) throws Exception {
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers"))
            .header("Authorization", "Bearer <token>")
            .method("GET", HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = HttpClient.newHttpClient()
            .send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.statusCode() + " " + response.body());
    }
}
csharp
using System.Net.Http.Headers;

using var client = new HttpClient();
using var request = new HttpRequestMessage(HttpMethod.Get, "https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", "<token>");

using var response = await client.SendAsync(request);
Console.WriteLine($"{(int)response.StatusCode} {await response.Content.ReadAsStringAsync()}");
php
<?php

$ch = curl_init('https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer <token>',
    ],
    CURLOPT_RETURNTRANSFER => true,
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
echo $status . " " . $response . PHP_EOL;
ruby
require "net/http"

uri = URI("https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers")
request = Net::HTTP::Get.new(uri)
request["Authorization"] = "Bearer <token>"

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
  http.request(request)
end
puts "#{response.code} #{response.body}"
rust
// Cargo.toml dependencies: reqwest, tokio (features "full")

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let response = reqwest::Client::new()
        .get("https://localhost:10001/api/v1/organizations/{orgId}/programs/{programId}/reviewers")
        .header("Authorization", "Bearer <token>")
        .send()
        .await?;

    println!("{} {}", response.status(), response.text().await?);
    Ok(())
}

Authorizations

  • BearerAuth · API key in header "Authorization" — Type "Bearer" followed by a space and JWT token.

Parameters

Path parameters

NameTypeDescription
orgId
required
string

Organization ID or UUID (urn:uuid optional)

programId
required
string

The program as slug:agent-baseline, or any of its versions by UUID (urn:uuid optional), slug:agent-baseline@1.0.0, or urn:cid:<manifest cid>

Query parameters

NameTypeDescription
includeRemovedboolean

Include ended assignments

Responses

200Reviewer assignments

application/json

Array of core.ProgramReviewer

  • assignedAtstring<date-time>read-only
  • assignedBystringread-only

    User ID of the administrator who assigned them

  • organizationIdintegerread-only
  • programSlugstringread-only

    The program, as the slug its versions share

  • removedAtstring<date-time>read-only
  • removedBystringread-only

    Set once the assignment has ended

  • userIdstringread-only

    The reviewer's user ID

  • uuidstringread-only

    urn:uuid form

Examplejson
[
  {}
]

400Bad request - Invalid organization ID or program ID

application/json
  • errorstring
Examplejson
{
  "error": "Invalid request body"
}

401Unauthorized - Authentication required

application/json
  • errorstring
Examplejson
{
  "error": "Invalid request body"
}

403Forbidden - Neither a program administrator nor one of its reviewers

application/json
  • errorstring
Examplejson
{
  "error": "Invalid request body"
}

404Program not found

application/json
  • errorstring
Examplejson
{
  "error": "Invalid request body"
}

500Internal server error

application/json
  • errorstring
Examplejson
{
  "error": "Invalid request body"
}