# Prism Handle Audit API (https://www.socialcrawl.dev/platforms/prism/handle-audit) > Decide whether to pull a handle before paying for a full collection. Score model 2.0.0 returns nullable top-level and per-platform scores, explicit evidence and component coverage, surface estimates, and `legs[]` diagnostics. Unknown numeric values are `null`, not zero. Output is deterministic only for the same (`score_version`, `evidence_fingerprint`) and returned evidence; a later live collection may produce different evidence and a different score. Stale-if-error evidence is eligible for at most 24 hours, and future-dated evidence more than 300 seconds ahead is rejected. 5 credits for any selection of up to 4 supported platforms; +1 credit per selected platform beyond 4. Every successful HTTP 200 receives the full request-shaped charge with no partial refund. A non-200 execution failure receives a full refund when every requested platform is a definitive miss or cannot return usable profile evidence. Scores are advisory estimates from public evidence, not calibrated probabilities. TL;DR: `GET /v1/prism/handle-audit` costs 5 credits for any selection of up to 4 supported platforms; +1 credit per selected platform beyond 4 and returns SocialCrawl's unified JSON schema. Single x-api-key auth, 100 free credits on signup. ## Request scope - Default platforms: TikTok, Instagram, YouTube, and X. - Optional platforms: Threads, Bluesky, and Truth Social. - Unsupported platforms: Reddit. - Pricing: 5 credits for any selection of up to 4 supported platforms; +1 credit per selected platform beyond 4. - Cache: An exact normalized request is cached for 30 minutes; an exact cache hit costs 0 credits. ## Response contract - Supported platforms are tiktok, instagram, youtube, twitter, threads, bluesky, truthsocial. Default platforms are tiktok, instagram, youtube, twitter. Optional platforms are threads, bluesky, truthsocial. Reddit is deferred and not supported. - Any unknown platform rejects the whole request with HTTP 400 before billing. - The identity may be a bare handle or canonical supported profile URL. A YouTube channel ID is YouTube-only: omit `platforms` to audit YouTube or set `platforms=youtube`; other canonical profile URLs do not narrow the default fanout. - YouTube sampled-post collection sends includeExtras=true. - Profile evidence states are live, stale, not_found, and unavailable. Posts evidence states are sampled, observed_empty, not_supported, not_found, and unavailable. Stale platforms are also listed in `stale_platforms`. Unknown numeric values are null, not zero, and decision-grade post evidence is required for scoring. - `observed_empty` is decision-grade evidence of an empty posting history; `days_since_last_post`, `media_fraction`, `avg_text_length`, and the `content_richness` score stay null because no posts were observed. - Explicitly empty text is observed as length 0 and explicitly empty media is observed as false; unknown text or media stays null. Content-richness uses known-only inputs and re-normalizes across the known inputs instead of treating unknowns as zero. - `legs[]` is emitted in stable plan order. A genuinely pending leg abandoned at the global deadline is synthesized as 504 / UPSTREAM_TIMEOUT / 0 credits; an early rejected dispatch is 502 / UPSTREAM_ERROR / 0 credits, including when compatible stale evidence recovers the response. A terminal profile failure emits no speculative posts leg. - Scores are reproducible only when `score_version` and `evidence_fingerprint` are unchanged; score and evidence fields can be null when decision-grade evidence is unavailable. - Collection has a 6.4-second default budget, a 6.5-second hard cap, and a 7-second public API target. These are configured targets, not measured v2 performance. - Process-local monotonic last-known-good ordering prevents older writers within one process; global atomic CAS remains future work. ## Parameters | Parameter | Required | Description | | --- | --- | --- | | `handle` | yes | The identity to audit. Accepts a bare handle, a leading @, a supported profile URL, or a YouTube channel ID. A YouTube channel ID is YouTube-only: omit `platforms` or set `platforms=youtube`. | | `platforms` | no | CSV subset of tiktok,instagram,youtube,twitter,threads,bluesky,truthsocial (default: tiktok,instagram,youtube,twitter). Names are case-insensitive and deduplicated. Unknown platforms are rejected. At most 8 CSV members before deduplication. | | `sample` | no | Integer from 1 to 25: recent posts sampled per found platform for engagement and activity metrics (default 10). | ## Code example ```bash curl "https://www.socialcrawl.dev/v1/prism/handle-audit?handle=mrbeast" \ -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