Instagram Feed API

Your clients' Instagram feed, in pure JSON .

A single fetch() call returns the Instagram posts of the connected account. No SDK, no iframe, no forced layout — you build the HTML exactly as your design demands.

Redis caching · automatic token renewal · per-domain CORS

GET /widget/feed

One endpoint. One JSON. Zero lock-in.

You receive an array of posts with everything you need to render — id, caption, media_url, permalink, and timestamp. The rest is up to your CSS.

feed.js
const res = await fetch(
  'https://luck.app.br/api/v1/widget/feed/CLIENT_ID?limit=12'
);
const { data } = await res.json();

// data: [{ id, caption, media_type, media_url, permalink, timestamp }]
data.forEach(post => /* build the HTML however you want */);

Three steps to get the feed live

You connect, authorize the domain, and consume. No build step, no third-party dependencies.

  1. 1

    Connect the account

    You register the client and send them a secure link. They click, authorize Instagram in seconds, and the connection is saved.

  2. 2

    Authorize the domain

    Enter the domain of the client's website. The API only responds to authorized origins — no other site can use their token.

  3. 3

    Consume the feed

    A simple fetch() returns the JSON with the posts. Build the layout you want, with no forced CSS or HTML.

Live feed

See the API response in real time

The cards below are loaded in real time with a single fetch() call to our API.

Ready-to-use infrastructure, focus on your product

The annoying parts — tokens, cache, security — are already solved. You just focus on the layout.

Automatic caching

Redis cache with a 2-hour TTL. The site loads instantly, without hitting the Instagram API on every visit.

Token renewal

A daily cron job renews access tokens before they expire. No manual intervention, no loss of access.

Per-domain CORS

Each client has their own authorized domains. The API rejects requests from unregistered origins.

Multi-tenant

Manage multiple clients in a single infrastructure. Each with their own Instagram account and isolated domains.

Pure JSON, zero lock-in

No HTML, no forced CSS. You receive the raw data and build the layout exactly as your design demands.

Self-hosted infrastructure

PostgreSQL + Redis + Node in Docker. No reliance on third-party widget SaaS. Your data, under your control.

Ready to integrate?

Tell us which client you want to connect — we will return their feed in JSON in minutes.