---
title: "Update practitioner overview and core identity fields"
method: PUT
path: "/practitioners/{id}/overview"
tags: ["Practitioner"]
---

# Update practitioner overview and core identity fields

`PUT /practitioners/{id}/overview`

Updates the practitioner's overview information, including core identity fields such as name and NPI. Use this when basic practitioner identity or profile attributes need to be changed; for updating the full practitioner record, use `PUT /practitioners/{id}` instead. `{id}` is the `certifyPractitionerId`, and a 409 is returned if an initial credentialing workflow conflict is detected. Unlike `PUT /practitioners/{id}`, this endpoint is a true partial update: the service fetches the existing core record and merges only the explicitly-provided fields on top of it, distinguishing an omitted field from one explicitly set to null.

## Path parameters

- `id` string, required

## Headers

- `tenant-id` string

## Request body

- OverviewUpdateRequest
  - `firstName` string — First name of the practitioner
  - `lastName` string — Last name of the practitioner
  - `primaryEmail` string — Primary email address of the practitioner
  - `middleName` string — Middle name of the practitioner
  - `prefix` string — Name prefix of the practitioner
  - `suffix` string — Name suffix of the practitioner
  - `externalId` string — External identifier for the practitioner
  - `npi` string — National Provider Identifier
  - `caqhProviderId` string — CAQH Provider ID
  - `caqhAttestationDate` string — CAQH attestation date
  - `caqhPdqs` object — CAQH PDQS data object. Can be provided directly or via caqhAttestationDate field.
  - `userDefinedFields` object — Custom user-defined fields. Replaces the entire userDefinedFields object (PUT semantics).
  - `providerType` string[] — Types of healthcare provider (e.g., MD, DO, NP)
  - `practitionerType` string[] — Types of healthcare practitioner (e.g., MD, DO, NP)
  - `practitionerTypesToCredential` string[] — Practitioner types to credential (e.g., MD, Physician)
  - `languages` Language[] — Languages spoken by the practitioner
    - `language` string, required — The language the practitioner is proficient in
    - `isPrimary` boolean, nullable — Whether the language is the primary language of the practitioner
  - `medicareId` string — Medicare PTAN
  - `dateOfBirth` string — Date of birth
  - `gender` string — Gender of the practitioner
  - `ethnicity` string — Ethnicity of the practitioner
  - `race` string — Race of the practitioner. Multiple selections stored as comma-separated values.
  - `delegationStatus` 'Delegated' | 'Direct' | 'CredNotRequired' — Delegation status of the practitioner
  - `initialCredentialingDate` string, nullable — Date when the practitioner was first credentialed
  - `lastCredentialingDate` string, nullable — Date of the most recent credentialing
  - `nextCredentialingDate` string, nullable — Date the next credentialing is due
  - `culturalCompetency` boolean, nullable — Whether cultural competency training has been completed. Stored on the matching complianceTrainings entry.

## Response `200`

Practitioner overview updated successfully

## Other responses

- `400` — Bad request - Invalid input
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions
- `404` — Practitioner not found
- `409` — Conflict - Initial credentialing workflow already exists
- `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/revisions/563848e0ecc0/schema)
