Get an app's organization blocklist state
curl --request GET \
--url https://api.onecli.sh/v1/org/apps/{provider}/blocklist \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onecli.sh/v1/org/apps/{provider}/blocklist"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onecli.sh/v1/org/apps/{provider}/blocklist', 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.onecli.sh/v1/org/apps/{provider}/blocklist",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.onecli.sh/v1/org/apps/{provider}/blocklist"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.onecli.sh/v1/org/apps/{provider}/blocklist")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onecli.sh/v1/org/apps/{provider}/blocklist")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"hostId": "<string>",
"ruleId": "<string>",
"enabled": true,
"custom": true,
"name": "<string>",
"hostPattern": "<string>",
"scope": "workspace"
}
]{
"error": "<string>"
}Apps
Get an app organization blocklist state
Returns the organization-wide blocklist for one app: each host pattern, whether it is enabled, whether it is custom, and the scope it applies to.
GET
/
org
/
apps
/
{provider}
/
blocklist
Get an app's organization blocklist state
curl --request GET \
--url https://api.onecli.sh/v1/org/apps/{provider}/blocklist \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onecli.sh/v1/org/apps/{provider}/blocklist"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onecli.sh/v1/org/apps/{provider}/blocklist', 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.onecli.sh/v1/org/apps/{provider}/blocklist",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.onecli.sh/v1/org/apps/{provider}/blocklist"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.onecli.sh/v1/org/apps/{provider}/blocklist")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onecli.sh/v1/org/apps/{provider}/blocklist")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"hostId": "<string>",
"ruleId": "<string>",
"enabled": true,
"custom": true,
"name": "<string>",
"hostPattern": "<string>",
"scope": "workspace"
}
]{
"error": "<string>"
}Returns the hosts of an app and whether each is blocked organization-wide. Use it before you change blocks. See Rules for other ways to restrict agents.
Availability: Cloud · Community (self-hosted) · Enterprise (self-hosted)
Authorizations
A workspace API key (oc_…) or organization API key (oc_org_…). Workspace-scoped endpoints called with an organization key also need X-Workspace-Id.
Path Parameters
App provider identifier (for example gmail, github, jira).
Response
Blocklist state
The backing rule ID, or null when the host has never been activated.
Always false. Blocking an arbitrary host is a policy rule now; this surface only toggles the hosts the app itself declares.
Where the backing rule lives. An organization rule overrides the workspace's view of that host.
Available options:
workspace, organization, null