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

# createQueryKey

[API Reference](/api-reference/@modelence/react-query/functions/../../../index) / [@modelence/react-query](/api-reference/@modelence/react-query/functions/../index) / createQueryKey

> **createQueryKey**\<`T`, `U`>(`methodName`, `args`): [`ModelenceQueryKey`](/api-reference/@modelence/react-query/functions/../type-aliases/ModelenceQueryKey)\<`T`, `U`>

Defined in: [index.ts:279](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/react-query/src/index.ts#L279)

Utility function to create query keys for manual cache operations

## Example

```tsx theme={null}
import { useQueryClient } from '@tanstack/react-query';
import { createQueryKey } from '@modelence/react-query';

function TodoActions() {
  const queryClient = useQueryClient();
  
  const refreshTodos = () => {
    queryClient.invalidateQueries({ 
      queryKey: createQueryKey('todo.getAll', { limit: 10 }) 
    });
  };
}
```

## Type Parameters

| Type Parameter         | Default type |
| ---------------------- | ------------ |
| `T` *extends* `string` | -            |
| `U` *extends* `Args`   | `Args`       |

## Parameters

| Parameter    | Type | Description     |
| ------------ | ---- | --------------- |
| `methodName` | `T`  | The method name |
| `args`       | `U`  | The arguments   |

## Returns

[`ModelenceQueryKey`](/api-reference/@modelence/react-query/functions/../type-aliases/ModelenceQueryKey)\<`T`, `U`>

Typed query key
