Export bounded contact pages
curl --request POST \
--url https://api.sendrealm.com/exports/contacts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Sendrealm-Project-Id: <x-sendrealm-project-id>' \
--data '
{
"limit": 100,
"after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fields": [
"first_name",
"last_name"
]
}
'const options = {
method: 'POST',
headers: {
'X-Sendrealm-Project-Id': '<x-sendrealm-project-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
limit: 100,
after: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
fields: ['first_name', 'last_name']
})
};
fetch('https://api.sendrealm.com/exports/contacts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sendrealm.com/exports/contacts"
payload = {
"limit": 100,
"after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fields": ["first_name", "last_name"]
}
headers = {
"X-Sendrealm-Project-Id": "<x-sendrealm-project-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"status": 123,
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"fields": {},
"error_code": "<string>"
}
],
"metadata": {
"has_more": true,
"next": "<string>",
"limit": 50
}
}{
"status": 123,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<string>",
"issues": [
{
"code": "<string>",
"path": "<string>",
"message": "<string>"
}
]
}
}Agent data operations API
Export bounded contact pages
POST
/
exports
/
contacts
Export bounded contact pages
curl --request POST \
--url https://api.sendrealm.com/exports/contacts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-Sendrealm-Project-Id: <x-sendrealm-project-id>' \
--data '
{
"limit": 100,
"after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fields": [
"first_name",
"last_name"
]
}
'const options = {
method: 'POST',
headers: {
'X-Sendrealm-Project-Id': '<x-sendrealm-project-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
limit: 100,
after: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
fields: ['first_name', 'last_name']
})
};
fetch('https://api.sendrealm.com/exports/contacts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.sendrealm.com/exports/contacts"
payload = {
"limit": 100,
"after": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fields": ["first_name", "last_name"]
}
headers = {
"X-Sendrealm-Project-Id": "<x-sendrealm-project-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"status": 123,
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"fields": {},
"error_code": "<string>"
}
],
"metadata": {
"has_more": true,
"next": "<string>",
"limit": 50
}
}{
"status": 123,
"error": {
"code": "<string>",
"message": "<string>",
"details": "<string>",
"issues": [
{
"code": "<string>",
"path": "<string>",
"message": "<string>"
}
]
}
}Requires the opt-in imports/data rollout and an explicitly authorized project. See agent data workflows for review, idempotency, export pagination, and suppression safeguards.
Authorizations
Integration key for backend workloads, or a scoped personal key (sr_user_) for account discovery and supported project operations. MCP accepts only personal keys.
Headers
Body
application/json
Maximum records in this page; response bytes may shorten it. Always preserve metadata.next.
Required range:
1 <= x <= 500Opaque next cursor from the previous export page; omit for the first page.
Explicit profile keys to export. ID and email are always included. Omitted keys are not exported.
Required array length:
1 - 100 elementsRequired string length:
1 - 100