AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.
Use this skill when an AI assistant needs to update many subscriptions with the same change, such as adding a product, changing pricing, or transitioning subscriptions to a new configuration.
---name: bulk-update-subscriptionsdescription: Plan and execute safe bulk subscription updates in Hyperline. Use when an agent needs to identify subscriptions, preview or apply transitions, update subscriptions, and verify results across many records.---# Bulk Update SubscriptionsBulk updates can affect billing and invoices. Plan first, execute only after explicit confirmation.## InputsCollect these values before making changes:- Target cohort: filters, customer list, subscription IDs, plan, product, status, or segment.- Desired change: product, price, phase, template, billing behavior, or contract change.- Effective date: immediately or scheduled date.- Billing behavior: no charge, pro-rata charge, custom charge, or keep current billing cycle.- Dry-run requirement: default to preview or sample first.## Workflow1. List candidate subscriptions using read-only filters.2. Show the count and a small sample.3. Ask the user to confirm the exact cohort before mutation.4. Choose the safest update method: - Use `PUT /v2/subscriptions/{id}` for simple full-subscription updates with no transition invoice. - Use `POST /v2/subscriptions/transitions` when billing behavior, schedule, or pro-rata handling matters. - Use template-based transition only when subscriptions still match the source template and the template has already been updated.5. Preview where possible.6. Apply in bounded batches.7. Verify updated subscriptions and summarize successes and failures.## Safety- Never run an unbounded update.- Never mutate before showing the matched cohort and receiving confirmation.- Do not use deprecated incremental update endpoints.- Do not assume no invoice will be generated; choose and document the billing behavior.- Stop on repeated failures and summarize the partial result.## OutputReturn:- Cohort definition.- Update method.- Billing behavior.- Batch result summary.- Failed subscription IDs with errors.- Verification checks performed.
Use transitions for controlled subscription changes.
Was this page helpful?
⌘I
{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"Hyperline","colors":{"primary":"#1A1A1A","light":"#999999","dark":"#1A1A1A"},"logo":{"light":"https://mintcdn.com/hyperline/G-7ZQgHUOVHWwtUN/layout/logo-dark.png?fit=max\u0026auto=format\u0026n=G-7ZQgHUOVHWwtUN\u0026q=85\u0026s=2521f5f5ce4977d387d12aa169a8ee55","dark":"https://mintcdn.com/hyperline/G-7ZQgHUOVHWwtUN/layout/logo-light.png?fit=max\u0026auto=format\u0026n=G-7ZQgHUOVHWwtUN\u0026q=85\u0026s=c81125a44e9fdf8006623ab1f597ce7f"},"favicon":"https://mintcdn.com/hyperline/xZrQhb6Rphak0y92/favicon.png?fit=max\u0026auto=format\u0026n=xZrQhb6Rphak0y92\u0026q=85\u0026s=c52ed2ba655f301d3a99a7987888c622","api":{"openapi":["https://api.hyperline.co/openapi","https://ingest.hyperline.co/openapi"],"playground":{"display":"interactive"},"mdx":{"auth":{"method":"bearer"},"server":["https://api.hyperline.co","https://ingest.hyperline.co"]}},"appearance":{"default":"light"},"background":{"color":{"light":"#fafafa","dark":"#1f1f1f"}},"navbar":{"links":[{"href":"https://www.hyperline.co/talk-to-sales","label":"Book a call"}],"primary":{"type":"button","label":"Get Started","href":"https://app.hyperline.co"}},"footer":{"links":[{"header":"Resources","items":[{"label":"Status","href":"https://status.hyperline.co"},{"label":"Changelog","href":"https://docs.hyperline.co/changelog"},{"label":"Glossary","href":"https://docs.hyperline.co/docs/introduction/glossary"},{"label":"Contact support","href":"mailto:support@hyperline.co"}]},{"header":"Company","items":[{"label":"Customers","href":"https://www.hyperline.co/resources/customers"},{"label":"Blog","href":"https://www.hyperline.co/resources/blog"},{"label":"Careers","href":"https://www.welcometothejungle.com/fr/companies/hyperline"},{"label":"Media Kit","href":"https://drive.google.com/drive/folders/1KIlufVDz6tgwohTFFv1jSyoqeHO0pKOm"}]},{"header":"Legal","items":[{"label":"Privacy Policy","href":"https://www.hyperline.co/privacy-policy"},{"label":"Terms of Service","href":"https://www.hyperline.co/terms-of-service"},{"label":"Security","href":"https://docs.hyperline.co/security"}]}]},"seo":{"metatags":{"og:image":"https://app.hyperline.co/auth/background.svg"},"indexing":"navigable"},"fonts":{"family":"Inter"},"integrations":{"posthog":{"apiKey":"phc_KmmpIQ7SFNwnur6ZqVC118l5EkS1pqo313t4qxwL32n","apiHost":"https://eu.posthog.com"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"hyperline","hasAudioNarration":false,"actualSubdomain":"hyperline","customDomains":["docs.hyperline.co"],"gitSource":{"type":"github","owner":"meterly","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af5f8810b3858d5ef265c7d","clientVersion":"0.0.4117","searchFilterCounts":[{"language":"default","tag":"Developers","count":361},{"language":"default","tag":"Documentation","count":112},{"language":"default","tag":"Integrations","count":43},{"language":"default","tag":"Subscriptions","count":38},{"language":"default","tag":"Invoices","count":36},{"language":"default","tag":"AI > Billing","count":27},{"language":"default","tag":"Quotes","count":25},{"language":"default","tag":"Customers","count":21},{"language":"default","tag":"Guides","count":21},{"language":"default","tag":"Changelog","count":17}]},"assistantConfig":{"enableStarterQuestions":false,"deflection":{"enabled":true,"email":"support@hyperline.co","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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":"index.css","content":"a[href*=\"mintlify.com\"]{display:none;visibility:hidden}.text-2xl{font-weight:600}.tag-blue{height:20px;line-height:20px;display:inline-block;background:#93c5fd;margin:0;padding:0 6px;border-radius:4px;color:#0166ff;border:1px solid #0166ff;font-weight:600;font-size:12px}.tag-orange{height:20px;line-height:20px;display:inline-block;background:#fef9e0;margin:0;padding:0 6px;border-radius:4px;color:#da9e09;border:1px solid #da9e09;font-weight:600;font-size:12px}#footer>div>div:not(:first-child){display:none;visibility:hidden}"},{"filePath":"developers/getting-started.css","content":"#content-area:has(#developer-home){max-width:56rem;margin-inline:auto}"}],"page":{"pagePath":"guides/ai/bulk-update-subscriptions","slug":"/guides/ai/bulk-update-subscriptions","pageMetadata":{"title":"Bulk update subscriptions with AI","sidebarTitle":"Bulk update subscriptions","description":"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.","href":"/guides/ai/bulk-update-subscriptions"},"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: \"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\"\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`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{Card,CardGroup,CodeBlock,Heading}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Use this skill when an AI assistant needs to update many subscriptions with the same change, such as adding a product, changing pricing, or transitioning subscriptions to a new configuration.`}),`\n`,_jsx(Heading,{level:`2`,id:`skill`,children:`Skill`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`50`,language:`markdown`,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:`markdown`,children:_jsxs(_components.code,{language:`markdown`,numberOfLines:`50`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`---`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`bulk-update-subscriptions`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`description`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`Plan and execute safe bulk subscription updates in Hyperline. Use when an agent needs to identify subscriptions, preview or apply transitions, update subscriptions, and verify results across many records.`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`---`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`# Bulk Update Subscriptions`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`Bulk updates can affect billing and invoices. Plan first, execute only after explicit confirmation.`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`## Inputs`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`Collect these values before making changes:`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Target cohort: filters, customer list, subscription IDs, plan, product, status, or segment.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Desired change: product, price, phase, template, billing behavior, or contract change.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Effective date: immediately or scheduled date.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Billing behavior: no charge, pro-rata charge, custom charge, or keep current billing cycle.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Dry-run requirement: default to preview or sample first.`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`## Workflow`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`1.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` List candidate subscriptions using read-only filters.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`2.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Show the count and a small sample.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`3.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Ask the user to confirm the exact cohort before mutation.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`4.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Choose the safest update method:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:` -`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Use `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#CE9178`},children:\"`PUT /v2/subscriptions/{id}`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` for simple full-subscription updates with no transition invoice.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:` -`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Use `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#CE9178`},children:\"`POST /v2/subscriptions/transitions`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` when billing behavior, schedule, or pro-rata handling matters.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:` -`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Use template-based transition only when subscriptions still match the source template and the template has already been updated.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`5.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Preview where possible.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`6.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Apply in bounded batches.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`7.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Verify updated subscriptions and summarize successes and failures.`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`## Safety`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Never run an unbounded update.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Never mutate before showing the matched cohort and receiving confirmation.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Do not use deprecated incremental update endpoints.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Do not assume no invoice will be generated; choose and document the billing behavior.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Stop on repeated failures and summarize the partial result.`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-light-font-weight\":`bold`,\"--shiki-dark\":`#569CD6`,\"--shiki-dark-font-weight\":`bold`},children:`## Output`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`Return:`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Cohort definition.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Update method.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Billing behavior.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Batch result summary.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Failed subscription IDs with errors.`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#6796E6`},children:`-`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Verification checks performed.`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`related-documentation`,children:`Related documentation`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Bulk update subscriptions guide`,icon:`arrows-rotate`,href:`/guides/bulk-update-subscriptions`,children:_jsx(_components.p,{children:`Learn the supported bulk update patterns.`})}),_jsx(Card,{title:`Create subscription transition API`,icon:`code`,href:`/api-reference/endpoints/subscriptions->-transitions/create-subscription-transition`,children:_jsx(_components.p,{children:`Use transitions for controlled subscription changes.`})})]})]})}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":"Bulk update subscriptions with AI","sidebarTitle":"Bulk update subscriptions","description":"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.","href":"/guides/ai/bulk-update-subscriptions"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Skill","slug":"skill","depth":2,"children":[]},{"title":"Related documentation","slug":"related-documentation","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"hyperline","siteName":"Hyperline","title":"Bulk update subscriptions with AI - Hyperline","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-06-23T10:52:07.063Z","originalFileLocation":"guides/ai/bulk-update-subscriptions.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=\"light\"}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=\"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Hyperline\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_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/hyperline/XK0z6uK15Gv1fOA-/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Bulk update subscriptions with AI - Hyperline\">\u003cmeta data-mint-head property=\"og:description\" content=\"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Hyperline\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://app.hyperline.co/auth/background.svg\">\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=\"Bulk update subscriptions with AI - Hyperline\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://app.hyperline.co/auth/background.svg\">\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/hyperline/XK0z6uK15Gv1fOA-/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Hyperline\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1A1A1A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/ai/bulk-update-subscriptions.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.hyperline.co/#organization\",\"name\":\"Hyperline\",\"url\":\"https://docs.hyperline.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/hyperline/G-7ZQgHUOVHWwtUN/layout/logo-dark.png?fit=max\u0026auto=format\u0026n=G-7ZQgHUOVHWwtUN\u0026q=85\u0026s=2521f5f5ce4977d387d12aa169a8ee55\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.hyperline.co#website\",\"name\":\"Hyperline\",\"url\":\"https://docs.hyperline.co\",\"publisher\":{\"@id\":\"https://docs.hyperline.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions#webpage\",\"url\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions\",\"name\":\"Bulk update subscriptions with AI\",\"description\":\"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\",\"dateModified\":\"2026-06-23T10:52:07.063Z\",\"isPartOf\":{\"@id\":\"https://docs.hyperline.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Working with AI\",\"item\":\"https://docs.hyperline.co/guides/ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Skills\",\"item\":\"https://docs.hyperline.co/guides/ai/create-subscription-from-template\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Bulk update subscriptions with AI\",\"item\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions#article\",\"headline\":\"Bulk update subscriptions with AI\",\"name\":\"Bulk update subscriptions with AI\",\"description\":\"AI skill for planning, confirming, applying, and verifying bulk subscription updates in Hyperline without breaking customer billing.\",\"url\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions\",\"mainEntityOfPage\":{\"@id\":\"https://docs.hyperline.co/guides/ai/bulk-update-subscriptions#webpage\"},\"image\":\"https://app.hyperline.co/auth/background.svg\",\"dateModified\":\"2026-06-23T10:52:07.063Z\",\"publisher\":{\"@id\":\"https://docs.hyperline.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.hyperline.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Hyperline\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Hyperline\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/guides/ai/bulk-update-subscriptions.md","siteName":"Hyperline","nav":{"global":null,"tabs":[{"tab":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/docs"}]},{"tab":"Developers","icon":"code","pages":[{"title":"Developers","href":"/developers/getting-started"}]},{"tab":"Guides","icon":"list-check","groups":[{"group":"Implement Hyperline","pages":[{"title":"Importing historical data","href":"/guides/importing-historical-data"},{"title":"Implement Hyperline for a self-serve product","sidebarTitle":"Self-serve flow","href":"/guides/implement-self-serve"},{"title":"Monetize an AI product","sidebarTitle":"AI monetization","href":"/guides/monetize-ai-products"},{"title":"Configure usage-based billing","sidebarTitle":"Usage-based billing","href":"/guides/configure-usage-based-billing"},{"title":"Set up credit-based billing for an AI platform","sidebarTitle":"Credit-based billing for AI","href":"/guides/credit-based-billing-ai"},{"title":"Run Hyperline on autopilot","sidebarTitle":"Hyperline on autopilot","href":"/guides/autopilot"}]},{"group":"Working with AI","pages":[{"title":"Getting started","href":"/guides/ai"},{"group":"Skills","pages":[{"title":"Create a subscription from a template with AI","sidebarTitle":"Create subscription","href":"/guides/ai/create-subscription-from-template"},{"title":"Create an invoice with AI","sidebarTitle":"Create invoice","href":"/guides/ai/create-invoice"},{"title":"Create a quote from a template with AI","sidebarTitle":"Create quote from template","href":"/guides/ai/create-quote-from-template"},{"title":"Build an insights report with AI","sidebarTitle":"Insights report","href":"/guides/ai/build-insights-report"},{"title":"Investigate a customer balance with AI","sidebarTitle":"Customer balance","href":"/guides/ai/investigate-customer-balance"},{"title":"Answer a billing question with AI","sidebarTitle":"Billing question","description":"AI skill that answers Hyperline billing questions by combining product documentation with read-only checks against your live account data.","href":"/guides/ai/answer-billing-question"},{"title":"Bulk update subscriptions with AI","sidebarTitle":"Bulk update subscriptions","href":"/guides/ai/bulk-update-subscriptions"}]}]},{"group":"Subscriptions","pages":[{"title":"Bulk update subscriptions","sidebarTitle":"Bulk update","description":"Bulk update Hyperline subscriptions through the API: add products, change prices, or adjust contracts on many subscriptions in a single workflow.","href":"/guides/bulk-update-subscriptions"},{"title":"Subscription billing cycles","sidebarTitle":"Billing cycles update","href":"/guides/subscription-billing-cycles"},{"title":"Retroactive subscription update","sidebarTitle":"Retroactive update","href":"/guides/retroactive-subscription-update"},{"title":"Upsell and downsell a subscription","href":"/guides/upsell-downsell-subscriptions"},{"title":"Target usage events to a specific subscription","sidebarTitle":"Target events to a subscription","href":"/guides/target-events-to-subscription"}]},{"group":"CPQ","pages":[{"title":"Use Hyperline CPQ with Stripe Billing","sidebarTitle":"Working with Stripe Billing","href":"/docs/quotes/stripe-billing"}]},{"group":"Tips \u0026 Tricks","pages":[{"title":"Keyboard shortcuts","href":"/guides/keyboard-shortcuts"}]}]},{"tab":"Integrations","icon":"link","pages":[{"title":"Integrations","href":"/integrations/overview"}]},{"tab":"Changelog","icon":"bullhorn","pages":[{"title":"Changelog","href":"/changelog/2026-10"}]}]},"basePath":"","title":"Bulk update subscriptions with AI - Hyperline","buildId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","deploymentId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","dynamics":[],"chunks":[]}