{"schemaVersion":"1.0","sourceCommit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca","sourceVisibility":"private","article":{"id":"api-boundary-repositories-platform-mansoq-notifications-be","title":"mansoq_notifications_be integration boundary","summary":"Source boundary for mansoq_notifications_be: 10 Python backend mappings, 0 client declarations and 0 service routes. Installation, mounts and production qualification require verification.","module":"IT & integrations","roles":["IT administrator","Developer","Integration engineer"],"facilities":["All configured facility types"],"kind":"reference","minutes":3,"prerequisites":["Use the API contract from the installed deployment and an authorized synthetic test environment.","Confirm facility/organization scope, action permissions and optional app enablement.","This reference is static source evidence; complete payload, authorization, failure and end-to-end review remains recorded as pending."],"steps":[],"sections":[{"title":"Declared component boundary","body":"separate repository / optional app or service. Repository and route declarations do not prove this component is installed, enabled, certified or compatible with the current deployment."},{"title":"Routes and installation","body":"Plugin routes use their local URL declarations under the deployment-selected mount. Alternative core routes must not be combined as if simultaneously active."},{"title":"Documentation evidence","body":"- Currently supports\n- Install\n- Settings\n- Token bookings (SMS)\n- Service requests (in-app)\n- Diagnostic reports (in-app)\n- Encounters (in-app)\n- Medication stock (in-app)\n- Web push (in-app companion)\n- API\n- `GET /in_app_notifications/`\n- `GET /in_app_notifications/{id}/`\n- `POST /in_app_notifications/mark_read/`\n- `POST /in_app_notifications/mark_unread/`\n- `GET /outbound_notifications/`\n- `GET /outbound_notifications/{id}/`\n- `GET /web_push_subscriptions/`\n- `POST /web_push_subscriptions/`\n- `POST /web_push_subscriptions/unsubscribe/`\n- `GET /web_push_subscriptions/vapid_public_key/`\n- Click-through routing (frontend)\n- Fields delivered\n- `resource_type` → route\n- Reference resolver"},{"title":"Review status","body":"This article establishes repository/contract boundaries and does not prove installed capability, production credentials, regulator acceptance, security completeness or a validated click-by-click workflow."}],"troubleshooting":[{"problem":"A declared route is unavailable or a request is rejected","solution":"Compare the installed revision, actual API schema, optional plugin mount, HTTP-method restrictions and recorded validation/permission evidence. Do not bypass a refusal or send a production transaction to test documentation."}],"sources":[{"path":"repositories/platform/mansoq-notifications-be/README.md","line":1,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}],"related":["it-api-contract","it-api-auth","security-rcm-roles"],"verification":"Static API contract — behavior review pending","version":"f6e9f05f76d4","apiReferenceIds":["repositories-platform-mansoq-notifications-be"]},"backend":{"resources":[],"operations":[],"methodEvidence":[],"schemas":[],"frameworkSettings":[]},"frontend":{"operations":[],"schemas":[]},"services":{"operations":[]},"boundaries":[{"id":"repositories-platform-mansoq-notifications-be","repository":"repositories/platform/mansoq-notifications-be","title":"mansoq_notifications_be","classification":"separate repository / optional app or service","implementationLanguages":["py"],"backendOperationIds":["backend-resource-4e216bfe43735719:GET:list","backend-resource-4e216bfe43735719:GET:retrieve","backend-resource-4e216bfe43735719:POST:mark_read","backend-resource-4e216bfe43735719:POST:mark_unread","backend-resource-e4f8410dec35454d:GET:list","backend-resource-e4f8410dec35454d:GET:retrieve","backend-resource-aa171f70942d7881:GET:list","backend-resource-aa171f70942d7881:POST:create","backend-resource-aa171f70942d7881:POST:unsubscribe","backend-resource-aa171f70942d7881:GET:vapid_public_key"],"frontendOperationIds":[],"serviceOperationIds":[],"documentationHeadings":[{"title":"Currently supports","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":5,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Install","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":14,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Settings","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Token bookings (SMS)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":32,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Service requests (in-app)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":60,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Diagnostic reports (in-app)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":69,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Encounters (in-app)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":78,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Medication stock (in-app)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":87,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Web push (in-app companion)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":102,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"API","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":124,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /in_app_notifications/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":130,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /in_app_notifications/{id}/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":143,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`POST /in_app_notifications/mark_read/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":147,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`POST /in_app_notifications/mark_unread/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":151,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /outbound_notifications/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":155,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /outbound_notifications/{id}/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":159,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /web_push_subscriptions/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":163,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`POST /web_push_subscriptions/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":167,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`POST /web_push_subscriptions/unsubscribe/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":177,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`GET /web_push_subscriptions/vapid_public_key/`","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":181,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Click-through routing (frontend)","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":185,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Fields delivered","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":189,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"`resource_type` → route","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":202,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"title":"Reference resolver","source":{"path":"repositories/platform/mansoq-notifications-be/README.md","line":212,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"sources":[{"path":"repositories/platform/mansoq-notifications-be/README.md","line":1,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}],"availability":"Repository and route declarations do not prove this component is installed, enabled, certified or compatible with the current deployment.","mountBoundary":"Plugin routes use their local URL declarations under the deployment-selected mount. Alternative core routes must not be combined as if simultaneously active.","declarationCoverage":"Supported HTTP contract declarations are inventoried; behavior review pending."}]}