curl --request GET \
--url https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/ \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/"
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/', 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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/",
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/"
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/")
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{
"follows_defaults": true,
"granted_verbs": [
"create_table_from_search"
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Read what a conversation may apply without asking
The verbs this chat conversation applies without asking, as they stand now, and whether that list is the workspace defaults (read live, so a change in Settings reaches it) or the conversation’s own, frozen the first time it allowed something. Anything on the list still asks when it is priced at or above the approval threshold, and a send always asks.
curl --request GET \
--url https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/ \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/"
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/', 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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/",
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/"
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.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/assistant/conversations/{conversation_id}/grants/")
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{
"follows_defaults": true,
"granted_verbs": [
"create_table_from_search"
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Authorizations
Path Parameters
Response
Successful Response
What one conversation may apply without asking: the list, and where it comes from.
Read for the shield in the chat header. follows_defaults tells the
header whether to show the list as the workspace's (change it in
Settings) or as this thread's own (take one back here, or return to the
defaults).
Whether the list is the workspace defaults, read live. False once the conversation has a list of its own, which a change in Settings no longer reaches.
The verbs this conversation applies without asking, in effect now.
The eight things an AI may do to a workspace.
Exactly eight, not sixty: today's cell-level actions all run against one cell, and building a table, adding contacts to a sequence and starting a search had no home at all. Anything new here is a product decision about what an assistant may touch, not a convenience for a planner.
create_table_from_search, add_column, run_column, enrich_rows, add_contacts_to_sequence, push_to_destination, call_endpoint, start_search Was this page helpful?