Get record timeline
curl --request GET \
--url https://app.nex.ai/api/developers/v1/records/{record_id}/timeline \
--header 'Authorization: <api-key>'import requests
url = "https://app.nex.ai/api/developers/v1/records/{record_id}/timeline"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.nex.ai/api/developers/v1/records/{record_id}/timeline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.nex.ai/api/developers/v1/records/{record_id}/timeline"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"id": "5000",
"resource_type": "task",
"resource_id": "800",
"event_type": "created",
"event_payload": {
"task": {
"id": "800",
"title": "Follow up",
"priority": "high"
}
},
"event_timestamp": "2024-01-15T10:00:00Z",
"created_by": "developer_api",
"created_by_id": "42",
"is_aggregated": false,
"children": []
}
],
"has_next_page": true,
"next_cursor": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}Timeline
Get record timeline
Retrieves the activity timeline for a specific record, including tasks, notes, attribute changes, and relationship events. Supports cursor-based pagination.
GET
/
v1
/
records
/
{record_id}
/
timeline
Get record timeline
curl --request GET \
--url https://app.nex.ai/api/developers/v1/records/{record_id}/timeline \
--header 'Authorization: <api-key>'import requests
url = "https://app.nex.ai/api/developers/v1/records/{record_id}/timeline"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://app.nex.ai/api/developers/v1/records/{record_id}/timeline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.nex.ai/api/developers/v1/records/{record_id}/timeline"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"id": "5000",
"resource_type": "task",
"resource_id": "800",
"event_type": "created",
"event_payload": {
"task": {
"id": "800",
"title": "Follow up",
"priority": "high"
}
},
"event_timestamp": "2024-01-15T10:00:00Z",
"created_by": "developer_api",
"created_by_id": "42",
"is_aggregated": false,
"children": []
}
],
"has_next_page": true,
"next_cursor": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}{
"code": 123,
"message": "<string>"
}Authorizations
API key for authentication (format: "Bearer YOUR_API_KEY")
Path Parameters
Record ID
Query Parameters
Max events to return (1-100, default: 50)
Pagination cursor from previous response
Response
Timeline events
Hide child attributes
Hide child attributes
Type of resource
Available options:
entity, task, note, list_item, attribute Type of event
Available options:
created, updated, deleted, archived Only the relevant field is populated based on resource_type
Hide child attributes
Hide child attributes
Last modified on February 17, 2026
⌘I