curl --request GET \
--url https://api.affinity.co/v2/suggested-field-updates \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.affinity.co/v2/suggested-field-updates"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.affinity.co/v2/suggested-field-updates', 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.affinity.co/v2/suggested-field-updates",
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.affinity.co/v2/suggested-field-updates"
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.affinity.co/v2/suggested-field-updates")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.affinity.co/v2/suggested-field-updates")
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{
"data": [
{
"id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"status": "open",
"subject": {
"type": "note",
"id": 6789
},
"suggestionCount": 3,
"pendingSuggestionCount": 3,
"createdAt": "2026-10-06T12:00:00Z",
"resolvedAt": null
},
{
"id": "9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d",
"status": "pending",
"subject": {
"type": "note",
"id": 6790
},
"suggestionCount": 0,
"pendingSuggestionCount": 0,
"createdAt": "2026-10-06T12:05:00Z",
"resolvedAt": null
}
],
"pagination": {
"prevUrl": null,
"nextUrl": null
}
}{
"errors": [
{
"code": "bad-request",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "authorization",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "not-found",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "authentication",
"message": "<string>"
}
]
}Get all suggested field update sets
| ⚠️ This endpoint is currently in BETA |
|---|
The endpoint returns 404 when AI agents access is not enabled for the organization.
Paginate through your suggested field update sets, newest first. Items omit suggestions; retrieve a set to get them.
Sets generated automatically for a new note belong to the note’s creator. Sets whose subject is not accessible to you are not returned.
Sets where the agent found nothing to suggest are not listed. Retrieving such a set by id reports it as done.
You can filter sets using the filter query parameter. Combine conditions with & (AND).
| Property Name | Type | Allowed Operators | Examples |
|---|---|---|---|
status | enum | = | status=open, status=pending |
subject.type | enum | = | subject.type=note, subject.type=meeting |
subject.id | int64 | = | subject.id=6789 |
createdAt | datetime | >= | createdAt>=2026-10-01T00:00:00Z |
createdAt supports a lower bound only.
curl --request GET \
--url https://api.affinity.co/v2/suggested-field-updates \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.affinity.co/v2/suggested-field-updates"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.affinity.co/v2/suggested-field-updates', 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.affinity.co/v2/suggested-field-updates",
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.affinity.co/v2/suggested-field-updates"
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.affinity.co/v2/suggested-field-updates")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.affinity.co/v2/suggested-field-updates")
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{
"data": [
{
"id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"status": "open",
"subject": {
"type": "note",
"id": 6789
},
"suggestionCount": 3,
"pendingSuggestionCount": 3,
"createdAt": "2026-10-06T12:00:00Z",
"resolvedAt": null
},
{
"id": "9a8b7c6d-5e4f-4a3b-9c2d-1e0f9a8b7c6d",
"status": "pending",
"subject": {
"type": "note",
"id": 6790
},
"suggestionCount": 0,
"pendingSuggestionCount": 0,
"createdAt": "2026-10-06T12:05:00Z",
"resolvedAt": null
}
],
"pagination": {
"prevUrl": null,
"nextUrl": null
}
}{
"errors": [
{
"code": "bad-request",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "authorization",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "not-found",
"message": "<string>"
}
]
}{
"errors": [
{
"code": "authentication",
"message": "<string>"
}
]
}Authorizations
A static Affinity API key, presented as a bearer token.
Query Parameters
Cursor for the next or previous page
"ICAgICAgYmVmb3JlOjo6Nw"
Number of items to include in the page
1 <= x <= 100Filter sets using Affinity Filtering Language
Was this page helpful?