> ## Documentation Index
> Fetch the complete documentation index at: https://arize-ax.mintlify.site/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Resource Restrictions

> Control access to resources by restricting or unrestricting them using the Arize Python SDK.

<Note>
  The `resource_restrictions` client methods are currently in **BETA**. The API may change without notice. A one-time warning is emitted on first use.
</Note>

Restricting a resource prevents roles bound at higher hierarchy levels (space, org, account) from granting access to it. Only space admins or users with the `PROJECT_RESTRICT` permission can perform these actions. Currently only `PROJECT` resources are supported.

## List Resource Restrictions

List the resource restrictions the caller is permitted to manage. Results are paginated. Because entries are authorization-filtered after a page is read, a page may contain fewer items than `limit` (or be empty) while `pagination.has_more` is still `True` — keep paging until `has_more` is `False`.

```python theme={null}
from arize.resource_restrictions.types import ResourceRestrictionType

resp = client.resource_restrictions.list(
    resource_type=ResourceRestrictionType.PROJECT,  # optional
    limit=50,
)

for restriction in resp.resource_restrictions:
    print(restriction.resource_id, restriction.resource_type, restriction.created_at)
```

For details on pagination, field introspection, and data conversion (to dict/JSON/DataFrame), see [Response Objects](/docs/api-clients/python/version-8/overview#response-objects).

## Restrict a Resource

Marks a resource as restricted and returns a `ResourceRestriction`. This operation is idempotent — restricting an already-restricted resource returns the existing restriction without error.

```python theme={null}
from arize.resource_restrictions.types import ResourceRestriction

restriction: ResourceRestriction = client.resource_restrictions.restrict(
    resource_id="your-project-id",  # global ID of the resource to restrict
)

print(restriction)
```

## Unrestrict a Resource

Removes the restriction from a resource so that roles bound at other levels of the hierarchy (space, org, account) can once again grant access. Returns `None`.

```python theme={null}
client.resource_restrictions.unrestrict(
    resource_id="your-project-id",  # global ID of the resource to unrestrict
)
```
