# useChannelOwnCapabilities

> **Info:** This is documentation for **Stream Chat React Native SDK v9**, which is no longer actively maintained. For up-to-date documentation, see the [latest version (v10)](https://getstream.io/chat/docs/sdk/react-native/).

Reads `channel.data?.own_capabilities` reactively and re-renders on `capabilities.changed` events.

This is the foundation hook behind the channel permission helpers such as [`useCanEditChannel`](https://getstream.io/chat/docs/sdk/react-native/v9/hooks/channel-state/use-can-edit-channel/) and [`useCanAddMembersToChannel`](https://getstream.io/chat/docs/sdk/react-native/v9/hooks/channel-state/use-can-add-members-to-channel/).

## Best Practices

- Use this hook to gate features by the current user's permissions in a channel.
- Prefer the purpose-built helpers (`useCanEditChannel`, `useCanAddMembersToChannel`) for common checks, and fall back to this hook for less common capabilities.
- Handle `undefined` when capabilities have not loaded yet — treat a missing capability as "not allowed".
- Avoid hardcoding capability arrays; always derive UI from the live values.

## Usage

```tsx
import { useChannelOwnCapabilities } from "stream-chat-react-native";

const capabilities = useChannelOwnCapabilities(channel);
const canDeleteChannel = capabilities?.includes("delete-channel") ?? false;
```

## Parameters

| Name    | Type      | Required | Description                              |
| ------- | --------- | -------- | ---------------------------------------- |
| channel | `Channel` | No       | Channel whose own capabilities are read. |

## Returns

| Type                      | Description                                                     |
| ------------------------- | --------------------------------------------------------------- |
| `string[]` \| `undefined` | The current user's capabilities in the channel, or `undefined`. |

---

For the most recent version of this documentation, visit [https://getstream.io/chat/docs/sdk/react-native/v9/hooks/channel-state/use-channel-own-capabilities/](https://getstream.io/chat/docs/sdk/react-native/v9/hooks/channel-state/use-channel-own-capabilities/).