---
title: "Correct a facility-level specialty record"
method: PATCH
path: "/facilities/tenant-facility-specialties/specialty"
tags: ["Facility"]
---

# Correct a facility-level specialty record

`PATCH /facilities/tenant-facility-specialties/specialty`

Updates a TenantFacilitySpecialty record (Level 1) by replacing the tenant_specialty_id, updating the effective date, or both. At least one of newTenantSpecialtyId or effectiveDate must be provided. Use this for data-correction scenarios where a facility's direct specialty association needs to be updated without triggering credentialing lifecycle events — it does not propagate changes to group, location, or network specialty records. For corrections that need to cascade to group-level records, use PATCH /facilities/tenant-group-facility-specialties/specialty instead. Does not trigger termination events or lifecycle changes. Returns the raw updated record (id, tenantSpecialtyId, data) as an untyped JSON object, not a curated response DTO.

## Headers

- `tenant-id` string

## Request body

- CorrectFacilitySpecialtyRequest
  - `tenantFacilitySpecialtyId` string, required — ID of the existing TenantFacilitySpecialty record to update
  - `newTenantSpecialtyId` string — ID of the new TenantSpecialty to replace the current one. Optional if effectiveDate or isPrimary is provided.
  - `effectiveDate` string — New effective date for the specialty record in ISO format (YYYY-MM-DD). Optional if newTenantSpecialtyId or isPrimary is provided.
  - `isPrimary` boolean — Whether this specialty should be marked as primary. Optional if newTenantSpecialtyId or effectiveDate is provided.
  - `changeReason` string — Optional human-readable reason for the change, captured for audit trail.

## Response `200`

Specialty updated successfully

- object

## Other responses

- `400` — Bad request - Invalid input
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions
- `404` — Tenant facility specialty not found
- `409` — Conflict - Facility already has this specialty
- `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)
