---
title: "Update a facility location (simple CoreLocation fields)"
method: PUT
path: "/facilities/{certifyFacilityId}/locations/{certifyLocationId}"
tags: ["Facility"]
---

# Update a facility location (simple CoreLocation fields)

`PUT /facilities/{certifyFacilityId}/locations/{certifyLocationId}`

Updates allowed CoreLocation fields for a location linked to the facility. Requires consentAcknowledged: true. Includes contacts, office hours, ADA, limitations, isPrimaryLocation (primary indicator), optional userDefinedFields (full replace of that object on CoreLocation data), and optional specialityDetails (same shape as add-location; syncs TenantFacilityLocationSpecialty via replace semantics). Location name and service address cannot be changed via this API (crosswalk safety). The authenticated user is the actor (updated_by); scoped effective-date PATCH and cascade to group/network denormalized rows are not part of this endpoint.

## Path parameters

- `certifyFacilityId` string, required
- `certifyLocationId` string, required

## Headers

- `tenant-id` string

## Request body

- object

## Response `200`

Location successfully updated

- object

## Other responses

- `400` — Invalid request body
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions
- `404` — Facility or facility–location association not found
- `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)
