# tmux_window_link:get/3

- **Package:** libtmux_erlang
- **Language:** Erlang
- **Kind:** function
- **Source:** https://github.com/libtmux/libtmux-erlang/blob/d1b6308440cf9eb8f6647e7ae434bce60e849368/apps/libtmux_erlang/src/tmux_window_link.erl#L50
- **Page:** https://libtmux.org/en/erlang/latest/reference/tmux_window_link-get-3/

```
get(Server, SessionId, Index)
-spec get(tmux_server:t(),
          tmux_model:session_id(),
          index()) ->
             {ok, tmux_model:window_link()} |
             {error, map()}.
```

Read a current membership at the explicit session ID and index. The returned native row carries its registered owner and a new observation identity. Returns target_gone if the session or index is absent. This read does not make later actions atomic and does not refresh previously captured links.

Invalid indexes are rejected before I/O:

## Examples

```erlang
1> tmux_window_link:get(invalid_server, <<"$0">>, -1).
{error,#{code => invalid_option,path => [index]}}
```

## Parameters

- `Server` (`tmux_server:t()`)
- `SessionId` (`tmux_model:session_id()`)
- `Index` (`index()`)

## tmux command

The tmux commands behind `get/3`.

- [`list-windows`](/en/tmux/latest/manual/list-windows/) `-t` session scope, [`cmd_list_windows_exec`](/en/tmux/latest/reference/c-function-cmd-list-windows-c-cmd_list_windows_exec/) (source: `apps/libtmux_erlang/src/tmux_window_link.erl:55`)

## tmux C API

The C declarations in tmux that implement these commands.

- [`cmd_list_windows_entry`](/en/tmux/latest/reference/c-variable-cmd_list_windows_entry/) (attribute)
- [`cmd_list_windows_exec`](/en/tmux/latest/reference/c-function-cmd-list-windows-c-cmd_list_windows_exec/) (function)

## Guides

Pages that discuss `get/3`.

### Concepts

- [Object graph](/en/erlang/latest/concepts/object-graph/)

### Guides

- [Isolate and rejoin a running pane](/en/erlang/latest/guides/panes/)
