{"schemaVersion":"1.0","sourceCommit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca","sourceVisibility":"private","article":{"id":"api-mansoq-core-teleicu-consentviewset-92b91436","title":"Consent API reference · mansoq-core-teleicu","summary":"Static source contract for Consent: 9 declared or inherited operation mappings, schema/field evidence and authorization/refusal references. Deployment and behavioral review remain explicit.","module":"IT & integrations","roles":["IT administrator","Developer","Integration engineer"],"facilities":["All configured facility types"],"kind":"reference","minutes":14,"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 route and availability","body":"This resource is declared in **mansoq-core-teleicu** at `/api/v1/patient/{patient_external_id}/consent/`. verified core mount in config/urls.py This is an alternative core contract, not proof that the primary core uses the same behavior. A registered path and an indexed handler do not prove deployment availability, user permission or production readiness."},{"title":"Operation map","body":"| Method | Path | Action | Evidence |\n| --- | --- | --- | --- |\n| GET | `/api/v1/patient/{patient_external_id}/consent/` | list | declared/inherited method |\n| POST | `/api/v1/patient/{patient_external_id}/consent/` | create | declared/inherited method |\n| GET | `/api/v1/patient/{patient_external_id}/consent/{external_id}/` | retrieve | declared/inherited method |\n| PUT | `/api/v1/patient/{patient_external_id}/consent/{external_id}/` | update | declared/inherited method |\n| PATCH | `/api/v1/patient/{patient_external_id}/consent/{external_id}/` | partial_update | declared/inherited method |\n| DELETE | `/api/v1/patient/{patient_external_id}/consent/{external_id}/` | destroy | declared/inherited method |\n| POST | `/api/v1/patient/{patient_external_id}/consent/upsert/` | upsert | @action declaration |\n| POST | `/api/v1/patient/{patient_external_id}/consent/{external_id}/add_verification/` | add_verification | @action declaration |\n| POST | `/api/v1/patient/{patient_external_id}/consent/{external_id}/remove_verification/` | remove_verification | @action declaration |"},{"title":"list · GET","body":"**GET /api/v1/patient/{patient_external_id}/consent/** — action `list`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**response: ConsentListSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\n| Field | Type | Required | Constraints |\n| --- | --- | --- | --- |\n| meta | dict | false | No extra constraint extracted |\n| id | UUID4 \\| None | false | description: Unique identifier for the consent record |\n| status | ConsentStatusChoices | true | No extra constraint extracted |\n| category | CategoryChoice | true | No extra constraint extracted |\n| date | datetime | true | No extra constraint extracted |\n| period | PeriodSpec | false | No extra constraint extracted |\n| encounter | UUID4 | true | No extra constraint extracted |\n| decision | DecisionType | true | No extra constraint extracted |\n| note | str \\| None | false | No extra constraint extracted |\n| source_attachments | list[dict] | false | No extra constraint extracted |\n| verification_details | list[dict] | false | No extra constraint extracted |\n\n**Observed authorization checks:** `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** PermissionDenied: Permission denied to user."},{"title":"create · POST","body":"**POST /api/v1/patient/{patient_external_id}/consent/** — action `create`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n| body | `form_submission` | not declared at read site | not established |\n\n**request: ConsentCreateSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\n| Field | Type | Required | Constraints |\n| --- | --- | --- | --- |\n| meta | dict | false | No extra constraint extracted |\n| id | UUID4 \\| None | false | description: Unique identifier for the consent record |\n| status | ConsentStatusChoices | true | No extra constraint extracted |\n| category | CategoryChoice | true | No extra constraint extracted |\n| date | datetime | true | No extra constraint extracted |\n| period | PeriodSpec | false | No extra constraint extracted |\n| encounter | UUID4 | true | No extra constraint extracted |\n| decision | DecisionType | true | No extra constraint extracted |\n| note | str \\| None | false | No extra constraint extracted |\n\n**response: ConsentRetrieveSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\n| Field | Type | Required | Constraints |\n| --- | --- | --- | --- |\n| meta | dict | false | No extra constraint extracted |\n| id | UUID4 \\| None | false | description: Unique identifier for the consent record |\n| status | ConsentStatusChoices | true | No extra constraint extracted |\n| category | CategoryChoice | true | No extra constraint extracted |\n| date | datetime | true | No extra constraint extracted |\n| period | PeriodSpec | false | No extra constraint extracted |\n| encounter | UUID4 | true | No extra constraint extracted |\n| decision | DecisionType | true | No extra constraint extracted |\n| note | str \\| None | false | No extra constraint extracted |\n| source_attachments | list[dict] | false | No extra constraint extracted |\n| verification_details | list[dict] | false | No extra constraint extracted |\n\n**Observed authorization checks:** `can_update_encounter_clinical_data`, `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** PermissionDenied: You do not have permission to update encounter; PermissionDenied: Permission denied to user; ValidationError: Patient external ID mismatch with encounter's patient."},{"title":"retrieve · GET","body":"**GET /api/v1/patient/{patient_external_id}/consent/{external_id}/** — action `retrieve`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**response: ConsentRetrieveSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\nThe declared field table is shown at its first occurrence in this reference; this operation links the same schema.\n\n**Observed authorization checks:** `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** PermissionDenied: Permission denied to user."},{"title":"update · PUT","body":"**PUT /api/v1/patient/{patient_external_id}/consent/{external_id}/** — action `update`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**request: ConsentUpdateSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\n| Field | Type | Required | Constraints |\n| --- | --- | --- | --- |\n| meta | dict | false | No extra constraint extracted |\n| id | UUID4 \\| None | false | description: Unique identifier for the consent record |\n| status | ConsentStatusChoices \\| None | false | No extra constraint extracted |\n| category | CategoryChoice \\| None | false | No extra constraint extracted |\n| date | datetime \\| None | false | No extra constraint extracted |\n| period | PeriodSpec \\| None | false | No extra constraint extracted |\n| encounter | UUID4 \\| None | false | No extra constraint extracted |\n| decision | DecisionType \\| None | false | No extra constraint extracted |\n| note | str \\| None | false | No extra constraint extracted |\n\n**response: ConsentRetrieveSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\nThe declared field table is shown at its first occurrence in this reference; this operation links the same schema.\n\n**Observed authorization checks:** `can_update_encounter_clinical_data`, `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** PermissionDenied: You do not have permission to update encounter; PermissionDenied: Permission denied to user; ValidationError: Patient external ID mismatch with encounter's patient."},{"title":"partial_update · PATCH","body":"**PATCH /api/v1/patient/{patient_external_id}/consent/{external_id}/** — action `partial_update`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**request: ConsentUpdateSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\nThe declared field table is shown at its first occurrence in this reference; this operation links the same schema.\n\n**response: ConsentRetrieveSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\nThe declared field table is shown at its first occurrence in this reference; this operation links the same schema.\n\n**Observed authorization checks:** `can_view_clinical_data`, `can_view_encounter_clinical_data`, `can_update_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** PermissionDenied: Permission denied to user; ValidationError: Patient external ID mismatch with encounter's patient; PermissionDenied: You do not have permission to update encounter."},{"title":"destroy · DELETE","body":"**DELETE /api/v1/patient/{patient_external_id}/consent/{external_id}/** — action `destroy`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**Observed authorization checks:** `can_update_encounter_clinical_data`, `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Explicit response statuses in observed code:** status.HTTP_204_NO_CONTENT. Other branches/framework exception handling may differ.\n\n**Declared refusal/error evidence:** PermissionDenied: You do not have permission to update encounter; PermissionDenied: Permission denied to user."},{"title":"upsert · POST","body":"**POST /api/v1/patient/{patient_external_id}/consent/upsert/** — action `upsert`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| body | `datapoints` | not declared at read site | not established |\n| query | `encounter` | not declared at read site | not established |\n| body | `form_submission` | not declared at read site | not established |\n\n**Observed authorization checks:** `can_view_clinical_data`, `can_view_encounter_clinical_data`, `can_update_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Explicit response statuses in observed code:** 400. Other branches/framework exception handling may differ.\n\n**Declared refusal/error evidence:** RestFrameworkValidationError: Invalid request data; RestFrameworkValidationError: No datapoints provided; RestFrameworkValidationError: Too many datapoints provided; PermissionDenied: Permission denied to user; ValidationError: Patient external ID mismatch with encounter's patient; PermissionDenied: You do not have permission to update encounter.\n\n**Conditional gates:** conditional/computed expression; inspect pinned declaration comparison settings.MAX_DATAPOINTS_PER_UPSERT."},{"title":"add_verification · POST","body":"**POST /api/v1/patient/{patient_external_id}/consent/{external_id}/add_verification/** — action `add_verification`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**decorator request: ConsentVerificationSpec**. Declared fields below; inherited fields are retained in the schema inventory.\n\n| Field | Type | Required | Constraints |\n| --- | --- | --- | --- |\n| verified | bool | true | No extra constraint extracted |\n| verified_by | UUID4 \\| None | false | No extra constraint extracted |\n| verification_date | datetime \\| None | false | No extra constraint extracted |\n| verification_type | VerificationType | true | No extra constraint extracted |\n| note | str \\| None | false | No extra constraint extracted |\n\n**Observed authorization checks:** `can_update_encounter_clinical_data`, `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** ValidationError: Consent is already verified by the user; PermissionDenied: You do not have permission to update encounter; PermissionDenied: Permission denied to user."},{"title":"remove_verification · POST","body":"**POST /api/v1/patient/{patient_external_id}/consent/{external_id}/remove_verification/** — action `remove_verification`. static contract extracted; runtime/permission/payload behavior review pending.\n\nPath and deployment-context parameters:\n\n| Location | Parameter | Type | Required |\n| --- | --- | --- | --- |\n| path | patient_external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n| path | external_id | router lookup string; semantic ID validation requires handler/schema review | true |\n\nDirectly observed request reads (these do not constitute a complete accepted-payload or requiredness guarantee):\n\n| Location | Field | Declared/inferred read type | Requiredness evidence |\n| --- | --- | --- | --- |\n| query | `encounter` | not declared at read site | not established |\n\n**Observed authorization checks:** `can_update_encounter_clinical_data`, `can_view_clinical_data`, `can_view_encounter_clinical_data`. Helper/queryset evidence is included; this is not proof of complete security review.\n\n**Declared refusal/error evidence:** ValidationError: Consent is not verified by the user; PermissionDenied: You do not have permission to update encounter; PermissionDenied: Permission denied to user."},{"title":"Integration review checklist","body":"Confirm the installed route and full schema; review authentication, organization/facility scoping, all accepted fields, value-state and date/time semantics, idempotency, pagination, response/exception branches and the allowed correction/reversal workflow. Test positive and negative cases with synthetic data. This source reference does not establish external certification or replace an illustrated user procedure."}],"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/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":26,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":165,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":39,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":158,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":56,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":327,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":155,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":10,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":102,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":133,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":139,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":127,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":95,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":136,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":322,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":349,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":346,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":92,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":74,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":127,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":80,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":77,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":74,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":211,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":15,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":225,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":198,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":332,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":177,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":219,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":88,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":215,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":258,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":255,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":250,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":268,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":50,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":50,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":78,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}],"related":["it-api-contract","it-api-auth","security-rcm-roles"],"verification":"Static API contract — behavior review pending","version":"f6e9f05f76d4","apiReferenceIds":["backend-resource-9af829f792b91436","backend-resource-9af829f792b91436:GET:list","backend-resource-9af829f792b91436:POST:create","backend-resource-9af829f792b91436:GET:retrieve","backend-resource-9af829f792b91436:PUT:update","backend-resource-9af829f792b91436:PATCH:partial_update","backend-resource-9af829f792b91436:DELETE:destroy","backend-resource-9af829f792b91436:POST:upsert","backend-resource-9af829f792b91436:POST:add_verification","backend-resource-9af829f792b91436:POST:remove_verification"]},"backend":{"resources":[{"id":"backend-resource-9af829f792b91436","localPrefix":"consent","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","basename":"consent","source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"conditions":[],"repository":"repositories/teleicu/mansoq-core-teleicu","classSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":26,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"description":"","path":"/api/v1/patient/{patient_external_id}/consent/","mountStatus":"verified core mount in config/urls.py","operationIds":["backend-resource-9af829f792b91436:GET:list","backend-resource-9af829f792b91436:POST:create","backend-resource-9af829f792b91436:GET:retrieve","backend-resource-9af829f792b91436:PUT:update","backend-resource-9af829f792b91436:PATCH:partial_update","backend-resource-9af829f792b91436:DELETE:destroy","backend-resource-9af829f792b91436:POST:upsert","backend-resource-9af829f792b91436:POST:add_verification","backend-resource-9af829f792b91436:POST:remove_verification"],"unresolvedViewset":false,"reviewStatus":"registered resource enumerated; behavioral review pending"}],"operations":[{"id":"backend-resource-9af829f792b91436:GET:list","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"GET","path":"/api/v1/patient/{patient_external_id}/consent/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/","action":"list","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":false,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":165,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:165:list","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:158:serialize_list","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:155:get_serializer_list_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj"],"schemaIds":{"response":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentListSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:POST:create","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"POST","path":"/api/v1/patient/{patient_external_id}/consent/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/","action":"create","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":false,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":133,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:133:create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:23:authorize_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:139:handle_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:127:clean_create_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py:30:validate_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:95:perform_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:136:get_serializer_create_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:349:fetch_patient_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:346:fetch_encounter_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:92:get_form_submission_params","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model"],"schemaIds":{"request":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentCreateSpec","response":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentRetrieveSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:GET:retrieve","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"GET","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","action":"retrieve","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":80,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:80:retrieve","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:77:authorize_retrieve","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:74:get_serializer_retrieve_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj"],"schemaIds":{"response":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentRetrieveSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:PUT:update","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"PUT","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","action":"update","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":211,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:211:update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:225:handle_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:198:clean_update_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:332:get_update_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py:30:validate_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:177:perform_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:219:get_serializer_update_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:349:fetch_patient_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:346:fetch_encounter_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model"],"schemaIds":{"request":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentUpdateSpec","response":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentRetrieveSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:PATCH:partial_update","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"PATCH","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","action":"partial_update","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":215,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:215:partial_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:211:update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:225:handle_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:198:clean_update_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:332:get_update_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py:30:validate_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:177:perform_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:219:get_serializer_update_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model"],"schemaIds":{"request":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentUpdateSpec","response":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentRetrieveSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:DELETE:destroy","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"DELETE","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/","action":"destroy","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":258,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"declared/inherited method","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:258:destroy","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:30:authorize_destroy","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:255:validate_destroy","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:250:perform_destroy","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj"],"schemaIds":{},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:POST:upsert","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"POST","path":"/api/v1/patient/{patient_external_id}/consent/upsert/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/upsert/","action":"upsert","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":false,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":268,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"@action declaration","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:268:upsert","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:225:handle_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:139:handle_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:198:clean_update_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:332:get_update_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py:30:validate_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:177:perform_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:219:get_serializer_update_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:127:clean_create_data","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:23:authorize_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:95:perform_create","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:136:get_serializer_create_context","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:349:fetch_patient_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:346:fetch_encounter_from_instance","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:92:get_form_submission_params"],"schemaIds":{},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:POST:add_verification","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"POST","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/add_verification/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/add_verification/","action":"add_verification","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":50,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"@action declaration","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:50:add_verification","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj"],"schemaIds":{"decorator request":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentVerificationSpec"},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]},{"id":"backend-resource-9af829f792b91436:POST:remove_verification","resourceId":"backend-resource-9af829f792b91436","repository":"repositories/teleicu/mansoq-core-teleicu","boundary":"alternative-core","method":"POST","path":"/api/v1/patient/{patient_external_id}/consent/{external_id}/remove_verification/","declaredPattern":"/api/v1/patient/{patient_external_id}/consent/{external_id}/remove_verification/","action":"remove_verification","viewset":"ConsentViewSet","classId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","detail":true,"allowedByDeclaredHttpMethods":true,"mountStatus":"verified core mount in config/urls.py","routeEvidence":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"handlerSource":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":78,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"registrationConditions":[],"evidenceKind":"@action declaration","methodEvidenceIds":["repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:78:remove_verification","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj"],"schemaIds":{},"classPermissionEvidence":[],"filterEvidence":[{"name":"filter_backends","value":[null],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"encounter","type":"filters.UUIDFilter","lookup":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"reviewStatus":"static contract extracted; runtime/permission/payload behavior review pending","pathParameters":[{"name":"patient_external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"external_id","in":"path","type":"router lookup string; semantic ID validation requires handler/schema review","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/api_router.py","line":448,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}]}],"methodEvidence":[{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:165:list","name":"list","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRListMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":165,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:39:get_queryset","name":"get_queryset","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":39,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:158:serialize_list","name":"serialize_list","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRListMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":158,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"obj","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":158,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:56:authorize_read_encounter","name":"authorize_read_encounter","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.encounter_authz_base.EncounterBasedAuthorizationBase","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":56,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[{"name":"encounter","in":"query","type":"not declared at read site","required":"not established","readStyle":"get","dynamicName":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":60,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"permissionChecks":[{"permission":"can_view_clinical_data","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":57,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"permission":"can_view_encounter_clinical_data","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"declaredErrors":[{"exception":"PermissionDenied","message":"Permission denied to user","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":67,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"exception":"PermissionDenied","message":"Permission denied to user","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":65,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:327:get_read_pydantic_model","name":"get_read_pydantic_model","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRBaseViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":327,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:155:get_serializer_list_context","name":"get_serializer_list_context","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRListMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":155,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:10:get_patient_obj","name":"get_patient_obj","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.encounter_authz_base.EncounterBasedAuthorizationBase","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":10,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:133:create","name":"create","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":133,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:23:authorize_create","name":"authorize_create","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.encounter_authz_base.EncounterBasedAuthorizationBase","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[{"permission":"can_update_encounter_clinical_data","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":25,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"declaredErrors":[{"exception":"PermissionDenied","message":"You do not have permission to update encounter","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":28,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:139:handle_create","name":"handle_create","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":139,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"request_data","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":139,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:127:clean_create_data","name":"clean_create_data","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":127,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"request_data","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":127,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py:30:validate_data","name":"validate_data","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.condition.ValidateEncounterMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"model_obj","type":"unspecified","required":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[{"exception":"ValidationError","message":"Patient external ID mismatch with encounter's patient","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/condition.py","line":38,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:95:perform_create","name":"perform_create","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":95,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":95,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[{"name":"form_submission","in":"body","type":"not declared at read site","required":"not established","readStyle":"get","dynamicName":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":108,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:136:get_serializer_create_context","name":"get_serializer_create_context","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":136,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:322:get_retrieve_pydantic_model","name":"get_retrieve_pydantic_model","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRBaseViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":322,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:349:fetch_patient_from_instance","name":"fetch_patient_from_instance","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRBaseViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":349,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":349,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:346:fetch_encounter_from_instance","name":"fetch_encounter_from_instance","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRBaseViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":346,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":346,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:92:get_form_submission_params","name":"get_form_submission_params","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRCreateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":92,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":92,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:80:retrieve","name":"retrieve","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRRetrieveMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":80,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:77:authorize_retrieve","name":"authorize_retrieve","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRRetrieveMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":77,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"model_instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":77,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:74:get_serializer_retrieve_context","name":"get_serializer_retrieve_context","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRRetrieveMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":74,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:211:update","name":"update","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":211,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:15:authorize_update","name":"authorize_update","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.encounter_authz_base.EncounterBasedAuthorizationBase","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":15,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"request_obj","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":15,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"model_instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":15,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[{"permission":"can_update_encounter_clinical_data","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":16,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"declaredErrors":[{"exception":"PermissionDenied","message":"You do not have permission to update encounter","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":21,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:225:handle_update","name":"handle_update","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":225,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":225,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"request_data","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":225,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:198:clean_update_data","name":"clean_update_data","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":198,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"request_data","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":198,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"keep_fields","type":"set | None","required":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":198,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:332:get_update_pydantic_model","name":"get_update_pydantic_model","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRBaseViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":332,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:177:perform_update","name":"perform_update","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":177,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":177,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:219:get_serializer_update_context","name":"get_serializer_update_context","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":219,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:215:partial_update","name":"partial_update","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpdateMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":215,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:258:destroy","name":"destroy","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRDestroyMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":258,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[{"value":null,"symbol":"status.HTTP_204_NO_CONTENT","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":263,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py:30:authorize_destroy","name":"authorize_destroy","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.encounter_authz_base.EncounterBasedAuthorizationBase","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[{"permission":"can_update_encounter_clinical_data","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":31,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"declaredErrors":[{"exception":"PermissionDenied","message":"You do not have permission to update encounter","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/encounter_authz_base.py","line":34,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:255:validate_destroy","name":"validate_destroy","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRDestroyMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":255,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":255,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:250:perform_destroy","name":"perform_destroy","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRDestroyMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":250,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[{"name":"instance","type":"unspecified","required":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":250,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"parametersRead":[],"permissionChecks":[],"declaredErrors":[],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py:268:upsert","name":"upsert","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.base.EMRUpsertMixin","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":268,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[{"name":"datapoints","in":"body","type":"not declared at read site","required":"not established","readStyle":"get","dynamicName":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":271,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"permissionChecks":[],"declaredErrors":[{"exception":"RestFrameworkValidationError","message":"Invalid request data","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":270,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"exception":"RestFrameworkValidationError","message":"No datapoints provided","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":273,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"exception":"RestFrameworkValidationError","message":"Too many datapoints provided","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":275,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[{"value":400,"symbol":null,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":304,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"conditions":[{"condition":"conditional/computed expression; inspect pinned declaration comparison settings.MAX_DATAPOINTS_PER_UPSERT","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/base.py","line":274,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:50:add_verification","name":"add_verification","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":50,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[{"exception":"ValidationError","message":"Consent is already verified by the user","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentVerificationSpec"],"schemaUsages":[{"purpose":"decorator request","schemaId":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentVerificationSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":48,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"},{"id":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py:78:remove_verification","name":"remove_verification","owner":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.api.viewsets.consent.ConsentViewSet","summary":"","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":78,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"signatureParameters":[],"parametersRead":[],"permissionChecks":[],"declaredErrors":[{"exception":"ValidationError","message":"Consent is not verified by the user","dynamicMessage":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/api/viewsets/consent.py","line":91,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"explicitResponseStatuses":[],"conditions":[],"schemaIds":[],"schemaUsages":[],"unconditionalRaise":false,"reviewStatus":"static declaration extracted; behavioral/security review pending"}],"schemas":[{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentListSpec","name":"ConsentListSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":102,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"meta","type":"dict","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":16,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"id","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{"description":"Unique identifier for the consent record"}},{"name":"status","type":"ConsentStatusChoices","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":65,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"category","type":"CategoryChoice","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":66,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"date","type":"datetime","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":67,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"period","type":"PeriodSpec","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":68,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"encounter","type":"UUID4","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":69,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"decision","type":"DecisionType","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":70,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"note","type":"str | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":71,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"source_attachments","type":"list[dict]","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":103,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"verification_details","type":"list[dict]","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":104,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[],"baseTypes":["ConsentBaseSpec"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentStatusChoices","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.CategoryChoice","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.base.PeriodSpec","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.DecisionType"]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentStatusChoices","name":"ConsentStatusChoices","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":21,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python enum/choice declaration","fields":[],"validation":[],"baseTypes":["str","Enum"],"reviewStatus":"declared fields extracted; runtime validation review pending","members":[{"name":"draft","value":"draft","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":22,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"active","value":"active","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":23,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"inactive","value":"inactive","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":24,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"not_done","value":"not_done","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":25,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"entered_in_error","value":"entered_in_error","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":26,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"referencedSchemaIds":[]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.CategoryChoice","name":"CategoryChoice","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":39,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python enum/choice declaration","fields":[],"validation":[],"baseTypes":["str","Enum"],"reviewStatus":"declared fields extracted; runtime validation review pending","members":[{"name":"research","value":"research","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":40,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"patient_privacy","value":"patient_privacy","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":41,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"treatment","value":"treatment","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":42,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"dnr","value":"dnr","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":43,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"comfort_care","value":"comfort_care","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":44,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"acd","value":"acd","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":45,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"adr","value":"adr","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":46,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"referencedSchemaIds":[]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.base.PeriodSpec","name":"PeriodSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":181,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"start","type":"datetime.datetime | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":182,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"end","type":"datetime.datetime | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":183,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[{"methodId":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py:186:validate_period","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":186,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"baseTypes":["BaseModel"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":[]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.DecisionType","name":"DecisionType","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":34,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python enum/choice declaration","fields":[],"validation":[],"baseTypes":["str","Enum"],"reviewStatus":"declared fields extracted; runtime validation review pending","members":[{"name":"deny","value":"deny","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":35,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"permit","value":"permit","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":36,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"referencedSchemaIds":[]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentCreateSpec","name":"ConsentCreateSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":74,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"meta","type":"dict","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":16,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"id","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{"description":"Unique identifier for the consent record"}},{"name":"status","type":"ConsentStatusChoices","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":65,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"category","type":"CategoryChoice","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":66,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"date","type":"datetime","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":67,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"period","type":"PeriodSpec","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":68,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"encounter","type":"UUID4","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":69,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"decision","type":"DecisionType","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":70,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"note","type":"str | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":71,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[{"methodId":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py:76:validate_period_and_date","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":76,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"baseTypes":["ConsentBaseSpec"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentStatusChoices","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.CategoryChoice","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.base.PeriodSpec","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.DecisionType"]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentRetrieveSpec","name":"ConsentRetrieveSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":127,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"meta","type":"dict","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":16,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"id","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{"description":"Unique identifier for the consent record"}},{"name":"status","type":"ConsentStatusChoices","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":65,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"category","type":"CategoryChoice","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":66,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"date","type":"datetime","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":67,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"period","type":"PeriodSpec","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":68,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"encounter","type":"UUID4","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":69,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"decision","type":"DecisionType","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":70,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"note","type":"str | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":71,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"source_attachments","type":"list[dict]","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":103,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"verification_details","type":"list[dict]","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":104,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[],"baseTypes":["ConsentListSpec"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentStatusChoices","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.CategoryChoice","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.base.PeriodSpec","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.DecisionType"]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentUpdateSpec","name":"ConsentUpdateSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":88,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"meta","type":"dict","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/base.py","line":16,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"id","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":62,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{"description":"Unique identifier for the consent record"}},{"name":"status","type":"ConsentStatusChoices | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":89,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"category","type":"CategoryChoice | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":90,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"date","type":"datetime | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":91,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"period","type":"PeriodSpec | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":92,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"encounter","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":93,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"decision","type":"DecisionType | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":94,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"note","type":"str | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":95,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[],"baseTypes":["ConsentBaseSpec"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentStatusChoices","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.CategoryChoice","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.base.PeriodSpec","repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.DecisionType"]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.ConsentVerificationSpec","name":"ConsentVerificationSpec","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":50,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python declared schema/model evidence","fields":[{"name":"verified","type":"bool","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":51,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"verified_by","type":"UUID4 | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":52,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"verification_date","type":"datetime | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":53,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"verification_type","type":"VerificationType","required":true,"hasDefault":false,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":54,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}},{"name":"note","type":"str | None","required":false,"hasDefault":true,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":55,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"constraints":{}}],"validation":[],"baseTypes":["BaseModel"],"reviewStatus":"declared fields extracted; runtime validation review pending","referencedSchemaIds":["repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.VerificationType"]},{"id":"repositories/teleicu/mansoq-core-teleicu:mansoq.emr.resources.consent.spec.VerificationType","name":"VerificationType","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":29,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"kind":"Python enum/choice declaration","fields":[],"validation":[],"baseTypes":["str","Enum"],"reviewStatus":"declared fields extracted; runtime validation review pending","members":[{"name":"family","value":"family","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":30,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}},{"name":"validation","value":"validation","source":{"path":"repositories/teleicu/mansoq-core-teleicu/mansoq/emr/resources/consent/spec.py","line":31,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"}}],"referencedSchemaIds":[]}],"frameworkSettings":[{"name":"DEFAULT_AUTHENTICATION_CLASSES","value":["config.authentication.CustomJWTAuthentication","config.authentication.CustomBasicAuthentication","rest_framework.authentication.SessionAuthentication","rest_framework.authentication.TokenAuthentication"],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/settings/base.py","line":366,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"scope":"source default; deployment overrides and action-level policies may differ"},{"name":"DEFAULT_PERMISSION_CLASSES","value":["rest_framework.permissions.IsAuthenticated","mansoq.security.utils.permission_class.MansoqAuthentication"],"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/settings/base.py","line":366,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"scope":"source default; deployment overrides and action-level policies may differ"},{"name":"DEFAULT_PAGINATION_CLASS","value":"mansoq.utils.pagination.mansoq_pagination.MansoqLimitOffsetPagination","source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/settings/base.py","line":366,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"scope":"source default; deployment overrides and action-level policies may differ"},{"name":"PAGE_SIZE","value":14,"source":{"path":"repositories/teleicu/mansoq-core-teleicu/config/settings/base.py","line":366,"commit":"f6e9f05f76d443b26ebd2369f67d3c3bd52257ca"},"scope":"source default; deployment overrides and action-level policies may differ"}]},"frontend":{"operations":[],"schemas":[]},"services":{"operations":[]},"boundaries":[]}