Update custom note attributes on membership contract
Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders.
Modes:
overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list
overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones)
Use Cases:
Clear tracking pixel IDs from recurring orders
Update order-level metadata
Store custom order instructions
Authentication: Requires API key authentication via X-API-Key header or api_key parameter
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Appstle","colors":{"primary":"#0caceb","light":"#6ccdf2","dark":"#0a7eae"},"favicon":"https://mintcdn.com/appstleinc-aeca3e0a/811jRr2WFwD6kXFw/favicon.webp?fit=max\u0026auto=format\u0026n=811jRr2WFwD6kXFw\u0026q=85\u0026s=a98f329ae5c5ff4deaa241d8abe53f11","api":{"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["bash","python","javascript","node","php","go","ruby"]}},"appearance":{"default":"light","strict":true},"navbar":{"primary":{"type":"github","href":"https://github.com/AppstleInc"}},"footer":{"socials":{"website":"https://appstle.com"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"appstleinc-aeca3e0a","hasAudioNarration":false,"actualSubdomain":"appstleinc-aeca3e0a","customDomains":["developers.appstle.com"],"gitSource":{"type":"github","owner":"appstleinc","repo":"appstle-docs-mintlify","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adfa33f64308ab65ed2456b","collectionId":"d72b93ab-daca-4f97-a891-c13ef4624f35","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adfa33f64308ab65ed2456b"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae04bff87a96311da529678","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"Subscriptions","count":262},{"language":"default","tag":"Admin API","count":183},{"language":"default","tag":"Storefront API","count":172},{"language":"default","tag":"Memberships","count":118},{"language":"default","tag":"Subscription Contracts","count":63},{"language":"default","tag":"Membership Contracts","count":62},{"language":"default","tag":"Customer Portal API","count":55},{"language":"default","tag":"Loyalty","count":46},{"language":"default","tag":"Billing \u0026 Payments","count":28},{"language":"default","tag":"Bundles","count":24}]},"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":"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":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract","slug":"/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract","pageMetadata":{"title":"Update custom note attributes on membership contract","description":"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders.\n\n**Modes:**\n- `overwriteExistingAttributes=true` (default): Replaces all existing note attributes with the provided list\n- `overwriteExistingAttributes=false`: Merges provided attributes with existing ones (updates matching keys, adds new ones)\n\n**Use Cases:**\n- Clear tracking pixel IDs from recurring orders\n- Update order-level metadata\n- Store custom order instructions\n\n**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-custom-note-attributes","href":"/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders.\"\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Modes:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"overwriteExistingAttributes=true\"\n }), \" (default): Replaces all existing note attributes with the provided list\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"overwriteExistingAttributes=false\"\n }), \": Merges provided attributes with existing ones (updates matching keys, adds new ones)\"]\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Use Cases:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Clear tracking pixel IDs from recurring orders\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Update order-level metadata\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Store custom order instructions\"\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Authentication:\"\n }), \" Requires API key authentication via X-API-Key header or api_key parameter\"]\n })]\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update custom note attributes on membership contract","description":"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders.\n\n**Modes:**\n- `overwriteExistingAttributes=true` (default): Replaces all existing note attributes with the provided list\n- `overwriteExistingAttributes=false`: Merges provided attributes with existing ones (updates matching keys, adds new ones)\n\n**Use Cases:**\n- Clear tracking pixel IDs from recurring orders\n- Update order-level metadata\n- Store custom order instructions\n\n**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-custom-note-attributes","href":"/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders.\n\n**Modes:**\n- `overwriteExistingAttributes=true` (default): Replaces all existing note attributes with the provided list\n- `overwriteExistingAttributes=false`: Merges provided attributes with existing ones (updates matching keys, adds new ones)\n\n**Use Cases:**\n- Clear tracking pixel IDs from recurring orders\n- Update order-level metadata\n- Store custom order instructions\n\n**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter","operationId":"updateOrderNoteAttributesV2","parameters":["a341e6f4-98cc-4057-8039-5989bbeeb1d1","c1ac9031-5c30-425f-a541-2235a3e3db81","5055c822-d98f-4013-ab49-40513b7f3dca"],"requestBody":"326a7ccd-26a5-4560-8119-f5a495f4e3b5","responses":{"200":"474648ad-bcdd-4e8d-b46d-d06eb411a92a","400":"3aa7f712-4251-4f3a-97be-d117d1b5c995","401":"bb502b05-637d-41d1-9048-4e2ece435149"},"summary":"Update custom note attributes on membership contract","tags":["Membership Contracts"],"method":"put","type":"path","servers":["98a02612-1a78-40c2-8320-a479a74f714d"],"security":[],"path":"/api/external/v2/subscription-contracts-update-custom-note-attributes","baseUrlOptions":["https://membership-admin.appstle.com"],"title":"Update custom note attributes on membership contract","codeSamples":[],"requestExampleLanguages":["bash","python","javascript","node","php","go","ruby"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"a341e6f4-98cc-4057-8039-5989bbeeb1d1":{"deprecated":true,"description":"API Key (Deprecated)","in":"query","name":"api_key","required":false,"schema":{"type":"string","isRequired":false,"description":"API Key (Deprecated)","uniqueKey":"","typeLabel":"string"}},"c1ac9031-5c30-425f-a541-2235a3e3db81":{"description":"API Key","in":"header","name":"X-API-Key","required":true,"schema":{"type":"string","isRequired":true,"description":"API Key","uniqueKey":"","typeLabel":"string"}},"5055c822-d98f-4013-ab49-40513b7f3dca":{"description":"When true (default), replaces all existing attributes. When false, merges with existing attributes.","in":"query","name":"overwriteExistingAttributes","required":false,"schema":{"default":true,"type":"boolean","isRequired":false,"description":"When true (default), replaces all existing attributes. When false, merges with existing attributes.","uniqueKey":"","typeLabel":"boolean"}}},"requestBody":{"content":{"application/json":{"schema":{"description":"Request to update custom attributes on a subscription contract","properties":{"customAttributesList":{"description":"List of custom attributes to set on the subscription contract. Each attribute is a key-value pair that will be stored with the subscription.","items":{"description":"A custom attribute consisting of a key and value","properties":{"key":{"description":"The attribute key. Should be a unique identifier for this attribute. Use descriptive keys like 'gift_message', 'delivery_instructions', etc.","example":"gift_message","type":"string","isRequired":true,"uniqueKey":"customAttributesList.items.[INDEX].key","typeLabel":"string"},"value":{"description":"The attribute value. Can be any string value including JSON-encoded data. Set to empty string to clear an attribute.","example":"Happy Birthday! Enjoy your subscription!","type":"string","uniqueKey":"customAttributesList.items.[INDEX].value","typeLabel":"string"}},"required":["key"],"type":"object","uniqueKey":"customAttributesList.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"customAttributesList","typeLabel":"object[]"},"subscriptionContractId":{"description":"The ID of the subscription contract to update","example":123456789,"format":"int64","type":"integer","isRequired":true,"uniqueKey":"subscriptionContractId","typeLabel":"integer\u003cint64>"}},"required":["customAttributesList","subscriptionContractId"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"customAttributesList":[{"key":"gift_message","value":"Happy Birthday! Enjoy your subscription!"}],"subscriptionContractId":123456789}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"474648ad-bcdd-4e8d-b46d-d06eb411a92a":{"description":"Note attributes successfully updated","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"3aa7f712-4251-4f3a-97be-d117d1b5c995":{"description":"Invalid request or contract not found","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"bb502b05-637d-41d1-9048-4e2ece435149":{"description":"Authentication required - invalid or missing API key","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{},"servers":{"98a02612-1a78-40c2-8320-a479a74f714d":{"url":"https://membership-admin.appstle.com"}}},"originalFileLocation":"memberships/admin-api-swagger.json"},"subdomain":"appstleinc-aeca3e0a","siteName":"Appstle","title":"Update custom note attributes on membership contract - Appstle","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-06T07:00:43.811Z","originalFileLocation":"memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders. Modes: - overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list - overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones) Use Cases: - Clear tracking pixel IDs from recurring orders - Update order-level metadata - Store custom order instructions Authentication: Requires API key authentication via X-API-Key header or api_key parameter\">\u003cmeta data-mint-head name=\"application-name\" content=\"Appstle\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update custom note attributes on membership contract - Appstle\">\u003cmeta data-mint-head property=\"og:description\" content=\"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders. Modes: - overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list - overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones) Use Cases: - Clear tracking pixel IDs from recurring orders - Update order-level metadata - Store custom order instructions Authentication: Requires API key authentication via X-API-Key header or api_key parameter\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Appstle\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://appstleinc-aeca3e0a.mintlify.app/_mintlify/api/og/v2?division=Membership+Contracts\u0026amp;title=Update+custom+note+attributes+on+membership+contract\u0026amp;description=Updates+custom+note+attributes+%28key-value+pairs%29+on+a+membership+contract.+These+attributes+are+stored+on+the+Shopify+membership+contract+and+propagated+to+recu\u0026amp;theme=f3911f4da205a97f19a260f1\u0026amp;signature=5b819668686c1571f53102ccdcc50f769b6eea577f26863abc779eed2b92d1fb\">\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=\"Update custom note attributes on membership contract - Appstle\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders. Modes: - overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list - overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones) Use Cases: - Clear tracking pixel IDs from recurring orders - Update order-level metadata - Store custom order instructions Authentication: Requires API key authentication via X-API-Key header or api_key parameter\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://appstleinc-aeca3e0a.mintlify.app/_mintlify/api/og/v2?division=Membership+Contracts\u0026amp;title=Update+custom+note+attributes+on+membership+contract\u0026amp;description=Updates+custom+note+attributes+%28key-value+pairs%29+on+a+membership+contract.+These+attributes+are+stored+on+the+Shopify+membership+contract+and+propagated+to+recu\u0026amp;theme=f3911f4da205a97f19a260f1\u0026amp;signature=5b819668686c1571f53102ccdcc50f769b6eea577f26863abc779eed2b92d1fb\">\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/appstleinc-aeca3e0a/qTHqMufQccFjyOE2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Appstle\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0caceb\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.appstle.com/#organization\",\"name\":\"Appstle\",\"url\":\"https://developers.appstle.com\"},{\"@type\":\"WebSite\",\"@id\":\"https://developers.appstle.com#website\",\"name\":\"Appstle\",\"url\":\"https://developers.appstle.com\",\"publisher\":{\"@id\":\"https://developers.appstle.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract#webpage\",\"url\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract\",\"name\":\"Update custom note attributes on membership contract\",\"description\":\"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders. Modes: - overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list - overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones) Use Cases: - Clear tracking pixel IDs from recurring orders - Update order-level metadata - Store custom order instructions Authentication: Requires API key authentication via X-API-Key header or api_key parameter\",\"dateModified\":\"2026-09-06T07:00:43.811Z\",\"isPartOf\":{\"@id\":\"https://developers.appstle.com#website\"},\"breadcrumb\":{\"@id\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Admin API\",\"item\":\"https://developers.appstle.com/memberships-admin-api/cancellation-flow-configuration/get-cancellation-flow-configuration\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Membership Contracts\",\"item\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/generate-customer-portal-authentication-token\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update custom note attributes on membership contract\",\"item\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract#apireference\",\"headline\":\"Update custom note attributes on membership contract\",\"name\":\"Update custom note attributes on membership contract\",\"description\":\"Updates custom note attributes (key-value pairs) on a membership contract. These attributes are stored on the Shopify membership contract and propagated to recurring orders. Modes: - overwriteExistingAttributes=true (default): Replaces all existing note attributes with the provided list - overwriteExistingAttributes=false: Merges provided attributes with existing ones (updates matching keys, adds new ones) Use Cases: - Clear tracking pixel IDs from recurring orders - Update order-level metadata - Store custom order instructions Authentication: Requires API key authentication via X-API-Key header or api_key parameter\",\"url\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract\",\"mainEntityOfPage\":{\"@id\":\"https://developers.appstle.com/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract#webpage\"},\"dateModified\":\"2026-09-06T07:00:43.811Z\",\"publisher\":{\"@id\":\"https://developers.appstle.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.appstle.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Appstle\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Appstle","nav":{"global":null,"products":[{"product":"Subscriptions","icon":"arrows-rotate","description":"Recurring orders, selling plans, and the customer portal","pages":[{"title":"Subscriptions","href":"/subscription/introduction"}]},{"product":"Loyalty","icon":"medal","description":"Points, VIP tiers, rewards, referrals, and store credit","pages":[{"title":"Loyalty","href":"/loyalty/introduction"}]},{"product":"Memberships","icon":"id-card","description":"Membership plans, member perks, billing, and access control","groups":[{"group":"Get Started","pages":[{"title":"Appstle Memberships: Tiered Plans \u0026 Access Control","sidebarTitle":"Introduction","href":"/memberships/introduction"},{"title":"Authenticate with the Appstle Memberships API","sidebarTitle":"Authentication","href":"/memberships/authentication"},{"title":"Get started with Appstle Memberships API","sidebarTitle":"Quickstart","href":"/memberships/quickstart"}]},{"group":"Guides","pages":[{"title":"Appstle Memberships third-party integration guide","sidebarTitle":"Integration guide","href":"/memberships/integration-guide"},{"title":"Automate memberships with Shopify Flow","sidebarTitle":"Shopify Flow","href":"/memberships/shopify-flow"},{"title":"Shopify metafields and tags for Appstle Memberships","sidebarTitle":"Metafields \u0026 tags","href":"/memberships/metafields-and-tags"}]},{"group":"Partner Integration","pages":[{"title":"Partner Integration Framework overview","sidebarTitle":"Framework overview","href":"/memberships/partner-framework-overview"},{"title":"Partner Integration Framework","sidebarTitle":"Partner integration","href":"/memberships/partner-integration"}]},{"group":"Webhooks","pages":[{"title":"Appstle Memberships webhook events and setup","sidebarTitle":"Webhooks","href":"/memberships/webhooks"}]},{"group":"Admin API","pages":[{"group":"Cancellation Flow Configuration","pages":[{"title":"Get cancellation flow configuration","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/cancellation-managements/{id}","href":"/memberships-admin-api/cancellation-flow-configuration/get-cancellation-flow-configuration"}]},{"group":"Customer Discount History","pages":[{"title":"Get past discount codes for contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/customer-discount-code-infos/get-past-discounts","href":"/memberships-admin-api/customer-discount-history/get-past-discount-codes-for-contract"}]},{"group":"Customer Payment Methods","pages":[{"title":"Get customer payment token information","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/customer-payments/token/{customerId}","href":"/memberships-admin-api/customer-payment-methods/get-customer-payment-token-information"}]},{"group":"Customer Portal Configuration","pages":[{"title":"Get customer portal settings","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/customer-portal-settings/{id}","href":"/memberships-admin-api/customer-portal-configuration/get-customer-portal-settings"}]},{"group":"Membership Contracts","pages":[{"title":"Generate customer portal authentication token","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/customer-portal-token","href":"/memberships-admin-api/membership-contracts/generate-customer-portal-authentication-token"},{"title":"Generate customer portal magic link","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/manage-subscription-link/{customerId}","href":"/memberships-admin-api/membership-contracts/generate-customer-portal-magic-link"},{"title":"Add product line item to membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contract-add-line-item","href":"/memberships-admin-api/membership-contracts/add-product-line-item-to-membership-contract"},{"title":"Get membership contract list","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details","href":"/memberships-admin-api/membership-contracts/get-membership-contract-list"},{"title":"Get billing interval options for selling plans","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details/billing-interval","href":"/memberships-admin-api/membership-contracts/get-billing-interval-options-for-selling-plans"},{"title":"Get customer payment methods","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details/shopify/customer/{customerId}/payment-methods","href":"/memberships-admin-api/membership-contracts/get-customer-payment-methods"},{"title":"Get membership order fulfillment details","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details/subscription-fulfillments/{contractId}","href":"/memberships-admin-api/membership-contracts/get-membership-order-fulfillment-details"},{"title":"Get pending downgrade for a membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-details/{contractId}/pending-downgrade","href":"/memberships-admin-api/membership-contracts/get-pending-downgrade-for-a-membership-contract"},{"title":"Cancel pending downgrade for a membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json delete /api/external/v2/subscription-contract-details/{contractId}/pending-downgrade","href":"/memberships-admin-api/membership-contracts/cancel-pending-downgrade-for-a-membership-contract"},{"title":"Update product variant in membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contract-update-variant","href":"/memberships-admin-api/membership-contracts/update-product-variant-in-membership-contract"},{"title":"Create and add custom discount to membership","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-add-discount","href":"/memberships-admin-api/membership-contracts/create-and-add-custom-discount-to-membership"},{"title":"Add product to membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-add-line-item","href":"/memberships-admin-api/membership-contracts/add-product-to-membership-contract"},{"title":"Apply discount code to membership","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-apply-discount","href":"/memberships-admin-api/membership-contracts/apply-discount-code-to-membership"},{"title":"Send customer portal magic link via email","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contracts-email-magic-link","href":"/memberships-admin-api/membership-contracts/send-customer-portal-magic-link-via-email"},{"title":"Remove discount from membership","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-remove-discount","href":"/memberships-admin-api/membership-contracts/remove-discount-from-membership"},{"title":"Remove product from membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-remove-line-item","href":"/memberships-admin-api/membership-contracts/remove-product-from-membership-contract"},{"title":"Update membership contract billing date","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-billing-date","href":"/memberships-admin-api/membership-contracts/update-membership-contract-billing-date"},{"title":"Update billing interval for membership contract","description":"Changes the billing frequency of a membership contract. This allows customers to modify how often they are charged for their membership.\n\n**Key Features:**\n- **Flexible Billing**: Change billing frequency (daily, weekly, monthly, yearly)\n- **Custom Intervals**: Set custom interval counts (e.g., every 2 weeks, every 3 months)\n- **Immediate Effect**: Changes apply to the next billing cycle\n- **Independent from Delivery**: Billing interval can differ from delivery interval\n- **Activity Logging**: All changes are logged for audit trail\n\n**Billing Interval Options:**\n- **DAY**: Daily billing (intervalCount: how many days)\n- **WEEK**: Weekly billing (intervalCount: how many weeks)\n- **MONTH**: Monthly billing (intervalCount: how many months)\n- **YEAR**: Yearly billing (intervalCount: how many years)\n\n**Common Examples:**\n- `intervalCount=1, interval=MONTH`: Bill monthly\n- `intervalCount=2, interval=WEEK`: Bill every 2 weeks\n- `intervalCount=3, interval=MONTH`: Bill quarterly\n- `intervalCount=6, interval=MONTH`: Bill semi-annually\n- `intervalCount=1, interval=YEAR`: Bill annually\n\n**Common Use Cases:**\n- Customer wants to change from monthly to quarterly billing\n- Switch from annual to monthly payments\n- Adjust billing frequency to match cash flow\n- Promotional frequency changes\n- Align billing with payday schedules\n\n**Important Notes:**\n- **Next Billing Date**: System recalculates the next billing date based on new interval\n- **Pro-rata Billing**: No pro-rata adjustment; new interval starts from next billing date\n- **Minimum Cycles**: Respects minimum billing cycle requirements if configured\n- **Customer Portal Protection**: Includes freeze checks if called from customer portal\n\n**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-billing-interval","href":"/memberships-admin-api/membership-contracts/update-billing-interval-for-membership-contract"},{"title":"Update custom note attributes on membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-custom-note-attributes","href":"/memberships-admin-api/membership-contracts/update-custom-note-attributes-on-membership-contract"},{"title":"Update delivery interval for membership contract","description":"Changes the delivery/shipping frequency of a membership contract. This allows customers to modify how often they receive their membership orders.\n\n**Key Features:**\n- **Flexible Delivery**: Change delivery frequency (daily, weekly, monthly, yearly)\n- **Custom Intervals**: Set custom interval counts (e.g., every 2 weeks, every 3 months)\n- **Independent from Billing**: Delivery interval can differ from billing interval\n- **Immediate Effect**: Changes apply to the next delivery cycle\n- **Activity Logging**: All changes are logged for audit trail\n\n**Delivery Interval Options:**\n- **DAY**: Daily delivery (intervalCount: how many days)\n- **WEEK**: Weekly delivery (intervalCount: how many weeks)\n- **MONTH**: Monthly delivery (intervalCount: how many months)\n- **YEAR**: Yearly delivery (intervalCount: how many years)\n\n**Common Examples:**\n- `intervalCount=1, interval=MONTH`: Deliver monthly\n- `intervalCount=2, interval=WEEK`: Deliver every 2 weeks\n- `intervalCount=3, interval=MONTH`: Deliver quarterly\n- `intervalCount=1, interval=WEEK`: Deliver weekly\n- `intervalCount=6, interval=MONTH`: Deliver twice a year\n\n**Billing vs. Delivery Intervals:**\nThese can be different! For example:\n- **Bill monthly, deliver weekly**: Customer pays monthly but receives weekly shipments\n- **Bill quarterly, deliver monthly**: Customer pays every 3 months but receives monthly shipments\n- **Bill annually, deliver monthly**: Customer pays yearly upfront for monthly deliveries\n\n**Common Use Cases:**\n- Customer wants deliveries less frequently (save on shipping)\n- Customer wants deliveries more frequently (use products faster)\n- Adjust delivery to match consumption rate\n- Seasonal frequency changes (more in summer, less in winter)\n- Align deliveries with schedule (delivery when home from vacation)\n\n**Important Notes:**\n- **Billing Date Unchanged**: Only affects delivery schedule, not billing schedule\n- **Next Delivery Date**: System recalculates next delivery date based on new interval\n- **Order Fulfillment**: Each delivery creates a new order at the specified interval\n- **Prepaid Memberships**: Particularly useful for prepaid plans with multiple deliveries\n\n**Authentication:** Requires API key authentication via X-API-Key header or api_key parameter","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-delivery-interval","href":"/memberships-admin-api/membership-contracts/update-delivery-interval-for-membership-contract"},{"title":"Update membership line item quantity and pricing","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-line-item","href":"/memberships-admin-api/membership-contracts/update-membership-line-item-quantity-and-pricing"},{"title":"Update custom attributes on membership line item","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-line-item-attributes","href":"/memberships-admin-api/membership-contracts/update-custom-attributes-on-membership-line-item"},{"title":"Update maximum billing cycles for membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-max-cycles","href":"/memberships-admin-api/membership-contracts/update-maximum-billing-cycles-for-membership-contract"},{"title":"Update minimum billing cycles for membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-min-cycles","href":"/memberships-admin-api/membership-contracts/update-minimum-billing-cycles-for-membership-contract"},{"title":"Update order note/instructions for membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-order-note/{contractId}","href":"/memberships-admin-api/membership-contracts/update-order-noteinstructions-for-membership-contract"},{"title":"Update membership payment method","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-payment-method","href":"/memberships-admin-api/membership-contracts/update-membership-payment-method"},{"title":"Update shipping address for membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-shipping-address","href":"/memberships-admin-api/membership-contracts/update-shipping-address-for-membership-contract"},{"title":"Update membership contract status (pause/resume/activate)","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contracts-update-status","href":"/memberships-admin-api/membership-contracts/update-membership-contract-status-pauseresumeactivate"},{"title":"Get raw membership contract details from Shopify","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contracts/contract-external/{contractId}","href":"/memberships-admin-api/membership-contracts/get-raw-membership-contract-details-from-shopify"},{"title":"Cancel membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json delete /api/external/v2/subscription-contracts/{id}","href":"/memberships-admin-api/membership-contracts/cancel-membership-contract"},{"title":"Get detailed customer membership information","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-customers-detail/valid/{customerId}","href":"/memberships-admin-api/membership-contracts/get-detailed-customer-membership-information"},{"title":"Sync customer information","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json delete /api/external/v2/subscription-customers/sync-info/{customerId}","href":"/memberships-admin-api/membership-contracts/sync-customer-information"},{"title":"Get valid membership contract IDs for customer","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-customers/valid/{customerId}","href":"/memberships-admin-api/membership-contracts/get-valid-membership-contract-ids-for-customer"},{"title":"Get membership customer details","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-customers/{customerId}","href":"/memberships-admin-api/membership-contracts/get-membership-customer-details"}]},{"group":"Shipping \u0026 Delivery Profiles","pages":[{"title":"Create shipping/delivery profile (V1 format - Legacy)","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json post /api/external/v2/delivery-profiles/create-shipping-profile","href":"/memberships-admin-api/shipping-\u0026-delivery-profiles/create-shippingdelivery-profile-v1-format--legacy"},{"title":"Create shipping/delivery profile (V2 format)","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json post /api/external/v2/delivery-profiles/v2/create-shipping-profile","href":"/memberships-admin-api/shipping-\u0026-delivery-profiles/create-shippingdelivery-profile-v2-format"}]},{"group":"Product Swap Rules","pages":[{"title":"Get product swap options for membership items","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json post /api/external/v2/product-swaps-by-variant-groups","href":"/memberships-admin-api/product-swap-rules/get-product-swap-options-for-membership-items"}]},{"group":"Billing \u0026 Orders","pages":[{"title":"Update membership billing attempt","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-billing-attempts","href":"/memberships-admin-api/billing-\u0026-orders/update-membership-billing-attempt"},{"title":"Update order note for billing attempt","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-billing-attempts-update-order-note/{id}","href":"/memberships-admin-api/billing-\u0026-orders/update-order-note-for-billing-attempt"},{"title":"Retry billing for failed attempt","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-billing-attempts/attempt-billing/{id}","href":"/memberships-admin-api/billing-\u0026-orders/retry-billing-for-failed-attempt"},{"title":"Get past orders","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-billing-attempts/past-orders","href":"/memberships-admin-api/billing-\u0026-orders/get-past-orders"},{"title":"Get paginated past or upcoming orders report","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-billing-attempts/past-orders/report","href":"/memberships-admin-api/billing-\u0026-orders/get-paginated-past-or-upcoming-orders-report"},{"title":"Skip upcoming membership order","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-billing-attempts/skip-order/{id}","href":"/memberships-admin-api/billing-\u0026-orders/skip-upcoming-membership-order"},{"title":"Get upcoming orders","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-billing-attempts/top-orders","href":"/memberships-admin-api/billing-\u0026-orders/get-upcoming-orders"}]},{"group":"One-Time Add-Ons","pages":[{"title":"Get one-time add-ons for a membership contract","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-contract-one-offs-by-contractId","href":"/memberships-admin-api/one-time-add-ons/get-one-time-add-ons-for-a-membership-contract"},{"title":"Add one-time product to upcoming order","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json put /api/external/v2/subscription-contract-one-offs-by-contractId-and-billing-attempt-id","href":"/memberships-admin-api/one-time-add-ons/add-one-time-product-to-upcoming-order"},{"title":"Remove one-time product from upcoming order","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json delete /api/external/v2/subscription-contract-one-offs-by-contractId-and-billing-attempt-id","href":"/memberships-admin-api/one-time-add-ons/remove-one-time-product-from-upcoming-order"}]},{"group":"Custom CSS Styling","pages":[{"title":"Get custom CSS styling configuration","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-custom-csses/{id}","href":"/memberships-admin-api/custom-css-styling/get-custom-css-styling-configuration"}]},{"group":"Membership Plans","pages":[{"title":"List all membership plan groups","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-groups","href":"/memberships-admin-api/membership-plans/list-all-membership-plan-groups"},{"title":"Get a membership plan group","deprecated":null,"version":null,"openapi":"/memberships/admin-api-swagger.json get /api/external/v2/subscription-groups/{subscriptionGroupId}","href":"/memberships-admin-api/membership-plans/get-a-membership-plan-group"}]}]},{"group":"Customer Portal API","pages":[{"group":"Cancellation Flow Configuration","pages":[{"title":"Get cancellation flow settings","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/cancellation-managements/{id}","href":"/memberships-customer-portal-api/cancellation-flow-configuration/get-cancellation-flow-settings"}]},{"group":"Customer Discount History","pages":[{"title":"Get past discount history","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/customer-discount-code-infos/get-past-discounts","href":"/memberships-customer-portal-api/customer-discount-history/get-past-discount-history"}]},{"group":"Customer Portal Configuration","pages":[{"title":"Get customer portal settings","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/customer-portal-settings/{id}","href":"/memberships-customer-portal-api/customer-portal-configuration/get-customer-portal-settings"},{"title":"Get customer portal label translations for locale","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/label-translations/locale","href":"/memberships-customer-portal-api/customer-portal-configuration/get-customer-portal-label-translations-for-locale"}]},{"group":"Customer Retention","pages":[{"title":"Create retention activity record","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json post /memberships/cp/api/customer-retention-activities","href":"/memberships-customer-portal-api/customer-retention/create-retention-activity-record"}]},{"group":"Product \u0026 Inventory Data","pages":[{"title":"Get product details by ID","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/data/product","href":"/memberships-customer-portal-api/product-\u0026-inventory-data/get-product-details-by-id"},{"title":"Get product with selling plans and variants","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/data/product-selling-plan-variant","href":"/memberships-customer-portal-api/product-\u0026-inventory-data/get-product-with-selling-plans-and-variants"},{"title":"Search membership-enabled products with pagination","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/data/products","href":"/memberships-customer-portal-api/product-\u0026-inventory-data/search-membership-enabled-products-with-pagination"},{"title":"List products attached to selling plans","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/data/selling-plan-products","href":"/memberships-customer-portal-api/product-\u0026-inventory-data/list-products-attached-to-selling-plans"},{"title":"Get contextual pricing for a variant by currency","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/data/variant-contextual-pricing","href":"/memberships-customer-portal-api/product-\u0026-inventory-data/get-contextual-pricing-for-a-variant-by-currency"}]},{"group":"Shipping \u0026 Delivery Profiles","pages":[{"title":"Get pickup locations","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/delivery-profiles/get-locations","href":"/memberships-customer-portal-api/shipping-\u0026-delivery-profiles/get-pickup-locations"}]},{"group":"Loyalty Integration","pages":[{"title":"Get loyalty customer details","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/loyalty-integration/customer","href":"/memberships-customer-portal-api/loyalty-integration/get-loyalty-customer-details"},{"title":"Get loyalty point earn options","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/loyalty-integration/earn-options","href":"/memberships-customer-portal-api/loyalty-integration/get-loyalty-point-earn-options"},{"title":"Redeem loyalty points","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json post /memberships/cp/api/loyalty-integration/redeem","href":"/memberships-customer-portal-api/loyalty-integration/redeem-loyalty-points"},{"title":"Get loyalty point redeem options","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/loyalty-integration/redeem-options","href":"/memberships-customer-portal-api/loyalty-integration/get-loyalty-point-redeem-options"}]},{"group":"notification-resource","pages":[{"title":"Get membershipscpapinotification session","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/notification-session","href":"/memberships-customer-portal-api/notification-resource/get-membershipscpapinotification-session"}]},{"group":"Product Swap Rules","pages":[{"title":"Get product swap options by variant","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json post /memberships/cp/api/product-swaps-by-variant-groups","href":"/memberships-customer-portal-api/product-swap-rules/get-product-swap-options-by-variant"}]},{"group":"Shop Settings","pages":[{"title":"Get shop info for current user","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/shop-infos-by-current-login","href":"/memberships-customer-portal-api/shop-settings/get-shop-info-for-current-user"}]},{"group":"Billing \u0026 Orders","pages":[{"title":"Update billing attempt","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-billing-attempts","href":"/memberships-customer-portal-api/billing-\u0026-orders/update-billing-attempt"},{"title":"Trigger billing attempt","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-billing-attempts/attempt-billing/{id}","href":"/memberships-customer-portal-api/billing-\u0026-orders/trigger-billing-attempt"},{"title":"Get past orders","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-billing-attempts/past-orders","href":"/memberships-customer-portal-api/billing-\u0026-orders/get-past-orders"},{"title":"Skip an upcoming billing order","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-billing-attempts/skip-order/{id}","href":"/memberships-customer-portal-api/billing-\u0026-orders/skip-an-upcoming-billing-order"},{"title":"Get upcoming orders","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-billing-attempts/top-orders","href":"/memberships-customer-portal-api/billing-\u0026-orders/get-upcoming-orders"}]},{"group":"Membership Contracts","pages":[{"title":"Update membership contract details","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contract-details","href":"/memberships-customer-portal-api/membership-contracts/update-membership-contract-details"},{"title":"Get current billing cycle","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-details/current-cycle/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/get-current-billing-cycle"},{"title":"Get customer membership details","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-details/customer/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/get-customer-membership-details"},{"title":"Get customer payment methods","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-details/shopify/customer/{customerId}/payment-methods","href":"/memberships-customer-portal-api/membership-contracts/get-customer-payment-methods"},{"title":"List Shopify fulfillments for a membership contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-details/subscription-fulfillments/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/list-shopify-fulfillments-for-a-membership-contract"},{"title":"Get pending downgrade","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-details/{contractId}/pending-downgrade","href":"/memberships-customer-portal-api/membership-contracts/get-pending-downgrade"},{"title":"Cancel pending downgrade","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json delete /memberships/cp/api/subscription-contract-details/{contractId}/pending-downgrade","href":"/memberships-customer-portal-api/membership-contracts/cancel-pending-downgrade"},{"title":"Update line item variant","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contract-update-variant","href":"/memberships-customer-portal-api/membership-contracts/update-line-item-variant"},{"title":"Apply discount code","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-apply-discount","href":"/memberships-customer-portal-api/membership-contracts/apply-discount-code"},{"title":"Apply cancellation retention discount","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-cancellation-discount","href":"/memberships-customer-portal-api/membership-contracts/apply-cancellation-retention-discount"},{"title":"Send magic link email","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contracts-email-magic-link","href":"/memberships-customer-portal-api/membership-contracts/send-magic-link-email"},{"title":"Remove discount from contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-remove-discount","href":"/memberships-customer-portal-api/membership-contracts/remove-discount-from-contract"},{"title":"Remove line item from contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-remove-line-item","href":"/memberships-customer-portal-api/membership-contracts/remove-line-item-from-contract"},{"title":"Update next billing date","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-billing-date","href":"/memberships-customer-portal-api/membership-contracts/update-next-billing-date"},{"title":"Update billing interval","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-billing-interval","href":"/memberships-customer-portal-api/membership-contracts/update-billing-interval"},{"title":"Update existing payment method details","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-existing-payment-method","href":"/memberships-customer-portal-api/membership-contracts/update-existing-payment-method-details"},{"title":"Update line item attributes","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-line-item-attributes","href":"/memberships-customer-portal-api/membership-contracts/update-line-item-attributes"},{"title":"Update order note","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-order-note/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/update-order-note"},{"title":"Update payment method","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-payment-method","href":"/memberships-customer-portal-api/membership-contracts/update-payment-method"},{"title":"Update shipping address","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-shipping-address","href":"/memberships-customer-portal-api/membership-contracts/update-shipping-address"},{"title":"Update membership contract status","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contracts-update-status","href":"/memberships-customer-portal-api/membership-contracts/update-membership-contract-status"},{"title":"Get raw Shopify membership contract data","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contracts/contract-external/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/get-raw-shopify-membership-contract-data"},{"title":"Get membership contract details","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contracts/contract/{contractId}","href":"/memberships-customer-portal-api/membership-contracts/get-membership-contract-details"},{"title":"Cancel a membership contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json delete /memberships/cp/api/subscription-contracts/{id}","href":"/memberships-customer-portal-api/membership-contracts/cancel-a-membership-contract"},{"title":"Get current customer's membership profile","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-customers","href":"/memberships-customer-portal-api/membership-contracts/get-current-customers-membership-profile"},{"title":"Get valid membership contracts for a customer","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-customers-detail/valid/{id}","href":"/memberships-customer-portal-api/membership-contracts/get-valid-membership-contracts-for-a-customer"},{"title":"List current customer's valid membership contract IDs","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-customers/valid","href":"/memberships-customer-portal-api/membership-contracts/list-current-customers-valid-membership-contract-ids"},{"title":"Add line item to contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/v2/subscription-contracts-add-line-item","href":"/memberships-customer-portal-api/membership-contracts/add-line-item-to-contract"}]},{"group":"One-Time Add-Ons","pages":[{"title":"Get one-off items for contract","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-contract-one-offs-by-contractId","href":"/memberships-customer-portal-api/one-time-add-ons/get-one-off-items-for-contract"},{"title":"Add or update one-off item","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json put /memberships/cp/api/subscription-contract-one-offs-by-contractId-and-billing-attempt-id","href":"/memberships-customer-portal-api/one-time-add-ons/add-or-update-one-off-item"}]},{"group":"Custom CSS Styling","pages":[{"title":"Get custom CSS styles","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-custom-csses/{id}","href":"/memberships-customer-portal-api/custom-css-styling/get-custom-css-styles"}]},{"group":"Membership Plans","pages":[{"title":"Get all selling plans","deprecated":null,"version":null,"openapi":"/memberships/storefront-api-swagger.json get /memberships/cp/api/subscription-groups/all-selling-plans","href":"/memberships-customer-portal-api/membership-plans/get-all-selling-plans"}]}]}]},{"product":"Bundles","icon":"boxes-stacked","description":"Fixed, dynamic, and volume-discount bundles plus Build-a-Box","pages":[{"title":"Bundles","href":"/bundles/introduction"}]}]},"title":"Update custom note attributes on membership contract - Appstle","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-rfhihCWU.js","utils-BmH1XFxk.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BcNsxPKB.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BAES3tkd.js","snippetPresets-DCMQBKLP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-D5fEM6aW.js","ApiExamples-D6l_bzE9.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BOktbnNh.js","shallow-BCs8SgM7.js","getApiPlaygroundDisplay-DEmW5bJB.js","CodeSnippet-CpZOpB9C.js","CodeSnippets-BOBDqibl.js","getPastedJson-DH2JBvmr.js","icon-BBJH-kKh.js","MethodPill-D2Sd5NLC.js","DuplicateIcon-CGgfL2qN.js","createIcon-BKudBBzi.js","DynamicMarkdown-85clUA0i.js","SectionHeading-D0JiMgDx.js","axios-vUo_bRtp.js","Markdown-Cfiy0xZO.js","clsx-rL8ZCCw4.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-aeztFa9U.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BywkCr5C.js"]}