---
title: "network.presence.read · OpenVibe.Services"
canonical: "https://openvibe.services/docs/capabilities/network.presence.read"
updated: null
---

# network.presence.read · OpenVibe.Services

HTML: [network.presence.read · OpenVibe.Services](https://openvibe.services/docs/capabilities/network.presence.read)

# `network.presence.read`

Generated at 2026-11-13 06:25:48 UTC from [`openvibe-contracts v0.419.0`](https://github.com/OpenVibers/OpenVibe.Contracts/tree/v0.419.0) and [`openvibe-sdk v0.161.0`](https://github.com/OpenVibers/OpenVibe.SDK/tree/v0.161.0).

Not grantable to apps (active, first-party).

Read the public presence of people on behalf of one person: the online/away/dnd/offline state, status line and emoji, and whether they are streaming on OpenVibe.Live. It answers only for people that person follows or has a DM with (and themselves); invisible, show\_status off and strangers are never disclosed, and last seen is never returned. First-party services only (Chat draws the dots in its DMs and member lists); never grantable to an app or an agent.

- Owner: network (token audience `openvibe.network`)
- Version: 1.0
- Status: active
- Visibility: first-party
- Resource constraints: none
- Quota class: presence-read
- Permissions: presence:read
- Input: [common.no-body@1](/docs/contracts/common.no-body)
- Output: network.presence-list-result@1
- Events: network.presence.changed
- Implemented by: - `GET /internal/presence?for=usr_…&subjects=usr_…,usr_…`

[These routes in the API explorer](/docs/api/network#cap-network.presence.read)
