Instagram post API
一次 REST 呼叫取得 Instagram post 資料——以 FetchPI 全平台共用的穩定 JSON 結構標準化輸出。
- 1 個已發布端點
- GET /v1/ig/posts/{id}
契約摘要(英文): Get a normalized Instagram post (capability ig.post)
- 標準化回應實體
- instagram/post
- capability
- ig.post
每個回應都附帶新鮮度(cache / default / live)與計費中繼資料。
使用場景
- 為內容分析管線提供結構化的 {{platform}} 貼文:內文、指標、時間戳記與媒體引用。
- 支撐需要原始內容與互動數據的審核、研究與監測流程。
- 以穩定的標準化 JSON 歸檔 {{platform}} 內容,告別脆弱的網頁爬取。
回應欄位
Instagram Post (normalized)
Normalized Instagram post. The id is the SHORTCODE (the /p/{code} addressing key of /v1/ig/posts/{id}); the numeric pk stays provider-internal. Metric names are frozen (likes/comments/views); views is 0 for photo posts. Carousel albums flatten to photo attachments.
| 欄位 | 類型 | 必填 | 說明 |
|---|---|---|---|
| id | string | 必填 | Shortcode (e.g. CxAbc123XYZ); pk when the provider omits it. |
| platform | "instagram" | 必填 | — |
| type | "post" | 必填 | — |
| author.id | string | 必填 | Numeric pk. |
| author.username | string | 必填 | — |
| author.display_name | string | null | 可選 | — |
| author.verified | boolean | 可選 | — |
| text | string | null | 可選 | The caption text. |
| created_at | string | 必填 | Post creation time (taken_at), UTC RFC3339. |
| metrics.likes | integer | 必填 | — |
| metrics.comments | integer | 必填 | — |
| metrics.views | integer | 必填 | Play/view count; 0 for photo posts. |
| attachments | object[] | 可選 | Carousel/album images and/or the reel video. |
| fetched_at | string | 必填 | — |
欄位備註為契約英文原文。
回應中繼資料
| 欄位 | 類型 | 必填 | 說明 |
|---|---|---|---|
| mode | cache | default | live | 必填 | Effective mode after merging param > max_age > source policy (D-004). |
| age_seconds | integer | null | 可選 | Age of served data; null when unknown. |
| source_layer | cache | db | upstream | 必填 | Which layer served the response (PRD §10). |
| stale | boolean | 可選 | True when stale data was served under stale_if_error / SWR (D-004). |
| billing.amount_credits | integer | 必填 | Micro-USD (1e-6 USD) actually charged for this request. |
| billing.cache_hit | boolean | 必填 | — |
欄位備註為契約英文原文。
請求與回應範例
GET
/v1/ig/posts/{id}curl -H "Authorization: Bearer $MESHDATA_API_KEY" \
"https://api.fetchpi.com/v1/ig/posts/1842951234567890123"{
"data": {
"id": "Creel00001",
"platform": "instagram",
"type": "post",
"author": {
"id": "1295448945",
"username": "creatordev",
"display_name": "Creator Dev",
"verified": true
},
"text": "Reel day",
"created_at": "2026-09-17T12:34:56Z",
"metrics": {
"likes": 1204,
"comments": 36,
"views": 88231
},
"attachments": [
{
"type": "video",
"url": "https://cdn.example.com/reel.mp4",
"duration_ms": 32500
}
],
"fetched_at": "2026-09-18T07:30:00Z"
},
"meta": {
"request_id": "req_01HTXQ8Z9HTQ",
"freshness": {
"mode": "default",
"age_seconds": 3600,
"source_layer": "cache",
"stale": false
},
"billing": {
"amount_credits": 0,
"cache_hit": true
}
}
}免費試用
註冊免費帳號、取得 API Key,即可在瀏覽器版 Playground 直接呼叫該端點。
在 Playground 試用該端點的參數表、錯誤碼與回應語義見 API 文件。
查看端點參考常見問題
回應包含哪些內容欄位?
回應攜帶標準化的內容實體(內文、作者、時間戳記、互動指標與媒體引用),欄位見下方欄位表,並附帶新鮮度與計費中繼資料。
可以免費試用該端點嗎?
可以——註冊帳號、取得 API Key 後,即可在主控台的 Playground 呼叫該端點。
post 能力怎麼計費?
Data API 按請求以點數計費,cache/live 新鮮度有不同倍率。目前各能力的價格以價格頁為準。