PeekPanda markpeekpandaDocumentation
For your AI
Dashboard

Analyze organic post

Ask for creative analysis of one stored organic post; it runs in the background.

Download Markdown ↓

POSThttps://api.peekpanda.com/v1/organic/{postId}/analysis

Request

The command has no request body and answers 202 at once: it stores the request and a background worker runs it, usually within a minute. Read where it stands with GET /v1/organic/{postId}/analysis every 15 to 30 seconds until status is ready or failed; each read counts toward the daily API and MCP call allowance. Asking again while it runs returns the same pending request, and a ready analysis is returned from storage without another run. A video post is read from its stored video, with a timeline of scenes, cuts and on-screen text; a slideshow is read from up to 10 slides in order, without a timeline. For a video, the same run also stores the transcript when the post has none; a transcript that fails, or a video with no speech, does not fail the analysis. A post with no stored video or slides answers 422.

Parameters

NameInTypeRequiredDescription
postIdpathstring, 1–300YesOrganic corpus post id.

Response

Returns the analysis state: pending with requestedAt while the worker runs it, or ready with the stored analysis when one already exists.

Response fields

statusstring
requestedAtstring

Authentication

Requires Bearer API credential or OAuth access token. Scope content:write. MCP calls refresh with action organic_analysis.

Errors

400invalid_request for an invalid filter, identity or limit.
401authentication_required for a missing or invalid credential.
402subscription_required when access is not entitled.
403authorization_required for a missing scope or unavailable preview access.
403workspace_not_accessible when x-genviral-tenancy names a workspace the credential cannot reach.
404not_found when the record is outside the accessible catalogue.
429rate_limited; honor Retry-After when present.
429daily_call_limit; the plan's daily API and MCP calls are used until 00:00 UTC.
409conflict when the write would duplicate an exclusive row.

MCP request

Call refresh with action organic_analysis. Path fields go in params, filters in query, and a write body in body.

{
  "name": "refresh",
  "arguments": {
    "request": {
      "action": "organic_analysis",
      "params": {
        "postId": "<postId>"
      }
    }
  }
}

Source

The post's stored copy in the organic corpus: its mirrored video, or its stored slides, with its caption, hook and creator handle as context.

Refresh

An explicit request reads the stored copy and persists its result. Repeating after settlement returns the stored result without generating it again. A failed run keeps any analysis the post already had.

AI agent or LLM? Read this page as markdown