EQTY LabDocs

Unpin agent profile

Removes the operating profile pinned on an assessment, so its next submission names none. Profiles are optional, so an owner may take one back before submitting; a submission already registered keeps the profile it named. Only the Governance Service may call it, with organization-level certify_agents.

deletehttps://<host>/gov/v1/agent/profile/{assessment_uuid}
bash
curl --request DELETE \
  --url 'https://<host>/gov/v1/agent/profile/{assessment_uuid}' \
  --header 'Authorization: Bearer <token>'
javascript
const response = await fetch("https://<host>/gov/v1/agent/profile/{assessment_uuid}", {
  method: "DELETE",
  headers: {
    "Authorization": "Bearer <token>"
  }
});

console.log(response.status);
typescript
const response = await fetch("https://<host>/gov/v1/agent/profile/{assessment_uuid}", {
  method: "DELETE",
  headers: {
    "Authorization": "Bearer <token>"
  }
});
if (!response.ok) throw new Error(`${response.status} ${response.statusText}`);

console.log(response.status);
python
import requests

response = requests.delete(
    "https://<host>/gov/v1/agent/profile/{assessment_uuid}",
    headers={
        "Authorization": "Bearer <token>",
    },
)
response.raise_for_status()
print(response.status_code)
go
package main

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

func main() {
	req, err := http.NewRequest(http.MethodDelete, "https://<host>/gov/v1/agent/profile/{assessment_uuid}", 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://<host>/gov/v1/agent/profile/{assessment_uuid}"))
            .header("Authorization", "Bearer <token>")
            .method("DELETE", 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.Delete, "https://<host>/gov/v1/agent/profile/{assessment_uuid}");
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://<host>/gov/v1/agent/profile/{assessment_uuid}');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'DELETE',
    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://<host>/gov/v1/agent/profile/{assessment_uuid}")
request = Net::HTTP::Delete.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()
        .delete("https://<host>/gov/v1/agent/profile/{assessment_uuid}")
        .header("Authorization", "Bearer <token>")
        .send()
        .await?;

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

Authorizations

  • BearerAuth · HTTP bearer (JWT)

Parameters

Path parameters

NameTypeDescription
assessment_uuid
required
string<uuid>

The assessment graph

Responses

204No operating profile is pinned on the assessment, whether or not one was

401Missing or invalid bearer token

application/json
  • callstackobject
    Show properties

    object | null

  • errorstringrequired
Examplejson
{
  "callstack": {},
  "error": "string"
}

403Caller is not the Governance Service: certify_agents, which no user or API key holds, is required

application/json
  • callstackobject
    Show properties

    object | null

  • errorstringrequired
Examplejson
{
  "callstack": {},
  "error": "string"
}

404No assessment graph is registered under the UUID

application/json
  • callstackobject
    Show properties

    object | null

  • errorstringrequired
Examplejson
{
  "callstack": {},
  "error": "string"
}

500Internal error

application/json
  • callstackobject
    Show properties

    object | null

  • errorstringrequired
Examplejson
{
  "callstack": {},
  "error": "string"
}

503Auth Service unavailable

application/json
  • callstackobject
    Show properties

    object | null

  • errorstringrequired
Examplejson
{
  "callstack": {},
  "error": "string"
}