[{"data":1,"prerenderedAt":482},["ShallowReactive",2],{"navigation_docs":3,"-docs-dashboard-staffs":303,"-docs-dashboard-staffs-surround":477},[4,22,35,56,112,174,205,233,257,278],{"title":5,"path":6,"stem":7,"children":8,"page":21},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[9,13,17],{"title":10,"path":11,"stem":12},"Overview","\u002Fdocs\u002Fgetting-started\u002Foverview","docs\u002F1.getting-started\u002F1.overview",{"title":14,"path":15,"stem":16},"Integration checklist","\u002Fdocs\u002Fgetting-started\u002Fintegration-checklist","docs\u002F1.getting-started\u002F2.integration-checklist",{"title":18,"path":19,"stem":20},"Environments and base URLs","\u002Fdocs\u002Fgetting-started\u002Fenvironments-and-base-urls","docs\u002F1.getting-started\u002F3.environments-and-base-urls",false,{"title":23,"path":24,"stem":25,"children":26,"page":21},"Troubleshooting","\u002Fdocs\u002Ftroubleshooting","docs\u002F10.troubleshooting",[27,31],{"title":28,"path":29,"stem":30},"Common errors","\u002Fdocs\u002Ftroubleshooting\u002Fcommon-errors","docs\u002F10.troubleshooting\u002F1.common-errors",{"title":32,"path":33,"stem":34},"Support escalation","\u002Fdocs\u002Ftroubleshooting\u002Fsupport-escalation","docs\u002F10.troubleshooting\u002F2.support-escalation",{"title":36,"path":37,"stem":38,"children":39,"page":21},"Integration Flow","\u002Fdocs\u002Fintegration-flow","docs\u002F2.integration-flow",[40,44,48,52],{"title":41,"path":42,"stem":43},"Architecture","\u002Fdocs\u002Fintegration-flow\u002Farchitecture","docs\u002F2.integration-flow\u002F1.architecture",{"title":45,"path":46,"stem":47},"Launch session model","\u002Fdocs\u002Fintegration-flow\u002Flaunch-session-model","docs\u002F2.integration-flow\u002F2.launch-session-model",{"title":49,"path":50,"stem":51},"Order and wallet saga","\u002Fdocs\u002Fintegration-flow\u002Forder-and-wallet-saga","docs\u002F2.integration-flow\u002F3.order-and-wallet-saga",{"title":53,"path":54,"stem":55},"FX fees and rounding","\u002Fdocs\u002Fintegration-flow\u002Ffx-fees-and-rounding","docs\u002F2.integration-flow\u002F4.fx-fees-and-rounding",{"title":57,"path":58,"stem":59,"children":60,"page":21},"Dashboard","\u002Fdocs\u002Fdashboard","docs\u002F3.dashboard",[61,64,68,72,76,80,84,88,92,96,100,104,108],{"title":10,"path":62,"stem":63},"\u002Fdocs\u002Fdashboard\u002Foverview","docs\u002F3.dashboard\u002F1.overview",{"title":65,"path":66,"stem":67},"Webhook Deliveries","\u002Fdocs\u002Fdashboard\u002Fwebhook-deliveries","docs\u002F3.dashboard\u002F10.webhook-deliveries",{"title":69,"path":70,"stem":71},"Staffs","\u002Fdocs\u002Fdashboard\u002Fstaffs","docs\u002F3.dashboard\u002F11.staffs",{"title":73,"path":74,"stem":75},"Simulator","\u002Fdocs\u002Fdashboard\u002Fsimulator","docs\u002F3.dashboard\u002F12.simulator",{"title":77,"path":78,"stem":79},"API Playground","\u002Fdocs\u002Fdashboard\u002Fapi-playground","docs\u002F3.dashboard\u002F13.api-playground",{"title":81,"path":82,"stem":83},"API keys","\u002Fdocs\u002Fdashboard\u002Fapi-keys","docs\u002F3.dashboard\u002F2.api-keys",{"title":85,"path":86,"stem":87},"Wallet adapter settings","\u002Fdocs\u002Fdashboard\u002Fwallet-adapter-settings","docs\u002F3.dashboard\u002F3.wallet-adapter-settings",{"title":89,"path":90,"stem":91},"Webhook endpoints","\u002Fdocs\u002Fdashboard\u002Fwebhook-endpoints","docs\u002F3.dashboard\u002F4.webhook-endpoints",{"title":93,"path":94,"stem":95},"Markets and visibility","\u002Fdocs\u002Fdashboard\u002Fmarket-visibility","docs\u002F3.dashboard\u002F5.market-visibility",{"title":97,"path":98,"stem":99},"Users","\u002Fdocs\u002Fdashboard\u002Fusers","docs\u002F3.dashboard\u002F6.users",{"title":101,"path":102,"stem":103},"Trades","\u002Fdocs\u002Fdashboard\u002Ftrades","docs\u002F3.dashboard\u002F7.trades",{"title":105,"path":106,"stem":107},"Resolutions","\u002Fdocs\u002Fdashboard\u002Fresolutions","docs\u002F3.dashboard\u002F8.resolutions",{"title":109,"path":110,"stem":111},"Balance Operations","\u002Fdocs\u002Fdashboard\u002Fbalance-operations","docs\u002F3.dashboard\u002F9.balance-operations",{"title":113,"path":114,"stem":115,"children":116,"page":21},"Operator Api","\u002Fdocs\u002Foperator-api","docs\u002F4.operator-api",[117,121,124,128,131,135,138,142,146,149,153,157,160,164,167,170],{"title":118,"path":119,"stem":120},"Authentication","\u002Fdocs\u002Foperator-api\u002Fauthentication","docs\u002F4.operator-api\u002F1.authentication",{"title":89,"path":122,"stem":123},"\u002Fdocs\u002Foperator-api\u002Fwebhook-endpoints","docs\u002F4.operator-api\u002F10.webhook-endpoints",{"title":125,"path":126,"stem":127},"Webhook deliveries","\u002Fdocs\u002Foperator-api\u002Fwebhook-deliveries","docs\u002F4.operator-api\u002F11.webhook-deliveries",{"title":73,"path":129,"stem":130},"\u002Fdocs\u002Foperator-api\u002Fsimulator","docs\u002F4.operator-api\u002F12.simulator",{"title":132,"path":133,"stem":134},"Wallet adapter","\u002Fdocs\u002Foperator-api\u002Fwallet-adapter","docs\u002F4.operator-api\u002F13.wallet-adapter",{"title":69,"path":136,"stem":137},"\u002Fdocs\u002Foperator-api\u002Fstaffs","docs\u002F4.operator-api\u002F14.staffs",{"title":139,"path":140,"stem":141},"Error codes","\u002Fdocs\u002Foperator-api\u002Ferror-codes","docs\u002F4.operator-api\u002F15.error-codes",{"title":143,"path":144,"stem":145},"Redemptions","\u002Fdocs\u002Foperator-api\u002Fredemptions","docs\u002F4.operator-api\u002F16.redemptions",{"title":81,"path":147,"stem":148},"\u002Fdocs\u002Foperator-api\u002Fapi-keys","docs\u002F4.operator-api\u002F2.api-keys",{"title":150,"path":151,"stem":152},"Session","\u002Fdocs\u002Foperator-api\u002Fsession","docs\u002F4.operator-api\u002F3.session",{"title":154,"path":155,"stem":156},"Launch","\u002Fdocs\u002Foperator-api\u002Flaunch","docs\u002F4.operator-api\u002F4.launch",{"title":97,"path":158,"stem":159},"\u002Fdocs\u002Foperator-api\u002Fusers","docs\u002F4.operator-api\u002F5.users",{"title":161,"path":162,"stem":163},"Markets","\u002Fdocs\u002Foperator-api\u002Fmarkets","docs\u002F4.operator-api\u002F6.markets",{"title":101,"path":165,"stem":166},"\u002Fdocs\u002Foperator-api\u002Ftrades","docs\u002F4.operator-api\u002F7.trades",{"title":105,"path":168,"stem":169},"\u002Fdocs\u002Foperator-api\u002Fresolutions","docs\u002F4.operator-api\u002F8.resolutions",{"title":171,"path":172,"stem":173},"Balance operations","\u002Fdocs\u002Foperator-api\u002Fbalance-operations","docs\u002F4.operator-api\u002F9.balance-operations",{"title":175,"path":176,"stem":177,"children":178,"page":21},"Wallet Adapter","\u002Fdocs\u002Fwallet-adapter","docs\u002F5.wallet-adapter",[179,182,185,189,193,197,201],{"title":10,"path":180,"stem":181},"\u002Fdocs\u002Fwallet-adapter\u002Foverview","docs\u002F5.wallet-adapter\u002F1.overview",{"title":118,"path":183,"stem":184},"\u002Fdocs\u002Fwallet-adapter\u002Fauthentication","docs\u002F5.wallet-adapter\u002F2.authentication",{"title":186,"path":187,"stem":188},"Balance","\u002Fdocs\u002Fwallet-adapter\u002Fbalance","docs\u002F5.wallet-adapter\u002F3.balance",{"title":190,"path":191,"stem":192},"Debit","\u002Fdocs\u002Fwallet-adapter\u002Fdebit","docs\u002F5.wallet-adapter\u002F4.debit",{"title":194,"path":195,"stem":196},"Credit","\u002Fdocs\u002Fwallet-adapter\u002Fcredit","docs\u002F5.wallet-adapter\u002F5.credit",{"title":198,"path":199,"stem":200},"Debit reversal","\u002Fdocs\u002Fwallet-adapter\u002Fdebit-reversal","docs\u002F5.wallet-adapter\u002F6.debit-reversal",{"title":202,"path":203,"stem":204},"Idempotency","\u002Fdocs\u002Fwallet-adapter\u002Fidempotency","docs\u002F5.wallet-adapter\u002F7.idempotency",{"title":206,"path":207,"stem":208,"children":209,"page":21},"Webhooks","\u002Fdocs\u002Fwebhooks","docs\u002F6.webhooks",[210,213,217,221,225,229],{"title":10,"path":211,"stem":212},"\u002Fdocs\u002Fwebhooks\u002Foverview","docs\u002F6.webhooks\u002F1.overview",{"title":214,"path":215,"stem":216},"Signatures","\u002Fdocs\u002Fwebhooks\u002Fsignatures","docs\u002F6.webhooks\u002F2.signatures",{"title":218,"path":219,"stem":220},"Event envelope","\u002Fdocs\u002Fwebhooks\u002Fevent-envelope","docs\u002F6.webhooks\u002F3.event-envelope",{"title":222,"path":223,"stem":224},"Event types","\u002Fdocs\u002Fwebhooks\u002Fevent-types","docs\u002F6.webhooks\u002F4.event-types",{"title":226,"path":227,"stem":228},"Retry and replay","\u002Fdocs\u002Fwebhooks\u002Fretry-and-replay","docs\u002F6.webhooks\u002F5.retry-and-replay",{"title":230,"path":231,"stem":232},"Receiver examples","\u002Fdocs\u002Fwebhooks\u002Freceiver-examples","docs\u002F6.webhooks\u002F6.receiver-examples",{"title":234,"path":235,"stem":236,"children":237,"page":21},"Testing And Staging","\u002Fdocs\u002Ftesting-and-staging","docs\u002F7.testing-and-staging",[238,242,245,249,253],{"title":239,"path":240,"stem":241},"Staging overview","\u002Fdocs\u002Ftesting-and-staging\u002Fstaging-overview","docs\u002F7.testing-and-staging\u002F1.staging-overview",{"title":73,"path":243,"stem":244},"\u002Fdocs\u002Ftesting-and-staging\u002Fsimulator","docs\u002F7.testing-and-staging\u002F2.simulator",{"title":246,"path":247,"stem":248},"Wallet failure drills","\u002Fdocs\u002Ftesting-and-staging\u002Fwallet-failure-drills","docs\u002F7.testing-and-staging\u002F3.wallet-failure-drills",{"title":250,"path":251,"stem":252},"Webhook drills","\u002Fdocs\u002Ftesting-and-staging\u002Fwebhook-drills","docs\u002F7.testing-and-staging\u002F4.webhook-drills",{"title":254,"path":255,"stem":256},"Production cutover rehearsal","\u002Fdocs\u002Ftesting-and-staging\u002Fproduction-cutover-rehearsal","docs\u002F7.testing-and-staging\u002F5.production-cutover-rehearsal",{"title":258,"path":259,"stem":260,"children":261,"page":21},"Production Readiness","\u002Fdocs\u002Fproduction-readiness","docs\u002F8.production-readiness",[262,266,270,274],{"title":263,"path":264,"stem":265},"Checklist","\u002Fdocs\u002Fproduction-readiness\u002Fchecklist","docs\u002F8.production-readiness\u002F1.checklist",{"title":267,"path":268,"stem":269},"Operational runbook","\u002Fdocs\u002Fproduction-readiness\u002Foperational-runbook","docs\u002F8.production-readiness\u002F2.operational-runbook",{"title":271,"path":272,"stem":273},"Security","\u002Fdocs\u002Fproduction-readiness\u002Fsecurity","docs\u002F8.production-readiness\u002F3.security",{"title":275,"path":276,"stem":277},"Rollback","\u002Fdocs\u002Fproduction-readiness\u002Frollback","docs\u002F8.production-readiness\u002F4.rollback",{"title":279,"path":280,"stem":281,"children":282,"page":21},"Reference","\u002Fdocs\u002Freference","docs\u002F9.reference",[283,287,291,295,299],{"title":284,"path":285,"stem":286},"Statuses","\u002Fdocs\u002Freference\u002Fstatuses","docs\u002F9.reference\u002F1.statuses",{"title":288,"path":289,"stem":290},"Scopes","\u002Fdocs\u002Freference\u002Fscopes","docs\u002F9.reference\u002F2.scopes",{"title":292,"path":293,"stem":294},"Units and money","\u002Fdocs\u002Freference\u002Funits-and-money","docs\u002F9.reference\u002F3.units-and-money",{"title":296,"path":297,"stem":298},"Changelog","\u002Fdocs\u002Freference\u002Fchangelog","docs\u002F9.reference\u002F4.changelog",{"title":300,"path":301,"stem":302},"Virtual AMM","\u002Fdocs\u002Freference\u002Fvirtual-amm","docs\u002F9.reference\u002F5.virtual-amm",{"id":304,"title":69,"body":305,"description":470,"extension":471,"links":472,"meta":473,"navigation":474,"path":70,"seo":475,"stem":71,"__hash__":476},"docs\u002Fdocs\u002F3.dashboard\u002F11.staffs.md",{"type":306,"value":307,"toc":463},"minimark",[308,312,316,321,327,333,339,342,346,368,372,395,399,402,405,408,412,415,450,459],[309,310,69],"h1",{"id":311},"staffs",[313,314,315],"p",{},"Staffs is the operator-side access-control surface for human dashboard accounts.",[317,318,320],"h2",{"id":319},"dashboard-path","Dashboard path",[313,322,323],{},[324,325,326],"code",{},"Operator Dashboard → Integrations → Staffs",[313,328,329,330],{},"Required scope: ",[324,331,332],{},"staffs:read",[313,334,335,336],{},"Mutation scope: ",[324,337,338],{},"staffs:write",[313,340,341],{},"Staff APIs require a human staff session. Operator API keys cannot create, edit, disable, or reset staff accounts.",[317,343,345],{"id":344},"what-operators-can-do","What operators can do",[347,348,349,353,356,359,362,365],"ul",{},[350,351,352],"li",{},"create staff accounts by email",[350,354,355],{},"assign dashboard scopes",[350,357,358],{},"edit display names",[350,360,361],{},"enable or disable staff membership",[350,363,364],{},"reset another staff member's password",[350,366,367],{},"see last login and must-change-password state",[317,369,371],{"id":370},"scope-assignment-rules","Scope assignment rules",[347,373,374,380,383,389,392],{},[350,375,376,379],{},[324,377,378],{},"*"," is not assignable to newly created dashboard staff through this UI.",[350,381,382],{},"Write scopes automatically include the matching read scope when one exists.",[350,384,385,386,388],{},"A staff member can assign only scopes they already hold, unless they have ",[324,387,378],{},".",[350,390,391],{},"A staff member cannot update or disable their own access.",[350,393,394],{},"Access and password changes revoke the target staff member's active sessions.",[317,396,398],{"id":397},"onboarding-password-behavior","Onboarding password behavior",[313,400,401],{},"Create and reset flows attempt to email a temporary password.",[313,403,404],{},"If email delivery succeeds, the API does not return the temporary password.",[313,406,407],{},"If email delivery fails, the dashboard can show the temporary password once as a fallback so the operator can complete onboarding manually.",[317,409,411],{"id":410},"source-api","Source API",[313,413,414],{},"The page uses staff-session bearer auth against:",[416,417,422],"pre",{"className":418,"code":419,"language":420,"meta":421,"style":421},"language-http shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","GET \u002Fapi\u002Foperator\u002Fstaff\nPOST \u002Fapi\u002Foperator\u002Fstaff\nPATCH \u002Fapi\u002Foperator\u002Fstaff\u002F{membership_id}\nPOST \u002Fapi\u002Foperator\u002Fstaff\u002F{membership_id}\u002Freset-password\n","http","",[324,423,424,432,438,444],{"__ignoreMap":421},[425,426,429],"span",{"class":427,"line":428},"line",1,[425,430,431],{},"GET \u002Fapi\u002Foperator\u002Fstaff\n",[425,433,435],{"class":427,"line":434},2,[425,436,437],{},"POST \u002Fapi\u002Foperator\u002Fstaff\n",[425,439,441],{"class":427,"line":440},3,[425,442,443],{},"PATCH \u002Fapi\u002Foperator\u002Fstaff\u002F{membership_id}\n",[425,445,447],{"class":427,"line":446},4,[425,448,449],{},"POST \u002Fapi\u002Foperator\u002Fstaff\u002F{membership_id}\u002Freset-password\n",[313,451,452,453,458],{},"See ",[454,455,456],"a",{"href":136},[324,457,136],{}," for request and response details.",[460,461,462],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":421,"searchDepth":434,"depth":434,"links":464},[465,466,467,468,469],{"id":319,"depth":434,"text":320},{"id":344,"depth":434,"text":345},{"id":370,"depth":434,"text":371},{"id":397,"depth":434,"text":398},{"id":410,"depth":434,"text":411},"Manage human Operator Dashboard staff accounts and dashboard permissions.","md",null,{},true,{"title":69,"description":470},"q_34d67Y29S9BM8wyzMrQQX3-cr2_r89kPGqiVWPIxI",[478,480],{"title":65,"path":66,"stem":67,"description":479,"children":-1},"Inspect callback delivery attempts and replay existing events.",{"title":73,"path":74,"stem":75,"description":481,"children":-1},"Use staging-only simulator launch and wallet tools.",1785840662837]