Zernio
APIFor you
Zernio
APIFor you
API Reference

Posting Analytics

Cross-platform

Get post analyticsGETAnalytics changed since a cursorGETSync an external postPOSTGet post analytics timelineGETGet daily aggregated metricsGETGet best times to postGETGet content performance decayGETGet frequency vs engagementGETGet follower statsGET

Instagram

Get Instagram insightsGETGet Instagram follower historyGETGet Instagram demographicsGET

YouTube

Get YouTube channel insightsGETGet YouTube daily viewsGETGet YouTube video retention curveGETGet YouTube demographicsGET

LinkedIn

Get LinkedIn aggregate statsGETGet LinkedIn org analyticsGETGet LinkedIn post statsGETGet LinkedIn post reactionsGET

Facebook

Get Facebook Page insightsGETGet Facebook post reactionsGETGet Facebook post monetization earningsGET

TikTok

Get TikTok account-level insightsGET

Google Business

Get Google Business Profile performance metricsGETGet Google Business Profile search keywordsGET

Other

Get an analytics dashboardGETGet Facebook Page demographicsGETList Google Analytics (GA4) dimensions and metricsGETGet Instagram online followersGETGet LinkedIn organization follower demographicsGETList the posts a Facebook Page is tagged inGETList visitor posts on a Facebook PageGETRun a Google Analytics (GA4) realtime reportPOSTRun a Google Analytics (GA4) reportPOST
Dashboard
OverviewPlatformsAPI ReferenceResources
Posting Analytics

Get TikTok account-level insights

Returns account-level TikTok insights from /v2/user/info/ (live) plus historical time series joined from Zernio's daily snapshotter (AccountStats).

Response shape matches /v1/analytics/instagram/account-insights. Max 89 days, defaults to last 30 days. Requires the Analytics add-on and the user.info.stats scope on the account (412 if missing).

Scope intentionally narrow: this ACCOUNT-level endpoint exposes only the four counter metrics below. These account-level figures are not on any public TikTok API, for any account type:

  • account-level impressions / reach
  • follower inflow / outflow breakdown
  • account-level watch time and audience demographics

TikTok's Research API doesn't expose them either, and is restricted to non-commercial academic use per TikTok's eligibility policy.

PER-VIDEO is a different story on the Business lane. An account connected through the TikTok for Business app reports profile views, website clicks, follows, full-watched rate, watch time, impression sources, viewer types and viewer countries per video on GET /v1/analytics?postId=..., roughly 24-48h after publishing and only for posts active in the last 7 days. Accounts on the original TikTok integration get the basic counters there (views, likes, comments, shares) and zeros for the rest; they must reconnect through the Business app.


GET
/v1/analytics/tiktok/account-insights

Authorization

bearerAuth
AuthorizationBearer <token>

API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.

In: header

Query Parameters

accountId*string

The Zernio SocialAccount ID for the TikTok account.

metrics?string

Comma-separated list. Defaults to "follower_count,likes_count,video_count,followers_gained,followers_lost".

Live from /v2/user/info/ (requires user.info.stats scope):

  • follower_count (cumulative; time series joined from AccountStats)
  • following_count (cumulative; time series joined from AccountStats.metadata)
  • likes_count (cumulative; time series joined from AccountStats.metadata)
  • video_count (cumulative; time series joined from AccountStats.metadata)

Zernio-synthesized:

  • followers_gained (sum of positive daily follower deltas)
  • followers_lost (sum of absolute negative daily deltas)
fromDate?string

Start date (YYYY-MM-DD). Defaults to 30 days ago.

Formatdate
toDate?string

End date (YYYY-MM-DD). Defaults to today.

Formatdate
since?string
Deprecated

Alias of fromDate, kept for existing callers

Formatdate
until?string
Deprecated

Alias of toDate, kept for existing callers

Formatdate
metricType?string

"total_value" returns the latest cumulative counter value. "time_series" returns daily values joined from AccountStats snapshots.

Default"total_value"

Value in

  • "time_series"
  • "total_value"

Response Body

application/json

application/json

import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.analytics.getTikTokAccountInsights({  query: {    accountId: 'account_abc123',  },});console.log(data);
{  "success": true,  "accountId": "string",  "platform": "facebook",  "dateRange": {    "since": "2019-08-24",    "until": "2019-08-24"  },  "metricType": "time_series",  "breakdown": "string",  "metrics": {    "property1": {      "total": 0,      "values": [        {          "date": "2019-08-24",          "value": 0        }      ],      "breakdowns": [        {          "dimension": "string",          "value": 0        }      ],      "unit": "micro_amount",      "currency": "string"    },    "property2": {      "total": 0,      "values": [        {          "date": "2019-08-24",          "value": 0        }      ],      "breakdowns": [        {          "dimension": "string",          "value": 0        }      ],      "unit": "micro_amount",      "currency": "string"    }  },  "unavailableMetrics": [    {      "metric": "string",      "reason": "not_enrolled",      "message": "string"    }  ],  "dataDelay": "string"}
Was this page helpful?

Get Facebook post monetization earnings

Returns lifetime monetization earnings for ONE Facebook post, read live from Meta on every request. Requires the Analytics add-on. Earnings are CUMULATIVE since the post was published, not earnings within a date range, so this endpoint takes no since/until and the totals must not be summed across dates or across posts. Page-level daily earnings live on /v1/analytics/facebook/page-insights. A post on a Page that is not enrolled in monetization, or that earned nothing, returns "total": 0 rather than an error: Meta does not distinguish the two. A metric Meta returned no bucket for at all is reported in "unavailableMetrics" and omitted from "metrics", never as a 0. Amounts are the platform's raw numbers in the stated "unit" and are never rescaled by Zernio. Breakdown dimensions are not exposed and a "breakdown" param is rejected with 400. So are "since", "until", "period", and "metricType": scoping this endpoint to a window is not possible, and silently returning the lifetime total for one would let a caller sum a year of weekly requests into a figure ~52x the post's real earnings.

Get Google Business Profile performance metrics

Returns daily performance metrics for a Google Business Profile location. Metrics include impressions (Maps/Search, desktop/mobile), website clicks, call clicks, direction requests, conversations, bookings, and food orders. Data may be delayed 2-3 days. Max 18 months of historical data. Requires the Analytics add-on.