List how each post did
Every post published in the period on the team's accounts, made in Rizamo or anywhere else, deleted ones included, with its numbers so far: its lifetime totals as Rizamo last read them, every one its network gives in metrics, and its details (rates, traffic sources, viewer types, retention, viewers) where its network gives them. Sorted by views unless asked otherwise, a page at a time. Days are the profile's, and a period of days ends yesterday, as in Analytics overview.
apiKeyAuthorizationBearer <token>An API key from the web app, under Developers. It starts with rz_live_.
days?integerThe last this many complete days, up to yesterday in timeZone: today is not over, so it is left out. 30 when neither this nor from is given.
1 <= value <= 365from?stringInstead of days: the first day, such as 2026-10-01.
dateto?stringWith from: the last day, yesterday when left out (today when from is today). Up to 365 days in all.
dateprofileId?stringOnly this profile's (prof_): one brand or client, from List profiles.
length <= 100timeZone?stringThe time zone the days are in. Left out: the profile's with profileId; else the one every profile in reach shares, or UTC when they differ.
length <= 64fields?Only posts made in Rizamo whose custom fields have these values, for example fields[campaign]=Winter menu: posts made in the networks' own apps have no fields, so they are left out, and so are followers.
sort?stringWhat to sort by. Posts without that number (a network that does not give it, one it hides, one not read yet) come last.
"views""views""reach""engagements""engagementRate""publishedAt"order?stringdesc (the default): the highest first. asc: the lowest first.
"desc""desc""asc"limit?integerHow many to return, up to 100: 25 when left out.
1 <= value <= 10025offset?integerHow many to skip: the next page starts at offset plus limit.
0 <= value <= 90071992547409910OK
application/json- response
from*stringdateto*stringdatetimeZone*stringThe time zone the days are in.
total*integerHow many posts the period has in all.
-9007199254740991 <= value <= 9007199254740991items*array<>curl -X GET 'https://api.rizamo.com/v1/analytics/posts?days=30&profileId=prof_01m40k9k80fxd8cvng8derm7g9&limit=10'{ "from": "2026-10-06", "to": "2026-11-04", "timeZone": "Europe/Lisbon", "total": 1, "items": [ { "networkPostId": "npost_01m4fkyer0em9939e5rz4f89v7", "postId": "post_01m47bjzm0edmtk7w6gp7br39v", "accountId": "acc_01m423bp00fz39kp5pc7m42tsw", "network": "instagram", "format": "feed", "caption": "Winter menu is here: spiced orange latte and our first pastel de nata of the season. Open from 8 tomorrow.", "url": "https://www.instagram.com/p/DQx8kLmCa1T/", "thumbnailUrl": "https://media.rizamo.com/thumbnails/npost_01m4fkyer0em9939e5rz4f89v7.jpg?exp=1762437600&sig=b3Jp1Wq0kz8fLx2mQe7Rt5uYc9NvH4aD6sGj3hKl0Po", "publishedAt": "2026-11-06T09:00:04.000Z", "deletedAt": null, "metricsAt": "2026-11-07T09:00:00.000Z", "views": 2140, "reach": 1630, "engagements": 155, "engagementRate": 9.51, "metrics": { "views": 2140, "reach": 1630, "likes": 128, "comments": 11, "shares": 6, "saves": 10, "engagements": 155, "follows": 4, "profile_visits": 37 }, "masked": [], "details": null, "detailsAt": null } ]}Analytics overview GET
The numbers of the team's accounts and of every post on them, made in Rizamo or anywhere else, for a period and the one before it: views, reach, engagements, the engagement rate of the posts published, posts published, followers, the accounts' own reach and accounts engaged, each day, each network, and the top posts. A period of `days` ends yesterday, the last complete day, as `to` does when left out. With `attribution` received (the default), views are each account's own views of each day, as its network counts them (its posts' gains where its days give none, and with `fields`), and reach and engagements what arrived on the posts in the period, on posts of any age, by the day it arrived; with publish, they are the numbers so far of the posts published in the period, by the day each went out. A number a network does not give is missing, never 0, and `notes` says why. Post numbers follow the days of the profile's time zone (pass `timeZone` for another); followers and the accounts' own numbers come by the network's days, matched by date (Meta's run on Pacific time, TikTok's on UTC). TikTok's days come 2 days late and YouTube's 3.
Get the audience GET
Each account's audience as last read: its followers, and the people who engaged with its content this month, by age, gender, country and city (YouTube without city), and when its followers are active, by the hour in UTC (`activeHours`), from TikTok, for accounts with advanced access or a verified business account, and 100 followers or more. Rizamo reads it once a week for Instagram, TikTok, Threads and YouTube accounts (Instagram through either login). Followers come only for accounts with 100 followers or more. Instagram gives the engaged audience only when each group has more than 100 people; TikTok and Threads give none; YouTube gives no followers (`followers` is null). A YouTube channel's engaged audience is its viewers this month (last month until the 8th, as YouTube's numbers come 2 to 3 days late), counted by their views. Facebook no longer gives a Page's audience, and other networks are not read yet: their accounts come with why.