You can pin columns by setting the pinned attribute on the column definition to either 'left' or 'right'.

colDef = {
    headerName: "Athlete",
    field: "athlete",
    pinned: 'left'

Below shows an example with 2 pinned columns on the left and one pinned columns on the right. The example also demonstrates changing the pinning via the API at runtime.

The grid will reorder the columns so that 'left pinned' columns come first and 'right pinned' columns come last. In the example below the state of pinned columns impacts the order of the columns such that when 'Country' is pinned, it jumps to the first position.

Jump To & Pinning

Below shows jumping to rows and cols via the API. Jumping to a pinned col makes no sense, as the pinned cols, by definition, are always visible. So below, if you try to jump to a pinned col, the grid will print a warning to the console.