מחוברים עכשיו  

/v1/sidebar/

V2 sidebar — runtime read/render endpoints. The sidebar markup is owned by `\AT\ATV2Sidebar` (declarative registry at /config/atv2-sidebar.php → /libraries/atv2-sidebar.lib.php) and rendered server-side once per page load. After the initial render the client may mutate sidebar-relevant state (pin/unpin, expand/collapse a submenu, change the plans sort/group). These endpoints are how the client gets a fresh, server-canonical render after such a mutation — so layout never drifts between client and server, and the client never re-implements the markup. The complementary mutation endpoints are set_expanded (submenu collapse state) and set_plans_view (plans-block sort). Per-user bookmarks moved to /v1/bookmarks/* — they're no longer references to sidebar registry items but full {title, url, description} rows owned by the user. Auth: all endpoints accept anonymous callers and degrade gracefully (no plans block). The viewer's user id is taken from the apiv1 dispatcher's session resolution — no explicit auth params.
GET

/v1/sidebar/get_plans_render

#
Returns only the server-rendered "My Bookings" block plus the matching plans state. Used by the v2 shell to defer the expensive city-grouped travel-plans fetch until after the initial page render. Auth: plans are personal; anonymous callers receive ErrorUnauthorized.

פרמטרים

שםסוגחובהברירת מחדלתיאור
activeNavKey string לא "" Current page's active sidebar key.
theme string לא "upscale_at" Theme name; controls per-theme markup helper. Defaults to "upscale_at".
דוגמת בקשה (cURL)
curl --get \
  'https://he.appointmenttrader.com/v1/sidebar/get_plans_render' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}' \
  --data-urlencode 'theme={{theme}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_get_plans_render_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.htmlstring כן
$.oneOf[0].allOf[1].Payload.stateobject כן
$.oneOf[0].allOf[1].Payload.state.activeKeystring כן
$.oneOf[0].allOf[1].Payload.state.plans כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[1]null כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/get_plans_render",
    "RequestUserAlias": "example-user",
    "Payload": {
        "html": "synthetic-example",
        "state": {
            "activeKey": "synthetic-example",
            "plans": {
                "sortBy": "upcoming",
                "groupBy": "city",
                "groups": [],
                "hasArchivedPlans": false
            }
        }
    }
}
תיעוד נקודת קצה קריא למכונה
GET

/v1/sidebar/get_render

#
Returns server-canonical rendered HTML for the v2 sidebar plus the matching state struct. The client's contract is to replace the inner HTML of the sidebar aside element with Payload.html and update window.ATV2ShellState.sidebar with Payload.state — there is no client-side render, ever. Use this after any mutation that affects the sidebar's structure or data (pin/unpin, plans sort/group toggle, app added/removed). For pure active-state changes triggered by inline navigation, prefer window.ATV2Sidebar.applyActiveKey() instead — it's a DOM toggle and doesn't need a roundtrip.

פרמטרים

שםסוגחובהברירת מחדלתיאור
activeNavKey string לא "" Current page's active sidebar key.
theme string לא "upscale_at" Theme name; controls per-theme markup helper. Defaults to "upscale_at".
דוגמת בקשה (cURL)
curl --get \
  'https://he.appointmenttrader.com/v1/sidebar/get_render' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}' \
  --data-urlencode 'theme={{theme}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_get_render_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.htmlstring כן
$.oneOf[0].allOf[1].Payload.stateobject כן
$.oneOf[0].allOf[1].Payload.state.activeKeystring כן
$.oneOf[0].allOf[1].Payload.state.expanded כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0].*boolean לא
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[1]array כן
$.oneOf[0].allOf[1].Payload.state.itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].todoboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].hide_when_rightbar_visibleboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_headerobject לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.items[].sort = "communities" לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].conditionstring לאLegacy static submenu visibility callback identifier, retained as inert text by ToClientState.
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].persist_when_emptyboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrsobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrs.*string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].default_expandedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[1]null לא
$.oneOf[0].allOf[1].Payload.state.plans כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[1]null כן
$.oneOf[0].allOf[1].Payload.state.appMenu = null כן
$.oneOf[0].allOf[1].Payload.state.mobileHeaderobject כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.communitiesSortBystring ["latest_post","name"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigationobject כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.MembershipFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopesarray כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopes[]string ["status","activity"] לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CommunityOrderFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payloadPersonalNavigationBubbles כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].* לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[0]integer לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[1] = false לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2]object לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].labelstring כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[1]array כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/get_render",
    "RequestUserAlias": "example-user",
    "Payload": {
        "html": "<aside>Example navigation</aside>",
        "state": {
            "activeKey": "synthetic-example",
            "expanded": [],
            "items": [],
            "plans": {
                "sortBy": "upcoming",
                "groupBy": "city",
                "groups": [],
                "hasArchivedPlans": false
            },
            "appMenu": null,
            "mobileHeader": {
                "primary": "search",
                "cta": "post"
            },
            "communitiesSortBy": "latest_post",
            "personalNavigation": {
                "CompleteScopes": [],
                "payload": []
            }
        }
    }
}
תיעוד נקודת קצה קריא למכונה
GET

/v1/sidebar/get_state

#
Returns the current state of the v2 sidebar — the same struct that is embedded in window.ATV2ShellState.sidebar at SSR time. Use this when the client needs to re-derive its in-memory model without re-parsing the rendered HTML. Pass the page's currently-active sidebar key as activeNavKey so the server can mark the right item active in the response. The expanded / collapsed submenu set is read server-side from the `atv2_sidebar_expanded` cookie — pass nothing for that.

פרמטרים

שםסוגחובהברירת מחדלתיאור
activeNavKey string לא "" Current page's active sidebar key (e.g. "network", "market-data", "transactions"). Empty string when the page does not declare one.
דוגמת בקשה (cURL)
curl --get \
  'https://he.appointmenttrader.com/v1/sidebar/get_state' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_get_state_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.activeKeystring כן
$.oneOf[0].allOf[1].Payload.expanded כן
$.oneOf[0].allOf[1].Payload.expanded.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.expanded.anyOf[0].*boolean לא
$.oneOf[0].allOf[1].Payload.expanded.anyOf[1]array כן
$.oneOf[0].allOf[1].Payload.itemsarray כן
$.oneOf[0].allOf[1].Payload.items[]object לא
$.oneOf[0].allOf[1].Payload.items[].keystring כן
$.oneOf[0].allOf[1].Payload.items[].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.items[].iconstring לא
$.oneOf[0].allOf[1].Payload.items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.items[].rolestring לא
$.oneOf[0].allOf[1].Payload.items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.items[].badge.value לא
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.items[].todoboolean לא
$.oneOf[0].allOf[1].Payload.items[].hide_when_rightbar_visibleboolean לא
$.oneOf[0].allOf[1].Payload.items[].mobile_headerobject לא
$.oneOf[0].allOf[1].Payload.items[].mobile_header.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.items[].mobile_header.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.items[].sort = "communities" לא
$.oneOf[0].allOf[1].Payload.items[].submenu לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0]object לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].itemsarray כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[]object לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].keystring כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].iconstring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].rolestring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].items[].conditionstring לאLegacy static submenu visibility callback identifier, retained as inert text by ToClientState.
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].persist_when_emptyboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].wrapper_attrsobject לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].wrapper_attrs.*string לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[0].default_expandedboolean לא
$.oneOf[0].allOf[1].Payload.items[].submenu.anyOf[1]null לא
$.oneOf[0].allOf[1].Payload.plans כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.plans.anyOf[1]null כן
$.oneOf[0].allOf[1].Payload.appMenu = null כן
$.oneOf[0].allOf[1].Payload.mobileHeaderobject כן
$.oneOf[0].allOf[1].Payload.mobileHeader.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.mobileHeader.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.communitiesSortBystring ["latest_post","name"] כן
$.oneOf[0].allOf[1].Payload.personalNavigationobject כן
$.oneOf[0].allOf[1].Payload.personalNavigation.MembershipFingerprintstring לא
$.oneOf[0].allOf[1].Payload.personalNavigation.CompleteScopesarray כן
$.oneOf[0].allOf[1].Payload.personalNavigation.CompleteScopes[]string ["status","activity"] לא
$.oneOf[0].allOf[1].Payload.personalNavigation.CommunityOrderFingerprintstring לא
$.oneOf[0].allOf[1].Payload.personalNavigation.payloadPersonalNavigationBubbles כן
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].* לא
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].*.anyOf[0]integer לא
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].*.anyOf[1] = false לא
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].*.anyOf[2]object לא
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].*.anyOf[2].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[0].*.anyOf[2].labelstring כן
$.oneOf[0].allOf[1].Payload.personalNavigation.payload.anyOf[1]array כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/get_state",
    "RequestUserAlias": "example-user",
    "Payload": {
        "activeKey": "synthetic-example",
        "expanded": [],
        "items": [],
        "plans": {
            "sortBy": "upcoming",
            "groupBy": "city",
            "groups": [],
            "hasArchivedPlans": false
        },
        "appMenu": null,
        "mobileHeader": {
            "primary": "search",
            "cta": "post"
        },
        "communitiesSortBy": "latest_post",
        "personalNavigation": {
            "CompleteScopes": [],
            "payload": []
        }
    }
}
תיעוד נקודת קצה קריא למכונה
POST

/v1/sidebar/set_communities_view

#
Persist the personal community list sort without changing My Bookings. Authenticated users only; writes the sidebar preference cookie.

פרמטרים

שםסוגחובהברירת מחדלתיאור
sortBy string כן — "latest_post" (default) or "name".
activeNavKey string לא "" Current sidebar key.
theme string לא "upscale_at" Sidebar theme.
isWritingRequest bool לא false Set true to save the preference.
דוגמת בקשה (cURL)
curl --request POST \
  'https://he.appointmenttrader.com/v1/sidebar/set_communities_view' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'sortBy={{sortBy}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}' \
  --data-urlencode 'theme={{theme}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_set_communities_view_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.htmlstring כן
$.oneOf[0].allOf[1].Payload.stateobject כן
$.oneOf[0].allOf[1].Payload.state.activeKeystring כן
$.oneOf[0].allOf[1].Payload.state.expanded כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0].*boolean לא
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[1]array כן
$.oneOf[0].allOf[1].Payload.state.itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].todoboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].hide_when_rightbar_visibleboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_headerobject לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.items[].sort = "communities" לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].conditionstring לאLegacy static submenu visibility callback identifier, retained as inert text by ToClientState.
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].persist_when_emptyboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrsobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrs.*string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].default_expandedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[1]null לא
$.oneOf[0].allOf[1].Payload.state.plans כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[1]null כן
$.oneOf[0].allOf[1].Payload.state.appMenu = null כן
$.oneOf[0].allOf[1].Payload.state.mobileHeaderobject כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.communitiesSortBystring ["latest_post","name"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigationobject כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.MembershipFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopesarray כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopes[]string ["status","activity"] לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CommunityOrderFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payloadPersonalNavigationBubbles כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].* לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[0]integer לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[1] = false לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2]object לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].labelstring כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[1]array כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/set_communities_view",
    "RequestUserAlias": "example-user",
    "Payload": {
        "html": "<aside>Example navigation</aside>",
        "state": {
            "activeKey": "synthetic-example",
            "expanded": [],
            "items": [],
            "plans": {
                "sortBy": "upcoming",
                "groupBy": "city",
                "groups": [],
                "hasArchivedPlans": false
            },
            "appMenu": null,
            "mobileHeader": {
                "primary": "search",
                "cta": "post"
            },
            "communitiesSortBy": "latest_post",
            "personalNavigation": {
                "CompleteScopes": [],
                "payload": []
            }
        }
    }
}
תיעוד נקודת קצה קריא למכונה
POST

/v1/sidebar/set_expanded

#
Toggle the expand/collapse state of a top-level submenu and persist the choice to the user's `atv2_sidebar_expanded` cookie. Returns the post-mutation {html, state} so the client can swap the rendered nav block. The cookie is the source of truth for SSR re-renders. The shared browser runtime writes this same cookie directly; this endpoint remains available for API clients that need the cookie and rendered response together.

פרמטרים

שםסוגחובהברירת מחדלתיאור
itemKey string כן — Submenu key (must match a sidebar item's key). Named `itemKey` rather than `key` to avoid colliding with the apiv1 dispatcher's reserved `key=` auth parameter.
expanded bool כן — True to expand, false to collapse.
activeNavKey string לא "" Current page's active sidebar key.
theme string לא "upscale_at" Theme name; defaults to "upscale_at".
isWritingRequest bool לא false Set true to actually write the cookie.
דוגמת בקשה (cURL)
curl --request POST \
  'https://he.appointmenttrader.com/v1/sidebar/set_expanded' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'itemKey={{itemKey}}' \
  --data-urlencode 'expanded={{expanded}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}' \
  --data-urlencode 'theme={{theme}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_set_expanded_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.htmlstring כן
$.oneOf[0].allOf[1].Payload.stateobject כן
$.oneOf[0].allOf[1].Payload.state.activeKeystring כן
$.oneOf[0].allOf[1].Payload.state.expanded כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0].*boolean לא
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[1]array כן
$.oneOf[0].allOf[1].Payload.state.itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].todoboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].hide_when_rightbar_visibleboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_headerobject לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.items[].sort = "communities" לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].conditionstring לאLegacy static submenu visibility callback identifier, retained as inert text by ToClientState.
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].persist_when_emptyboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrsobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrs.*string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].default_expandedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[1]null לא
$.oneOf[0].allOf[1].Payload.state.plans כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[1]null כן
$.oneOf[0].allOf[1].Payload.state.appMenu = null כן
$.oneOf[0].allOf[1].Payload.state.mobileHeaderobject כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.communitiesSortBystring ["latest_post","name"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigationobject כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.MembershipFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopesarray כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopes[]string ["status","activity"] לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CommunityOrderFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payloadPersonalNavigationBubbles כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].* לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[0]integer לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[1] = false לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2]object לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].labelstring כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[1]array כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/set_expanded",
    "RequestUserAlias": "example-user",
    "Payload": {
        "html": "<aside>Example navigation</aside>",
        "state": {
            "activeKey": "synthetic-example",
            "expanded": [],
            "items": [],
            "plans": {
                "sortBy": "upcoming",
                "groupBy": "city",
                "groups": [],
                "hasArchivedPlans": false
            },
            "appMenu": null,
            "mobileHeader": {
                "primary": "search",
                "cta": "post"
            },
            "communitiesSortBy": "latest_post",
            "personalNavigation": {
                "CompleteScopes": [],
                "payload": []
            }
        }
    }
}
תיעוד נקודת קצה קריא למכונה
POST

/v1/sidebar/set_plans_view

#
Persist the user's preferred sort mode for the v2 sidebar's "Your Plans" block (city-grouped appointments). The choice is written to the `atv2_sidebar_plans_view` cookie so subsequent SSR renders pick it up; the response carries the freshly-rendered {html, state} so the client can swap the rendered nav + plans without a follow-up.

פרמטרים

שםסוגחובהברירת מחדלתיאור
sortBy string כן — Sort mode: "upcoming" (most upcoming first; default) or "name" (alphabetical city name).
activeNavKey string לא "" Current page's active sidebar key.
theme string לא "upscale_at" Theme name; defaults to "upscale_at".
isWritingRequest bool לא false Set true to actually write the cookie.
דוגמת בקשה (cURL)
curl --request POST \
  'https://he.appointmenttrader.com/v1/sidebar/set_plans_view' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'sortBy={{sortBy}}' \
  --data-urlencode 'activeNavKey={{activeNavKey}}' \
  --data-urlencode 'theme={{theme}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

ערך מוחזר

JSON
See the shared response schema and synthetic example.
שדות התגובה
שדהסוגחובהתיאור
$sidebar_set_plans_view_Response כן
$.oneOf[0] כן
$.oneOf[0].allOf[0]object כן
$.oneOf[0].allOf[0].RequestUserAliasstring כן
$.oneOf[0].allOf[0].RequestPathstring | null כן
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" כן
$.oneOf[0].allOf[0].ResponseCodeinteger כן
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object כן
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring לא
$.oneOf[0].allOf[1]object כן
$.oneOf[0].allOf[1].Payloadobject כן
$.oneOf[0].allOf[1].Payload.htmlstring כן
$.oneOf[0].allOf[1].Payload.stateobject כן
$.oneOf[0].allOf[1].Payload.state.activeKeystring כן
$.oneOf[0].allOf[1].Payload.state.expanded כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[0].*boolean לא
$.oneOf[0].allOf[1].Payload.state.expanded.anyOf[1]array כן
$.oneOf[0].allOf[1].Payload.state.itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].todoboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].hide_when_rightbar_visibleboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_headerobject לא
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.items[].mobile_header.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.items[].sort = "communities" לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].itemsarray כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].keystring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].label_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].iconstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].hrefstring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].rolestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badgeobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.typestring ["count","money","icon","dot","status"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.bubble_keystring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[0]string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[1]number לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[2]boolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3]object לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.value.anyOf[3].labelstring כן
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.tonestring לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].status_badge.guidanceboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].activeboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].bookmark_post_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].unfollow_board_idinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].is_pinnedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].pin_sort_orderinteger לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].items[].conditionstring לאLegacy static submenu visibility callback identifier, retained as inert text by ToClientState.
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].persist_when_emptyboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrsobject לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].wrapper_attrs.*string לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[0].default_expandedboolean לא
$.oneOf[0].allOf[1].Payload.state.items[].submenu.anyOf[1]null לא
$.oneOf[0].allOf[1].Payload.state.plans כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].sortBystring ["upcoming","name"] כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupBy = "city" כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groupsarray כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[]object לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityCodestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].cityNamestring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].emojistring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].citySlugstring כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastCountinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastAppointmentsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastBidsinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].upcomingSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].groups[].pastSoldSalesinteger כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubblesobject לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].bubbles.*integer לא
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[0].hasArchivedPlansboolean כן
$.oneOf[0].allOf[1].Payload.state.plans.anyOf[1]null כן
$.oneOf[0].allOf[1].Payload.state.appMenu = null כן
$.oneOf[0].allOf[1].Payload.state.mobileHeaderobject כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.primarystring ["search","ticker","title","brand"] כן
$.oneOf[0].allOf[1].Payload.state.mobileHeader.ctastring ["post","search-icon","none"] כן
$.oneOf[0].allOf[1].Payload.state.communitiesSortBystring ["latest_post","name"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigationobject כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.MembershipFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopesarray כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CompleteScopes[]string ["status","activity"] לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.CommunityOrderFingerprintstring לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payloadPersonalNavigationBubbles כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0]object כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].* לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[0]integer לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[1] = false לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2]object לא
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].codestring ["pending","answer-required"] כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[0].*.anyOf[2].labelstring כן
$.oneOf[0].allOf[1].Payload.state.personalNavigation.payload.anyOf[1]array כן
$.oneOf[1]object כן
$.oneOf[1].RequestUserAliasstring כן
$.oneOf[1].RequestPathstring | null כן
$.oneOf[1].RequestStatus = "Failed" כן
$.oneOf[1].ResponseCodeinteger כן
$.oneOf[1].ResponseMessageAPIResponseMessage כן
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null כן
$.oneOf[1].ResponseMessage.oneOf[1]array כן
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage לא
$.oneOf[1].ResponseMessage.oneOf[2]object כן
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage לא
$.oneOf[1].RequestImpersonatedByUserAliasstring לא
דוגמת תגובה
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/sidebar/set_plans_view",
    "RequestUserAlias": "example-user",
    "Payload": {
        "html": "<aside>Example navigation</aside>",
        "state": {
            "activeKey": "synthetic-example",
            "expanded": [],
            "items": [],
            "plans": {
                "sortBy": "upcoming",
                "groupBy": "city",
                "groups": [],
                "hasArchivedPlans": false
            },
            "appMenu": null,
            "mobileHeader": {
                "primary": "search",
                "cta": "post"
            },
            "communitiesSortBy": "latest_post",
            "personalNavigation": {
                "CompleteScopes": [],
                "payload": []
            }
        }
    }
}
תיעוד נקודת קצה קריא למכונה