new → accepted → packed → ready_for_pickup | out_for_delivery → completed.
returning/returned when a courier could not deliver. cancelled: do not dispense.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"GO JOE Pharmacy API","colors":{"primary":"#3B82F6"},"logo":{"light":"https://mintcdn.com/gojoe/ZAZSDTe2whuO6FPg/logo/gojoe.svg?fit=max\u0026auto=format\u0026n=ZAZSDTe2whuO6FPg\u0026q=85\u0026s=99841f84f8fc20c0c4b841befd5dc359","dark":"https://mintcdn.com/gojoe/ZAZSDTe2whuO6FPg/logo/gojoe.svg?fit=max\u0026auto=format\u0026n=ZAZSDTe2whuO6FPg\u0026q=85\u0026s=99841f84f8fc20c0c4b841befd5dc359"},"favicon":"https://mintcdn.com/gojoe/ZAZSDTe2whuO6FPg/logo/gojoe.svg?fit=max\u0026auto=format\u0026n=ZAZSDTe2whuO6FPg\u0026q=85\u0026s=99841f84f8fc20c0c4b841befd5dc359","api":{"playground":{"display":"simple"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"gojoe","hasAudioNarration":false,"actualSubdomain":"gojoe","customDomains":["developers.gojoe.de"],"gitSource":{"type":"github","owner":"jules-2k","repo":"gojoe-v2","deployBranch":"main","contentDirectory":"docs/pharm-api","isPrivate":true,"mountPath":"","label":"","_id":"6af42d8b2fd0cd6f2258dbdc"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af43698c6574eb8dd26ff44","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"API reference","count":12},{"language":"default","tag":"Guides","count":7},{"language":"default","tag":"Orders","count":6},{"language":"default","tag":"Inventory","count":3},{"language":"default","tag":"Get started","count":1},{"language":"default","tag":"Account","count":1},{"language":"default","tag":"Events","count":1},{"language":"default","tag":"Webhooks","count":1}]},"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":false},"customCss":[],"page":{"pagePath":"api-reference/sandbox/play-a-go-joe-event","slug":"/api-reference/sandbox/play-a-go-joe-event","pageMetadata":{"title":"Play a GO JOE event","description":"**Sandbox only.** Plays one thing that happens on GO JOE's side, so you\ncan test how your ERP reacts without waiting for it:\n\n| action | what happens | you receive |\n|---|---|---|\n| `sign_prescription` | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | `order.prescription_signed` |\n| `replace_prescription` | a new Vorab-Rezept (e.g. after a failed signature) | `order.prescription_replaced` |\n| `update_address` | the patient changes the delivery address | `order.updated` |\n| `courier_picked_up` | express: GO JOE's courier collects the order | `order.status_changed` (`out_for_delivery`) |\n| `courier_delivered` | express: the courier delivers | `order.status_changed` (`completed`) |\n| `courier_returning` | express: delivery failed, the courier brings it back | `order.status_changed` (`returning`) |\n| `cancel` | the patient cancels | `order.cancelled` |\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /sandbox/orders/{id}/advance","href":"/api-reference/sandbox/play-a-go-joe-event","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 p: \"p\",\n strong: \"strong\",\n table: \"table\",\n tbody: \"tbody\",\n td: \"td\",\n th: \"th\",\n thead: \"thead\",\n tr: \"tr\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Sandbox only.\"\n }), \" Plays one thing that happens on GO JOE’s side, so you\\ncan test how your ERP reacts without waiting for it:\"]\n }), \"\\n\", _jsxs(_components.table, {\n children: [_jsx(_components.thead, {\n children: _jsxs(_components.tr, {\n children: [_jsx(_components.th, {\n children: \"action\"\n }), _jsx(_components.th, {\n children: \"what happens\"\n }), _jsx(_components.th, {\n children: \"you receive\"\n })]\n })\n }), _jsxs(_components.tbody, {\n children: [_jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"sign_prescription\"\n })\n }), _jsx(_components.td, {\n children: \"the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept\"\n }), _jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"order.prescription_signed\"\n })\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"replace_prescription\"\n })\n }), _jsx(_components.td, {\n children: \"a new Vorab-Rezept (e.g. after a failed signature)\"\n }), _jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"order.prescription_replaced\"\n })\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"update_address\"\n })\n }), _jsx(_components.td, {\n children: \"the patient changes the delivery address\"\n }), _jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"order.updated\"\n })\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"courier_picked_up\"\n })\n }), _jsx(_components.td, {\n children: \"express: GO JOE’s courier collects the order\"\n }), _jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"order.status_changed\"\n }), \" (\", _jsx(_components.code, {\n children: \"out_for_delivery\"\n }), \")\"]\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"courier_delivered\"\n })\n }), _jsx(_components.td, {\n children: \"express: the courier delivers\"\n }), _jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"order.status_changed\"\n }), \" (\", _jsx(_components.code, {\n children: \"completed\"\n }), \")\"]\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"courier_returning\"\n })\n }), _jsx(_components.td, {\n children: \"express: delivery failed, the courier brings it back\"\n }), _jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"order.status_changed\"\n }), \" (\", _jsx(_components.code, {\n children: \"returning\"\n }), \")\"]\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"cancel\"\n })\n }), _jsx(_components.td, {\n children: \"the patient cancels\"\n }), _jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"order.cancelled\"\n })\n })]\n })]\n })]\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":"Play a GO JOE event","description":"**Sandbox only.** Plays one thing that happens on GO JOE's side, so you\ncan test how your ERP reacts without waiting for it:\n\n| action | what happens | you receive |\n|---|---|---|\n| `sign_prescription` | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | `order.prescription_signed` |\n| `replace_prescription` | a new Vorab-Rezept (e.g. after a failed signature) | `order.prescription_replaced` |\n| `update_address` | the patient changes the delivery address | `order.updated` |\n| `courier_picked_up` | express: GO JOE's courier collects the order | `order.status_changed` (`out_for_delivery`) |\n| `courier_delivered` | express: the courier delivers | `order.status_changed` (`completed`) |\n| `courier_returning` | express: delivery failed, the courier brings it back | `order.status_changed` (`returning`) |\n| `cancel` | the patient cancels | `order.cancelled` |\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /sandbox/orders/{id}/advance","href":"/api-reference/sandbox/play-a-go-joe-event","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Sandbox"],"operationId":"advanceSandboxOrder","summary":"Play a GO JOE event","description":"**Sandbox only.** Plays one thing that happens on GO JOE's side, so you\ncan test how your ERP reacts without waiting for it:\n\n| action | what happens | you receive |\n|---|---|---|\n| `sign_prescription` | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | `order.prescription_signed` |\n| `replace_prescription` | a new Vorab-Rezept (e.g. after a failed signature) | `order.prescription_replaced` |\n| `update_address` | the patient changes the delivery address | `order.updated` |\n| `courier_picked_up` | express: GO JOE's courier collects the order | `order.status_changed` (`out_for_delivery`) |\n| `courier_delivered` | express: the courier delivers | `order.status_changed` (`completed`) |\n| `courier_returning` | express: delivery failed, the courier brings it back | `order.status_changed` (`returning`) |\n| `cancel` | the patient cancels | `order.cancelled` |\n","requestBody":"569ae8c8-0929-46a1-98dc-263f6b9bda3d","responses":{"200":"d7e182ef-e1bb-4bb4-a3b1-d49d74c5120f","401":"fad8fde7-ad9b-409d-bb9e-3add2b1ad130","404":"906dec69-b5ac-4d9a-8c42-caa79673e2b9","409":"8f244ab3-4c34-49e0-880f-acd47405a73e","422":"fbe70870-0eb1-4c1f-8ea2-b72cba17ec2c","429":"d1d3b42e-d042-42e6-8f04-ece1a70990fa"},"method":"post","type":"path","servers":["8f69003c-7577-48c1-b9be-7be80b066620","a116b086-5141-43b3-8b78-8356881b0336"],"security":["36cbc2d8-318b-4f4e-85b9-3aa8d72c75e2"],"path":"/sandbox/orders/{id}/advance","baseUrlOptions":["https://gojoe.de/api/pharm/v1","https://sandbox-api.gojoe.de/api/pharm/v1"],"title":"Play a GO JOE event","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"4531a33f-951b-458f-8d33-319938f38c66":{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"9af8f250-e26a-4788-bda0-088c71b600a1":{"name":"Idempotency-Key","in":"header","required":false,"description":"Any unique string. Retrying with the same key within 24 h returns the first response without running the request again.","schema":{"type":"string","maxLength":255,"isRequired":false,"description":"Any unique string. Retrying with the same key within 24 h returns the first response without running the request again.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["action"],"properties":{"action":{"type":"string","enum":["sign_prescription","replace_prescription","update_address","courier_picked_up","courier_delivered","courier_returning","cancel"],"isRequired":true,"uniqueKey":"action","typeLabel":"enum\u003cstring>"}},"uniqueKey":"","typeLabel":"object"},"example":{"action":"sign_prescription"},"examples":{"Example":{"title":"Example","value":{"action":"sign_prescription"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"d7e182ef-e1bb-4bb4-a3b1-d49d74c5120f":{"description":"The order after the event","content":{"application/json":{"schema":{"type":"object","required":["id","order_number","pharmacy_id","status","created_at","updated_at","fulfilment","patient","items","totals","prescription"],"properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"order_number":{"type":"string","example":"GO-XCAFTF","isRequired":true,"uniqueKey":"order_number","typeLabel":"string"},"pharmacy_id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"pharmacy_id","typeLabel":"string\u003cuuid>"},"status":{"type":"string","enum":["new","accepted","packed","ready_for_pickup","out_for_delivery","completed","returning","returned","cancelled"],"description":"`new` → `accepted` → `packed` → `ready_for_pickup` | `out_for_delivery` → `completed`.\n`returning`/`returned` when a courier could not deliver. `cancelled`: do not dispense.\n","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"created_at":{"type":"string","format":"date-time","description":"When the order reached your pharmacy","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"fulfilment":{"type":"object","properties":{"type":{"type":"string","enum":["express","shipping","pickup"],"uniqueKey":"fulfilment.type","typeLabel":"enum\u003cstring>"},"courier":{"type":"string","enum":["gojoe","pharmacy"],"description":"`gojoe`: GO JOE books the courier when you report `packed`. `pharmacy`: you ship or hand over.","uniqueKey":"fulfilment.courier","typeLabel":"enum\u003cstring>"},"preferred_delivery_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"fulfilment.preferred_delivery_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"fulfilment.preferred_delivery_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.preferred_delivery_at","typeLabel":"string\u003cdate-time> | null"},"pickup_slot_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"fulfilment.pickup_slot_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"fulfilment.pickup_slot_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.pickup_slot_at","typeLabel":"string\u003cdate-time> | null"},"return_pin":{"oneOf":[{"type":"string","description":"For GO JOE courier orders: the PIN to take back an undeliverable package.","uniqueKey":"fulfilment.return_pin.oneOf.0","typeLabel":"string"},{"type":"null","description":"For GO JOE courier orders: the PIN to take back an undeliverable package.","uniqueKey":"fulfilment.return_pin.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.return_pin","typeLabel":"string | null"},"tracking":{"oneOf":[{"type":"object","properties":{"number":{"oneOf":[{"type":"string","uniqueKey":"fulfilment.tracking.oneOf.0.number.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"fulfilment.tracking.oneOf.0.number.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.tracking.oneOf.0.number","typeLabel":"string | null"},"url":{"oneOf":[{"type":"string","uniqueKey":"fulfilment.tracking.oneOf.0.url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"fulfilment.tracking.oneOf.0.url.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.tracking.oneOf.0.url","typeLabel":"string | null"}},"uniqueKey":"fulfilment.tracking.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"number":{"oneOf":[{"type":"string"},{"type":"null"}]},"url":{"oneOf":[{"type":"string"},{"type":"null"}]}},"uniqueKey":"fulfilment.tracking.oneOf.1","typeLabel":"null"}],"uniqueKey":"fulfilment.tracking","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"fulfilment","typeLabel":"object"},"patient":{"type":"object","description":"Only what is needed to dispense and deliver. No e-mail, no billing address.","properties":{"first_name":{"oneOf":[{"type":"string","uniqueKey":"patient.first_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.first_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","uniqueKey":"patient.last_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.last_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.last_name","typeLabel":"string | null"},"date_of_birth":{"oneOf":[{"type":"string","format":"date","uniqueKey":"patient.date_of_birth.oneOf.0","typeLabel":"string\u003cdate>"},{"type":"null","format":"date","uniqueKey":"patient.date_of_birth.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.date_of_birth","typeLabel":"string\u003cdate> | null"},"phone":{"oneOf":[{"type":"string","uniqueKey":"patient.phone.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.phone.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.phone","typeLabel":"string | null"},"shipping_address":{"oneOf":[{"type":"object","properties":{"street":{"oneOf":[{"type":"string","uniqueKey":"patient.shipping_address.oneOf.0.street.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.shipping_address.oneOf.0.street.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.shipping_address.oneOf.0.street","typeLabel":"string | null"},"additional":{"oneOf":[{"type":"string","uniqueKey":"patient.shipping_address.oneOf.0.additional.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.shipping_address.oneOf.0.additional.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.shipping_address.oneOf.0.additional","typeLabel":"string | null"},"postcode":{"oneOf":[{"type":"string","uniqueKey":"patient.shipping_address.oneOf.0.postcode.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.shipping_address.oneOf.0.postcode.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.shipping_address.oneOf.0.postcode","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","uniqueKey":"patient.shipping_address.oneOf.0.city.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"patient.shipping_address.oneOf.0.city.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.shipping_address.oneOf.0.city","typeLabel":"string | null"}},"uniqueKey":"patient.shipping_address.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"street":{"oneOf":[{"type":"string"},{"type":"null"}]},"additional":{"oneOf":[{"type":"string"},{"type":"null"}]},"postcode":{"oneOf":[{"type":"string"},{"type":"null"}]},"city":{"oneOf":[{"type":"string"},{"type":"null"}]}},"uniqueKey":"patient.shipping_address.oneOf.1","typeLabel":"null"}],"uniqueKey":"patient.shipping_address","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"patient","typeLabel":"object"},"items":{"type":"array","items":{"type":"object","properties":{"product_id":{"type":"string","format":"uuid","description":"GO JOE product id","uniqueKey":"\\items.items.[INDEX].product_id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","uniqueKey":"\\items.items.[INDEX].name","typeLabel":"string"},"form":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].form.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].form.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].form","typeLabel":"string | null"},"quantity":{"type":"number","uniqueKey":"\\items.items.[INDEX].quantity","typeLabel":"number"},"unit":{"type":"string","enum":["g","ml"],"uniqueKey":"\\items.items.[INDEX].unit","typeLabel":"enum\u003cstring>"},"unit_price_cents":{"type":"integer","uniqueKey":"\\items.items.[INDEX].unit_price_cents","typeLabel":"integer"},"line_total_cents":{"type":"integer","uniqueKey":"\\items.items.[INDEX].line_total_cents","typeLabel":"integer"}},"uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"},"totals":{"type":"object","properties":{"items_cents":{"type":"integer","uniqueKey":"totals.items_cents","typeLabel":"integer"},"delivery_fee_cents":{"type":"integer","uniqueKey":"totals.delivery_fee_cents","typeLabel":"integer"},"total_cents":{"type":"integer","uniqueKey":"totals.total_cents","typeLabel":"integer"},"currency":{"type":"string","enum":["EUR"],"uniqueKey":"totals.currency","typeLabel":"enum\u003cstring>"},"paid":{"type":"boolean","uniqueKey":"totals.paid","typeLabel":"boolean"}},"isRequired":true,"uniqueKey":"totals","typeLabel":"object"},"prescription":{"type":"object","properties":{"stage":{"type":"string","enum":["vorab","signed"],"uniqueKey":"prescription.stage","typeLabel":"enum\u003cstring>"},"issued_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"prescription.issued_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"prescription.issued_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.issued_at","typeLabel":"string\u003cdate-time> | null"},"signed_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"prescription.signed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"prescription.signed_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.signed_at","typeLabel":"string\u003cdate-time> | null"},"doctor":{"oneOf":[{"type":"object","properties":{"name":{"oneOf":[{"type":"string","uniqueKey":"prescription.doctor.oneOf.0.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"prescription.doctor.oneOf.0.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.doctor.oneOf.0.name","typeLabel":"string | null"},"phone":{"oneOf":[{"type":"string","uniqueKey":"prescription.doctor.oneOf.0.phone.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"prescription.doctor.oneOf.0.phone.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.doctor.oneOf.0.phone","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","uniqueKey":"prescription.doctor.oneOf.0.city.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"prescription.doctor.oneOf.0.city.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.doctor.oneOf.0.city","typeLabel":"string | null"}},"uniqueKey":"prescription.doctor.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"name":{"oneOf":[{"type":"string"},{"type":"null"}]},"phone":{"oneOf":[{"type":"string"},{"type":"null"}]},"city":{"oneOf":[{"type":"string"},{"type":"null"}]}},"uniqueKey":"prescription.doctor.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.doctor","typeLabel":"object | null"},"document":{"oneOf":[{"type":"object","properties":{"version":{"type":"string","description":"Changes whenever the PDF changes.","uniqueKey":"prescription.document.oneOf.0.version","typeLabel":"string"},"url":{"type":"string","description":"Path of GET /orders/{id}/prescription","uniqueKey":"prescription.document.oneOf.0.url","typeLabel":"string"}},"uniqueKey":"prescription.document.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"version":{"type":"string","description":"Changes whenever the PDF changes."},"url":{"type":"string","description":"Path of GET /orders/{id}/prescription"}},"uniqueKey":"prescription.document.oneOf.1","typeLabel":"null"}],"uniqueKey":"prescription.document","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"prescription","typeLabel":"object"},"erp_reference":{"oneOf":[{"type":"string","uniqueKey":"erp_reference.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"erp_reference.oneOf.1","typeLabel":"null"}],"uniqueKey":"erp_reference","typeLabel":"string | null"},"accepted_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"accepted_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"accepted_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"accepted_at","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","order_number":"GO-XCAFTF","pharmacy_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","status":"new","created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z","fulfilment":{"type":"express","courier":"gojoe","preferred_delivery_at":"2023-11-07T05:31:56Z","pickup_slot_at":"2023-11-07T05:31:56Z","return_pin":"\u003cstring>","tracking":{"number":"\u003cstring>","url":"\u003cstring>"}},"patient":{"first_name":"\u003cstring>","last_name":"\u003cstring>","date_of_birth":"2023-12-25","phone":"\u003cstring>","shipping_address":{"street":"\u003cstring>","additional":"\u003cstring>","postcode":"\u003cstring>","city":"\u003cstring>"}},"items":[{"product_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","form":"\u003cstring>","quantity":123,"unit":"g","unit_price_cents":123,"line_total_cents":123}],"totals":{"items_cents":123,"delivery_fee_cents":123,"total_cents":123,"currency":"EUR","paid":true},"prescription":{"stage":"vorab","issued_at":"2023-11-07T05:31:56Z","signed_at":"2023-11-07T05:31:56Z","doctor":{"name":"\u003cstring>","phone":"\u003cstring>","city":"\u003cstring>"},"document":{"version":"\u003cstring>","url":"\u003cstring>"}},"erp_reference":"\u003cstring>","accepted_at":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"exampleType":"generated"},"fad8fde7-ad9b-409d-bb9e-3add2b1ad130":{"description":"Missing, unknown or revoked key, or a key for the other environment","content":{"application/problem+json":{"schema":{"type":"object","required":["status","code","detail","request_id"],"properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","example":"invalid_transition","description":"Stable error code, e.g. `unauthorized`, `wrong_environment`, `insufficient_scope`,\n`rate_limited`, `order_not_found`, `not_accepted`, `already_accepted`,\n`invalid_transition`, `courier_managed_by_gojoe`, `order_cancelled`,\n`order_rejected`, `idempotency_key_reused`.\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"request_id":{"type":"string","description":"Quote this to GO JOE support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"type":{"type":"string","format":"uri","uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","uniqueKey":"title","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"code":"invalid_transition","detail":"\u003cstring>","request_id":"\u003cstring>","type":"\u003cstring>","title":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"906dec69-b5ac-4d9a-8c42-caa79673e2b9":{"description":"No such order for this key (also for orders of other pharmacies)","content":{"application/problem+json":{"schema":{"type":"object","required":["status","code","detail","request_id"],"properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","example":"invalid_transition","description":"Stable error code, e.g. `unauthorized`, `wrong_environment`, `insufficient_scope`,\n`rate_limited`, `order_not_found`, `not_accepted`, `already_accepted`,\n`invalid_transition`, `courier_managed_by_gojoe`, `order_cancelled`,\n`order_rejected`, `idempotency_key_reused`.\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"request_id":{"type":"string","description":"Quote this to GO JOE support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"type":{"type":"string","format":"uri","uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","uniqueKey":"title","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"code":"invalid_transition","detail":"\u003cstring>","request_id":"\u003cstring>","type":"\u003cstring>","title":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8f244ab3-4c34-49e0-880f-acd47405a73e":{"description":"Not possible in the order's current state (see `code`)","content":{"application/problem+json":{"schema":{"type":"object","required":["status","code","detail","request_id"],"properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","example":"invalid_transition","description":"Stable error code, e.g. `unauthorized`, `wrong_environment`, `insufficient_scope`,\n`rate_limited`, `order_not_found`, `not_accepted`, `already_accepted`,\n`invalid_transition`, `courier_managed_by_gojoe`, `order_cancelled`,\n`order_rejected`, `idempotency_key_reused`.\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"request_id":{"type":"string","description":"Quote this to GO JOE support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"type":{"type":"string","format":"uri","uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","uniqueKey":"title","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"code":"invalid_transition","detail":"\u003cstring>","request_id":"\u003cstring>","type":"\u003cstring>","title":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"fbe70870-0eb1-4c1f-8ea2-b72cba17ec2c":{"description":"Invalid body","content":{"application/problem+json":{"schema":{"type":"object","required":["status","code","detail","request_id"],"properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","example":"invalid_transition","description":"Stable error code, e.g. `unauthorized`, `wrong_environment`, `insufficient_scope`,\n`rate_limited`, `order_not_found`, `not_accepted`, `already_accepted`,\n`invalid_transition`, `courier_managed_by_gojoe`, `order_cancelled`,\n`order_rejected`, `idempotency_key_reused`.\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"request_id":{"type":"string","description":"Quote this to GO JOE support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"type":{"type":"string","format":"uri","uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","uniqueKey":"title","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"code":"invalid_transition","detail":"\u003cstring>","request_id":"\u003cstring>","type":"\u003cstring>","title":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"d1d3b42e-d042-42e6-8f04-ece1a70990fa":{"description":"More than the account's limit (default 120) requests per minute","headers":{"Retry-After":{"schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","required":["status","code","detail","request_id"],"properties":{"status":{"type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","example":"invalid_transition","description":"Stable error code, e.g. `unauthorized`, `wrong_environment`, `insufficient_scope`,\n`rate_limited`, `order_not_found`, `not_accepted`, `already_accepted`,\n`invalid_transition`, `courier_managed_by_gojoe`, `order_cancelled`,\n`order_rejected`, `idempotency_key_reused`.\n","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"request_id":{"type":"string","description":"Quote this to GO JOE support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"},"type":{"type":"string","format":"uri","uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","uniqueKey":"title","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"code":"invalid_transition","detail":"\u003cstring>","request_id":"\u003cstring>","type":"\u003cstring>","title":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"36cbc2d8-318b-4f4e-85b9-3aa8d72c75e2":{"apiKey":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer gj_live_…` (production) or `gj_test_…` (sandbox).","scopes":[],"schemeName":"apiKey"}}},"servers":{"8f69003c-7577-48c1-b9be-7be80b066620":{"url":"https://gojoe.de/api/pharm/v1","description":"Production (live keys, gj_live_…)"},"a116b086-5141-43b3-8b78-8356881b0336":{"url":"https://sandbox-api.gojoe.de/api/pharm/v1","description":"Sandbox (test keys, gj_test_…; fake orders and MUSTER prescriptions only)"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"`Authorization: Bearer gj_live_…` (production) or `gj_test_…` (sandbox).","scopes":[],"schemeName":"apiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"`Authorization: Bearer gj_live_…` (production) or `gj_test_…` (sandbox).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"apiKey","name":"Authorization"}],"title":"apiKey"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"gojoe","siteName":"GO JOE Pharmacy API","title":"Play a GO JOE event - GO JOE Pharmacy API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-11T09:34:20.564Z","originalFileLocation":"api-reference/sandbox/play-a-go-joe-event.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=\"Sandbox only. Plays one thing that happens on GO JOE\u0026#x27;s side, so you can test how your ERP reacts without waiting for it: | action | what happens | you receive | |---|---|---| | sign_prescription | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | order.prescription_signed | | replace_prescription | a new Vorab-Rezept (e.g. after a failed signature) | order.prescription_replaced | | update_address | the patient changes the delivery address | order.updated | | courier_picked_up | express: GO JOE\u0026#x27;s courier collects the order | order.status_changed (out_for_delivery) | | courier_delivered | express: the courier delivers | order.status_changed (completed) | | courier_returning | express: delivery failed, the courier brings it back | order.status_changed (returning) | | cancel | the patient cancels | order.cancelled |\">\u003cmeta data-mint-head name=\"application-name\" content=\"GO JOE Pharmacy API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_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/gojoe/gPZf8lhhCeBvD2XW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Play a GO JOE event - GO JOE Pharmacy API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Sandbox only. Plays one thing that happens on GO JOE\u0026#x27;s side, so you can test how your ERP reacts without waiting for it: | action | what happens | you receive | |---|---|---| | sign_prescription | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | order.prescription_signed | | replace_prescription | a new Vorab-Rezept (e.g. after a failed signature) | order.prescription_replaced | | update_address | the patient changes the delivery address | order.updated | | courier_picked_up | express: GO JOE\u0026#x27;s courier collects the order | order.status_changed (out_for_delivery) | | courier_delivered | express: the courier delivers | order.status_changed (completed) | | courier_returning | express: delivery failed, the courier brings it back | order.status_changed (returning) | | cancel | the patient cancels | order.cancelled |\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"GO JOE Pharmacy API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://gojoe.mintlify.site/_mintlify/api/og/v2?division=Sandbox\u0026amp;title=Play+a+GO+JOE+event\u0026amp;description=**Sandbox+only.**+Plays+one+thing+that+happens+on+GO+JOE%27s+side%2C+so+you%0Acan+test+how+your+ERP+reacts+without+waiting+for+it%3A%0A%0A%7C+action+%7C+what+happens+%7C+you+rece\u0026amp;theme=22952e6d9f8aeb359d9b9816\u0026amp;signature=99790a7b2356cfb6347072e3ba1875113782a7bdcb36493175a54f43869a3d9d\">\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=\"Play a GO JOE event - GO JOE Pharmacy API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Sandbox only. Plays one thing that happens on GO JOE\u0026#x27;s side, so you can test how your ERP reacts without waiting for it: | action | what happens | you receive | |---|---|---| | sign_prescription | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | order.prescription_signed | | replace_prescription | a new Vorab-Rezept (e.g. after a failed signature) | order.prescription_replaced | | update_address | the patient changes the delivery address | order.updated | | courier_picked_up | express: GO JOE\u0026#x27;s courier collects the order | order.status_changed (out_for_delivery) | | courier_delivered | express: the courier delivers | order.status_changed (completed) | | courier_returning | express: delivery failed, the courier brings it back | order.status_changed (returning) | | cancel | the patient cancels | order.cancelled |\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://gojoe.mintlify.site/_mintlify/api/og/v2?division=Sandbox\u0026amp;title=Play+a+GO+JOE+event\u0026amp;description=**Sandbox+only.**+Plays+one+thing+that+happens+on+GO+JOE%27s+side%2C+so+you%0Acan+test+how+your+ERP+reacts+without+waiting+for+it%3A%0A%0A%7C+action+%7C+what+happens+%7C+you+rece\u0026amp;theme=22952e6d9f8aeb359d9b9816\u0026amp;signature=99790a7b2356cfb6347072e3ba1875113782a7bdcb36493175a54f43869a3d9d\">\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/gojoe/gPZf8lhhCeBvD2XW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"GO JOE Pharmacy API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3B82F6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/sandbox/play-a-go-joe-event.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.gojoe.de/#organization\",\"name\":\"GO JOE Pharmacy API\",\"url\":\"https://developers.gojoe.de\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/gojoe/ZAZSDTe2whuO6FPg/logo/gojoe.svg?fit=max\u0026auto=format\u0026n=ZAZSDTe2whuO6FPg\u0026q=85\u0026s=99841f84f8fc20c0c4b841befd5dc359\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.gojoe.de#website\",\"name\":\"GO JOE Pharmacy API\",\"url\":\"https://developers.gojoe.de\",\"publisher\":{\"@id\":\"https://developers.gojoe.de/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event#webpage\",\"url\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event\",\"name\":\"Play a GO JOE event\",\"description\":\"Sandbox only. Plays one thing that happens on GO JOE's side, so you can test how your ERP reacts without waiting for it: | action | what happens | you receive | |---|---|---| | sign_prescription | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | order.prescription_signed | | replace_prescription | a new Vorab-Rezept (e.g. after a failed signature) | order.prescription_replaced | | update_address | the patient changes the delivery address | order.updated | | courier_picked_up | express: GO JOE's courier collects the order | order.status_changed (out_for_delivery) | | courier_delivered | express: the courier delivers | order.status_changed (completed) | | courier_returning | express: delivery failed, the courier brings it back | order.status_changed (returning) | | cancel | the patient cancels | order.cancelled |\",\"dateModified\":\"2026-11-11T09:34:20.564Z\",\"isPartOf\":{\"@id\":\"https://developers.gojoe.de#website\"},\"breadcrumb\":{\"@id\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Sandbox\",\"item\":\"https://developers.gojoe.de/api-reference/sandbox/create-a-test-order\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Play a GO JOE event\",\"item\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event#apireference\",\"headline\":\"Play a GO JOE event\",\"name\":\"Play a GO JOE event\",\"description\":\"Sandbox only. Plays one thing that happens on GO JOE's side, so you can test how your ERP reacts without waiting for it: | action | what happens | you receive | |---|---|---| | sign_prescription | the doctor signs; a signed MUSTER PDF replaces the Vorab-Rezept | order.prescription_signed | | replace_prescription | a new Vorab-Rezept (e.g. after a failed signature) | order.prescription_replaced | | update_address | the patient changes the delivery address | order.updated | | courier_picked_up | express: GO JOE's courier collects the order | order.status_changed (out_for_delivery) | | courier_delivered | express: the courier delivers | order.status_changed (completed) | | courier_returning | express: delivery failed, the courier brings it back | order.status_changed (returning) | | cancel | the patient cancels | order.cancelled |\",\"url\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event\",\"mainEntityOfPage\":{\"@id\":\"https://developers.gojoe.de/api-reference/sandbox/play-a-go-joe-event#webpage\"},\"dateModified\":\"2026-11-11T09:34:20.564Z\",\"publisher\":{\"@id\":\"https://developers.gojoe.de/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.gojoe.de#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"GO JOE Pharmacy API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"GO JOE Pharmacy API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/sandbox/play-a-go-joe-event.md","siteName":"GO JOE Pharmacy API","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/quickstart"}]},{"tab":"API reference","groups":[{"group":"Account","pages":[{"title":"Who am I","deprecated":null,"version":null,"openapi":"/openapi.yaml get /me","href":"/api-reference/account/who-am-i"}]},{"group":"Orders","pages":[{"title":"List orders","deprecated":null,"version":null,"openapi":"/openapi.yaml get /orders","href":"/api-reference/orders/list-orders"},{"title":"Get an order","deprecated":null,"version":null,"openapi":"/openapi.yaml get /orders/{id}","href":"/api-reference/orders/get-an-order"},{"title":"Download the prescription","deprecated":null,"version":null,"openapi":"/openapi.yaml get /orders/{id}/prescription","href":"/api-reference/orders/download-the-prescription"},{"title":"Accept an order","deprecated":null,"version":null,"openapi":"/openapi.yaml post /orders/{id}/accept","href":"/api-reference/orders/accept-an-order"},{"title":"Report progress","deprecated":null,"version":null,"openapi":"/openapi.yaml post /orders/{id}/status","href":"/api-reference/orders/report-progress"},{"title":"Reject an order","deprecated":null,"version":null,"openapi":"/openapi.yaml post /orders/{id}/reject","href":"/api-reference/orders/reject-an-order"}]},{"group":"Events","pages":[{"title":"Event feed","deprecated":null,"version":null,"openapi":"/openapi.yaml get /events","href":"/api-reference/events/event-feed"}]},{"group":"Inventory","pages":[{"title":"Push stock and prices","deprecated":null,"version":null,"openapi":"/openapi.yaml put /pharmacies/{pharmacy_id}/inventory","href":"/api-reference/inventory/push-stock-and-prices"},{"title":"Update one article","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /pharmacies/{pharmacy_id}/inventory/{pharmacy_sku}","href":"/api-reference/inventory/update-one-article"},{"title":"Your articles as GO JOE holds them","deprecated":null,"version":null,"openapi":"/openapi.yaml get /inventory","href":"/api-reference/inventory/your-articles-as-go-joe-holds-them"}]},{"group":"Sandbox","pages":[{"title":"Create a test order","description":"**Sandbox only.** Creates a paid, doctor-approved fake order for one of\nyour pharmacies and publishes it exactly like a real one: you receive\n`order.created` (webhook and event feed) and can fetch, accept and\nreport it with the normal endpoints. The patient is the fictitious\nErika Mustermann, the prescription is a PDF marked **MUSTER**.\n\nWithout `items` the order gets one or two products your pharmacy has in\nstock in the sandbox. With `items`, use article numbers you pushed with\n`PUT /pharmacies/{pharmacy_id}/inventory` that GO JOE has mapped.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /sandbox/orders","href":"/api-reference/sandbox/create-a-test-order"},{"title":"Play a GO JOE event","deprecated":null,"version":null,"openapi":"/openapi.yaml post /sandbox/orders/{id}/advance","href":"/api-reference/sandbox/play-a-go-joe-event"}]},{"group":"Webhooks","pages":[{"title":"Event notification","description":"Sent to your account's webhook URL for every event. Signed per the\n[Standard Webhooks](https://www.standardwebhooks.com) spec: verify\n`webhook-signature` with your `whsec_…` secret over\n`{webhook-id}.{webhook-timestamp}.{body}` (HMAC-SHA256, base64), and\nreject timestamps older than 5 minutes. Answer 2xx within 10 seconds;\ndo the work afterwards. Failed deliveries are retried for 24 hours with\nthe same `webhook-id`, so de-duplicate on it.\n","version":null,"deprecated":null,"openapi":"/openapi.yaml webhook event","href":"/api-reference/webhooks/event-notification"}]}]}]},"basePath":"","title":"Play a GO JOE event - GO JOE Pharmacy API","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C9Wu0MeN.js","utils-jWgu-6Qf.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DBD8f9qn.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BGuX1ui5.js","snippetPresets-Evy63nQB.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BQHO1lnV.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-B6C8m-t_.js","shallow-BG4cT0fH.js","getApiPlaygroundDisplay-CgEPrE-D.js","CodeSnippet-CU8JyZ9N.js","CodeSnippets-BnxHU32T.js","Page-D6S0Yh6q.js","getPastedJson-CwiYOonh.js","icon-DYDpWmDf.js","MethodPill-C-J-l7_c.js","DuplicateIcon-B6ARwg9w.js","createIcon-Dsv4MtDq.js","DynamicMarkdown-CtasenyM.js","SectionHeading-YNcgYwjB.js","axios-vUo_bRtp.js","Markdown-CwLx6PAg.js","clsx-C3kuh_dz.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CmKHfscc.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-U3mI6Ljh.js"]}