# Prism Profile Comments API (https://www.socialcrawl.dev/platforms/prism/profile-comments) > Give it a profile, page or channel on Instagram, Facebook, YouTube, TikTok or X and it reads the comments under that account's most recent posts, then returns them as one flat list, newest first, in the same comment rows as each platform's own comment endpoint. Every row names its post: `comment.post_id` and `comment.ext.post_url`. Pass `since` to get only the comments published after it, which is how you poll for new comments without diffing anything yourself. On Instagram and YouTube the comments are read newest first, so each post stops at the first comment older than `since`: a call with a recent `since` reads about one comment page a post. Facebook and TikTok do not return comments newest first, so each post is read up to `per_post` comments and filtered by `since` (`window.ordered` is false and `_warnings` says so). `posts` is how many of the most recent posts are scanned (posts whose comment count is 0 are skipped free). `data.posts` lists every post scanned with its status, the comments read and kept, the pages and credits it cost and why its walk stopped; `next_cursor` there continues one post on its own comment endpoint. One post that fails never fails the call: it is marked `failed` in `posts`, named in `legs` and `_warnings`, and not charged. Replies come nested where the platform's comment endpoint nests them. It is also a Monitor recipe: create a monitor on `prism/profile/comments` with `track` (`items[].comment.engagement.likes` and `total`), `since: "now-3h"`, an hourly cadence and `webhook_rows: "new"`, and each run delivers only the comments that are new since the previous run (add `alert_rules` `rows_new gt 0` with `suppress_webhook_unless_alert` to send nothing when nothing is new). Never cached. TL;DR: `GET /v1/prism/profile/comments` costs each page actually read, at that endpoint's own price: the post list page (1 credit) plus every comment page that came back with comments (5 credits on Instagram, 1 on Facebook, YouTube, TikTok and X). A call that finds no new comment costs only the post list page. The call holds the most that `posts` and `per_post` can take (251 credits for Instagram's defaults) and refunds the rest and returns SocialCrawl's unified JSON schema. Single x-api-key auth, 100 free credits on signup. ## Parameters | Parameter | Required | Description | | --- | --- | --- | | `url` | no | The profile, page or channel URL: instagram.com/, facebook.com/, youtube.com/@ or youtube.com/channel/UC..., tiktok.com/@, or x.com/. The platform is read from the URL. A link to one post is refused: use that platform's own comment endpoint for one post. One of `url` or `handle` is required. | | `platform` | no | With `handle`: instagram, facebook, youtube, tiktok or twitter (x is accepted for twitter). Not needed with `url`. (instagram \| facebook \| youtube \| tiktok \| twitter \| x) | | `handle` | no | The account's handle, with or without @, together with `platform`. On YouTube a channel id (UC...) works too. A pasted profile URL is read like `url`. | | `posts` | no | How many of the profile's most recent posts to scan (1-25, default 10). A post whose comment count is 0 is skipped and costs nothing. | | `per_post` | no | The most comments read on each post (1-200, default 50), newest first on Instagram and YouTube. Sets the hold; you pay only for the pages read. | | `since` | no | Only comments published at or after this time: an ISO 8601 timestamp or YYYY-MM-DD (midnight UTC). On Instagram and YouTube each post's walk stops at the first older comment; on Facebook and TikTok the comments are filtered. In a Monitor, `now-3h` (or `now-1d`) is resolved to a timestamp at every run. | ## Code example ```bash curl -G "https://www.socialcrawl.dev/v1/prism/profile/comments" \ --data-urlencode "url=https://www.instagram.com/nasa/" \ -H "x-api-key: sc_YOUR_API_KEY" ``` See the full Prism API: https://www.socialcrawl.dev/platforms/prism ## Pricing - Standard endpoints: 1 credit per call - Advanced endpoints: 5 credits per call - Premium endpoints: 10 credits per call - 100 free credits on signup, no credit card required. Cached responses cost 0 credits. Credit packs never expire. - Full pricing: https://www.socialcrawl.dev/pricing