Overview
The Feed API returns JSON with the data that powers the Instafeed widget: posts, media URLs, hashtags, and (on paid plans) tagged Shopify products and collections.
It is a read-only API (GET only) for integrating feed data into your own apps, headless storefronts, or custom frontends.
Requirements
- Active Instafeed installation: Your Shopify store must have Instafeed installed and connected. If you don't have it, install Instafeed.
- Plan: The Feed API is available on all plans. Full feed design configs (e.g. layout, styling options) are only available on the Plus plan.
- Access key: This API requires an access key. Contact [email protected] to request one.
HTTP Method
GET
URL
Use one or the other depending on how you connected your Instagram account in Instafeed:
- Instagram Login:
https://instafeed.nfcube.com/feed/v6 - Meta for Business:
https://instafeed.nfcube.com/feed/v5
Authentication
Include your access key in the request header:
X-API-Key: YOUR_API_KEY
Some debug fields (like meta.error_message) are only returned when requests are made from an authenticated admin context or when using debug=1 (intended for troubleshooting).
Query Parameters
| Parameter | Required | Description |
|---|---|---|
account |
Yes | Your Shopify domain, e.g. example.myshopify.com. |
limit |
Yes | Max number of posts to return. The widget typically requests what it needs for the configured layout. |
fid |
Yes | Feed ID. Use 0 for the main feed, or a numeric ID for secondary feeds. |
fu |
Yes | Value is 0. |
handle |
No | Product/collection handle to build a product/collection feed (used on product/collection pages). |
debug |
No | When 1, error responses include meta.error_message. |
hash |
No | Present in the storefront widget requests. Not required by the API response logic. |
locale |
No | Locale code used to localize parts of the response when applicable. |
Example Request
GET https://instafeed.nfcube.com/feed/v6?limit=30&account=example.myshopify.com&fu=0&fid=0
X-API-Key: YOUR_API_KEY
Example: product page feed
GET https://instafeed.nfcube.com/feed/v6?limit=24&account=example.myshopify.com&fu=0&fid=0&handle=your-product-handle
X-API-Key: YOUR_API_KEY
Successful Response (200)
The API returns a JSON object with:
meta: response metadatadata: array of posts (already filtered/reordered and limited)
Common meta fields:
code:200username: Instagram usernamefull_name: profile name (or username)followers: follower count (paid plans)profile_picture: profile picture URL (paid plans)sync_time: unix timestamp when the response was generatedcopyright: array of post permalinks that couldn’t be displayed (copyright-restricted media)
Each post in data includes (fields vary by plan and content type):
id: Instagram media id (or internal id for uploaded files)type:imageorvideocreated_time: unix timestamplink: Instagram permalinktags: hashtags extracted from captioncaption.text: caption text (may be truncated to 150 chars for some click modes)images.standard_resolution.url: image URLvideos.standard_resolution.url: video URL (only for videos)user.username,user.full_name,user.followerscomments.count,likes.count(paid plans)alt_text(when available)tagged_products: array of tagged Shopify products/collections (paid plans)
tagged_products[] fields (when present):
gid,title,handle,image,variant,variant_title?price,compare_price?,price_max?,compare_price_max?index(carousel index),single_variant,rating,rating_countplacement?(object keyed by string indices),source
Non-200 Responses
The API uses a consistent envelope:
meta.code: HTTP-like status codemeta.error_message: only returned whendebug=1or from an authenticated admin context
Common codes
202Accepted: feed cache is being built in the background. Response includes:meta.loading_count: percentage string like"35%"
204No Content: no posts available to display (e.g. filters exclude everything)401Unauthorized: account is locked404Not Found: not connected / deprecated integration version409Conflict: tagged posts are hidden by default and not approved yet503Service Unavailable: upstream API issues, maintenance, or feed is being updated (may serve a cached response for storefront requests)