getExtensionConfig
# getExtensionConfig
GET
/extension/config
const url = 'http://localhost:8080/api/v1/extension/config';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/extension/config \ --cookie hs_session=<hs_session>Watchlist, capture rules and helper info for the Companion extension (docs/14-browser-extension.md). Supports If-None-Match with the returned etag.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”If-None-Match
string
Responses
Section titled “Responses”Config.
Media typeapplication/json
object
etag
required
string
household
required
object
name
required
string
baseUrl
required
string format: uri
member
required
canCapture
required
False for viewers (visits only).
boolean
watchlist
required
rules
required
Array<object>
object
platform
required
string
capture
required
boolean
recordVisits
required
boolean
hostPermissions
required
Match patterns requested when the member enables this platform.
Array<string>
pagePatterns
required
Profile, story and post URL regexes (JS syntax) from the registry.
Array<string>
mediaHosts
required
Host globs whose assets are listed and read from the cache by the helper.
Array<string>
limits
required
object
maxDomBytes
required
integer
maxAssets
required
integer
maxParallelTabs
required
integer
settleMs
required
integer
maxWaitMs
required
integer
autoScrollViewports
required
integer
focusMs
required
integer
helper
required
object
minVersion
required
string
downloads
required
OS → download URL (macos, windows, linux).
object
key
additional properties
string format: uri
Examples
Exampleseed
Derived from fixtures/seed.json.
{ "canCapture": true, "etag": "\"cfg-demo-1\"", "helper": { "downloads": { "linux": "http://localhost:8080/downloads/homestead-helper.tar.gz", "macos": "http://localhost:8080/downloads/homestead-helper.dmg", "windows": "http://localhost:8080/downloads/homestead-helper.exe" }, "minVersion": "1.0.0" }, "household": { "baseUrl": "http://localhost:5173", "name": "The Wongs' Homestead" }, "limits": { "autoScrollViewports": 2, "focusMs": 300, "maxAssets": 80, "maxDomBytes": 8388608, "maxParallelTabs": 2, "maxWaitMs": 20000, "settleMs": 1500 }, "member": { "avatar": null, "displayName": "Mali", "id": "mem_01j9kt0d8rwgmhnmxkmv0frnr0" }, "rules": [ { "capture": true, "hostPermissions": [ "*://*.instagram.com/*" ], "mediaHosts": [ "*.cdninstagram.com", "*.fbcdn.net" ], "pagePatterns": [ "^https?://(?:www\\.|m\\.)?instagram\\.com/stories/(?P<handle>[A-Za-z0-9._]{1,30})(?:/|$|\\?)", "^https?://(?:www\\.|m\\.)?instagram\\.com/(?P<handle>[A-Za-z0-9._]{1,30})/?(?:\\?.*)?$", "^https?://instagr\\.am/(?P<handle>[A-Za-z0-9._]{1,30})/?$", "^https?://(?:www\\.)?instagram\\.com/(?:p|reel|tv)/(?P<item>[A-Za-z0-9_-]+)" ], "platform": "instagram", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://*.facebook.com/*" ], "mediaHosts": [ "*.fbcdn.net" ], "pagePatterns": [ "^https?://(?:www\\.|m\\.|mbasic\\.|web\\.)?facebook\\.com/profile\\.php\\?(?:.*&)?id=(?P<platformUserId>[0-9]{5,20})", "^https?://(?:www\\.|m\\.|web\\.)?facebook\\.com/people/[^/]+/(?P<platformUserId>[0-9]{5,20})", "^https?://(?:www\\.|m\\.|mbasic\\.|web\\.)?(?:facebook|fb)\\.com/(?P<handle>[A-Za-z0-9.]{5,50})/?(?:\\?.*)?$", "^https?://(?:www\\.)?facebook\\.com/share/(?:p|r|v)/(?P<item>[A-Za-z0-9]+)" ], "platform": "facebook", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://linevoom.line.me/*" ], "mediaHosts": [ "*.line-scdn.net", "*.line-apps.com" ], "pagePatterns": [ "^https?://line\\.me/(?:R/)?ti/p/(?P<handle>~[A-Za-z0-9._-]{4,20})", "^https?://line\\.me/(?:R/)?ti/p/(?P<handle>@[A-Za-z0-9._-]{3,20})", "^https?://page\\.line\\.me/(?P<handle>[A-Za-z0-9._-]{3,30})", "^https?://linevoom\\.line\\.me/user/(?P<platformUserId>[A-Za-z0-9_-]+)", "^https?://linevoom\\.line\\.me/post/(?P<item>[0-9]+)" ], "platform": "line", "recordVisits": true }, { "capture": false, "hostPermissions": [], "mediaHosts": [], "pagePatterns": [ "^https?://u\\.wechat\\.com/(?P<handle>[A-Za-z0-9_-]{6,})", "^https?://weixin\\.qq\\.com/r/(?P<handle>[A-Za-z0-9_-]{6,})" ], "platform": "wechat", "recordVisits": false }, { "capture": false, "hostPermissions": [ "*://bsky.app/*" ], "mediaHosts": [ "cdn.bsky.app", "video.bsky.app", "video.cdn.bsky.app" ], "pagePatterns": [ "^https?://(?:staging\\.)?bsky\\.app/profile/(?P<handle>[^/?#]+)", "^https?://bsky\\.app/profile/(?P<handle>[^/]+)/post/(?P<item>[a-z0-9]+)" ], "platform": "bluesky", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://x.com/*", "*://twitter.com/*" ], "mediaHosts": [ "pbs.twimg.com", "video.twimg.com" ], "pagePatterns": [ "^https?://(?:www\\.|mobile\\.)?(?:x|twitter|fxtwitter|vxtwitter|fixupx)\\.com/(?P<handle>[A-Za-z0-9_]{1,15})(?:/status/[0-9]+)?/?(?:\\?.*)?$", "^https?://(?:www\\.)?(?:x|twitter)\\.com/(?P<handle>[A-Za-z0-9_]{1,15})/status/(?P<item>[0-9]+)" ], "platform": "x", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://*.douyin.com/*" ], "mediaHosts": [ "*.douyinpic.com", "*.douyinvod.com", "*.bytedance.com", "*.byteimg.com" ], "pagePatterns": [ "^https?://(?:www\\.)?douyin\\.com/user/(?P<handle>MS4wLjABAAAA[A-Za-z0-9_-]+)", "^https?://(?:www\\.)?iesdouyin\\.com/share/user/(?P<platformUserId>[0-9]+)", "^https?://(?:www\\.)?douyin\\.com/(?:video|note)/(?P<item>[0-9]+)", "^https?://(?:www\\.)?iesdouyin\\.com/share/video/(?P<item>[0-9]+)" ], "platform": "douyin", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://*.xiaohongshu.com/*" ], "mediaHosts": [ "*.xhscdn.com" ], "pagePatterns": [ "^https?://(?:www\\.)?xiaohongshu\\.com/user/profile/(?P<handle>[0-9a-f]{24})", "^https?://(?:www\\.)?xiaohongshu\\.com/(?:explore|discovery/item)/(?P<item>[0-9a-f]{24})" ], "platform": "xiaohongshu", "recordVisits": true }, { "capture": true, "hostPermissions": [ "*://truthsocial.com/*" ], "mediaHosts": [ "static-assets-1.truthsocial.com", "*.truthsocial.com" ], "pagePatterns": [ "^https?://(?:www\\.)?truthsocial\\.com/@(?P<handle>[A-Za-z0-9_]{1,30})", "^https?://(?:www\\.)?truthsocial\\.com/@(?P<handle>[A-Za-z0-9_]{1,30})/(?:posts/)?(?P<item>[0-9]+)" ], "platform": "truthsocial", "recordVisits": true } ], "watchlist": [ { "accountId": "acc_01j93283xpmc4y04hy7rmmt7y7", "handle": "mom.wong.bkk", "lastCapturedAt": "2026-10-17T08:40:00.000Z", "personId": "per_01j9wst6a8vjc69r66y6fj70t5", "personName": "Mom", "platform": "instagram", "platformUserId": null, "profileUrl": "https://www.instagram.com/mom.wong.bkk/" }, { "accountId": "acc_01j9wkspf8va1pwmaj7qwb7e1f", "handle": "pranee.wong", "lastCapturedAt": null, "personId": "per_01j9wst6a8vjc69r66y6fj70t5", "personName": "Mom", "platform": "facebook", "platformUserId": null, "profileUrl": "https://www.facebook.com/pranee.wong" }, { "accountId": "acc_01j9te0skfktnnmw6zvew46azb", "handle": "lin.cooks", "lastCapturedAt": null, "personId": "per_01j9f8r1agkh6g3jp30xcwnytc", "personName": "Lin", "platform": "instagram", "platformUserId": null, "profileUrl": "https://www.instagram.com/lin.cooks/" }, { "accountId": "acc_01j9e81cm1p0x7vysze8aeqsje", "handle": "~grandma_noi", "lastCapturedAt": null, "personId": "per_01j9w5jqj9nm7gdsybfz53mcjr", "personName": "Grandma Noi", "platform": "line", "platformUserId": null, "profileUrl": "https://line.me/R/ti/p/~grandma_noi" }, { "accountId": "acc_01j936xmqyft8qfbq7srt9h04r", "handle": "MS4wLjABAAAAweichengdu0000000000000000000000", "lastCapturedAt": null, "personId": "per_01j9yjkch7a0ayzz8784jtf08t", "personName": "Uncle Wei", "platform": "douyin", "platformUserId": "98765432101", "profileUrl": "https://www.douyin.com/user/MS4wLjABAAAAweichengdu0000000000000000000000" }, { "accountId": "acc_01j91es8krfwqg9fhg08x4698y", "handle": "5f1a2b3c4d5e6f7a8b9c0d1e", "lastCapturedAt": null, "personId": "per_01j9nt02btj9vmesaexmby3q67", "personName": "小厨娘", "platform": "xiaohongshu", "platformUserId": null, "profileUrl": "https://www.xiaohongshu.com/user/profile/5f1a2b3c4d5e6f7a8b9c0d1e" }, { "accountId": "acc_01j9dfpvstm7aq628gwwc9xkq3", "handle": "somsak_runs", "lastCapturedAt": null, "personId": "per_01j9rwtm99tsb5zjfh16k89915", "personName": "Somsak", "platform": "x", "platformUserId": null, "profileUrl": "https://x.com/somsak_runs" }, { "accountId": "acc_01j93fce9xpx1fxafb7vaej1he", "handle": "realexample", "lastCapturedAt": null, "personId": "per_01j954try4bd0jk4pfmxk2z1bd", "personName": "Example News", "platform": "truthsocial", "platformUserId": null, "profileUrl": "https://truthsocial.com/@realexample" }, { "accountId": "acc_01j9yyff89w3w7eq8sec0nx68n", "handle": "jack", "lastCapturedAt": null, "personId": "per_01j9h1hs76zr3a67my92z862ww", "personName": "Jack", "platform": "x", "platformUserId": null, "profileUrl": "https://x.com/jack" } ]}Headers
Section titled “Headers”ETag
string
Not modified.