Documentation
GET /api/feed
Serve the whole field: this session's find first, then what it beat.
| Request | GET /api/feed |
|---|---|
| Authentication | Session cookie required |
| Handler | backend/server.py |
What it does
Identical resolution to `/api/find`, then up to `FEED_SIZE` cards. `feed[0]` is always the session's own product; the remainder are catalog entries that are neither held nor globally claimed, sorted by the ranking key. Every card rendered is written to `seen`, because every card in the feed is claimable — the recommendation is presentation, not permission. The same `find_served` and `shown_field` milestones advance here as on `/api/find`.
Authentication
Session cookie required. Send the ff_session cookie. Without one the engine treats the caller as a new visitor with no holds and no claims, and returns a new cookie to use from then on.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
ff_session | cookie | string | Optional | The session identifier. Omit it on the first call and store the value the response sets; every later call must send the same one or the engine treats the caller as a new visitor with no holds and no claims. |
Request
The cookie jar carries the session between calls. Angle-bracketed values are the parameter types from the table above.
curl -s -b cookies.txt -c cookies.txt \
"https://flowfinds.ai/api/feed"const res = await fetch("https://flowfinds.ai/api/feed", {
method: "GET",
credentials: "include",
});
const data = await res.json();import requests
s = requests.Session()
r = s.get("https://flowfinds.ai/api/feed")
data = r.json()Recorded example
curl -s -b cookies.txt -c cookies.txt \
"$FLOWFINDS_ORIGIN/api/feed"Responses
200 — A product could be resolved for this session.
| Field | Type | Description |
|---|---|---|
[] | array | Cards in the shape `/api/find` returns. Index 0 is this session's product with `yours: true`; the rest carry `yours: false`. |
200 — This session is at its own claim allowance.
| Field | Type | Description |
|---|---|---|
[] | array | An empty array. The feed path returns `[]` where `/api/find` returns the refusal object. |
Errors
| Status | Reason | When |
|---|---|---|
429 | usage refusal | The find meter refuses, exactly as on `/api/find`. |
Related
GET /api/find— Serve this session's product, minting a hold if it does not have one.POST /api/select— Move this session's hold onto a named product from the field.POST /api/pass— Claim the held product, or pass on it and be shown the next one.POST /api/analyze— Run the analyser over any product description, claimed or not.GET /api/analysis— The analysis of the product this session holds.POST /api/ask— Ask a question against one or more catalog products.POST /api/discover— Run the discovery script and return its terminal output verbatim.GET /api/discovery-research— Read the state of the external discovery research job.
Back to the API reference index, or read the cookbook for recipes that compose this endpoint with others.