Skip to main content

Free social media report generator API

Drop in a CSV of your post metrics, check which column is which, and get a one-page report with totals, engagement rate, a table per network, your top 5 posts and your best weekday. Copy it, download it as CSV or print it to PDF for your client. The file never leaves your browser.

Request​

FieldTypeDefaultDescription
rowsarray of objectOne object per post, already mapped to these fields. Leave out a count the export does not have.

Call it​

curl -X POST https://postboost.co/app/api/tools/social-media-report-generator \
-H 'Content-Type: application/json' \
-d '{"rows":[{"date":"2026-09-01","network":"linkedin","text":"Launch post: our new planning board","views":2400,"likes":96,"comments":12,"shares":8},{"date":"2026-09-02","network":"instagram","text":"Behind the scenes of the shoot","views":1800,"likes":120,"comments":9,"shares":3},{"date":"2026-09-08","network":"linkedin","text":"Customer story: a bakery'\''s bookings","views":1500,"likes":40,"comments":4,"shares":6}]}'

With a token, send Authorization: Bearer YOUR_API_TOKEN as a default header (how, per SDK).

Response​

{
"posts": 3,
"date_range": {
"from": "2026-09-01",
"to": "2026-09-08"
},
"views": 5700,
"engagements": 298,
"engagement_rate": 5.23,
"engagements_from": [
"likes",
"comments",
"shares"
],
"networks": [
{
"network": "linkedin",
"posts": 2,
"views": 3900,
"engagements": 166,
"rate": 4.26
},
{
"network": "instagram",
"posts": 1,
"views": 1800,
"engagements": 132,
"rate": 7.33
}
],
"top_posts": [
{
"date": "2026-09-02",
"network": "instagram",
"text": "Behind the scenes of the shoot",
"engagements": 132
},
{
"date": "2026-09-01",
"network": "linkedin",
"text": "Launch post: our new planning board",
"engagements": 116
},
{
"date": "2026-09-08",
"network": "linkedin",
"text": "Customer story: a bakery's bookings",
"engagements": 50
}
],
"weekdays": [
{
"day": "Monday",
"posts": 0,
"engagements": 0,
"average": null
},
{
"day": "Tuesday",
"posts": 2,
"engagements": 166,
"average": 83
},
{
"day": "Wednesday",
"posts": 1,
"engagements": 132,
"average": 132
},
{
"day": "Thursday",
"posts": 0,
"engagements": 0,
"average": null
},
{
"day": "Friday",
"posts": 0,
"engagements": 0,
"average": null
},
{
"day": "Saturday",
"posts": 0,
"engagements": 0,
"average": null
},
{
"day": "Sunday",
"posts": 0,
"engagements": 0,
"average": null
}
],
"best_weekday": "Wednesday"
}

With MCP​

Connect https://postboost.co/mcp/tools (setup) and ask, for example: Summarize social media post metrics into a report with the PostBoost summarize-report tool.

MCP requests are capped at 128 KB without a token and 1.5 MB with one; send bigger requests to the API (2 MB).

Errors​

StatusWhen
401The Authorization header holds an invalid token. Leave it out to call as a guest.
413The JSON body is larger than 2 MB.
422A field is invalid; the body lists the errors per field.
429A limit is reached; see limits.