Projects the Network's people with their composable role badges and provenance.
Returns every participant that holds any live relationship in the Network — an active access grant, an active operator membership, or a consult-allowed member edge — with their additive role badges. Each badge exposes the source relationship (access grant / operator membership / member relation) that granted it, so the UI can render "why" and offer a narrow, badge-scoped revoke. Pass badge to filter to one composable view (`CUSTOMER`, `INTERNAL`, `OBSERVER`, `OPERATOR`, `ADVISOR`, or `CHANNEL`); the returned counts always reflect the full projection so every tab shows its total.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The owning Network id.
uuidThe tenant identifier
Query Parameters
Optional composable-view filter; omit for the full projection.
"UNSPECIFIED" | "CUSTOMER" | "INTERNAL" | "OBSERVER" | "OPERATOR" | "ADVISOR" | "CHANNEL"Optional case-insensitive substring filter on the participant display name.
The maximum number of items to return per page
int32int32Opaque pagination token returned by an external service. Pass it back unchanged rather than interpreting it as an offset.
Optional served-status filter (SERVED_BY_AI, HUMANS_ONLY, or BLOCKED) — who, if anyone, answers this person on their next inbound message. ANDed with badge, so "customers nobody has turned on yet" is one request. Any value implies a served grant, so operator-, observer-, and advisor-only people drop out. Omit for every status.
"UNSPECIFIED" | "SERVED_BY_AI" | "HUMANS_ONLY" | "BLOCKED"Response Body
curl -X GET "https://api.fruxon.com/v1/tenants/string/networks/497f6eca-6276-4993-bfeb-53cbbbba6f08/people"{
"items": [
{
"participantId": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"kind": "PERSON",
"audience": "UNKNOWN",
"tier": "CURATED",
"area": "string",
"avatarFileId": "string",
"disabledAt": 0,
"expertise": [
"string"
],
"accessStatus": "ACTIVE",
"relationshipKey": "SERVED",
"removedAt": 0,
"agentMode": "ON",
"escalationOverride": {
"tiers": [],
"mode": "UNSPECIFIED",
"allOperatorParticipantIds": []
},
"badges": []
}
],
"nextPageToken": "string",
"totalCount": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Renames an Application, or changes its slug.
Updates the Application's operator-facing display name and/or its slug. Applies immediately and everywhere the name is rendered — the name is never copied into other rows. A rename leaves the slug alone: the slug is what every shared link is built from, so it changes only when the request names it, and doing so breaks links built on the old one. A slug already in use in the tenant is a 409. Ownership of the Agents and Workflows the Application holds is immutable and cannot be changed here. The Default Application can be renamed: it is the default because of its flag, not because of its name.
Creates a new, non-default Network.
Creates an operator-facing Network (never the Default). The new Network starts empty; Agents and Workflows select it when they are created. Applies immediately. A slug is derived from the name unless the request supplies one. A supplied slug is used exactly as given — it is the link the caller is choosing — so one already in use in the tenant is a 409 rather than a quietly suffixed alternative. Archived Applications still hold their slugs.