---
title: "Correct a practitioner role key in data-correction mode"
method: PATCH
path: "/practitioners/{id}/roles/correct"
tags: ["Practitioner"]
---

# Correct a practitioner role key in data-correction mode

`PATCH /practitioners/{id}/roles/correct`

Renames an existing role key in practitionerRolesMap on the core_practitioner record (e.g., PCP -> Specialist) while preserving the inner map (effectiveDate, terminationDate). Does not trigger termination events or lifecycle changes.

## Path parameters

- `id` string, required

## Headers

- `tenant-id` string

## Request body

- PractitionerRoleCorrectionRequest
  - `existingRole` 'PCP' | 'Specialist' | 'Hospitalist' | 'Hospital-based Provider', required — Current role to correct
  - `newRole` 'PCP' | 'Specialist' | 'Hospitalist' | 'Hospital-based Provider', required — New role to replace the existing one

## Response `200`

Role corrected successfully

- PractitionerRolesUpdateResponse — Practitioner roles update response
  - `practitionerRoles` object — Updated practitioner roles map from core_practitioners
  - `locationRoles` object — Updated practitioner roles map from group_practitioner_locations, keyed by groupPractitionerLocationId

## Other responses

- `400` — Bad request - Invalid role or role not found
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions
- `404` — Practitioner not found
- `409` — Conflict - New role already exists on practitioner
- `500` — Internal server error

---

[API](https://skmtc.net/certifyos/apis/certify-api-layer.md) · [All operations](https://skmtc.net/certifyos/apis/certify-api-layer/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/certifyos/certify-api-layer/versions/3d27e9019c7b/schema)
