---
title: "Set Photographer Lock Endpoint"
method: POST
path: "/setPhotographerLock"
---

# Set Photographer Lock Endpoint

`POST /setPhotographerLock`

Lock or unlock ONE photographer across several projects in a single call.

The All-Projects photographers table needs this: a photographer spans many projects, and
doing it with the per-project full-list replace would mean N read-modify-write round trips
racing each other. This touches only the one photographer's rows, so concurrent edits to
other photographers in the same project can't clobber each other either.

Authorised per project — the caller's projects are filtered to those where they actually
hold settings.manage.lockedPhotographers, so an All-Projects click can't reach a project
they don't administer. Returns the projects actually changed.

## Request body

- SetPhotographerLockRequest
  - `photographerId` string, required
  - `projectIds` integer[], required
  - `locked` boolean, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/pavoot/apis/fastapi.md) · [All operations](https://skmtc.dev/pavoot/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pavoot/fastapi/revisions/16997cca6697/schema)
