Get link

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.

GET /v1/dataroom/analytics/link/{linkId}

Addresshttps://api.hanzo.ai/v1/dataroom/analytics/link/{linkId}
MethodGET
Operationget_dataroom_analytics_link_by_linkid
AuthAuthorization: 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.

FieldInTypeRequiredDescription
linkIdpathstringyesLinkID is the link to report on.

Response

StatusBodyMeaning
200dataroom.dataroomLinkStatsok
defaultproblem-detailsrefused

200 body — 8 fields.

FieldInTypeAlwaysDescription
linkIdbodystring—LinkId is the link these counts are for.
pagesbodydataroom.dataroomPageStat[]—Pages is the per-page breakdown, in page order.
pages[].avgDurationbodyinteger (int64)—AvgDuration is totalDuration divided by views, rounded; 0 when unviewed.
pages[].pageNumberbodyinteger (int64)—PageNumber is the page these counts are for.
pages[].totalDurationbodyinteger (int64)—TotalDuration is the summed dwell measure reported for the page.
pages[].viewsbodyinteger (int64)—Views is how many times the page was viewed.
totalPageViewsbodyinteger (int64)—TotalPageViews is how many page views the link received.
totalViewsbodyinteger (int64)—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 := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.DataroomAPI.GetDataroomAnalyticsLinkByLinkid(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::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.setBearerToken(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"

MCP reaches dataroom through the dataroom tool, which names its 19 operations with its own verbs — this one among them, under a name only MCP 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"
         }
       }
     }'

Dataroom API · All Hanzo APIs · Interactive reference

Was this page useful?