---
title: "Sync Grants"
method: POST
path: "/v1/workspaces/{workspace}/access-control/sync"
tags: ["v1", "protected", "access-control"]
---

# Sync Grants

`POST /v1/workspaces/{workspace}/access-control/sync`

Mirror workspace membership into the graph backend (idempotent).

Resource ownership is granted at create time by ``grant_resource_owner`` and
was backfilled onto the ``resource`` model, so this endpoint only ensures the
workspace-member tuples that gate group defaults are present.

## Path parameters

- `workspace` string, required — Slug of the workspace the request acts in

## Response `200`

Successful Response

- AgentareaApiApiV1AccessControlSyncResponse
  - `collections` integer, required
  - `written` integer, required

## Other responses

- `422` — Validation Error

## Changes

- **2026-09-26** `d3ad8e1a3681` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/agentarea/apis/agentarea-api/changes/v1/workspaces/:workspace/access-control/sync/post.md)

---

[API](https://skmtc.dev/agentarea/apis/agentarea-api.md) · [All operations](https://skmtc.dev/agentarea/apis/agentarea-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agentarea/apis/agentarea-api/revisions/286327d8bd86?raw)
