Use the SDK’s browser API for navigation, selectors, mouse and keyboard actions, and access to page content. Input commands use human emulation.If you use another framework to control the browser, the SDK can start the session and provide its connection URL. Your framework handles page operations; the SDK handles the session lifecycle. See the Python Playwright example.
Both clients expose profile management, proxy lookups, fingerprint values, extensions, and account limits. They parse API responses into objects and raise SDK exceptions for failed resource calls.You can also call the REST API directly. The framework guides show complete examples without an SDK dependency.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Surfsky","description":"Surfsky cloud browser for automation and scraping","colors":{"primary":"#111111","light":"#ffffff","dark":"#767676"},"logo":{"light":"https://mintcdn.com/llcfzecyberfinity/sOzW2rg1MprciyvQ/images/logo-light.svg?fit=max\u0026auto=format\u0026n=sOzW2rg1MprciyvQ\u0026q=85\u0026s=c6cc1d7d380cb1803815c2369dc6f6c2","dark":"https://mintcdn.com/llcfzecyberfinity/sOzW2rg1MprciyvQ/images/logo-dark.svg?fit=max\u0026auto=format\u0026n=sOzW2rg1MprciyvQ\u0026q=85\u0026s=de57992e58089755f7cd4f3d518da18f","href":"https://surfsky.io"},"favicon":{"light":"https://mintcdn.com/llcfzecyberfinity/sOzW2rg1MprciyvQ/images/favicon-light.svg?fit=max\u0026auto=format\u0026n=sOzW2rg1MprciyvQ\u0026q=85\u0026s=435f78bbb4fbb8acbf012947b73cbaf4","dark":"https://mintcdn.com/llcfzecyberfinity/sOzW2rg1MprciyvQ/images/favicon-dark.svg?fit=max\u0026auto=format\u0026n=sOzW2rg1MprciyvQ\u0026q=85\u0026s=26f98ca931286a0355c2f45a1ea9a892"},"appearance":{"default":"dark"},"background":{"color":{"light":"#ffffff","dark":"#111111"}},"navbar":{"links":[{"href":"https://surfsky.io","label":"Go to Website"}],"primary":{"type":"button","label":"Get Started","href":"https://surfsky.io/signin"}},"footer":{"socials":{"x":"https://x.com/surfskyio","github":"https://github.com/surfskyio","youtube":"https://www.youtube.com/@surfskyio","linkedin":"https://www.linkedin.com/company/surfskyio"}},"seo":{"metatags":{"canonical":"https://docs.surfsky.io","google-site-verification":"J4sdCp8jl5MCOHehI0AOmiPBlLduJLMGQrT4pTNwvU4","msvalidate.01":"C003BE57DE9AE70B5829DB3858FF8609"}},"integrations":{"gtm":{"tagId":"GTM-NX966VJC"}},"contextual":{"options":["copy","view","chatgpt","claude","download-spec"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"llcfzecyberfinity","hasAudioNarration":false,"actualSubdomain":"llcfzecyberfinity","customDomains":["docs.surfsky.io"],"gitSource":{"type":"github","owner":"surfskyio","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"3c9ed110-ebad-48ad-a688-d74a07e587c9","liveDeploymentHistoryId":"6ad79f5ce490102ca5a7bb06","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad79f5ce490102ca5a7bb06"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ada1c5725e5b97c63699f45","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API reference","count":37},{"language":"default","tag":"Documentation","count":37},{"language":"default","tag":"Profiles","count":14},{"language":"default","tag":"CAPTCHA guides","count":12},{"language":"default","tag":"Proxies","count":11},{"language":"default","tag":"Connect your tools","count":6},{"language":"default","tag":"SDKs","count":6},{"language":"default","tag":"Browser sessions","count":5},{"language":"default","tag":"Extensions","count":5},{"language":"default","tag":"Get started","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"editor-v7-file-tree","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":"editor-nav-generations","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":"editor-agent-model-picker","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":"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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#content-area span[id]:empty{display:block;scroll-margin-top:var(--scroll-mt, 8rem)}"}],"page":{"pagePath":"sdk","slug":"/sdk","pageMetadata":{"title":"SDKs","description":"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.","href":"/sdk"},"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: \"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\"\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={a:`a`,p:`p`,..._provideComponents(),...props.components},{Card,CardGroup,Heading}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Surfsky’s SDKs manage sessions, profiles, proxies, and account limits. They also provide browser actions and pools for processing multiple jobs.`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Python SDK`,href:`/sdk/python`,children:_jsx(_components.p,{children:`Python 3.12+. Async browser automation and sync or async REST calls.`})}),_jsx(Card,{title:`TypeScript SDK`,href:`/sdk/typescript`,children:_jsx(_components.p,{children:`Node.js 22+ or Bun. ES modules with TypeScript definitions.`})})]}),`\n`,_jsx(`span`,{id:`if-you-already-have-playwright-or-puppeteer`}),`\n`,_jsx(`span`,{id:`why-use-one`}),`\n`,_jsx(Heading,{level:`2`,id:`browser-actions-or-your-existing-framework`,children:`Browser actions or your existing framework`}),`\n`,_jsxs(_components.p,{children:[`Use the SDK’s browser API for navigation, selectors, mouse and keyboard actions, and access to page content. Input commands use `,_jsx(_components.a,{href:`/human_emulation`,children:`human emulation`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`If you use another framework to control the browser, the SDK can start the session and provide its connection URL. Your framework handles page operations; the SDK handles the session lifecycle. See the `,_jsx(_components.a,{href:`/sdk/python#use-playwright`,children:`Python Playwright example`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`rest-api-access`,children:`REST API access`}),`\n`,_jsx(_components.p,{children:`Both clients expose profile management, proxy lookups, fingerprint values, extensions, and account limits. They parse API responses into objects and raise SDK exceptions for failed resource calls.`}),`\n`,_jsxs(_components.p,{children:[`You can also call the `,_jsx(_components.a,{href:`/api-reference`,children:`REST API`}),` directly. The `,_jsx(_components.a,{href:`/quickstart#connect-your-existing-code`,children:`framework guides`}),` show complete examples without an SDK dependency.`]})]})}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":"SDKs","description":"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.","href":"/sdk"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Browser actions or your existing framework","slug":"browser-actions-or-your-existing-framework","depth":2,"children":[]},{"title":"REST API access","slug":"rest-api-access","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"llcfzecyberfinity","siteName":"Surfsky","title":"SDKs - Surfsky","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-07T13:21:28.030Z","originalFileLocation":"sdk.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=\"dark\"}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=\"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Surfsky\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_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/llcfzecyberfinity/SHqOt5EXHexpipeW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"SDKs - Surfsky\">\u003cmeta data-mint-head property=\"og:description\" content=\"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Surfsky\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.surfsky.io/sdk\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://llcfzecyberfinity.mintlify.app/_mintlify/api/og/v2?division=SDKs\u0026amp;title=SDKs\u0026amp;description=Choose+the+Python+or+TypeScript+client+for+browser+automation+and+the+Surfsky+REST+API.\u0026amp;theme=b88efaa132919559f01989e9\u0026amp;signature=3c65e2e839e9895a86045aa11736b5992c1977d1eb94a906249c60aa5364322a\">\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=\"SDKs - Surfsky\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://llcfzecyberfinity.mintlify.app/_mintlify/api/og/v2?division=SDKs\u0026amp;title=SDKs\u0026amp;description=Choose+the+Python+or+TypeScript+client+for+browser+automation+and+the+Surfsky+REST+API.\u0026amp;theme=b88efaa132919559f01989e9\u0026amp;signature=3c65e2e839e9895a86045aa11736b5992c1977d1eb94a906249c60aa5364322a\">\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/llcfzecyberfinity/SHqOt5EXHexpipeW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Surfsky\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#111111\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"J4sdCp8jl5MCOHehI0AOmiPBlLduJLMGQrT4pTNwvU4\">\u003cmeta data-mint-head name=\"msvalidate.01\" content=\"C003BE57DE9AE70B5829DB3858FF8609\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.surfsky.io/sdk\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/sdk.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.surfsky.io/#organization\",\"name\":\"Surfsky\",\"url\":\"https://docs.surfsky.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/llcfzecyberfinity/sOzW2rg1MprciyvQ/images/logo-light.svg?fit=max\u0026auto=format\u0026n=sOzW2rg1MprciyvQ\u0026q=85\u0026s=c6cc1d7d380cb1803815c2369dc6f6c2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.surfsky.io#website\",\"name\":\"Surfsky\",\"url\":\"https://docs.surfsky.io\",\"publisher\":{\"@id\":\"https://docs.surfsky.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.surfsky.io/sdk#webpage\",\"url\":\"https://docs.surfsky.io/sdk\",\"name\":\"SDKs\",\"description\":\"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\",\"dateModified\":\"2026-09-07T13:21:28.030Z\",\"isPartOf\":{\"@id\":\"https://docs.surfsky.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.surfsky.io/sdk#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.surfsky.io/sdk#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Surfsky\",\"item\":\"https://docs.surfsky.io\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SDKs\",\"item\":\"https://docs.surfsky.io/sdk\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.surfsky.io/sdk#article\",\"headline\":\"SDKs\",\"name\":\"SDKs\",\"description\":\"Choose the Python or TypeScript client for browser automation and the Surfsky REST API.\",\"url\":\"https://docs.surfsky.io/sdk\",\"mainEntityOfPage\":{\"@id\":\"https://docs.surfsky.io/sdk#webpage\"},\"dateModified\":\"2026-09-07T13:21:28.030Z\",\"publisher\":{\"@id\":\"https://docs.surfsky.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.surfsky.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Surfsky\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Surfsky","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"SDKs","pages":[{"group":"SDKs","pages":[{"title":"SDKs","href":"/sdk"},{"title":"Python SDK","description":"Install the Python SDK, automate a page, run concurrent jobs, and reuse a persistent profile.","href":"/sdk/python"},{"title":"TypeScript SDK","href":"/sdk/typescript"}]}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference"}]}]},"title":"SDKs - Surfsky","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":[],"chunks":[]}