# Правила для конкретного ресурса

export default function Layout(props) {
  const { OpenAPIPage } = props.components ?? {};
  return (
    <>
      {props.children}
      ## Правила для конкретного ресурса

`GET /api/v1/security/access-rules/resource/{resourceType}/{resourceId}`

**Авторизация:** dpop или oauth2: `security.teams:read`, `security.teams:write`

**Параметры**

| Имя | Где | Обязательный | Тип | Описание |
| --- | --- | --- | --- | --- |
| `resourceType` | path | да | "registry" \| "task" \| "calendar" \| "automation" \| "interface" \| "document" \| "approval" \| "signature" \| "agent" | Тип ресурса, на который выдаётся доступ |
| `resourceId` | path | да | string | Идентификатор ресурса |

**Ответы**

- `200` — Правила доступа (`application/json`, массив AccessRule)
  - `id`: string, обязательное — Идентификатор правила
  - `permissions`: массив "read" | "create" | "update" | "delete" | "manage", обязательное — Выданные права
  - `resourceId`: string, обязательное — Идентификатор ресурса; * — все ресурсы типа
  - `resourceType`: "registry" | "task" | "calendar" | "automation" | "interface" | "document" | "approval" | "signature" | "agent", обязательное — Тип ресурса, на который выдаётся доступ
  - `subjectId`: string, обязательное — Идентификатор субъекта (userId, groupId или имя роли)
  - `subjectType`: "user" | "group" | "role", обязательное — Тип субъекта правила: user — пользователь, group — группа, role — роль команды
  - `teamId`: string, обязательное — Команда, в которой действует правило
- `400` — Некорректный запрос: не прошла валидация параметров или тела (`application/problem+json`, ProblemDetails)
- `401` — Токен отсутствует, недействителен или истёк (`application/problem+json`, ProblemDetails)
- `403` — Недостаточно прав или scope (`application/problem+json`, ProblemDetails)
- `429` — Превышен лимит запросов, повторите через Retry-After секунд (`application/problem+json`, ProblemDetails)

    </>
  );
}
