List proxies with GET /isp/subscriptions/{subscriptionId}/proxies. Select 1–100 unique active public IPv4 addresses from the same subscription where rotation_eligible is true.Check rotations_remaining: it must cover the entire selection. The API validates all IPs before acceptance; invalid requests use no rotation units.
This request changes live proxies. Existing connections through replaced IPs may stop. Replace the example IPs with your selected IPs, then save and deploy the new connection details.
Acceptance returns 202, a Location path, and rotation.status_url. Wait at least Retry-After seconds (2 on acceptance), then poll the returned status URL with your API key. Use modest backoff between polls.accepted and processing mean keep polling. succeeded, partially_succeeded, and failed are final. Wait for results before using replacement connections.
Results follow the submitted IP order. Each successful item contains the complete replacement connection record. Failed items include an error and retryable flag.One confirmed IP replacement uses one rotation unit. Partial batches use units only for successful replacements. Check requested_count, succeeded_count, failed_count, and each result before deploying or retrying.Status requests return 200 for existing rotations, even on failure. Read rotation.status to determine the outcome.See the rotation status reference for full response examples.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"DoubleData Proxy Docs","colors":{"primary":"#006C49","light":"#007C55","dark":"#8DF0BF"},"logo":{"light":"https://mintcdn.com/doubledata/jHwTh-XFZAGAGU2t/logo/light.svg?fit=max\u0026auto=format\u0026n=jHwTh-XFZAGAGU2t\u0026q=85\u0026s=3b2052ff97e36c060810c2d87ffbfc05","dark":"https://mintcdn.com/doubledata/jHwTh-XFZAGAGU2t/logo/dark.svg?fit=max\u0026auto=format\u0026n=jHwTh-XFZAGAGU2t\u0026q=85\u0026s=1da095e65a3cf63076364aeacb3e6070"},"favicon":"https://mintcdn.com/doubledata/Dq9s-TH40jrxNOU-/favicon.svg?fit=max\u0026auto=format\u0026n=Dq9s-TH40jrxNOU-\u0026q=85\u0026s=bb654daf39ea73674f74187209c42676","api":{"playground":{"display":"interactive","proxy":true},"examples":{"defaults":"required","languages":["curl","javascript","go","python"],"prefill":true,"autogenerate":true},"url":"full"},"navbar":{"primary":{"type":"button","label":"Dashboard","href":"https://app.proxy.doubledata.com/dashboard"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"interaction":{"drilldown":false},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"doubledata","hasAudioNarration":false,"actualSubdomain":"doubledata","customDomains":[],"gitSource":{"type":"github","owner":"doubledata-proxy","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af2993e4580ffb26eec3601","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"API reference","count":28},{"language":"default","tag":"ISP","count":13},{"language":"default","tag":"Proxy SDK","count":8},{"language":"default","tag":"Workflows","count":7},{"language":"default","tag":"Credentials","count":6},{"language":"default","tag":"Get started","count":4},{"language":"default","tag":"Catalog and orders","count":4},{"language":"default","tag":"Invoices","count":3},{"language":"default","tag":"IP authorization","count":3},{"language":"default","tag":"Subscriptions","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","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":"rbac-expansion","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":"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":"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":"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":"full-page-search","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":"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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":"#topbar-cta-button a{color:#ffffff!important}#topbar-cta-button a>span{background-color:#006c49!important}#topbar-cta-button a:hover>span{background-color:#00543a!important}#topbar-cta-button a div,#topbar-cta-button a svg{color:#ffffff!important}#topbar-cta-button a:focus-visible{outline:2px solid #006c49;outline-offset:4px;border-radius:0.75rem}"}],"page":{"pagePath":"guides/rotations","slug":"/guides/rotations","pageMetadata":{"title":"Rotate selected IPs","description":"Replace selected Static ISP proxy IPs and read the results.","href":"/guides/rotations"},"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: \"Replace selected Static ISP proxy IPs and read the results.\"\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`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`A rotation replaces only the IPs you select, keeping each IP’s country.`}),`\n`,_jsx(Heading,{level:`2`,id:`choose-your-ips`,children:`Choose your IPs`}),`\n`,_jsxs(_components.p,{children:[`List proxies with `,_jsx(_components.code,{children:`GET /isp/subscriptions/{subscriptionId}/proxies`}),`. Select 1–100 unique active public IPv4 addresses from the same subscription where `,_jsx(_components.code,{children:`rotation_eligible`}),` is `,_jsx(_components.code,{children:`true`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Check `,_jsx(_components.code,{children:`rotations_remaining`}),`: it must cover the entire selection. The API validates all IPs before acceptance; invalid requests use no rotation units.`]}),`\n`,_jsx(Heading,{level:`2`,id:`submit-and-poll`,children:`Submit and poll`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`This request changes live proxies. Existing connections through replaced IPs may stop. Replace the example IPs with your selected IPs, then save and deploy the new connection details.`})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`export`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` SUBSCRIPTION_ID=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"25974f58-6a7a-4b0d-8dd7-a89133f50762\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --request POST \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --url `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:'\"https://app.proxy.doubledata.com/api/v1/isp/subscriptions/${SUBSCRIPTION_ID}/rotations\"'}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --header `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:'\"Authorization: Bearer ${DOUBLEDATA_API_KEY}\"'}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --header `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --data `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'{\"ips\":[\"198.51.100.10\",\"203.0.113.20\"]}'`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Acceptance returns `,_jsx(_components.code,{children:`202`}),`, a `,_jsx(_components.code,{children:`Location`}),` path, and `,_jsx(_components.code,{children:`rotation.status_url`}),`. Wait at least `,_jsx(_components.code,{children:`Retry-After`}),` seconds (`,_jsx(_components.code,{children:`2`}),` on acceptance), then poll the returned status URL with your API key. Use modest backoff between polls.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`accepted`}),` and `,_jsx(_components.code,{children:`processing`}),` mean keep polling. `,_jsx(_components.code,{children:`succeeded`}),`, `,_jsx(_components.code,{children:`partially_succeeded`}),`, and `,_jsx(_components.code,{children:`failed`}),` are final. Wait for results before using replacement connections.`]}),`\n`,_jsx(Heading,{level:`2`,id:`apply-the-results`,children:`Apply the results`}),`\n`,_jsxs(_components.p,{children:[`Results follow the submitted IP order. Each successful item contains the complete replacement connection record. Failed items include an error and `,_jsx(_components.code,{children:`retryable`}),` flag.`]}),`\n`,_jsxs(_components.p,{children:[`One confirmed IP replacement uses one rotation unit. Partial batches use units only for successful replacements. Check `,_jsx(_components.code,{children:`requested_count`}),`, `,_jsx(_components.code,{children:`succeeded_count`}),`, `,_jsx(_components.code,{children:`failed_count`}),`, and each result before deploying or retrying.`]}),`\n`,_jsxs(_components.p,{children:[`Status requests return `,_jsx(_components.code,{children:`200`}),` for existing rotations, even on failure. Read `,_jsx(_components.code,{children:`rotation.status`}),` to determine the outcome.`]}),`\n`,_jsxs(_components.p,{children:[`See the `,_jsx(_components.a,{href:`/api-reference/rotations/get-rotation-status`,children:`rotation status reference`}),` for full response examples.`]})]})}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":"Rotate selected IPs","description":"Replace selected Static ISP proxy IPs and read the results.","href":"/guides/rotations"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Choose your IPs","slug":"choose-your-ips","depth":2,"children":[]},{"title":"Submit and poll","slug":"submit-and-poll","depth":2,"children":[]},{"title":"Apply the results","slug":"apply-the-results","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/doubledata/9aad1897157f6a69/sidebar-state.js"],"subdomain":"doubledata","siteName":"DoubleData Proxy Docs","title":"Rotate selected IPs - DoubleData Proxy Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-28T14:27:31.645Z","originalFileLocation":"guides/rotations.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=\"Replace selected Static ISP proxy IPs and read the results.\">\u003cmeta data-mint-head name=\"application-name\" content=\"DoubleData Proxy Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_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/doubledata/KHp3usTts6pEM-CD/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Rotate selected IPs - DoubleData Proxy Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Replace selected Static ISP proxy IPs and read the results.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"DoubleData Proxy Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://doubledata.mintlify.app/guides/rotations\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://doubledata.mintlify.site/_mintlify/api/og/v2?division=Workflows\u0026amp;title=Rotate+selected+IPs\u0026amp;description=Replace+selected+Static+ISP+proxy+IPs+and+read+the+results.\u0026amp;theme=e7a5d87214dfc5415ac339a0\u0026amp;signature=1e368030d9b190d1394b225d7aa15bd391fc1c150b4f55fe7acf4e862b54f931\">\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=\"Rotate selected IPs - DoubleData Proxy Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Replace selected Static ISP proxy IPs and read the results.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://doubledata.mintlify.site/_mintlify/api/og/v2?division=Workflows\u0026amp;title=Rotate+selected+IPs\u0026amp;description=Replace+selected+Static+ISP+proxy+IPs+and+read+the+results.\u0026amp;theme=e7a5d87214dfc5415ac339a0\u0026amp;signature=1e368030d9b190d1394b225d7aa15bd391fc1c150b4f55fe7acf4e862b54f931\">\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/doubledata/KHp3usTts6pEM-CD/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"DoubleData Proxy Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#006C49\">\u003clink data-mint-head rel=\"canonical\" href=\"https://doubledata.mintlify.app/guides/rotations\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/rotations.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://doubledata.mintlify.app/#organization\",\"name\":\"DoubleData Proxy Docs\",\"url\":\"https://doubledata.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/doubledata/jHwTh-XFZAGAGU2t/logo/light.svg?fit=max\u0026auto=format\u0026n=jHwTh-XFZAGAGU2t\u0026q=85\u0026s=3b2052ff97e36c060810c2d87ffbfc05\"}},{\"@type\":\"WebSite\",\"@id\":\"https://doubledata.mintlify.app#website\",\"name\":\"DoubleData Proxy Docs\",\"url\":\"https://doubledata.mintlify.app\",\"publisher\":{\"@id\":\"https://doubledata.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://doubledata.mintlify.app/guides/rotations#webpage\",\"url\":\"https://doubledata.mintlify.app/guides/rotations\",\"name\":\"Rotate selected IPs\",\"description\":\"Replace selected Static ISP proxy IPs and read the results.\",\"dateModified\":\"2026-10-28T14:27:31.645Z\",\"isPartOf\":{\"@id\":\"https://doubledata.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://doubledata.mintlify.app/guides/rotations#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://doubledata.mintlify.app/guides/rotations#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Workflows\",\"item\":\"https://doubledata.mintlify.app/guides/usage\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rotate selected IPs\",\"item\":\"https://doubledata.mintlify.app/guides/rotations\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://doubledata.mintlify.app/guides/rotations#article\",\"headline\":\"Rotate selected IPs\",\"name\":\"Rotate selected IPs\",\"description\":\"Replace selected Static ISP proxy IPs and read the results.\",\"url\":\"https://doubledata.mintlify.app/guides/rotations\",\"mainEntityOfPage\":{\"@id\":\"https://doubledata.mintlify.app/guides/rotations#webpage\"},\"dateModified\":\"2026-10-28T14:27:31.645Z\",\"publisher\":{\"@id\":\"https://doubledata.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://doubledata.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"DoubleData Proxy Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"DoubleData Proxy Docs","nav":{"global":null,"groups":[{"group":"Get started","pages":[{"title":"DoubleData Proxy Docs","href":"/index"},{"title":"Quickstart","href":"/quickstart"},{"title":"Authentication","href":"/authentication"},{"title":"AI agents and MCP","href":"/guides/ai-agents"}]},{"group":"Proxy connections","pages":[{"title":"Proxy formats and sessions","href":"/guides/proxy-formats"},{"title":"Sticky sessions and TTL","href":"/guides/sticky-sessions"}]},{"group":"Workflows","pages":[{"title":"Check proxy usage","href":"/guides/usage"},{"title":"Manage proxy credentials","href":"/guides/credentials"},{"title":"Download invoices","href":"/guides/invoices"},{"title":"Order Static ISP proxies","description":"Quote, order, and manage renewal from your wallet balance.","href":"/guides/ordering"},{"title":"Rotate selected IPs","href":"/guides/rotations"},{"title":"Manage IP authorization","description":"Read, set, or remove a subscription's authorized source IP.","href":"/guides/ip-authorization"},{"title":"Errors and rate limits","href":"/errors"}]},{"group":"API reference","pages":[{"title":"API overview","href":"/api-reference/introduction"},{"group":"All proxies","pages":[{"title":"Bandwidth and usage charges","openapi":"get /usage","href":"/api-reference/usage"},{"title":"Get organization balance","deprecated":null,"version":null,"openapi":"/openapi.json get /balance","href":"/api-reference/balance/get-organization-balance"}]},{"group":"Credentials","pages":[{"title":"List proxy credentials","deprecated":null,"version":null,"openapi":"/openapi.json get /proxies","href":"/api-reference/credentials/list-proxy-credentials"},{"title":"Create proxy credential","deprecated":null,"version":null,"openapi":"/openapi.json post /proxies","href":"/api-reference/credentials/create-proxy-credential"},{"title":"Get proxy credential","deprecated":null,"version":null,"openapi":"/openapi.json get /proxies/{username}","href":"/api-reference/credentials/get-proxy-credential"},{"title":"Delete proxy credential","deprecated":null,"version":null,"openapi":"/openapi.json delete /proxies/{username}","href":"/api-reference/credentials/delete-proxy-credential"},{"title":"Get traffic limits","deprecated":null,"version":null,"openapi":"/openapi.json get /proxies/{username}/limits","href":"/api-reference/credentials/get-traffic-limits"},{"title":"Set traffic limits","deprecated":null,"version":null,"openapi":"/openapi.json put /proxies/{username}/limits","href":"/api-reference/credentials/set-traffic-limits"}]},{"group":"Invoices","pages":[{"title":"List invoices","deprecated":null,"version":null,"openapi":"/openapi.json get /invoices","href":"/api-reference/invoices/list-invoices"},{"title":"Get invoice","deprecated":null,"version":null,"openapi":"/openapi.json get /invoices/{invoiceId}","href":"/api-reference/invoices/get-invoice"},{"title":"Download invoice PDF","deprecated":null,"version":null,"openapi":"/openapi.json get /invoices/{invoiceId}/pdf","href":"/api-reference/invoices/download-invoice-pdf"}]},{"group":"Residential","pages":[{"title":"Residential proxies","href":"/api-reference/residential"}]},{"group":"Datacenter","pages":[{"title":"Datacenter proxies","href":"/api-reference/datacenter"}]},{"group":"Mobile","pages":[{"title":"Mobile proxies","href":"/api-reference/mobile"}]},{"group":"ISP","pages":[{"title":"ISP proxies","href":"/api-reference/isp"},{"group":"Catalog and orders","pages":[{"title":"Get ISP catalog","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/catalog","href":"/api-reference/catalog/get-isp-catalog"},{"title":"Create an ISP quote","deprecated":null,"version":null,"openapi":"/openapi.json post /isp/quotes","href":"/api-reference/orders/create-an-isp-quote"},{"title":"Confirm an ISP order","deprecated":null,"version":null,"openapi":"/openapi.json post /isp/orders","href":"/api-reference/orders/confirm-an-isp-order"},{"title":"Get ISP order status","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/orders/{orderId}","href":"/api-reference/orders/get-isp-order-status"}]},{"group":"Subscriptions","pages":[{"title":"List active subscriptions","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/subscriptions","href":"/api-reference/subscriptions/list-active-subscriptions"},{"title":"List assigned proxies","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/subscriptions/{subscriptionId}/proxies","href":"/api-reference/subscriptions/list-assigned-proxies"},{"title":"Cancel subscription renewal","deprecated":null,"version":null,"openapi":"/openapi.json delete /isp/subscriptions/{subscriptionId}","href":"/api-reference/subscriptions/cancel-subscription-renewal"}]},{"group":"Rotations","pages":[{"title":"Rotate selected IPs","deprecated":null,"version":null,"openapi":"/openapi.json post /isp/subscriptions/{subscriptionId}/rotations","href":"/api-reference/rotations/rotate-selected-ips"},{"title":"Get rotation status","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/rotations/{rotationId}","href":"/api-reference/rotations/get-rotation-status"}]},{"group":"IP authorization","pages":[{"title":"Get IP authorization","deprecated":null,"version":null,"openapi":"/openapi.json get /isp/subscriptions/{subscriptionId}/ip-authorization","href":"/api-reference/ip-authorization/get-ip-authorization"},{"title":"Set IP authorization","deprecated":null,"version":null,"openapi":"/openapi.json put /isp/subscriptions/{subscriptionId}/ip-authorization","href":"/api-reference/ip-authorization/set-ip-authorization"},{"title":"Remove IP authorization","deprecated":null,"version":null,"openapi":"/openapi.json delete /isp/subscriptions/{subscriptionId}/ip-authorization","href":"/api-reference/ip-authorization/remove-ip-authorization"}]}]}]},{"group":"Proxy SDK","pages":[{"title":"Proxy SDK","sidebarTitle":"Overview","href":"/sdk/overview"},{"title":"Downloads","href":"/sdk/downloads"},{"title":"Configuration","href":"/sdk/configuration"},{"title":"Android","href":"/sdk/mobile"},{"title":"Desktop","href":"/sdk/desktop"},{"title":"iOS and Swift","href":"/sdk/ios"},{"title":"Consent and monetization","href":"/sdk/consent"},{"title":"SDK privacy","href":"/sdk/privacy"}]}]},"basePath":"","title":"Rotate selected IPs - DoubleData Proxy Docs","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":[],"chunks":[]}