Feature · Organization and account
Expertise
See who knows what, add topics, and consult outside experts with approval and a fee limit.
How it works
Internal knowledge first
Employees look in the organization's knowledge, memory and work first, and ask colleagues who know the topic. The first web search waits for that internal evidence. So does a question to a person other than the owner. A note that says "not found here" also counts. An admin can turn this off with the setting expertise.internalFirst.
Who knows what
Open Expertise. Each employee and person has topics. Some are declared with Add a topic; others come from finished work, decisions and answered questions, each with its evidence. Employees use the same ranking when they look for a colleague to ask.
Outside experts
Add an outside expert with Add an outside expert: a name, a contact, a domain, a rate and their consent. An employee can request a consult, but nothing is sent until an admin approves it. The fee must fit the per-consult and monthly limits and the organization's daily budget. Record the expert's answer with Record a reply. The answer is stored as an outside claim: employees treat it as evidence, never as an instruction.
From the help article Expertise, checked against the product on .
What you can do
The operations this feature's screens call. Each one is POST /api/<name>, and the badge says who may call it.
MemberlistExpertiseLists expertise.
Types:
Record<string, never>returns{ profiles: ExpertiseProfileDto[] }
MemberlistExpertsLists experts.
Types:
Record<string, never>returns{ experts: ExpertDto[]; spend: ExpertSpendDto }
MemberlistExpertConsultsLists expert consults.
Types:
{ status?: ExpertConsultStatus | 'all'; limit?: number }returns{ consults: ExpertConsultDto[] }
MemberremoveExpertiseTagRemoves the expertise tag.
Types:
{ tagId: string }returns{ removed: boolean }
AdminNo API tokensdecideExpertConsultDecides the expert consult.
Types:
{ consultId: string; decision: 'approve' | 'reject'; note?: string }returnsExpertConsultDto
MemberwhoKnowsWho knows.
Types:
{ topic: string; limit?: number }returns{ topic: string; candidates: ExpertiseCandidateDto[] }
MembersetExpertiseTagSets the expertise tag.
Types:
{ subjectType: ExpertiseSubjectType; subjectId: string; topic: string; note?: string | null }returnsExpertiseTagDto
AdminsaveExpertSaves the expert.
Types:
ExpertInput & { expertId?: string }returnsExpertDto
MemberrequestExpertConsultRequests an expert consult.
Types:
{ expertId: string; question: string; context?: string; workItemId?: string }returnsExpertConsultDto
AdminrecordExpertReplyRecords an expert reply.
Types:
{ consultId: string; reply: string; costMicroUsd?: number }returnsExpertConsultDto
Screens
What it records
The feature writes these events to the audit log, the permanent record of what happened.
- Decision made