curl --request GET \
--url https://api.range.org/v2/cases/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v2/cases/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.range.org/v2/cases/{id}', 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.range.org/v2/cases/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$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://api.range.org/v2/cases/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.range.org/v2/cases/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v2/cases/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"workspace_id": "<string>",
"title": "<string>",
"status": "open",
"severity": "severe",
"source_type": "risk_screen",
"subject": {
"type": "address",
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f2bD28",
"network": "ethereum",
"tx_hash": "0xabc...",
"name": "<string>"
},
"created_at": "<string>",
"updated_at": "<string>",
"viewed": true,
"autopilot_status": "queued",
"autopilot_recommendation": "escalate",
"available_actions": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"label": "<string>",
"kind": "select",
"options": [
"open"
],
"requires_note": true
}
],
"comments": [
{
"id": "<string>",
"author": "analyst@range.org",
"body": "<string>",
"created_at": "<string>"
}
],
"autopilot": {
"run_id": "<string>",
"status": "queued",
"runs_count": 123,
"recommendation": "escalate",
"confidence": "low",
"headline": "<string>",
"report": {},
"started_at": "<string>",
"completed_at": "<string>"
},
"resolution": "dismissed",
"source_id": "<string>",
"client_entity_id": "550e8400-e29b-41d4-a716-446655440000",
"assignee": "<string>",
"created_by": "<string>",
"resolved_at": "<string>",
"counterparty_deleted": true,
"evidence_summary": {}
}Get case detail (comments + evidence summary)
curl --request GET \
--url https://api.range.org/v2/cases/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.range.org/v2/cases/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.range.org/v2/cases/{id}', 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.range.org/v2/cases/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$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://api.range.org/v2/cases/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.range.org/v2/cases/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.range.org/v2/cases/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"workspace_id": "<string>",
"title": "<string>",
"status": "open",
"severity": "severe",
"source_type": "risk_screen",
"subject": {
"type": "address",
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f2bD28",
"network": "ethereum",
"tx_hash": "0xabc...",
"name": "<string>"
},
"created_at": "<string>",
"updated_at": "<string>",
"viewed": true,
"autopilot_status": "queued",
"autopilot_recommendation": "escalate",
"available_actions": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"label": "<string>",
"kind": "select",
"options": [
"open"
],
"requires_note": true
}
],
"comments": [
{
"id": "<string>",
"author": "analyst@range.org",
"body": "<string>",
"created_at": "<string>"
}
],
"autopilot": {
"run_id": "<string>",
"status": "queued",
"runs_count": 123,
"recommendation": "escalate",
"confidence": "low",
"headline": "<string>",
"report": {},
"started_at": "<string>",
"completed_at": "<string>"
},
"resolution": "dismissed",
"source_id": "<string>",
"client_entity_id": "550e8400-e29b-41d4-a716-446655440000",
"assignee": "<string>",
"created_by": "<string>",
"resolved_at": "<string>",
"counterparty_deleted": true,
"evidence_summary": {}
}Authorizations
Authorization method required to allow user to access the api endpoints.
Path Parameters
The case id (uuid).
Response
open, in_review, resolved severe, high, medium, low risk_screen, sanctions_screen, alert_event, manual, regulatory_filing, tie_out_break, corridor_discrepancy, redemption, transaction_screening, counterparty_screening Show child attributes
Show child attributes
In list responses, whether this case is read for the caller.
Status of the latest Autopilot run on this case, or null when Autopilot has not touched it.
queued, running, completed, failed, skipped Recommendation of the latest Autopilot run, or null when it has none yet.
escalate, dismiss, review Actions supported by this source and status. Existing write permissions still apply. Resolving via set_status requires resolution=dismissed.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The latest Autopilot run on this case, or null. Its report is model output: render it as text, never as HTML.
Show child attributes
Show child attributes
dismissed, escalated, paid The client entity the case concerns (screening cases).
"550e8400-e29b-41d4-a716-446655440000"
Counterparty screening cases on one counterparty address or wallet: true when that counterparty entity or wallet account has since been deleted from the register. The case stays open. Absent on other cases.
What the case was opened on. A redemption case carries redemption_id, burn_time and deadline, linking it to GET /v2/redemptions/{id}.
Was this page helpful?