Add known contacts
Owners and admins only. Each value is an email address, a domain (client.example or @client.example) or a phone number with country code; addresses and domains are kept in lower case, numbers as + and digits. Values already kept are left as they are, and only the new ones come back.
sessionbetter-auth.session_token<token>Set by POST /api/auth/sign-in/email.
ws*stringThe workspace id (from GET /api/me).
application/json- body
values*array<>Email addresses (ali@client.com), domains for everyone there (client.com) or phone numbers with country code (+971501234567). Ones already kept are left as they are.
1 <= items <= 5000The contacts newly kept.
application/jsoncurl -X POST 'https://app.useroster.work/api/workspaces/string/known-contacts' \ -H 'Content-Type: application/json' \ -d '{ "values": [ "string" ]}'{ "added": [ { "id": "3f1c…", "value": "ali@client.example", "kind": "email", "source": "added", "createdAt": "2026-11-06T09:00:00.000Z" } ]}Known contacts GET
People outside the team the workspace is already in touch with outside Roster: email addresses, domains (everyone there, subdomains included) and phone numbers. A hire's first email, text or help-desk reply to one of them doesn't wait for approval. `source` is `added` (by someone here) or `approval` (added when someone approved a first message to them). Newest first.
Forget a known contact DELETE
Owners and admins only. A hire's first message to them waits for approval again, unless the connection has been in touch with them already.