Skip to main content

GET /users

List the account's users

The company's users — this is what turns a user id or an extension into a person.

Scopeusers:read
Role permissionUsers
CostFree

Personal data. Names, emails and mobile numbers.

Sorted by last name, then first name, then id — stable between calls, so diffing two responses is meaningful.

This is not an address book. It returns the company's users only, never anyone's personal contacts.

Responses

200

The users the credential may see.

FieldTypeDescription
[].idintegerThe user's id on the phone system. This is the value every other endpoint means by a user id — the entries in SMSLine.userIds are these ids.
[].usernamestringThe login this person signs in with. Empty for a user created without portal access.
[].firstNamestring
[].lastNamestring
[].titlestringJob title as entered in the portal. Free text.
[].emailstring
[].mobilestringThe personal/cell number on the user's profile — not a number on the account. May be blank.
[].companystringThe per-user company override, falling back to the account's own name — so it is always populated and always a name a caller would recognize.
[].timeZonestringThe user's IANA zone. Every timestamp on this surface is UTC; this is what turns one into the wall-clock time this person saw.
[].extensionstringThe dial-by-name extension — the digits the auto-attendant matches for this person. Not necessarily a phone extension they can be reached on; see extensions.
[].extensionsstring[]The PBX extensions assigned to this user — what a colleague dials internally.
[].linesstring[]The SIP lines (devices/registrations) the user owns.
[].numbersstring[]The account DIDs owned by this user. A number with no owner appears on nobody.
[].voicemailsstring[]The mailbox names the user owns.
{
"data": [
{
"id": 481920,
"username": "dspencer",
"firstName": "Dana",
"lastName": "Spencer",
"title": "Support Lead",
"email": "dana@acme.example",
"mobile": "13475550188",
"company": "Acme Inc",
"timeZone": "America/New_York",
"extension": "204",
"extensions": [
"204"
],
"lines": [
"acme-204"
],
"numbers": [
"12125550188"
],
"voicemails": [
"204"
]
}
]
}

Errors

StatusMeaning
401unauthenticated — no credential, or one that is invalid, revoked or expired. The WWW-Authenticate header names the scope the endpoint wanted.
403Two different failures share this status, and the type tells them apart:
500internal_error — something failed on our side. For a send, nothing was charged, guaranteed, which is what makes a retry safe.

See Errors for the full catalog and what to do about each.

Example

curl -X GET 'https://api.account.telebroad.com/api/public/v1/users' \
-H "Authorization: Bearer $TB_KEY"

Try it in the playground →