> ## Documentation Index
> Fetch the complete documentation index at: https://docs.storytime.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaign Analytics

<Columns cols={2}>
  <Column>
    ### Returns the creator's own performance on a campaign.

    #### Required Scopes: `campaigns:read`

    <ResponseField name="ok" type="boolean">
      true on success
    </ResponseField>

    <ResponseField name="creatorId" type="string (uuid)">
      Echoed back
    </ResponseField>

    <ResponseField name="campaignId" type="string (uuid)">
      Echoed back
    </ResponseField>

    <ResponseField name="metrics" type="object">
      <Accordion title="child attributes" defaultOpen iconType="regular">
        <ResponseField name="posts" type="number">
          Published content items
        </ResponseField>

        <ResponseField name="views" type="number">
          Video/content views
        </ResponseField>

        <ResponseField name="impressions" type="number">
          Total impressions
        </ResponseField>

        <ResponseField name="localImpressions" type="number">
          Impressions weighted by local-audience share
        </ResponseField>

        <ResponseField name="reach" type="number">
          Distinct accounts reached
        </ResponseField>

        <ResponseField name="earnedUsd" type="number">
          Total offer value received (USD)
        </ResponseField>
      </Accordion>
    </ResponseField>

    <ResponseField name="timeseries" type="object array">
      <Accordion title="child attributes" defaultOpen iconType="regular">
        <ResponseField name="date" type="string (date)">
          `YYYY-MM-DD`, one entry per day
        </ResponseField>

        <ResponseField name="posts" type="number">
          Posts published that day
        </ResponseField>

        <ResponseField name="impressions" type="number">
          Impressions that day
        </ResponseField>
      </Accordion>
    </ResponseField>

    <ResponseField name="asOf" type="string (timestamp)">
      When this snapshot was computed (ISO 8601 UTC)
    </ResponseField>
  </Column>

  <Column>
    ```shellscript /v1/creators/<creatorId>/campaigns/<campaignId>/analytics wrap theme={null}
    curl -sS https://api.storytime.io/v1/creators/7d4e2a10-0000-4000-8000-000000000101/campaigns/0b1f3d3e-4c1a-4a5e-9b6a-000000000001/analytics \
      -H "Authorization: Bearer pk_live_xxxxxxxxxxxxxxxxxxxxxxxx"
    ```

    ```json 200 theme={null}
    {
      "ok": true,
      "creatorId": "7d4e2a10-0000-4000-8000-000000000101",
      "campaignId": "0b1f3d3e-4c1a-4a5e-9b6a-000000000001",
      "metrics": {
        "posts": 2,
        "views": 24800,
        "impressions": 31400,
        "localImpressions": 11900,
        "reach": 18700,
        "earnedUsd": 150
      },
      "timeseries": [
        { "date": "2026-07-02", "posts": 1, "impressions": 9800 },
        { "date": "2026-07-03", "posts": 1, "impressions": 12400 },
        { "date": "2026-07-04", "posts": 0, "impressions": 9200 }
      ],
      "asOf": "2026-07-08T18:05:12.000Z"
    }
    ```
  </Column>
</Columns>
