About
Operations for the people side of your organization: list teammates, manage team invitations, change roles or suspend and restore members, read live activity counts and team performance analytics, and manage the key owner’s own profile. All operations go through the developer API gateway — one endpoint, called byoperationId. If you haven’t set up a key yet, start with the
Developer API Overview.
Operations
Teammates and profile (READ + WRITE scopes)
listTeamMembers.searchTerm matches name/email substrings, a UUID, or a
complete US phone number. Partial phone numbers do not search the phone field.
Without a search term, the newest members come first. Roles are ADMIN,
MEMBER, ISA, and INDEPENDENT_OPERATOR; status is ACTIVE or SUSPENDED.
The roster does not expose other members’ capability grants. Read the key
owner’s own grants with getMyCapabilities.
Live activity counts (READ scope)
Both require
startDate (inclusive) and endDate (exclusive), as ISO
datetimes with an offset. Resolve calendar dates in
getMyProfile.resolvedTimezone before calling. Windows are limited to 93
calendar days; split a longer range. These are live reads, separate from the
nightly analytics below, and do not charge the analytics rate-limit bucket.
Without userIds, a key owner holding VIEW_ALL_PHONES gets the
organization-wide result; otherwise only their own activity is returned.
With that capability, userIds narrows the read to named members and
countOutboundTexts.otherSenders is null. Naming a teammate without the
capability is refused. Named members appear even when their counts are zero.
Member text counts exclude AI-employee and workflow sends even when those
use the member’s line.
For calls, connectedCalls means status COMPLETED; conversationCalls
requires a connected call lasting at least 120 seconds or having a transcript
or AI summary. talkSeconds sums connected-call durations, using zero when
duration is missing. These human-only counts can be lower than the nightly
analytics, which can credit AI-handled calls to a member.
Team members (ADMIN scope)
Team invites (ADMIN scope)
Team analytics (ADMIN scope)
Reporting reads over the same nightly snapshots as the web app’s Analytics
pages — each response carries the asOfDate it was computed. Both take an
optional period: SEVEN_DAYS | FOURTEEN_DAYS | THIRTY_DAYS |
YEAR_TO_DATE (default THIRTY_DAYS). The schema also lists SIXTY_DAYS
and THIS_MONTH, but these analytics operations reject them with BAD_USER_INPUT.
Everything is your organizationTeam operations are inherently org-scoped:
listTeammates and listTeamInvites
return only your organization’s people and invites, and createTeamInvite creates
under your org. revokeTeamInvite takes an invitation id, but a foreign one is
rejected — the service requires you to be an ADMIN of that invitation’s own
organization. Analytics run against your org only (the gateway injects the org id,
so it can’t be forged). See Authorization.