MobileAgentState stores information about the current run. Custom tools can read it through ctx.shared_state.
Field
Description
step_number
Current execution step
platform
Active device platform
formatted_device_state
Current screen and UI elements
current_package_name
Current app package
action_history
Actions already performed
action_outcomes
Success or failure of each action
agent_memory
Facts saved by the Manager or FastAgent during this run
custom_variables
Values passed through MobileAgent(variables=...)
finished
Whether the run has finished
success
Whether the run succeeded
Was this page helpful?
⌘I
{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"Mobilerun","colors":{"primary":"#4566D9","light":"#73A0FF","dark":"#4566D9"},"logo":{"light":"https://mintcdn.com/mobilerun/dj4o2PD1fQzmydpp/logo/dark.svg?fit=max\u0026auto=format\u0026n=dj4o2PD1fQzmydpp\u0026q=85\u0026s=94794bb3cda4a2b043ae10ae8c62de4d","dark":"https://mintcdn.com/mobilerun/dj4o2PD1fQzmydpp/logo/light.svg?fit=max\u0026auto=format\u0026n=dj4o2PD1fQzmydpp\u0026q=85\u0026s=48f04fef89a01ee7524aba18bc42e98c","href":"https://mobilerun.ai"},"favicon":{"light":"https://mintcdn.com/mobilerun/3WD57gGwKcqvkcxT/favicon.png?fit=max\u0026auto=format\u0026n=3WD57gGwKcqvkcxT\u0026q=85\u0026s=18b3ce5f77441e67930307555c63dce1","dark":"https://mintcdn.com/mobilerun/3WD57gGwKcqvkcxT/favicon-dark.png?fit=max\u0026auto=format\u0026n=3WD57gGwKcqvkcxT\u0026q=85\u0026s=5de0002e3ece75d65013ce83fb6d0c67"},"background":{"color":{"light":"#FBFAF7","dark":"#0F0D0B"}},"navbar":{"primary":{"type":"button","label":"Get Started","href":"https://cloud.mobilerun.ai"}},"footer":{"socials":{"github":"https://github.com/droidrun/droidrun","x":"https://x.com/droid_run","discord":"https://discord.gg/droidrun","website":"https://mobilerun.ai"}},"fonts":{"family":"Geist"},"icons":{"library":"lucide"},"integrations":{"posthog":{"apiKey":"phc_3BmiVdnS2Wvlm007eHGZLBPwRFCVVWzIZXbB0u3ZH1d","apiHost":"https://pineapple.droidrun.ai"}},"errors":{"404":{"redirect":false}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"mobilerun","hasAudioNarration":false,"actualSubdomain":"mobilerun","customDomains":["docs.mobilerun.ai"],"gitSource":{"type":"github","owner":"droidrun","repo":"mobilerun-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae213e4661bff0c6e738d56","collectionId":"10530db3-e25a-4ea4-ba0a-67a6f99ff391","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae213e4661bff0c6e738d56"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae213e4661bff0c6e738d56","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"Cloud","count":244},{"language":"default","tag":"API Reference","count":198},{"language":"default","tag":"Phones","count":92},{"language":"default","tag":"Guides","count":59},{"language":"default","tag":"Tools","count":49},{"language":"default","tag":"Workflows","count":42},{"language":"default","tag":"Tasks","count":26},{"language":"default","tag":"Framework","count":24},{"language":"default","tag":"Flows","count":20},{"language":"default","tag":"Webhooks","count":18}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"custom.css","content":":root{--brand-background:#FBFAF7;--brand-foreground:#272320;--brand-card:#FFFDFA;--brand-popover:#FFFDFA;--brand-card-foreground:#272320;--brand-primary-foreground:#F7F8FC;--brand-secondary:#F3F0EA;--brand-secondary-foreground:#272320;--brand-muted:#F3F0EA;--brand-muted-foreground:#76706C;--brand-accent:#E0EBFF;--brand-accent-foreground:#273C81;--brand-destructive:#C74C41;--brand-destructive-foreground:#FDFCF9;--brand-border:#E6E4E0;--brand-input:#F5F3EF;--brand-sidebar:#F7F5F1;--brand-sidebar-foreground:#312D2A;--brand-sidebar-border:#E6E4E0;--brand-chart-1:#4566D9;--brand-chart-2:#00A0C5;--brand-chart-3:#9878E5;--brand-chart-4:#CD9130;--brand-chart-5:#009A7B}html.dark{--brand-background:#0F0D0B;--brand-foreground:#E6E4E1;--brand-card:#161311;--brand-popover:#1A1816;--brand-card-foreground:#E6E4E1;--brand-primary-foreground:#0E111B;--brand-secondary:#1D1A18;--brand-secondary-foreground:#E6E4E1;--brand-muted:#1A1816;--brand-muted-foreground:#9C9793;--brand-accent:#1C2746;--brand-accent-foreground:#BAD0FF;--brand-destructive:#C5372F;--brand-destructive-foreground:#F0EEEB;--brand-border:#24211F;--brand-input:#1F1C1A;--brand-sidebar:#14110F;--brand-sidebar-foreground:#D9D7D4;--brand-sidebar-border:#24211F;--brand-chart-1:#73A0FF;--brand-chart-2:#1EBDE3;--brand-chart-3:#AC8FF8;--brand-chart-4:#E4AC59;--brand-chart-5:#30B69A}#content-area{max-width:none!important}@media (min-width:1280px){#content-area,.docs-content,.mdx-content,.prose{max-width:900px!important}}@media (min-width:1536px){#content-area,.docs-content,.mdx-content,.prose{max-width:1000px!important}}@media (min-width:1920px){#content-area,.docs-content,.mdx-content,.prose{max-width:1200px!important}}@media (min-width:2560px){#content-area,.docs-content,.mdx-content,.prose{max-width:1600px!important}}@media (min-width:1280px){main{max-width:none!important}.container{max-width:1400px!important}}@media (min-width:1920px){.container{max-width:1600px!important}}@media (min-width:2560px){.container{max-width:1800px!important}}a[href=\"https://mobilerun.ai\"]{height:auto!important;max-height:none!important}img[src*=\"/logo/dark.svg\"],img[src*=\"/logo/light.svg\"]{height:2rem!important;max-height:none!important;width:auto!important}html[data-current-path^=\"/framework\"]{--primary:217 119 87;--primary-light:232 153 120;--primary-dark:181 90 62}html[data-current-path^=\"/framework\"] a[href=\"https://mobilerun.ai\"] img[src*=\"/logo/light.svg\"]{content:url(/framework/logo/light.svg)}html[data-current-path^=\"/framework\"] a[href=\"https://mobilerun.ai\"] img[src*=\"/logo/dark.svg\"]{content:url(/framework/logo/dark.svg)}html[data-current-path^=\"/framework\"] a[href=\"https://mobilerun.ai\"] img[src*=\"/logo/dark.svg\"],html[data-current-path^=\"/framework\"] a[href=\"https://mobilerun.ai\"] img[src*=\"/logo/light.svg\"]{height:1.7rem!important;transform:translate(2px,2px)}html[data-current-path^=\"/framework\"] a[href=\"https://mobilerun.ai\"]{display:inline-flex!important;align-items:center!important}img[src$=\"/logo/assistant-light.svg\"]{width:24px!important;height:24px!important;max-width:none;flex-shrink:0}.dark img[src$=\"/logo/assistant-light.svg\"]{content:url(/logo/assistant-dark.svg)}"}],"page":{"pagePath":"framework/concepts/shared-state","slug":"/framework/concepts/shared-state","pageMetadata":{"title":"Shared State","description":"State available to custom tools during a Mobilerun task.","href":"/framework/concepts/shared-state"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"State available to custom tools during a Mobilerun task.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`shared-state`,children:`Shared State`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`MobileAgentState`}),` stores information about the current run. Custom tools can read it through `,_jsx(_components.code,{children:`ctx.shared_state`}),`.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`step_number`})}),_jsx(_components.td,{children:`Current execution step`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`platform`})}),_jsx(_components.td,{children:`Active device platform`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`formatted_device_state`})}),_jsx(_components.td,{children:`Current screen and UI elements`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`current_package_name`})}),_jsx(_components.td,{children:`Current app package`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`action_history`})}),_jsx(_components.td,{children:`Actions already performed`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`action_outcomes`})}),_jsx(_components.td,{children:`Success or failure of each action`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`agent_memory`})}),_jsx(_components.td,{children:`Facts saved by the Manager or FastAgent during this run`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`custom_variables`})}),_jsxs(_components.td,{children:[`Values passed through `,_jsx(_components.code,{children:`MobileAgent(variables=...)`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`finished`})}),_jsx(_components.td,{children:`Whether the run has finished`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`success`})}),_jsx(_components.td,{children:`Whether the run succeeded`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Shared State","description":"State available to custom tools during a Mobilerun task.","href":"/framework/concepts/shared-state"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Shared State","slug":"shared-state","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"mobilerun","siteName":"Mobilerun","title":"Shared State - Mobilerun","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-18T12:53:39.449Z","originalFileLocation":"framework/concepts/shared-state.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"State available to custom tools during a Mobilerun task.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Mobilerun\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Shared State - Mobilerun\">\u003cmeta data-mint-head property=\"og:description\" content=\"State available to custom tools during a Mobilerun task.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Mobilerun\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mobilerun.ai/framework/concepts/shared-state\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mobilerun.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Shared+State\u0026amp;description=State+available+to+custom+tools+during+a+Mobilerun+task.\u0026amp;theme=5028ffe8122f3fae85f0c05b\u0026amp;signature=c5c63f0e244a4e430459f945d4474aa9f764b4a43a7a5f24e84d35d2ae42d214\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Shared State - Mobilerun\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"State available to custom tools during a Mobilerun task.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mobilerun.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Shared+State\u0026amp;description=State+available+to+custom+tools+during+a+Mobilerun+task.\u0026amp;theme=5028ffe8122f3fae85f0c05b\u0026amp;signature=c5c63f0e244a4e430459f945d4474aa9f764b4a43a7a5f24e84d35d2ae42d214\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/mobilerun/0rQTQmMhNsQvIVRn/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Mobilerun\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4566D9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mobilerun.ai/framework/concepts/shared-state\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/framework/concepts/shared-state.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mobilerun.ai/#organization\",\"name\":\"Mobilerun\",\"url\":\"https://docs.mobilerun.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/mobilerun/dj4o2PD1fQzmydpp/logo/dark.svg?fit=max\u0026auto=format\u0026n=dj4o2PD1fQzmydpp\u0026q=85\u0026s=94794bb3cda4a2b043ae10ae8c62de4d\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mobilerun.ai#website\",\"name\":\"Mobilerun\",\"url\":\"https://docs.mobilerun.ai\",\"publisher\":{\"@id\":\"https://docs.mobilerun.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mobilerun.ai/framework/concepts/shared-state#webpage\",\"url\":\"https://docs.mobilerun.ai/framework/concepts/shared-state\",\"name\":\"Shared State\",\"description\":\"State available to custom tools during a Mobilerun task.\",\"dateModified\":\"2026-08-18T12:53:39.449Z\",\"isPartOf\":{\"@id\":\"https://docs.mobilerun.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mobilerun.ai/framework/concepts/shared-state#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mobilerun.ai/framework/concepts/shared-state#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Architecture\",\"item\":\"https://docs.mobilerun.ai/framework/concepts/architecture\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Shared State\",\"item\":\"https://docs.mobilerun.ai/framework/concepts/shared-state\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.mobilerun.ai/framework/concepts/shared-state#article\",\"headline\":\"Shared State\",\"name\":\"Shared State\",\"description\":\"State available to custom tools during a Mobilerun task.\",\"url\":\"https://docs.mobilerun.ai/framework/concepts/shared-state\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mobilerun.ai/framework/concepts/shared-state#webpage\"},\"dateModified\":\"2026-08-18T12:53:39.449Z\",\"publisher\":{\"@id\":\"https://docs.mobilerun.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mobilerun.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Mobilerun\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Mobilerun","nav":{"global":null,"dropdowns":[{"dropdown":"Cloud","icon":"cloud","color":{"light":"#4566D9","dark":"#73A0FF"},"tabs":[{"tab":"Guides","icon":"book","groups":[{"group":"Get started","icon":"rocket","pages":[{"sidebarTitle":"Choose your path","title":"Quickstart","href":"/quickstart"},{"sidebarTitle":"Run your first task","title":"Cloud Quickstart","href":"/cloud/quickstart"},{"title":"API Keys","href":"/api-keys"},{"sidebarTitle":"Credits \u0026 billing","title":"Credits","href":"/credits"},{"title":"Get help","sidebarTitle":"Get help","href":"/support"}]},{"group":"Phones","icon":"smartphone","pages":[{"sidebarTitle":"Choose a phone","title":"Device Types","href":"/device-types"},{"sidebarTitle":"Manage devices","title":"Devices","href":"/devices"},{"group":"Set up a phone","icon":"settings","pages":[{"title":"Android Phone Setup","href":"/guides/android-phone-setup"},{"title":"Connect an Android","href":"/guides/connect-android"},{"title":"Connect an iPhone","href":"/guides/connect-iphone"}]},{"group":"iOS CLI \u0026 signing","icon":"apple","pages":[{"sidebarTitle":"CLI overview","title":"CLI overview","href":"/mobilerun-ios/overview"},{"title":"Migrate to v0.5.0","sidebarTitle":"Migrate to v0.5.0","href":"/mobilerun-ios/migrate-v0-5"},{"title":"Setup and verification","href":"/mobilerun-ios/setup-and-verify"},{"title":"WDA signing","href":"/mobilerun-ios/wda-signing"},{"title":"Configuration","href":"/mobilerun-ios/configuration"},{"title":"Automatic onboarding","href":"/mobilerun-ios/auto"}]}]},{"group":"Apps \u0026 networking","icon":"network","pages":[{"title":"Apps","href":"/apps"},{"sidebarTitle":"App credentials","title":"Credentials","href":"/credentials"},{"sidebarTitle":"Connect \u0026 proxies","title":"Proxies","href":"/proxies"}]},{"group":"Run automation","icon":"play","pages":[{"sidebarTitle":"Configure the agent","title":"Agent","href":"/agent"},{"title":"Playground","href":"/playground"},{"sidebarTitle":"Monitor tasks","title":"Tasks","href":"/tasks"},{"title":"Webhooks","href":"/webhooks"}]},{"group":"Integrations","icon":"plug","pages":[{"title":"MCP Server","href":"/mcp-server"},{"title":"n8n","href":"/n8n"},{"title":"Embed a device stream in your app","href":"/guides/embed-device-stream"},{"group":"Agent skills","icon":"puzzle","pages":[{"sidebarTitle":"Choose a skill","title":"Agent Skills","href":"/skills/overview"},{"title":"OpenClaw · Android Control","href":"/skills/openclaw"},{"title":"Mobilerun Assistant","href":"/skills/assistant"},{"title":"Mobilerun Assistant · MCP","href":"/skills/assistant-mcp"},{"title":"Mobile Harness · Coding Agents","href":"/skills/mobile-harness"}]}]},{"group":"Developer tools","icon":"terminal","pages":[{"title":"ADB","href":"/integrations/adb"},{"title":"Browser Automation","href":"/browser-automation"},{"title":"Port Forwarding","href":"/port-forwarding"},{"title":"Network inspection","href":"/integrations/network-inspection"}]}]},{"tab":"Assistant","icon":"https://mintlify.s3.us-west-1.amazonaws.com/mobilerun/logo/assistant-light.svg","groups":[{"group":"Get started","icon":"rocket","pages":[{"sidebarTitle":"What is Assistant?","title":"Overview","href":"/assistant/overview"},{"title":"Getting started","href":"/assistant/getting-started"},{"sidebarTitle":"Phones, apps \u0026 accounts","title":"Devices","href":"/assistant/devices"}]},{"group":"Workflows \u0026 results","icon":"workflow","pages":[{"title":"Workflows","href":"/assistant/workflows"},{"title":"Results","href":"/assistant/results"},{"title":"Tasks and recordings","href":"/assistant/tasks-and-recordings"}]},{"group":"Connections \u0026 notifications","icon":"bell","pages":[{"title":"Integrations","href":"/assistant/integrations"},{"sidebarTitle":"Notifications","title":"Get notified by the assistant","href":"/assistant/notifications"}]},{"group":"Control \u0026 personalization","icon":"sliders-horizontal","pages":[{"title":"Human in the loop","href":"/assistant/human-in-the-loop"},{"title":"Memory and skills","href":"/assistant/memory-and-skills"},{"title":"Limits and costs","href":"/assistant/limits-and-costs"}]}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Phones","pages":[{"group":"Tools","pages":[{"group":"Apps","pages":[{"title":"List apps","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/apps","href":"/api-reference/apps/list-apps"},{"title":"Install app","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/apps","href":"/api-reference/apps/install-app"},{"title":"List app installs","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/apps/installs","href":"/api-reference/apps/list-app-installs"},{"title":"Open a deep link","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/apps/open-deep-link","href":"/api-reference/apps/open-a-deep-link"},{"title":"Start app","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml put /devices/{deviceId}/apps/{packageName}","href":"/api-reference/apps/start-app"},{"title":"Delete app","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/apps/{packageName}","href":"/api-reference/apps/delete-app"},{"title":"Stop app","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml patch /devices/{deviceId}/apps/{packageName}","href":"/api-reference/apps/stop-app"},{"title":"Grant app permission","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml put /devices/{deviceId}/apps/{packageName}/permissions/{permission}","href":"/api-reference/apps/grant-app-permission"},{"title":"Revoke app permission","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/apps/{packageName}/permissions/{permission}","href":"/api-reference/apps/revoke-app-permission"},{"title":"List packages","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/packages","href":"/api-reference/apps/list-packages"}]},{"group":"Browser","pages":[{"title":"Execute JavaScript in the device's Chrome browser (CDP)","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/browser/execute-script","href":"/api-reference/browser/execute-javascript-in-the-devices-chrome-browser-cdp"}]},{"group":"Recordings","pages":[{"title":"List device recordings","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/recordings","href":"/api-reference/recordings/list-device-recordings"},{"title":"Start a device recording","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/recordings","href":"/api-reference/recordings/start-a-device-recording"},{"title":"Get a device recording","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/recordings/{recordingId}","href":"/api-reference/recordings/get-a-device-recording"},{"title":"Stop a device recording","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/recordings/{recordingId}","href":"/api-reference/recordings/stop-a-device-recording"},{"title":"Delete a device recording","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/recordings/{recordingId}","href":"/api-reference/recordings/delete-a-device-recording"},{"title":"List a device recording's saved screenshots","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/recordings/{recordingId}/screenshots","href":"/api-reference/recordings/list-a-device-recordings-saved-screenshots"},{"title":"Get a device recording trajectory","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/recordings/{recordingId}/trajectory","href":"/api-reference/recordings/get-a-device-recording-trajectory"},{"title":"Get a device recording video","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/recordings/{recordingId}/video","href":"/api-reference/recordings/get-a-device-recording-video"}]},{"group":"Files","pages":[{"title":"List files","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/files","href":"/api-reference/files/list-files"},{"title":"Upload file","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/files","href":"/api-reference/files/upload-file"},{"title":"Delete file","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/files","href":"/api-reference/files/delete-file"},{"title":"Download file","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/files/download","href":"/api-reference/files/download-file"}]},{"group":"Navigation","pages":[{"title":"Perform a global action","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/global","href":"/api-reference/navigation/perform-a-global-action"},{"title":"Input key","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml put /devices/{deviceId}/keyboard","href":"/api-reference/navigation/input-key"},{"title":"Input text","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/keyboard","href":"/api-reference/navigation/input-text"},{"title":"Clear input","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/keyboard","href":"/api-reference/navigation/clear-input"},{"title":"Take screenshot","deprecated":true,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/screenshot","href":"/api-reference/navigation/take-screenshot"},{"title":"Swipe","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/swipe","href":"/api-reference/navigation/swipe"},{"title":"Tap by coordinates","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/tap","href":"/api-reference/navigation/tap-by-coordinates"},{"title":"UI state","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/ui-state","href":"/api-reference/navigation/ui-state"}]},{"group":"Proxy","pages":[{"title":"Get proxy connection state","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/proxy","href":"/api-reference/proxy/get-proxy-connection-state"},{"title":"Connect proxy","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/proxy","href":"/api-reference/proxy/connect-proxy"},{"title":"Disconnect proxy","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/proxy","href":"/api-reference/proxy/disconnect-proxy"}]},{"group":"Misc","pages":[{"title":"Get device clipboard","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/clipboard","href":"/api-reference/misc/get-device-clipboard"},{"title":"Set device clipboard","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/clipboard","href":"/api-reference/misc/set-device-clipboard"},{"title":"Device fingerprint snapshot","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/fingerprint","href":"/api-reference/misc/device-fingerprint-snapshot"},{"title":"Enable kiosk (lock-task) mode","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml put /devices/{deviceId}/kiosk","href":"/api-reference/misc/enable-kiosk-lock-task-mode"},{"title":"Disable kiosk (lock-task) mode","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/kiosk","href":"/api-reference/misc/disable-kiosk-lock-task-mode"},{"title":"Get device language/locale","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/language","href":"/api-reference/misc/get-device-languagelocale"},{"title":"Set device language/locale","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/language","href":"/api-reference/misc/set-device-languagelocale"},{"title":"Get device location","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/location","href":"/api-reference/misc/get-device-location"},{"title":"Set device location","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/location","href":"/api-reference/misc/set-device-location"},{"title":"Reset the device location to default","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml delete /devices/{deviceId}/location","href":"/api-reference/misc/reset-the-device-location-to-default"},{"title":"Check if overlay is visible","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/overlay","href":"/api-reference/misc/check-if-overlay-is-visible"},{"title":"Set overlay visibility","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/overlay","href":"/api-reference/misc/set-overlay-visibility"},{"title":"Device time","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/time","href":"/api-reference/misc/device-time"},{"title":"Get device timezone","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml get /devices/{deviceId}/timezone","href":"/api-reference/misc/get-device-timezone"},{"title":"Set device timezone","deprecated":null,"version":null,"openapi":"/api-reference/phones/tools.yaml post /devices/{deviceId}/timezone","href":"/api-reference/misc/set-device-timezone"}]}]},{"group":"Devices","pages":[{"title":"List devices","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices","href":"/api-reference/devices/list-devices"},{"title":"Provision a new device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /devices","href":"/api-reference/devices/provision-a-new-device"},{"title":"Count claimed devices","deprecated":true,"version":null,"openapi":"/api-reference/phones.yaml get /devices/count","href":"/api-reference/devices/count-claimed-devices"},{"title":"Summarize claimed devices","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices/summary","href":"/api-reference/devices/summarize-claimed-devices"},{"title":"Get device info","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices/{deviceId}","href":"/api-reference/devices/get-device-info"},{"title":"Terminate a device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml delete /devices/{deviceId}","href":"/api-reference/devices/terminate-a-device"},{"title":"Get capabilities for a specific device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices/{deviceId}/capabilities","href":"/api-reference/devices/get-capabilities-for-a-specific-device"},{"title":"Update device name","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml put /devices/{deviceId}/name","href":"/api-reference/devices/update-device-name"},{"title":"Reboot a device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /devices/{deviceId}/reboot","href":"/api-reference/devices/reboot-a-device"},{"title":"Reset a device to a fresh state","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /devices/{deviceId}/reset","href":"/api-reference/devices/reset-a-device-to-a-fresh-state"},{"title":"Resume (unpark) a stopped device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /devices/{deviceId}/resume","href":"/api-reference/devices/resume-unpark-a-stopped-device"},{"title":"Stop (park) a device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /devices/{deviceId}/stop","href":"/api-reference/devices/stop-park-a-device"},{"title":"List tasks for a device","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices/{deviceId}/tasks","href":"/api-reference/devices/list-tasks-for-a-device"},{"title":"Wait for device to be ready","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /devices/{deviceId}/wait","href":"/api-reference/devices/wait-for-device-to-be-ready"}]},{"group":"Apps Cloud Storage","pages":[{"title":"List apps","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /apps","href":"/api-reference/apps-cloud-storage/list-apps"},{"title":"Create a signed upload URL for an app","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /apps/create-signed-upload-url","href":"/api-reference/apps-cloud-storage/create-a-signed-upload-url-for-an-app"},{"title":"Get the user’s storage usage","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /apps/storage-usage","href":"/api-reference/apps-cloud-storage/get-the-user’s-storage-usage"},{"title":"Get app by ID","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /apps/{id}","href":"/api-reference/apps-cloud-storage/get-app-by-id"},{"title":"Delete uploaded app","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml delete /apps/{id}","href":"/api-reference/apps-cloud-storage/delete-uploaded-app"},{"title":"Confirm successful app upload","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /apps/{id}/confirm-upload","href":"/api-reference/apps-cloud-storage/confirm-successful-app-upload"},{"title":"Mark app upload as failed","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /apps/{id}/mark-failed","href":"/api-reference/apps-cloud-storage/mark-app-upload-as-failed"},{"title":"List versions for an app","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /apps/{id}/versions","href":"/api-reference/apps-cloud-storage/list-versions-for-an-app"}]},{"group":"App Credentials","pages":[{"title":"List credentials","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /credentials","href":"/api-reference/app-credentials/list-credentials"},{"title":"List packages","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /credentials/packages","href":"/api-reference/app-credentials/list-packages"},{"title":"Initialize a new package/app","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /credentials/packages","href":"/api-reference/app-credentials/initialize-a-new-packageapp"},{"title":"List credentials for a specific package","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /credentials/packages/{packageName}","href":"/api-reference/app-credentials/list-credentials-for-a-specific-package"},{"title":"Create a credential","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /credentials/packages/{packageName}","href":"/api-reference/app-credentials/create-a-credential"},{"title":"Get a credential","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml get /credentials/packages/{packageName}/credentials/{credentialName}","href":"/api-reference/app-credentials/get-a-credential"},{"title":"Delete a credential and all its fields","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml delete /credentials/packages/{packageName}/credentials/{credentialName}","href":"/api-reference/app-credentials/delete-a-credential-and-all-its-fields"},{"title":"Add a credential field","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml post /credentials/packages/{packageName}/credentials/{credentialName}/fields","href":"/api-reference/app-credentials/add-a-credential-field"},{"title":"Delete a field from a credential","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml delete /credentials/packages/{packageName}/credentials/{credentialName}/fields/{fieldType}","href":"/api-reference/app-credentials/delete-a-field-from-a-credential"},{"title":"Update the value of a credential field","deprecated":null,"version":null,"openapi":"/api-reference/phones.yaml patch /credentials/packages/{packageName}/credentials/{credentialName}/fields/{fieldType}","href":"/api-reference/app-credentials/update-the-value-of-a-credential-field"}]}]},{"group":"Mobilerun Proxy","pages":[{"group":"Countries","pages":[{"title":"List available countries","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml get /connect/countries","href":"/api-reference/countries/list-available-countries"}]},{"group":"Users","pages":[{"title":"List SOCKS5 users","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml get /connect/users","href":"/api-reference/users/list-socks5-users"},{"title":"Create a SOCKS5 user","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml post /connect/users","href":"/api-reference/users/create-a-socks5-user"},{"title":"Get a SOCKS5 user by ID","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml get /connect/users/{id}","href":"/api-reference/users/get-a-socks5-user-by-id"},{"title":"Delete a SOCKS5 user","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml delete /connect/users/{id}","href":"/api-reference/users/delete-a-socks5-user"},{"title":"Update a SOCKS5 user","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml patch /connect/users/{id}","href":"/api-reference/users/update-a-socks5-user"},{"title":"List connections by SOCKS5 user","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-proxy.yaml get /connect/users/{id}/connections","href":"/api-reference/users/list-connections-by-socks5-user"}]}]},{"group":"Mobilerun Numbers","pages":[{"group":"Numbers","pages":[{"title":"List phone numbers","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/phones","href":"/api-reference/numbers/list-phone-numbers"},{"title":"Purchase a phone number","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml post /numbers/phones","href":"/api-reference/numbers/purchase-a-phone-number"},{"title":"Get included phone-number capacity for a country","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/phones/capacity","href":"/api-reference/numbers/get-included-phone-number-capacity-for-a-country"},{"title":"List dedicated-number countries","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/phones/countries","href":"/api-reference/numbers/list-dedicated-number-countries"},{"title":"Get phone number by id","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/phones/{id}","href":"/api-reference/numbers/get-phone-number-by-id"},{"title":"Cancel a phone-number purchase or an active rental","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml delete /numbers/phones/{id}","href":"/api-reference/numbers/cancel-a-phone-number-purchase-or-an-active-rental"},{"title":"Update a phone number's display label","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml patch /numbers/phones/{id}","href":"/api-reference/numbers/update-a-phone-numbers-display-label"},{"title":"List messages (inbox + outbox) on a number","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/phones/{id}/messages","href":"/api-reference/numbers/list-messages-inbox-+-outbox-on-a-number"}]},{"group":"Messages","pages":[{"title":"Send an SMS from a number","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml post /numbers/phones/{id}/messages","href":"/api-reference/messages/send-an-sms-from-a-number"},{"title":"List the caller's own SMS inbox/outbox messages","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/messages","href":"/api-reference/messages/list-the-callers-own-sms-inboxoutbox-messages"},{"title":"List the caller's own SMS conversations, one row per thread","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/messages/conversations","href":"/api-reference/messages/list-the-callers-own-sms-conversations-one-row-per-thread"},{"title":"Mark a conversation's inbound messages read up to a cursor","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml post /numbers/messages/conversations/read","href":"/api-reference/messages/mark-a-conversations-inbound-messages-read-up-to-a-cursor"},{"title":"Get one of the caller's SMS messages","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-numbers.yaml get /numbers/messages/{id}","href":"/api-reference/messages/get-one-of-the-callers-sms-messages"}]}]},{"group":"Mobilerun Mailbox","pages":[{"group":"Mailboxes","pages":[{"title":"List mailboxes","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes","href":"/api-reference/mailboxes/list-mailboxes"},{"title":"Claim or rent a mailbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml post /mailboxes","href":"/api-reference/mailboxes/claim-or-rent-a-mailbox"},{"title":"Get included mailbox capacity","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/capacity","href":"/api-reference/mailboxes/get-included-mailbox-capacity"},{"title":"Connect a Gmail inbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml post /mailboxes/connections","href":"/api-reference/mailboxes/connect-a-gmail-inbox"},{"title":"Poll a Gmail inbox connection","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/connections/{connectionId}","href":"/api-reference/mailboxes/poll-a-gmail-inbox-connection"},{"title":"Get a mailbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/{mailboxId}","href":"/api-reference/mailboxes/get-a-mailbox"},{"title":"Cancel or archive a mailbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml delete /mailboxes/{mailboxId}","href":"/api-reference/mailboxes/cancel-or-archive-a-mailbox"},{"title":"Update a mailbox label","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml patch /mailboxes/{mailboxId}","href":"/api-reference/mailboxes/update-a-mailbox-label"},{"title":"Unlink a Gmail inbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml post /mailboxes/{mailboxId}/disconnect","href":"/api-reference/mailboxes/unlink-a-gmail-inbox"},{"title":"Get the best OTP candidate","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/{mailboxId}/otp","href":"/api-reference/mailboxes/get-the-best-otp-candidate"},{"title":"Restart rent on an archived mailbox","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml post /mailboxes/{mailboxId}/restart","href":"/api-reference/mailboxes/restart-rent-on-an-archived-mailbox"},{"title":"Undo a scheduled cancellation","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml post /mailboxes/{mailboxId}/uncancel","href":"/api-reference/mailboxes/undo-a-scheduled-cancellation"}]},{"group":"Mailbox Messages","pages":[{"title":"List mailbox messages","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/{mailboxId}/messages","href":"/api-reference/mailbox-messages/list-mailbox-messages"},{"title":"Get a mailbox message","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-mailbox.yaml get /mailboxes/{mailboxId}/messages/{messageId}","href":"/api-reference/mailbox-messages/get-a-mailbox-message"}]}]},{"group":"Mobilerun VA Chat","pages":[{"group":"Chat","pages":[{"title":"Abort the named session's in-flight chat turn","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/abort","href":"/api-reference/chat/abort-the-named-sessions-in-flight-chat-turn"},{"title":"Send a single user message","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/message","href":"/api-reference/chat/send-a-single-user-message"},{"title":"List messages for a chat session","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml get /assistant/chat/messages","href":"/api-reference/chat/list-messages-for-a-chat-session"},{"title":"Deliver a HITL approval/rejection to the user's active chat session","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/permission","href":"/api-reference/chat/deliver-a-hitl-approvalrejection-to-the-users-active-chat-session"},{"title":"Deliver a question answer to the user's active chat session","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/question","href":"/api-reference/chat/deliver-a-question-answer-to-the-users-active-chat-session"},{"title":"Dismiss an outstanding question without answering","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/question/reject","href":"/api-reference/chat/dismiss-an-outstanding-question-without-answering"},{"title":"List the user's named chat or agent-workflow sessions","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml get /assistant/chat/sessions","href":"/api-reference/chat/list-the-users-named-chat-or-agent-workflow-sessions"},{"title":"Create a named chat session","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /assistant/chat/sessions","href":"/api-reference/chat/create-a-named-chat-session"},{"title":"Rename, archive, or pin a named chat session","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml patch /assistant/chat/sessions/{id}","href":"/api-reference/chat/rename-archive-or-pin-a-named-chat-session"},{"title":"Re-attach to the active turn stream","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml get /assistant/chat/stream","href":"/api-reference/chat/re-attach-to-the-active-turn-stream"}]},{"group":"Files","pages":[{"title":"List the user's ready files, optionally filtered by zone","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml get /agents/files","href":"/api-reference/files/list-the-users-ready-files-optionally-filtered-by-zone"},{"title":"Mint a presigned PUT URL for a user file upload","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /agents/files/upload-url","href":"/api-reference/files/mint-a-presigned-put-url-for-a-user-file-upload"},{"title":"Hard-delete a file","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml delete /agents/files/{fileId}","href":"/api-reference/files/hard-delete-a-file"},{"title":"Update file metadata (skills zone only)","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml patch /agents/files/{fileId}","href":"/api-reference/files/update-file-metadata-skills-zone-only"},{"title":"Confirm a file upload by server-side HEAD validation","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml post /agents/files/{fileId}/confirm","href":"/api-reference/files/confirm-a-file-upload-by-server-side-head-validation"},{"title":"Download an owned file","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml get /agents/files/{fileId}/download","href":"/api-reference/files/download-an-owned-file"},{"title":"Cancel a pending upload (transitions to expired, deletes the underlying object)","deprecated":null,"version":null,"openapi":"/api-reference/mobilerun-va-chat.yaml delete /agents/files/{fileId}/pending","href":"/api-reference/files/cancel-a-pending-upload-transitions-to-expired-deletes-the-underlying-object"}]}]},{"group":"Tasks","pages":[{"group":"Tasks","pages":[{"title":"List Tasks","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks","href":"/api-reference/tasks/list-tasks"},{"title":"Run Task","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml post /tasks","href":"/api-reference/tasks/run-task"},{"title":"Run Streamed Task","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml post /tasks/stream","href":"/api-reference/tasks/run-streamed-task"},{"title":"Get Task","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}","href":"/api-reference/tasks/get-task"},{"title":"Attach Task","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/attach","href":"/api-reference/tasks/attach-task"},{"title":"Stop Task","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml post /tasks/{task_id}/cancel","href":"/api-reference/tasks/stop-task"},{"title":"Send Message","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml post /tasks/{task_id}/message","href":"/api-reference/tasks/send-message"},{"title":"Get Task Screenshots","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/screenshots","href":"/api-reference/tasks/get-task-screenshots"},{"title":"Get Task Screenshot","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/screenshots/{index}","href":"/api-reference/tasks/get-task-screenshot"},{"title":"Get Task Status","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/status","href":"/api-reference/tasks/get-task-status"},{"title":"Get Task Trajectory","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/trajectory","href":"/api-reference/tasks/get-task-trajectory"},{"title":"Get Task Ui States","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/ui_states","href":"/api-reference/tasks/get-task-ui-states"},{"title":"Get Task Ui State","deprecated":null,"version":null,"openapi":"/api-reference/tasks.yaml get /tasks/{task_id}/ui_states/{index}","href":"/api-reference/tasks/get-task-ui-state"}]}]},{"group":"Workflows","pages":[{"group":"Triggers","pages":[{"title":"List triggers","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /triggers","href":"/api-reference/triggers/list-triggers"},{"title":"Create a trigger","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /triggers","href":"/api-reference/triggers/create-a-trigger"},{"title":"Get a trigger","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /triggers/{triggerId}","href":"/api-reference/triggers/get-a-trigger"},{"title":"Delete a trigger","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml delete /triggers/{triggerId}","href":"/api-reference/triggers/delete-a-trigger"},{"title":"Update a trigger","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml patch /triggers/{triggerId}","href":"/api-reference/triggers/update-a-trigger"},{"title":"Fire a custom trigger with payload","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /triggers/{triggerId}/fire","href":"/api-reference/triggers/fire-a-custom-trigger-with-payload"}]},{"group":"Actions","pages":[{"title":"List actions","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /actions","href":"/api-reference/actions/list-actions"},{"title":"Create an action","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /actions","href":"/api-reference/actions/create-an-action"},{"title":"List available services","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /actions/services","href":"/api-reference/actions/list-available-services"},{"title":"List allowed methods for a service","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /actions/services/{service}/methods","href":"/api-reference/actions/list-allowed-methods-for-a-service"},{"title":"Get an action","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /actions/{actionId}","href":"/api-reference/actions/get-an-action"},{"title":"Delete an action","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml delete /actions/{actionId}","href":"/api-reference/actions/delete-an-action"},{"title":"Update an action","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml patch /actions/{actionId}","href":"/api-reference/actions/update-an-action"}]},{"group":"Action Catalog","pages":[{"title":"List action catalog entries","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /action-catalog","href":"/api-reference/action-catalog/list-action-catalog-entries"},{"title":"Get a catalog entry","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /action-catalog/{catalogEntryId}","href":"/api-reference/action-catalog/get-a-catalog-entry"}]},{"group":"Flows","pages":[{"title":"List flows","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows","href":"/api-reference/flows/list-flows"},{"title":"Create a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows","href":"/api-reference/flows/create-a-flow"},{"title":"Get routine capacity","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/capacity","href":"/api-reference/flows/get-routine-capacity"},{"title":"Get flow template context","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/template-context","href":"/api-reference/flows/get-flow-template-context"},{"title":"Validate a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/validate","href":"/api-reference/flows/validate-a-flow"},{"title":"Get a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/{flowId}","href":"/api-reference/flows/get-a-flow"},{"title":"Archive a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml delete /flows/{flowId}","href":"/api-reference/flows/archive-a-flow"},{"title":"Update a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml patch /flows/{flowId}","href":"/api-reference/flows/update-a-flow"},{"title":"List actions for a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/{flowId}/actions","href":"/api-reference/flows/list-actions-for-a-flow"},{"title":"Replace all actions for a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml put /flows/{flowId}/actions","href":"/api-reference/flows/replace-all-actions-for-a-flow"},{"title":"Add an action to a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/actions","href":"/api-reference/flows/add-an-action-to-a-flow"},{"title":"Remove an action from a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml delete /flows/{flowId}/actions/{flowActionId}","href":"/api-reference/flows/remove-an-action-from-a-flow"},{"title":"Activate a verified flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/activate","href":"/api-reference/flows/activate-a-verified-flow"},{"title":"Clone a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/clone","href":"/api-reference/flows/clone-a-flow"},{"title":"Get flow delivery options","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/{flowId}/delivery-options","href":"/api-reference/flows/get-flow-delivery-options"},{"title":"Dry-run a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/dry-run","href":"/api-reference/flows/dry-run-a-flow"},{"title":"List self-healing repair episodes","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /flows/{flowId}/repairs","href":"/api-reference/flows/list-self-healing-repair-episodes"},{"title":"Run a flow now","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/run","href":"/api-reference/flows/run-a-flow-now"},{"title":"Unblock a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/unblock","href":"/api-reference/flows/unblock-a-flow"},{"title":"Verify a flow","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /flows/{flowId}/verify","href":"/api-reference/flows/verify-a-flow"}]},{"group":"Events","pages":[{"title":"Simulate event matching (dry run)","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /events/dry-run","href":"/api-reference/events/simulate-event-matching-dry-run"},{"title":"Ingest an event","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /events/ingest","href":"/api-reference/events/ingest-an-event"}]},{"group":"Executions","pages":[{"title":"List flow executions","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /executions","href":"/api-reference/executions/list-flow-executions"},{"title":"Get execution metrics","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /executions/metrics","href":"/api-reference/executions/get-execution-metrics"},{"title":"Get execution details","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /executions/{executionId}","href":"/api-reference/executions/get-execution-details"},{"title":"Abort a running or pending execution","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml post /executions/{executionId}/abort","href":"/api-reference/executions/abort-a-running-or-pending-execution"},{"title":"Redirect to a freshly signed screenshot URL","deprecated":null,"version":null,"openapi":"/api-reference/workflows.yaml get /executions/{executionId}/screenshots/{screenshotId}","href":"/api-reference/executions/redirect-to-a-freshly-signed-screenshot-url"}]}]},{"group":"Webhooks","pages":[{"group":"Webhooks","pages":[{"title":"List your webhook subscriptions","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks","href":"/api-reference/webhooks/list-your-webhook-subscriptions"},{"title":"Register a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml post /webhooks","href":"/api-reference/webhooks/register-a-webhook-subscription"},{"title":"Get a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks/{id}","href":"/api-reference/webhooks/get-a-webhook-subscription"},{"title":"Delete a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml delete /webhooks/{id}","href":"/api-reference/webhooks/delete-a-webhook-subscription"},{"title":"Update a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml patch /webhooks/{id}","href":"/api-reference/webhooks/update-a-webhook-subscription"},{"title":"Rotate signing secret","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml post /webhooks/{id}/rotate-secret","href":"/api-reference/webhooks/rotate-signing-secret"},{"title":"Send a one-shot test delivery","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml post /webhooks/{id}/test","href":"/api-reference/webhooks/send-a-one-shot-test-delivery"}]},{"group":"Webhook Deliveries","pages":[{"title":"List deliveries across all your webhooks","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks/deliveries","href":"/api-reference/webhook-deliveries/list-deliveries-across-all-your-webhooks"},{"title":"Get delivery statistics","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks/deliveries/stats","href":"/api-reference/webhook-deliveries/get-delivery-statistics"},{"title":"List deliveries for a webhook","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks/{id}/deliveries","href":"/api-reference/webhook-deliveries/list-deliveries-for-a-webhook"},{"title":"Get a delivery with its attempts","deprecated":null,"version":null,"openapi":"/api-reference/webhooks.yaml get /webhooks/{id}/deliveries/{deliveryId}","href":"/api-reference/webhook-deliveries/get-a-delivery-with-its-attempts"}]}]}]}]},{"dropdown":"Framework","icon":"code","color":{"light":"#D97757","dark":"#D97757"},"tabs":[{"tab":"Guides","icon":"book","groups":[{"group":"Get started","icon":"rocket","pages":[{"sidebarTitle":"Framework overview","title":"Overview","href":"/framework/overview"},{"title":"Quickstart","href":"/framework/quickstart"},{"sidebarTitle":"Setup guides","title":"Overview","href":"/framework/guides/overview"},{"title":"Device Setup","href":"/framework/guides/device-setup"},{"title":"Quickstart with Docker","href":"/framework/guides/docker"}]},{"group":"Build an agent","icon":"bot","pages":[{"title":"CLI Usage","href":"/framework/guides/cli"},{"title":"Configuration","href":"/framework/sdk/configuration"},{"title":"Vision Mode","href":"/framework/features/vision"},{"title":"Structured Output","href":"/framework/features/structured-output"},{"title":"Credential Management","href":"/framework/features/credentials"}]},{"group":"Customize behavior","icon":"wrench","pages":[{"title":"App Instruction Cards","href":"/framework/features/app-cards"},{"title":"Custom Tools","href":"/framework/features/custom-tools"},{"title":"Custom Variables","href":"/framework/features/custom-variables"},{"title":"Prompt Templates","href":"/framework/concepts/prompts"}]},{"group":"Observe \u0026 debug","icon":"activity","pages":[{"title":"Tracing","href":"/framework/features/tracing"},{"title":"Event Streaming","href":"/framework/concepts/events-and-workflows"},{"title":"Telemetry","href":"/framework/features/telemetry"}]},{"group":"Architecture","icon":"layers","pages":[{"title":"Architecture","description":"Understanding the Mobilerun multi-agent system for device automation.","href":"/framework/concepts/architecture"},{"title":"Shared State","href":"/framework/concepts/shared-state"}]},{"group":"Python reference","icon":"book-open","pages":[{"sidebarTitle":"Reference overview","title":"Reference","description":"Complete API reference for Mobilerun components and tools","href":"/framework/sdk/reference"},{"title":"MobileAgent","href":"/framework/sdk/droid-agent"},{"title":"AndroidDriver","href":"/framework/sdk/adb-tools"},{"title":"iOS Driver","href":"/framework/sdk/ios-tools"},{"title":"DeviceDriver Base Class","href":"/framework/sdk/base-tools"}]}]}]}]},"title":"Shared State - Mobilerun","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":[],"chunks":[]}