An optional id you send to tie this request to your own logs. Send one and it is echoed back unchanged; omit it and one is assigned for you. Either way the id is returned in the X-Correlation-Id response header on every response, including errors, so you can match a response to the request that produced it.
Your brand id (brd_...). It must be one of the brands your API key's account owns; with a publishable key it must be the one brand the key was issued for. A missing or malformed value is refused with 400, and an unknown or foreign brand with 404.
The result of a resolve, next, or abandon call — the session identity, the current question (or null when finished), the status, any flags (e.g. ship_state_mismatch), and any validation issues. On completion it may carry the entry-link hand-off.
active (a node is presented), complete (server-authoritative completion), abandoned (patient drop-off), or blocked — a terminal, server-authoritative refusal to proceed (a required consent was declined or could not be affirmed). On blocked, node is null and blocked carries the honest stop-screen outcome.
The honest stop-screen outcome. Present only when status is blocked. Carries the machine-readable reason, the node at which the block occurred, the consent scopes that were not granted (codes, never patient data), and a support-routing hint. The stop-screen copy is a presentation concern (the intake kit renders it); no patient data ever rides here. No order lock ever forms without a positive affirmation where one is required.
Present ONLY on the response to the call whose answer completed the questionnaire, and only when that questionnaire was started by your server with your secret key and no enrollment id (a fresh start, not a resume). It is a short-lived credential (about 10 minutes) that proves this browser's patient walked this enrollment. Never put it in a URL, never send it to browser JavaScript, and never log it. Hand the patient to checkout with a top-level form POST to https://member.<your brand domain>/api/checkout/door, with this value in the capability field of the request body and your offering_ref beside it. The form must be submitted from a page on one of your brand's registered browser origins (the browser's Origin header must match one exactly); any other origin is refused. If it has expired, the patient restarts the questionnaire; it is never reissued from the enrollment id. A repeated call on an already-complete session does not carry it again.
Post-completion hand-off carried when a session that began from an entry link completes. Present only when status is complete and the session carried a validated entry context. redirect holds a brand-allowlisted https URL; promo is an opaque pass-through token validated downstream; test is the per-client test-mode flag. Never carries patient data.
A node as presented to the client — PRESENTATION ONLY. The client never owns the sequence, controls, or option order (those come from the compiled bundle; a brand theme cannot alter them). Brand theme/copy, when applied, ride alongside as presentation overlay.
Server-computed progress metadata, present on every resolve/next step: computed from the live effective plan — never client-guessed. position_estimate is the honest fraction of the plan completed (0..1); display nodes participate in the fraction. Whether and how it renders (thin persistent bar, step ring, interstitial pacing, none) is brand-theme presentation.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Purple Label MD","description":"Public API reference for building a patient storefront on the platform. Generated from the platform's own API contracts, and matches the newest staging release.","colors":{"primary":"#6D28D9","light":"#A78BFA","dark":"#5B21B6"},"logo":{"light":"https://mintcdn.com/purplelabelmd/1P9p4n7lsNL4z3Jc/logo/light.svg?fit=max\u0026auto=format\u0026n=1P9p4n7lsNL4z3Jc\u0026q=85\u0026s=3c0569e3f76e49e04d232187908c2e2e","dark":"https://mintcdn.com/purplelabelmd/1P9p4n7lsNL4z3Jc/logo/dark.svg?fit=max\u0026auto=format\u0026n=1P9p4n7lsNL4z3Jc\u0026q=85\u0026s=c11f42bb461c28528be896c7c1a80efa"},"favicon":"https://mintcdn.com/purplelabelmd/MUdvgTlYoCGY54e8/favicon.svg?fit=max\u0026auto=format\u0026n=MUdvgTlYoCGY54e8\u0026q=85\u0026s=3bd633ab20ff170e0ebebec0406e6972","footer":{"socials":{}},"fonts":{"heading":{"family":"Geist"},"body":{"family":"Geist"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"purplelabelmd","hasAudioNarration":false,"actualSubdomain":"purplelabelmd","customDomains":["docs.purplelabelmd.com"],"gitSource":{"type":"github","owner":"purple-label-md","repo":"purple-doc","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af545312fc9183f3253a260","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"API reference","count":50},{"language":"default","tag":"Guides","count":21},{"language":"default","tag":"Offering configuration","count":18},{"language":"default","tag":"Integrate","count":16},{"language":"default","tag":"Brand configuration","count":9},{"language":"default","tag":"Webhooks","count":7},{"language":"default","tag":"Payments","count":4},{"language":"default","tag":"Intake","count":3},{"language":"default","tag":"Onboarding","count":3},{"language":"default","tag":"Sessions \u0026 authentication","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":true},"customCss":[{"filePath":"style.css","content":"@media (prefers-reduced-motion: no-preference){.plmd-logo{transform-origin:center;transition:transform 0.12s ease}.plmd-logo .plmd-mark path{transform-box:fill-box;transform-origin:center}.plmd-logo-link:active .plmd-logo{transform:scale(0.85)}.plmd-logo-link:hover .plmd-logo .plmd-mark path:last-child{animation:plmd-carrot-hop 0.55s ease}.plmd-logo-link:hover .plmd-logo .plmd-mark path:nth-child(-n+6){animation:plmd-carrot-twinkle 0.5s ease}.plmd-logo-link:hover .plmd-logo .plmd-mark path:nth-child(even){animation-delay:0.08s}}@keyframes plmd-carrot-hop{0%{transform:translateY(0) rotate(0)}30%{transform:translateY(-14%) rotate(-9deg)}55%{transform:translateY(0) rotate(6deg)}78%{transform:translateY(-5%) rotate(-2deg)}100%{transform:translateY(0) rotate(0)}}@keyframes plmd-carrot-twinkle{0%,100%{transform:scale(1);opacity:1}45%{transform:scale(1.6);opacity:0.7}}"}],"page":{"pagePath":"api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire","slug":"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire","pageMetadata":{"title":"Record that your patient dropped off the questionnaire","description":"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/instrument/abandon","href":"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire","autogeneratedByOpenApi":true},"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: \"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\"\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":"Record that your patient dropped off the questionnaire","description":"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/instrument/abandon","href":"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/purplelabelmd/3b4d4a495cd0c48d/brand.js"],"openApiReferenceData":{"operation":{"description":"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.","operationId":"abandonInstrument","parameters":["7929a9ca-296d-4e4e-b703-6f313866baed"],"requestBody":"40340777-5f3a-4cf8-b09d-54b0c8c6874e","responses":{"200":"e58c6a79-ce39-4228-9a64-6f5ead583f33","404":"32651d37-4de0-4162-9f1d-7311d650afa0","429":"aa1fd9ec-96b3-4496-b1c9-f72356394de2"},"security":["b454b378-9753-4496-932f-04de1c84ed20"],"summary":"Record that your patient dropped off the questionnaire","tags":["Intake"],"method":"post","type":"path","servers":["76f2c082-b62c-4aea-a087-a046f1378296"],"path":"/v1/instrument/abandon","baseUrlOptions":["https://api.staging.purplelabelmd.com"],"title":"Record that your patient dropped off the questionnaire","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"7929a9ca-296d-4e4e-b703-6f313866baed":{"description":"An optional id you send to tie this request to your own logs. Send one and it is echoed back unchanged; omit it and one is assigned for you. Either way the id is returned in the X-Correlation-Id response header on every response, including errors, so you can match a response to the request that produced it.","in":"header","name":"X-Correlation-Id","required":false,"schema":{"maxLength":128,"pattern":"^[A-Za-z0-9][A-Za-z0-9._:-]*$","type":"string","isRequired":false,"description":"An optional id you send to tie this request to your own logs. Send one and it is echoed back unchanged; omit it and one is assigned for you. Either way the id is returned in the X-Correlation-Id response header on every response, including errors, so you can match a response to the request that produced it.","uniqueKey":"","typeLabel":"string"}},"334bf399-d810-404f-a9da-63c6c5ca6811":{"description":"Your brand id (`brd_...`). It must be one of the brands your API key's account owns; with a publishable key it must be the one brand the key was issued for. A missing or malformed value is refused with `400`, and an unknown or foreign brand with `404`.","in":"header","name":"X-Brand-Id","required":true,"schema":{"pattern":"^brd_[A-Za-z0-9][A-Za-z0-9_-]*$","type":"string","isRequired":true,"description":"Your brand id (`brd_...`). It must be one of the brands your API key's account owns; with a publishable key it must be the one brand the key was issued for. A missing or malformed value is refused with `400`, and an unknown or foreign brand with `404`.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"properties":{"session_id":{"type":"string","isRequired":true,"uniqueKey":"session_id","typeLabel":"string"}},"required":["session_id"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"session_id":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"e58c6a79-ce39-4228-9a64-6f5ead583f33":{"content":{"application/json":{"schema":{"description":"The result of a resolve, next, or abandon call — the session identity, the current question (or null when finished), the status, any flags (e.g. ship_state_mismatch), and any validation issues. On completion it may carry the entry-link hand-off.","properties":{"journey_id":{"pattern":"^jny_[A-Za-z0-9][A-Za-z0-9_-]*$","type":"string","isRequired":true,"uniqueKey":"journey_id","typeLabel":"string"},"session_id":{"type":"string","isRequired":true,"uniqueKey":"session_id","typeLabel":"string"},"status":{"description":"`active` (a node is presented), `complete` (server-authoritative completion), `abandoned` (patient drop-off), or `blocked` — a terminal, server-authoritative refusal to proceed (a required consent was declined or could not be affirmed). On `blocked`, `node` is null and `blocked` carries the honest stop-screen outcome.","enum":["active","complete","abandoned","blocked"],"type":"string","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"blocked":{"description":"The honest stop-screen outcome. Present only when `status` is `blocked`. Carries the machine-readable reason, the node at which the block occurred, the consent scopes that were not granted (codes, never patient data), and a support-routing hint. The stop-screen copy is a presentation concern (the intake kit renders it); no patient data ever rides here. No order lock ever forms without a positive affirmation where one is required.","properties":{"code":{"description":"A stable reason code, for example `consent_declined`, or `declined_therapy` when the questionnaire ends the visit. New codes can be added, so treat an unknown code as a generic stop.","type":"string","isRequired":true,"uniqueKey":"blocked.code","typeLabel":"string"},"node_id":{"description":"the node at which the block occurred (the consent node id, or the id of the node that declared the terminal)","type":"string","isRequired":true,"uniqueKey":"blocked.node_id","typeLabel":"string"},"content":{"additionalProperties":{"type":"string","uniqueKey":"blocked.content.additionalProperties","typeLabel":"string"},"description":"The stop's served words: named display-copy slots (e.g. `headline`, `body`) supplied by the server for this stop. A client renders these; it never picks the stop's wording off `code`. Absent means this stop supplies no copy and the client's own fallback stands. Carries instrument content only — never patient data.","type":"object","uniqueKey":"blocked.content","typeLabel":"object"},"support_route":{"description":"a stable support-routing key (edge owns portal→GHL support routing); never PII","type":"string","uniqueKey":"blocked.support_route","typeLabel":"string"},"ungranted_scopes":{"description":"consent scopes not granted — codes, never patient data","items":{"type":"string","uniqueKey":"blocked.ungranted_scopes.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"blocked.ungranted_scopes","typeLabel":"string[]"}},"required":["code","node_id"],"type":"object","uniqueKey":"blocked","typeLabel":"object"},"destination_capability":{"description":"Present ONLY on the response to the call whose answer completed the questionnaire, and only when that questionnaire was started by your server with your secret key and no enrollment id (a fresh start, not a resume). It is a short-lived credential (about 10 minutes) that proves this browser's patient walked this enrollment. Never put it in a URL, never send it to browser JavaScript, and never log it. Hand the patient to checkout with a top-level form POST to `https://member.\u003cyour brand domain>/api/checkout/door`, with this value in the `capability` field of the request body and your `offering_ref` beside it. The form must be submitted from a page on one of your brand's registered browser origins (the browser's Origin header must match one exactly); any other origin is refused. If it has expired, the patient restarts the questionnaire; it is never reissued from the enrollment id. A repeated call on an already-complete session does not carry it again.","type":"string","uniqueKey":"destination_capability","typeLabel":"string"},"flags":{"items":{"type":"string","uniqueKey":"flags.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"flags","typeLabel":"string[]"},"handoff":{"additionalProperties":false,"description":"Post-completion hand-off carried when a session that began from an entry link completes. Present only when `status` is `complete` and the session carried a validated entry context. `redirect` holds a brand-allowlisted https URL; `promo` is an opaque pass-through token validated downstream; `test` is the per-client test-mode flag. Never carries patient data.","properties":{"promo":{"maxLength":256,"type":"string","uniqueKey":"handoff.promo","typeLabel":"string"},"redirect":{"maxLength":2048,"type":"string","uniqueKey":"handoff.redirect","typeLabel":"string"},"test":{"type":"boolean","uniqueKey":"handoff.test","typeLabel":"boolean"}},"type":"object","uniqueKey":"handoff","typeLabel":"object"},"issues":{"items":{"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"conflicting_codes":{"description":"Paired with `exclusive_codes`. The option code(s) the exclusive selection contradicted — the other half of \"which options clashed\". When the submission carried only exclusive options, they contradict each other and both lists name them.","items":{"type":"string","uniqueKey":"issues.items.[INDEX].conflicting_codes.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"issues.items.[INDEX].conflicting_codes","typeLabel":"string[]"},"exclusive_codes":{"description":"Present ONLY on `code: renderer.exclusive_violation`, absent on every other issue. The exclusive (\"none of these\"-class) option code(s) the refused submission carried. A contradictory selection on a clinical-safety question is a SERVE defect, not a client nicety: the server refuses it with a 422 and never a 200-advance, and the refusal must say WHICH selections contradicted so the client can correct the exact ones. These are the caller's OWN submitted codes echoed back to the caller.","items":{"type":"string","uniqueKey":"issues.items.[INDEX].exclusive_codes.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"issues.items.[INDEX].exclusive_codes","typeLabel":"string[]"}},"required":["code","message"],"type":"object","uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"issues","typeLabel":"object[]"},"node":{"oneOf":[{"type":"object","description":"A node as presented to the client — PRESENTATION ONLY. The client never owns the sequence, controls, or option order (those come from the compiled bundle; a brand theme cannot alter them). Brand theme/copy, when applied, ride alongside as presentation overlay.","required":["node_id","kind","section_id"],"properties":{"kind":{"description":"`question` (collects a fact), `display` (an informational node with no answer channel), or `consent` (a consent-capture affirmation surface — its clinician/counsel-locked copy rides `content`, its `consent_version` + `grants` ride alongside). A `consent` node comes in TWO KINDS under ONE shape: the treatment consent (no `consent_kind`; binds no fact; a decline ends the session with an honest stop screen) and `communications_consent` (see `consent_kind`; never blocks, grants nothing, and the server records BOTH outcomes itself).","enum":["question","display","consent"],"type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"node_id":{"type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.node_id","typeLabel":"string"},"section_id":{"type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.section_id","typeLabel":"string"},"computed_stub":{"type":"boolean","uniqueKey":"node.oneOf.0.computed_stub","typeLabel":"boolean"},"consent_kind":{"description":"the consent node's SUB-KIND. Present ONLY on a `communications_consent` node (the email opt-in and the SMS consents); ABSENT on a treatment consent, whose decline ends the session with an honest stop screen. THE AFFORDANCES DIFFER, which is why it is served: on this kind the client offers one affirmative action AND an explicit \"No thanks\", both outcomes are recorded as an auditable fact with the served copy version, Continue with neither is recorded as not-granted, and NO outcome ever blocks the intake or terminates the session. A client that cannot distinguish the two kinds either hides a lawful decline or offers one that ends a member's intake. It carries no fact code: the server records the outcome under its own write key, and the stable code stays the server's binding.","enum":["communications_consent"],"type":"string","uniqueKey":"node.oneOf.0.consent_kind","typeLabel":"enum\u003cstring>"},"consent_version":{"description":"the consent version served on a `consent` node. The client echoes it on the affirmation; it rides into the recorded consent fact as provenance. The MD/counsel-locked affirmation copy rides `content`; brand can never supply it.","type":"string","uniqueKey":"node.oneOf.0.consent_version","typeLabel":"string"},"content":{"additionalProperties":{"type":"string","uniqueKey":"node.oneOf.0.content.additionalProperties","typeLabel":"string"},"description":"Named display-content slots for a display node — MD-locked copy carried in the compiled instrument bundle, versioned and reviewed with the instrument. Brand config themes presentation only and cannot supply or override these slots, with ONE narrow exception: in the two instrument-furniture slots (`start_greeting`, `acknowledgement_documents`) and in a consent node's counsel-locked text, the platform substitutes the brand's REGISTERED IDENTITY — its display name and its registered legal-document URLs — into fixed token positions the instrument itself authors. That is substitution of an identity value into MD-authored wording, never brand-supplied WORDING: a brand still cannot contribute one word of a clinical question prompt or option label, which remain structurally unreachable. The `copy` field is the separate question-headline channel; its authoritative source is likewise the MD-locked instrument bundle, and the brand overlay can never override it.","type":"object","uniqueKey":"node.oneOf.0.content","typeLabel":"object"},"control":{"type":"string","uniqueKey":"node.oneOf.0.control","typeLabel":"string"},"copy":{"description":"The question headline, as a single string, served from the MD-locked question prompt in the compiled instrument bundle (versioned and reviewed with the instrument). For a question node this is its only source — the per-brand copy overlay can never supply or override it (theming yes, wording never). Absent is valid; the renderer falls back deterministically (for example a formatted fact code).","type":"string","uniqueKey":"node.oneOf.0.copy","typeLabel":"string"},"display":{"enum":["static","computed"],"type":"string","uniqueKey":"node.oneOf.0.display","typeLabel":"enum\u003cstring>"},"fact":{"type":"string","uniqueKey":"node.oneOf.0.fact","typeLabel":"string"},"grants":{"description":"the consent scopes an affirmative answer grants on a `consent` node. Codes, never labels; nothing branches on the copy text. A `communications_consent` node grants nothing, so this is the empty list there — it can never tell a client which kind of consent card it is looking at; `consent_kind` is that signal.","items":{"type":"string","uniqueKey":"node.oneOf.0.grants.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"node.oneOf.0.grants","typeLabel":"string[]"},"interstitial":{"description":"Marks a display node as an interstitial moment for skin treatment (the tint pair is reserved for these). Presentation flag only; never carried on question nodes.","type":"boolean","uniqueKey":"node.oneOf.0.interstitial","typeLabel":"boolean"},"may_auto_advance":{"type":"boolean","uniqueKey":"node.oneOf.0.may_auto_advance","typeLabel":"boolean"},"media":{"description":"Capture configuration for a file-capture question. When absent, the question is a standard photo or document upload. Presentation and capture-bounds only — the answer is an upload reference and nothing branches on the media content; faces and voices are never matched, recognized, or graphed.","properties":{"kind":{"enum":["image","video"],"type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.media.kind","typeLabel":"enum\u003cstring>"},"accept":{"description":"MIME allowlist (e.g. video/mp4, video/webm)","items":{"type":"string","uniqueKey":"node.oneOf.0.media.accept.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"node.oneOf.0.media.accept","typeLabel":"string[]"},"capture_mode":{"enum":["upload","record","record_or_upload"],"type":"string","uniqueKey":"node.oneOf.0.media.capture_mode","typeLabel":"enum\u003cstring>"},"consent_copy":{"description":"The PLAIN DISPLAY TEXT the member must be shown before any affirmative action, pinned to `consent_version`. The portal renders THIS EXACT text; it is not a key, not a template, and the client never substitutes its own wording — consent to copy the server did not serve is not consent. Optional on the contract because non-video captures may not gate on consent at all, but REQUIRED (nonempty) for a managed video capture alongside `consent_version` and `consent_fact`: all three, or no grant and no recorded consent. Authored and served through the same MediaConfig, so the text the member reads and the version the server records can never drift apart.","type":"string","uniqueKey":"node.oneOf.0.media.consent_copy","typeLabel":"string"},"consent_fact":{"description":"fact code the consent acknowledgment projects to (discrete auditable consent fact)","type":"string","uniqueKey":"node.oneOf.0.media.consent_fact","typeLabel":"string"},"consent_version":{"description":"the version OF RECORD for the consent copy below. The server checks the echoed version against this one and records it on the acknowledgment; there is NO versionless fallback — a managed video capture whose node omits this refuses rather than recording a consent that cannot say which copy was agreed to.","type":"string","uniqueKey":"node.oneOf.0.media.consent_version","typeLabel":"string"},"facing":{"description":"advisory front/rear camera hint; not enforced","enum":["user","environment"],"type":"string","uniqueKey":"node.oneOf.0.media.facing","typeLabel":"enum\u003cstring>"},"max_bytes":{"type":"integer","uniqueKey":"node.oneOf.0.media.max_bytes","typeLabel":"integer"},"max_duration_s":{"type":"number","uniqueKey":"node.oneOf.0.media.max_duration_s","typeLabel":"number"},"min_duration_s":{"type":"number","uniqueKey":"node.oneOf.0.media.min_duration_s","typeLabel":"number"},"require_consent":{"description":"gate capture on a consent-to-record acknowledgment (video ⇒ true)","type":"boolean","uniqueKey":"node.oneOf.0.media.require_consent","typeLabel":"boolean"},"resumable":{"type":"boolean","uniqueKey":"node.oneOf.0.media.resumable","typeLabel":"boolean"}},"required":["kind"],"type":"object","uniqueKey":"node.oneOf.0.media","typeLabel":"object"},"offering_refs":{"items":{"type":"string","uniqueKey":"node.oneOf.0.offering_refs.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"node.oneOf.0.offering_refs","typeLabel":"string[]"},"option_codes":{"items":{"type":"string","uniqueKey":"node.oneOf.0.option_codes.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"node.oneOf.0.option_codes","typeLabel":"string[]"},"options":{"description":"Per-option presentation hints for this question. When present, it lists the same codes in the same order as `option_codes` — option order comes from the questionnaire and cannot be altered by theming. When absent, render from `option_codes` alone.","items":{"description":"One selectable option with its presentation hints — presentation only, carried alongside `option_codes`. An `exclusive` option (a \"none of these\"-class choice) cannot be combined with any sibling — selecting it should clear the other selections, and the server rejects an answer that carries an exclusive code together with another selection (`422`, the session does not advance). A banded choice (for example a blood-pressure or frequency range) may carry a `classification_code` alongside its stable option code.","properties":{"code":{"description":"the stable option code submitted as the answer value","type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.options.items.[INDEX].code","typeLabel":"string"},"classification_code":{"description":"classification code carried by a banded choice alongside its stable option code","type":"string","uniqueKey":"node.oneOf.0.options.items.[INDEX].classification_code","typeLabel":"string"},"exclusive":{"description":"marks a \"none of these\"-class option that cannot be combined with any sibling selection","type":"boolean","uniqueKey":"node.oneOf.0.options.items.[INDEX].exclusive","typeLabel":"boolean"},"label":{"description":"MD-locked display label for this option, carried in the compiled instrument bundle and resolved by the stable option code (never positional). Presentation only — the code remains the submitted answer value and the sole binding; consumers fall back to the code when no label is present.","type":"string","uniqueKey":"node.oneOf.0.options.items.[INDEX].label","typeLabel":"string"}},"required":["code"],"type":"object","uniqueKey":"node.oneOf.0.options.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"node.oneOf.0.options","typeLabel":"object[]"},"page":{"description":"Present ONLY on a question node whose value was staged from the member's OWN checkout destination record (always paired with `prefill: confirm` and a populated `prefilled_value`). Names the one leading page (\"Confirm your details\") the four contact nodes — name, email, phone, state — collapse onto with edit-in-place. A presentation grouping hint only, exactly like `interstitial` above: the server still walks one node at a time (resolve -> next -> ...); a client groups consecutive `confirm_details` nodes onto one screen without any change to the answer protocol. WHAT A CONFIRM DOES: confirming one of these nodes RECORDS that your patient affirmed the value shown — the same durable assertion any other confirm writes. It does not write a correction, because there was nothing to correct. Editing instead writes the edited value, superseding it, exactly like any other answered question. WHAT IS SHOWN IS ALWAYS A VALID ANSWER TO THE QUESTION: for a question whose answers are option codes, the `prefilled_value` is one of that node's own `option_codes`, promoted from the checkout record's postal spelling. A checkout value that cannot be resolved onto one of those options — an unfamiliar spelling, a region the question does not offer, a blank, a half-composed name — is NOT shown: that node arrives as an ordinary open question with no `page` and no `prefilled_value`, and your patient answers it normally. Absent on every other node.","enum":["confirm_details"],"type":"string","uniqueKey":"node.oneOf.0.page","typeLabel":"enum\u003cstring>"},"prefill":{"enum":["collect","suppress","confirm"],"type":"string","uniqueKey":"node.oneOf.0.prefill","typeLabel":"enum\u003cstring>"},"prefilled_value":{"oneOf":[{}],"uniqueKey":"node.oneOf.0.prefilled_value","typeLabel":"any"},"reassurance":{"description":"A single hedged reassurance line for a computed display panel, served from the MD-locked instrument content and reviewed with it. The line is SELECTED server-side by where the primary computed value falls against the served zone (below / in_zone / above) — never served statically — and is PRESENT only when the matching band is authored and the band could be determined; otherwise it is ABSENT (fail to neutral). Display copy only; it carries no eligibility language and defers every decision to the clinician.","type":"string","uniqueKey":"node.oneOf.0.reassurance","typeLabel":"string"},"required":{"type":"boolean","uniqueKey":"node.oneOf.0.required","typeLabel":"boolean"},"theme":{"additionalProperties":true,"type":"object","uniqueKey":"node.oneOf.0.theme","typeLabel":"object"},"unit":{"description":"The unit a question's answer is expressed in (for example \"in\" or \"lb\"), served from the question's MD-locked copy in the compiled instrument bundle, beside its prompt. Present only on a question node whose instrument authors a non-blank unit; absent otherwise. When absent the client shows no unit and never infers one — in particular never from the fact code. The per-brand overlay can never supply or override it. Display text only; nothing branches on it.","type":"string","uniqueKey":"node.oneOf.0.unit","typeLabel":"string"},"values":{"additionalProperties":{"oneOf":[{}],"uniqueKey":"node.oneOf.0.values.additionalProperties","typeLabel":"any"},"description":"Server-supplied display values keyed by fact/derivation CODE (codes, never label text). Derived codes are computed server-side on read from registered pure derivations — the client renders these values and never computes anything of record. A display node whose primary referenced values cannot all be resolved is never emitted (server-skipped, fail-soft). Ancillary echoed values (for example the height and weight behind a computed number) ride this same map alongside the primary value; an echoed value that cannot be resolved is omitted, and never blocks the node.","type":"object","uniqueKey":"node.oneOf.0.values","typeLabel":"object"},"zone":{"description":"A designed-panel band descriptor for a computed display node: a scale from `scale_min` to `scale_max` with a highlighted band from `zone_min` to `zone_max`, named by `zone_label`. The client places the patient's marker and the highlighted band for the picture. Display copy and presentation only — a zone carries no eligibility language and never asserts eligibility; the server remains authoritative on jurisdiction and eligibility.","properties":{"scale_max":{"description":"high end of the rendered scale axis","type":"number","isRequired":true,"uniqueKey":"node.oneOf.0.zone.scale_max","typeLabel":"number"},"scale_min":{"description":"low end of the rendered scale axis","type":"number","isRequired":true,"uniqueKey":"node.oneOf.0.zone.scale_min","typeLabel":"number"},"zone_label":{"description":"label naming the highlighted band (display copy; never an outcome)","type":"string","isRequired":true,"uniqueKey":"node.oneOf.0.zone.zone_label","typeLabel":"string"},"zone_max":{"description":"high bound of the highlighted band (within the scale)","type":"number","isRequired":true,"uniqueKey":"node.oneOf.0.zone.zone_max","typeLabel":"number"},"zone_min":{"description":"low bound of the highlighted band (within the scale)","type":"number","isRequired":true,"uniqueKey":"node.oneOf.0.zone.zone_min","typeLabel":"number"}},"required":["scale_min","scale_max","zone_min","zone_max","zone_label"],"type":"object","uniqueKey":"node.oneOf.0.zone","typeLabel":"object"}},"uniqueKey":"node.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"node.oneOf.1","typeLabel":"null"}],"uniqueKey":"node","typeLabel":"object | null"},"patient_readiness":{"type":"object","description":"Present on a resolve: whether your brand is ready for patients, and what is still missing if not. The questionnaire is served either way.","required":["status","consent_holder","required_documents","missing"],"properties":{"consent_holder":{"description":"who holds the brand's consent documents, as chosen; `not_chosen` until someone chooses.","enum":["purple","client","not_chosen"],"type":"string","isRequired":true,"uniqueKey":"patient_readiness.consent_holder","typeLabel":"enum\u003cstring>"},"missing":{"description":"every required item still unset; empty exactly when `status` is `patient_ready`.","items":{"additionalProperties":false,"properties":{"detail":{"description":"what is missing and how to set it, in plain words.","type":"string","isRequired":true,"uniqueKey":"patient_readiness.missing.items.[INDEX].detail","typeLabel":"string"},"item":{"enum":["display_name","consent_holder","legal_document","readiness_unknown"],"type":"string","isRequired":true,"uniqueKey":"patient_readiness.missing.items.[INDEX].item","typeLabel":"enum\u003cstring>"},"document":{"description":"for `legal_document`, which document is missing.","enum":["terms","privacy","telehealth"],"type":"string","uniqueKey":"patient_readiness.missing.items.[INDEX].document","typeLabel":"enum\u003cstring>"}},"required":["item","detail"],"type":"object","uniqueKey":"patient_readiness.missing.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"patient_readiness.missing","typeLabel":"object[]"},"required_documents":{"description":"the documents the brand's served consents link to (empty when that cannot be told yet).","items":{"enum":["terms","privacy","telehealth"],"type":"string","uniqueKey":"patient_readiness.required_documents.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"patient_readiness.required_documents","typeLabel":"enum\u003cstring>[]"},"status":{"enum":["patient_ready","not_patient_ready"],"type":"string","isRequired":true,"uniqueKey":"patient_readiness.status","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"patient_readiness","typeLabel":"object"},"progress":{"description":"Server-computed progress metadata, present on every resolve/next step: computed from the live effective plan — never client-guessed. `position_estimate` is the honest fraction of the plan completed (0..1); display nodes participate in the fraction. Whether and how it renders (thin persistent bar, step ring, interstitial pacing, none) is brand-theme presentation.","properties":{"position_estimate":{"description":"honest fraction of the effective plan completed, 0..1","maximum":1,"minimum":0,"type":"number","isRequired":true,"uniqueKey":"progress.position_estimate","typeLabel":"number"},"scope":{"description":"`instrument`, or a subflow id once named optional sub-flows ship","type":"string","isRequired":true,"uniqueKey":"progress.scope","typeLabel":"string"},"section_label":{"description":"optional server-supplied section label; omitted while bundles carry none","type":"string","uniqueKey":"progress.section_label","typeLabel":"string"}},"required":["scope","position_estimate"],"type":"object","uniqueKey":"progress","typeLabel":"object"}},"required":["session_id","journey_id","status"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"journey_id":"\u003cstring>","session_id":"\u003cstring>","status":"active","blocked":{"code":"\u003cstring>","node_id":"\u003cstring>","content":{},"support_route":"\u003cstring>","ungranted_scopes":["\u003cstring>"]},"destination_capability":"\u003cstring>","flags":["\u003cstring>"],"handoff":{"promo":"\u003cstring>","redirect":"\u003cstring>","test":true},"issues":[{"code":"\u003cstring>","message":"\u003cstring>","conflicting_codes":["\u003cstring>"],"exclusive_codes":["\u003cstring>"]}],"node":{"kind":"question","node_id":"\u003cstring>","section_id":"\u003cstring>","computed_stub":true,"consent_kind":"communications_consent","consent_version":"\u003cstring>","content":{},"control":"\u003cstring>","copy":"\u003cstring>","display":"static","fact":"\u003cstring>","grants":["\u003cstring>"],"interstitial":true,"may_auto_advance":true,"media":{"kind":"image","accept":["\u003cstring>"],"capture_mode":"upload","consent_copy":"\u003cstring>","consent_fact":"\u003cstring>","consent_version":"\u003cstring>","facing":"user","max_bytes":123,"max_duration_s":123,"min_duration_s":123,"require_consent":true,"resumable":true},"offering_refs":["\u003cstring>"],"option_codes":["\u003cstring>"],"options":[{"code":"\u003cstring>","classification_code":"\u003cstring>","exclusive":true,"label":"\u003cstring>"}],"page":"confirm_details","prefill":"collect","prefilled_value":"\u003cunknown>","reassurance":"\u003cstring>","required":true,"theme":{},"unit":"\u003cstring>","values":{},"zone":{"scale_max":123,"scale_min":123,"zone_label":"\u003cstring>","zone_max":123,"zone_min":123}},"patient_readiness":{"consent_holder":"purple","missing":[{"detail":"\u003cstring>","item":"display_name","document":"terms"}],"required_documents":["terms"],"status":"patient_ready"},"progress":{"position_estimate":0.5,"scope":"\u003cstring>","section_label":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"abandonment recorded","exampleType":"generated"},"32651d37-4de0-4162-9f1d-7311d650afa0":{"content":{"application/problem+json":{"schema":{"description":"RFC 7807 problem+json error body.","properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"title":{"type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"type":{"format":"uri-reference","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"detail":{"type":"string","uniqueKey":"detail","typeLabel":"string"}},"required":["type","title","status"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"title":"\u003cstring>","type":"\u003cstring>","detail":"\u003cstring>"}}},"exampleType":"generated"}},"description":"The questionnaire session named by `session_id` is not available: it never existed, or it has expired. Sessions live in the serving process, so a deployment retires the ones in flight. Start a fresh questionnaire (`/instrument/resolve`) and collect the answers again — retrying the same `session_id` will never succeed. The answer is identical for a malformed, an expired, and an unknown session id, so it carries no signal about which.","exampleType":"generated"},"aa1fd9ec-96b3-4496-b1c9-f72356394de2":{"content":{"application/problem+json":{"schema":{"description":"RFC 7807 problem+json error body.","properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"title":{"type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"type":{"format":"uri-reference","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"detail":{"type":"string","uniqueKey":"detail","typeLabel":"string"}},"required":["type","title","status"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"title":"\u003cstring>","type":"\u003cstring>","detail":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Too many requests. You have exceeded the request rate allowed for this endpoint. Wait the number of seconds given in the Retry-After response header, then retry the request.","headers":{"Retry-After":{"description":"Seconds to wait before you retry.","schema":{"type":"integer"}},"X-Correlation-Id":{"description":"The correlation id for this request, echoed back.","schema":{"type":"string"}}},"exampleType":"generated"}},"security":{"b454b378-9753-4496-932f-04de1c84ed20":{"apiKey":{"description":"Per-client API key (M2M). Presented as `Authorization: Bearer \u003ckey>`.","scheme":"bearer","type":"http","scopes":[],"schemeName":"apiKey"}}},"servers":{"76f2c082-b62c-4aea-a087-a046f1378296":{"url":"https://api.staging.purplelabelmd.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Per-client API key (M2M). Presented as `Authorization: Bearer \u003ckey>`.","scheme":"bearer","type":"http","scopes":[],"schemeName":"apiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Per-client API key (M2M). Presented as `Authorization: Bearer \u003ckey>`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"apiKey","name":"Authorization"}],"title":"apiKey"}]},"originalFileLocation":"openapi/public-openapi.json"},"subdomain":"purplelabelmd","siteName":"Purple Label MD","title":"Record that your patient dropped off the questionnaire - Purple Label MD","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T04:48:53.020Z","originalFileLocation":"api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Purple Label MD\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_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/purplelabelmd/TU4Si8SnCOFGjzcC/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Record that your patient dropped off the questionnaire - Purple Label MD\">\u003cmeta data-mint-head property=\"og:description\" content=\"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Purple Label MD\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://purplelabelmd.mintlify.site/_mintlify/api/og/v2?division=Intake\u0026amp;title=Record+that+your+patient+dropped+off+the+questionnaire\u0026amp;description=Marks+the+intake+session+as+dropped-off.+Call+this+when+a+patient+leaves+without+finishing+so+the+drop-off+is+recorded+against+the+session.\u0026amp;theme=1cfc55286f6f85a93657a32a\u0026amp;signature=dcea481fbc228472b9d10ab21e3706328628b2ca18651b0e75ef95c736610192\">\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=\"Record that your patient dropped off the questionnaire - Purple Label MD\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://purplelabelmd.mintlify.site/_mintlify/api/og/v2?division=Intake\u0026amp;title=Record+that+your+patient+dropped+off+the+questionnaire\u0026amp;description=Marks+the+intake+session+as+dropped-off.+Call+this+when+a+patient+leaves+without+finishing+so+the+drop-off+is+recorded+against+the+session.\u0026amp;theme=1cfc55286f6f85a93657a32a\u0026amp;signature=dcea481fbc228472b9d10ab21e3706328628b2ca18651b0e75ef95c736610192\">\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/purplelabelmd/TU4Si8SnCOFGjzcC/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Purple Label MD\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6D28D9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.purplelabelmd.com/#organization\",\"name\":\"Purple Label MD\",\"url\":\"https://docs.purplelabelmd.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/purplelabelmd/1P9p4n7lsNL4z3Jc/logo/light.svg?fit=max\u0026auto=format\u0026n=1P9p4n7lsNL4z3Jc\u0026q=85\u0026s=3c0569e3f76e49e04d232187908c2e2e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.purplelabelmd.com#website\",\"name\":\"Purple Label MD\",\"url\":\"https://docs.purplelabelmd.com\",\"publisher\":{\"@id\":\"https://docs.purplelabelmd.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire#webpage\",\"url\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire\",\"name\":\"Record that your patient dropped off the questionnaire\",\"description\":\"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\",\"dateModified\":\"2026-11-12T04:48:53.020Z\",\"isPartOf\":{\"@id\":\"https://docs.purplelabelmd.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Purple Label MD\",\"item\":\"https://docs.purplelabelmd.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Record that your patient dropped off the questionnaire\",\"item\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire#apireference\",\"headline\":\"Record that your patient dropped off the questionnaire\",\"name\":\"Record that your patient dropped off the questionnaire\",\"description\":\"Marks the intake session as dropped-off. Call this when a patient leaves without finishing so the drop-off is recorded against the session.\",\"url\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire\",\"mainEntityOfPage\":{\"@id\":\"https://docs.purplelabelmd.com/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire#webpage\"},\"dateModified\":\"2026-11-12T04:48:53.020Z\",\"publisher\":{\"@id\":\"https://docs.purplelabelmd.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.purplelabelmd.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Purple Label MD\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Purple Label MD\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire.md","siteName":"Purple Label MD","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/pages/overview"}]},{"tab":"API reference","groups":[{"group":"Brand configuration","pages":[{"title":"Read back your brand's platform configuration","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/config","href":"/api-reference/brand-configuration/read-back-your-brands-platform-configuration"},{"title":"Set your brand's display identity","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/brands/{brand_id}/config","href":"/api-reference/brand-configuration/set-your-brands-display-identity"},{"title":"List your brand's custom domains","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/domains","href":"/api-reference/brand-configuration/list-your-brands-custom-domains"},{"title":"Read the browser origins your storefront may read this brand from","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/domains/member/browser-origins","href":"/api-reference/brand-configuration/read-the-browser-origins-your-storefront-may-read-this-brand-from"},{"title":"Replace the browser origins your storefront may read this brand from","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/brands/{brand_id}/domains/member/browser-origins","href":"/api-reference/brand-configuration/replace-the-browser-origins-your-storefront-may-read-this-brand-from"},{"title":"Read one custom-domain row","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/domains/{kind}","href":"/api-reference/brand-configuration/read-one-custom-domain-row"},{"title":"Choose a custom domain for a kind (client self-serve)","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/brands/{brand_id}/domains/{kind}","href":"/api-reference/brand-configuration/choose-a-custom-domain-for-a-kind-client-self-serve"},{"title":"Remove a custom domain (revert to the shared domain)","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json delete /v1/account/brands/{brand_id}/domains/{kind}","href":"/api-reference/brand-configuration/remove-a-custom-domain-revert-to-the-shared-domain"},{"title":"Verify a custom domain and advance provisioning","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/brands/{brand_id}/domains/{kind}/verify","href":"/api-reference/brand-configuration/verify-a-custom-domain-and-advance-provisioning"}]},{"group":"Offering configuration","pages":[{"title":"List your brand's enabled offerings","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/offerings","href":"/api-reference/offering-configuration/list-your-brands-enabled-offerings"},{"title":"Enable an offering for your brand","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/brands/{brand_id}/offerings","href":"/api-reference/offering-configuration/enable-an-offering-for-your-brand"},{"title":"Choose the billing cadence of an offering on your brand","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/brands/{brand_id}/offerings/{offering_ref}/billing-cadence","href":"/api-reference/offering-configuration/choose-the-billing-cadence-of-an-offering-on-your-brand"},{"title":"Set your brand's price for an offering","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/brands/{brand_id}/pricing","href":"/api-reference/offering-configuration/set-your-brands-price-for-an-offering"},{"title":"Adopt the starter merchandising pack for your brand","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/brands/{brand_id}/starter-merchandising","href":"/api-reference/offering-configuration/adopt-the-starter-merchandising-pack-for-your-brand"},{"title":"Read an offering's composed qualification questions","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/offerings/{offering_ref}/qualification","href":"/api-reference/offering-configuration/read-an-offerings-composed-qualification-questions"},{"title":"Add a library question to an offering","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/offerings/{offering_ref}/qualification","href":"/api-reference/offering-configuration/add-a-library-question-to-an-offering"},{"title":"Reorder an offering's qualification questions","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/offerings/{offering_ref}/qualification/order","href":"/api-reference/offering-configuration/reorder-an-offerings-qualification-questions"},{"title":"Publish an offering's qualification questions","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/offerings/{offering_ref}/qualification/publish","href":"/api-reference/offering-configuration/publish-an-offerings-qualification-questions"},{"title":"Remove an offering's qualification question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json delete /v1/account/offerings/{offering_ref}/qualification/questions/{question_id}","href":"/api-reference/offering-configuration/remove-an-offerings-qualification-question"},{"title":"Edit an offering's qualification question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json patch /v1/account/offerings/{offering_ref}/qualification/questions/{question_id}","href":"/api-reference/offering-configuration/edit-an-offerings-qualification-question"},{"title":"Set the display name and presentation copy for your offering","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json put /v1/account/offerings/{ref}/merchandising","href":"/api-reference/offering-configuration/set-the-display-name-and-presentation-copy-for-your-offering"},{"title":"List the facts a qualification question may bind","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/question-library/facts","href":"/api-reference/offering-configuration/list-the-facts-a-qualification-question-may-bind"},{"title":"Create a new screening fact for your brand","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/question-library/minted-facts","href":"/api-reference/offering-configuration/create-a-new-screening-fact-for-your-brand"},{"title":"List your brand's qualification question library","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/question-library/questions","href":"/api-reference/offering-configuration/list-your-brands-qualification-question-library"},{"title":"Create a qualification library question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/account/question-library/questions","href":"/api-reference/offering-configuration/create-a-qualification-library-question"},{"title":"Delete a qualification library question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json delete /v1/account/question-library/questions/{question_id}","href":"/api-reference/offering-configuration/delete-a-qualification-library-question"},{"title":"Edit a qualification library question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json patch /v1/account/question-library/questions/{question_id}","href":"/api-reference/offering-configuration/edit-a-qualification-library-question"}]},{"group":"Onboarding","pages":[{"title":"Check whether your brand is ready to sell","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/readiness","href":"/api-reference/onboarding/check-whether-your-brand-is-ready-to-sell"},{"title":"Read one offering's price and whether your brand can sell it","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/brands/{brand_id}/storefront","href":"/api-reference/onboarding/read-one-offerings-price-and-whether-your-brand-can-sell-it"},{"title":"Read a client's onboarding progress","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/onboardings/{onboarding_id}/progress","href":"/api-reference/onboarding/read-a-clients-onboarding-progress"}]},{"group":"Payments","pages":[{"title":"List your orders across all your brands","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/orders","href":"/api-reference/payments/list-your-orders-across-all-your-brands"},{"title":"Read one of your orders by reference","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/account/orders/{order_ref}","href":"/api-reference/payments/read-one-of-your-orders-by-reference"},{"title":"Start a checkout session and get a token to collect payment","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/payments/checkout-sessions","href":"/api-reference/payments/start-a-checkout-session-and-get-a-token-to-collect-payment"},{"title":"Read the payment status of an order","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/payments/{order_ref}/status","href":"/api-reference/payments/read-the-payment-status-of-an-order"}]},{"group":"Sessions \u0026 authentication","pages":[{"title":"Complete login and start the patient session","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/auth/callback","href":"/api-reference/sessions-\u0026-authentication/complete-login-and-start-the-patient-session"},{"title":"Begin Universal Login and redirect to the login page","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/auth/login","href":"/api-reference/sessions-\u0026-authentication/begin-universal-login-and-redirect-to-the-login-page"},{"title":"Log out and end the patient's session","description":"Clears the session cookie and redirects to the identity provider's logout, ending the patient's session. The post-logout return URL must be on the brand's allowlist.","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/auth/logout","href":"/api-reference/sessions-\u0026-authentication/log-out-and-end-the-patients-session"}]},{"group":"Intake","pages":[{"title":"Record that your patient dropped off the questionnaire","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/instrument/abandon","href":"/api-reference/intake/record-that-your-patient-dropped-off-the-questionnaire"},{"title":"Submit an answer and get the next question","description":"Submits the answer to the question the session is currently on. The answer is re-validated on the server and the session advances exactly one step, returning the next question — or `status: complete` once every required answer is in. The client never decides completion. If the answer fails validation the response is `422` with the specific issues and the session does not advance. Send `node_id` (the served `node.node_id`) to KEY the answer to its node: a stale replay of an already-passed node then resyncs cleanly (200, current node re-served) instead of misbinding to the node after a server-side skip, and a submit for a node the session has not reached fails closed with a `renderer.node_mismatch` issue (422). This op never presents a question that collects a government ID, and never waits on one to report `complete` — proof of identity is handled in the member portal's identity step, not here.","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/instrument/next","href":"/api-reference/intake/submit-an-answer-and-get-the-next-question"},{"title":"Start an intake session and get the first question","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/instrument/resolve","href":"/api-reference/intake/start-an-intake-session-and-get-the-first-question"}]},{"group":"Addresses","pages":[{"title":"Resolve a selected address suggestion to a full address","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/instrument/address/retrieve","href":"/api-reference/addresses/resolve-a-selected-address-suggestion-to-a-full-address"},{"title":"Suggest addresses as your patient types","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/instrument/address/suggest","href":"/api-reference/addresses/suggest-addresses-as-your-patient-types"}]},{"group":"Enrollment","pages":[{"title":"Read a patient's public enrollment status","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/journeys/{journey_id}/status","href":"/api-reference/enrollment/read-a-patients-public-enrollment-status"}]},{"group":"Webhooks","pages":[{"title":"List the webhook event types you can subscribe to","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/webhooks/event-types","href":"/api-reference/webhooks/list-the-webhook-event-types-you-can-subscribe-to"},{"title":"List your webhook registrations","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/webhooks/registrations","href":"/api-reference/webhooks/list-your-webhook-registrations"},{"title":"Register a webhook endpoint (signing secret shown once)","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/webhooks/registrations","href":"/api-reference/webhooks/register-a-webhook-endpoint-signing-secret-shown-once"},{"title":"Read one of your webhook registrations","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json get /v1/webhooks/registrations/{registration_id}","href":"/api-reference/webhooks/read-one-of-your-webhook-registrations"},{"title":"Delete a webhook registration","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json delete /v1/webhooks/registrations/{registration_id}","href":"/api-reference/webhooks/delete-a-webhook-registration"},{"title":"Update a registration's URL, events, or enabled flag","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json patch /v1/webhooks/registrations/{registration_id}","href":"/api-reference/webhooks/update-a-registrations-url-events-or-enabled-flag"},{"title":"Send a test event to a registration","deprecated":null,"version":null,"openapi":"/openapi/public-openapi.json post /v1/webhooks/registrations/{registration_id}/test","href":"/api-reference/webhooks/send-a-test-event-to-a-registration"}]}]}]},"basePath":"","title":"Record that your patient dropped off the questionnaire - Purple Label MD","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}