getStoryRail
# getStoryRail
GET
/stories
const url = 'http://localhost:8080/api/v1/stories?circleId=per_01j9x3k8m2q4r5s6t7v8w9y0z1';const options = {method: 'GET', headers: {cookie: 'hs_session=<hs_session>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'http://localhost:8080/api/v1/stories?circleId=per_01j9x3k8m2q4r5s6t7v8w9y0z1' \ --cookie hs_session=<hs_session>Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”circleId
string
Responses
Section titled “Responses”Story rail entries in display order.
Media typeapplication/json
object
items
required
Array<object>
object
person
required
object
id
required
string
displayName
required
string
relationLabel
string | null
kind
required
string
closeness
required
1 = closest. Weights the feed and hearth picks.
integer
state
required
Visit = no fetchable content; tapping opens the suggested account.
string
unseenCount
required
integer
hasLiveStory
boolean
suggestedAccount
One of:
object
id
required
string
platform
required
string
handle
required
string
displayName
string | null
profileUrl
required
string format: uri
deepLinks
required
Client picks app link on mobile when installed, else web.
object
web
required
string format: uri
ios
string
android
string
copyValue
Value to copy when no link exists (e.g. WeChat ID).
string
hintKey
I18n key with instructions, e.g. “platformWechatOpenHint”.
string
null
Examples
Exampleseed
Derived from fixtures/seed.json.
{ "items": [ { "hasLiveStory": true, "latestAt": "2026-10-17T07:30:00.000Z", "person": { "avatar": null, "closeness": 1, "displayName": "Mom", "id": "per_01j9wst6a8vjc69r66y6fj70t5", "kind": "family", "relationLabel": "แม่" }, "state": "unseen", "suggestedAccount": null, "unseenCount": 3 }, { "hasLiveStory": false, "latestAt": "2026-10-16T13:00:00.000Z", "person": { "avatar": null, "closeness": 2, "displayName": "Lin", "id": "per_01j9f8r1agkh6g3jp30xcwnytc", "kind": "family", "relationLabel": "Cousin" }, "state": "unseen", "suggestedAccount": null, "unseenCount": 2 }, { "hasLiveStory": false, "latestAt": null, "person": { "avatar": null, "closeness": 1, "displayName": "Grandma Noi", "id": "per_01j9w5jqj9nm7gdsybfz53mcjr", "kind": "family", "relationLabel": "ยาย" }, "state": "visit", "suggestedAccount": { "deepLinks": { "android": "https://line.me/R/ti/p/~grandma_noi", "ios": "https://line.me/R/ti/p/~grandma_noi", "web": "https://line.me/R/ti/p/~grandma_noi" }, "displayName": null, "handle": "~grandma_noi", "id": "acc_01j9e81cm1p0x7vysze8aeqsje", "platform": "line", "profileUrl": "https://line.me/R/ti/p/~grandma_noi" }, "unseenCount": 0 }, { "hasLiveStory": false, "latestAt": "2026-10-17T03:00:00.000Z", "person": { "avatar": null, "closeness": 3, "displayName": "小厨娘", "id": "per_01j9nt02btj9vmesaexmby3q67", "kind": "creator", "relationLabel": null }, "state": "seen", "suggestedAccount": null, "unseenCount": 0 } ]}