REST /api/v1/dictation-scopes 6 endpoints
GET /api/v1/dictation-scopes/api/v1/dictation-scopes

List all approved dictation scopes (route + field combinations)

Public

Response Example

{
  "data": [
    {
      "scope_id": "scope-a1b2c3",
      "route_id": "route-visit-form",
      "field_ids": [
        "field_visit_notes",
        "field_observations"
      ],
      "registered_at": "2026-03-01T08:00:00Z"
    },
    {
      "scope_id": "scope-d4e5f6",
      "route_id": "route-activity-log",
      "field_ids": [
        "field_activity_description"
      ],
      "registered_at": "2026-03-10T09:30:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 2
  }
}
GET /api/v1/dictation-scopes/api/v1/dictation-scopes/:id

Get a specific approved dictation scope by scope ID

Public

Response Example

{
  "scope_id": "scope-a1b2c3",
  "route_id": "route-visit-form",
  "field_ids": [
    "field_visit_notes",
    "field_observations"
  ],
  "registered_at": "2026-03-01T08:00:00Z"
}
POST /api/v1/dictation-scopes/api/v1/dictation-scopes

Register an approved dictation context (route + allowed field IDs)

Public

Request Example

{
  "route_id": "route-patient-intake",
  "field_ids": [
    "field_chief_complaint",
    "field_history"
  ]
}

Response Example

{
  "scope_id": "scope-g7h8i9",
  "route_id": "route-patient-intake",
  "field_ids": [
    "field_chief_complaint",
    "field_history"
  ],
  "registered_at": "2026-03-26T11:10:00Z"
}
PUT /api/v1/dictation-scopes/api/v1/dictation-scopes/:id

Update the allowed field list for an existing approved scope

Public

Request Example

{
  "field_ids": [
    "field_chief_complaint",
    "field_history",
    "field_medications"
  ]
}

Response Example

{
  "scope_id": "scope-g7h8i9",
  "route_id": "route-patient-intake",
  "field_ids": [
    "field_chief_complaint",
    "field_history",
    "field_medications"
  ],
  "updated_at": "2026-03-26T11:15:00Z"
}
DELETE /api/v1/dictation-scopes/api/v1/dictation-scopes/:id

Revoke an approved dictation scope, blocking dictation on that route

Public

Response Example

{
  "scope_id": "scope-g7h8i9",
  "revoked": true
}
POST /api/v1/dictation-scopes/api/v1/dictation-scopes/check

Check whether dictation is allowed for a given field context, returning prohibition reason if blocked

Public

Request Example

{
  "route_id": "route-read-only-summary",
  "field_id": "field_summary_text"
}

Response Example

{
  "allowed": false,
  "prohibition_reason": "Field 'field_summary_text' is not in the approved list for route 'route-read-only-summary'."
}

Additional Metadata

{
  "contract_summary": {
    "total_contracts": 410,
    "total_endpoints": 2416,
    "api_styles_used": [
      "rest"
    ]
  },
  "generated_at": "2026-03-26T06:55:53.316Z"
}