Model MatchHelp

CRM

Per-user, per-day activity counts with previous-period totals

getapi.modelmatch.com/v1/crm/reports/activity

Human actions only, attributed to the actor (never the record owner). previousTotals covers the equal-length period immediately before from. Ratios (connect rate, show rate, win rate) are client-side divisions.

Authorization

x-api-keystringrequired

API key or OAuth token. See Authentication.

Query parameters

frominteger | null

Inclusive start of the range (epoch ms).

tointeger | null

Exclusive end of the range (epoch ms).

userIdstring

Omit = the caller's own metrics. team = one entry per workspace member (owner/admin only). A member id = that member (owner/admin only).

tzstring

IANA zone the day buckets are cut in (default America/New_York).

listIdstring

Scope every metric to that list's members and vocabulary. A 1-element alias for listIds — do not pass both.

listIdsstring

CSV of list ids to scope to (union, not intersection — a record that's a member of more than one selected list is still counted once in every distinct-record metric and once per day-bucket). A list id the caller can't see is silently dropped, not an error. Do not pass alongside listId.

Responses

200objectThe activity report.
Show attributes
dataobjectrequired
Show child attributes
fromnumberrequired
tonumberrequired
usersobject[]required
Show child attributes
daysobject[]required

Ascending by date; all-zero days omitted (fill gaps client-side).

previousTotalsobjectrequired
recordsContactedintegerrequired

Distinct records with ≥1 outreach touch in the period. Totals-only — never per day (distincts don't sum).

totalsobjectrequired
userIdstringrequired
400objectValidation error
401objectUnauthorized
403objectForbidden (authenticated, but missing required context — e.g. no active organization)
404objectNot found
413objectResponse payload too large — detail endpoint capped to fit Lambda response limits
503objectSearch timed out or the cluster is overloaded — retry after `Retry-After` seconds.