Reports how one share link was actually read: total viewing sessions, total…
Reports how one share link was actually read: total viewing sessions, total page views, and per page the view count, the summed dwell measure and its…
GET /v1/dataroom/analytics/link/{linkId}
| Address | https://api.hanzo.ai/v1/dataroom/analytics/link/{linkId} |
| Method | GET |
| Operation | get_dataroom_analytics_link_by_linkid |
| Auth | Authorization: Bearer $HANZO_API_KEY |
Reports how one share link was actually read: total viewing sessions, total page views, and per page the view count, the summed dwell measure and its average.
The link is resolved in the caller's OWN tenant store, so another org's link id is not found — knowing a link id is enough to OPEN the room it shares, and never enough to read who has been reading it.
Request
1 field.
| Field | In | Type | Required | Description |
|---|---|---|---|---|
linkId | path | string | yes | LinkID is the link to report on. |
Response
| Status | Body | Meaning |
|---|---|---|
200 | dataroomLinkStats | ok |
200 body — 8 fields.
| Field | In | Type | Always | Description |
|---|---|---|---|---|
linkId | body | string | — | LinkId is the link these counts are for. |
pages | body | dataroomPageStat[] | — | Pages is the per-page breakdown, in page order. |
pages[].avgDuration | body | integer | — | AvgDuration is totalDuration divided by views, rounded; 0 when unviewed. |
pages[].pageNumber | body | integer | — | PageNumber is the page these counts are for. |
pages[].totalDuration | body | integer | — | TotalDuration is the summed dwell measure reported for the page. |
pages[].views | body | integer | — | Views is how many times the page was viewed. |
totalPageViews | body | integer | — | TotalPageViews is how many page views the link received. |
totalViews | body | integer | — | TotalViews is how many viewing sessions the link opened. |
Failure carries the platform error shape — see Errors.
Examples
hanzo dataroom analytics link get <linkId>import { Configuration, DataroomApi } from 'hanzoai';
const api = new DataroomApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getDataroomAnalyticsLinkByLinkid({ linkId: 'linkId' });from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import DataroomApi
client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = DataroomApi(client).get_dataroom_analytics_link_by_linkid(link_id='linkId')cfg := cloud.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := cloud.NewAPIClient(cfg)
resp, _, err := client.DataroomAPI.GetDataroomAnalyticsLinkByLinkid(context.Background()).Execute()
if err != nil {
return err
}use hanzo_cloud::apis::{configuration::Configuration, dataroom_api};
let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();
let result = dataroom_api::get_dataroom_analytics_link_by_linkid(&cfg, Default::default()).await?;import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.DataroomApi;
ApiClient client = new ApiClient();
client.setRequestInterceptor(b -> b.header("Authorization", "Bearer " + System.getenv("HANZO_API_KEY")));
var result = new DataroomApi(client).getDataroomAnalyticsLinkByLinkid();curl https://api.hanzo.ai/v1/dataroom/analytics/link/<linkId> \
-H "Authorization: Bearer $HANZO_API_KEY"The door reaches dataroom through the dataroom tool, which names its 17 operations with its own verbs — this one among them, under a name only the door declares. describe explains any of them:
curl -X POST https://api.hanzo.ai/v1/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe",
"arguments": {
"op": "get_dataroom_analytic_dataroom"
}
}
}'How is this guide?