PATCH /orgs/:id
Path Parameters
Request Body
Response
Returns{"status": "success"} — no body beyond the status.
Errors
Changing Visibility
visibility is the one field on this endpoint that moves the access perimeter: flipping an organization to
public exposes it to anonymous readers, and anonymous tokens are freely obtainable. Changing it therefore
requires a human behind the request, and a service account’s own key is refused
with 403 — even though the endpoint as a whole only needs write, two role levels below every other
perimeter operation.
The guard is narrower than the endpoint, in two ways that matter:
- It is on the field, not the request.
name,description,urlandtagsare ordinary product work. A service account can PATCH any of them, alone or together, and is never refused. - It is on an actual change, not on the field’s presence. Sending
visibilitywith the value already stored moves nothing and is allowed. This is deliberate: an idempotent client that PATCHes its whole desired state on every run would otherwise be refused forever for writing back a value that changes nothing.
private → public and public → private alike. Use an
acting token when automation has to publish or unpublish on a human’s behalf.

