salesSignals
Requires permission analytics:signals:read.
The sales signals worklist: every customer in your scope with an attention list, ranked by money at stake and urgency. Needs analytics:signals:read.
Errors: a failed call returns a GraphQL errors entry, not a field on the result, and data may be null or partial. Read the entry's extensions.code and message; every shape and code is in the Error reference.
Example:
- GraphQL
- cURL
query SalesSignals($range: AnalyticsRangeInput!) {
salesSignals(range: $range) {
availableKeys
customersEvaluated
scope
total
truncated
rows {
partnerName
repName
headline
key
lastActivityAt
partnerId
}
}
}
curl -X POST "https://<api-host>/graphql" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
--data @- <<'EOF'
{
"query": "query SalesSignals($range: AnalyticsRangeInput!) {\n salesSignals(range: $range) {\n availableKeys\n customersEvaluated\n scope\n total\n truncated\n rows {\n partnerName\n repName\n headline\n key\n lastActivityAt\n partnerId\n }\n }\n}",
"variables": {
"range": {
"from": "2025-01-15T00:00:00Z",
"to": "2025-01-15T00:00:00Z"
}
}
}
EOF
Variables:
{
"range": {
"from": "2025-01-15T00:00:00Z",
"to": "2025-01-15T00:00:00Z"
}
}
Response:
{
"data": {
"salesSignals": {
"availableKeys": [
"string"
],
"customersEvaluated": 0,
"scope": "ALL",
"total": 0,
"truncated": true,
"rows": [
{
"partnerName": "string",
"repName": "string",
"headline": "string",
"key": "string",
"lastActivityAt": "2025-01-15T00:00:00Z",
"partnerId": "id"
}
]
}
}
}
salesSignals(
filter: SalesSignalsFilterInput
page: SalesSignalsPageInput
range: AnalyticsRangeInput!
): SalesSignals!
Arguments
salesSignals.filter ● SalesSignalsFilterInput input
Optional filter that narrows the customers evaluated.
salesSignals.page ● SalesSignalsPageInput input
Optional paging for the worklist.
salesSignals.range ● AnalyticsRangeInput! non-null input
The date range and, optionally, the visibility scope.
Type
SalesSignals object
The Sales signals list: findings across customers.