  A code $C$ in a generalised quadrangle ${\mathcal Q}$ is defined to be a
subset of the vertex set of the point-line incidence graph $\varGamma$ of
${\mathcal Q}$. The minimum distance $\delta$ of $C$ is the smallest distance
between a pair of distinct elements of $C$. The graph metric gives rise to the
distance partition $\{C,C_1,\ldots,C_\rho\}$, where $\rho$ is the maximum
distance between any vertex of $\varGamma$ and its nearest element of $C$.
Since the diameter of $\varGamma$ is $4$, both $\rho$ and $\delta$ are at most
$4$. If $\delta=4$ then $C$ is a partial ovoid or partial spread of ${\mathcal
Q}$, and if, additionally, $\rho=2$ then $C$ is an ovoid or a spread. A code
$C$ in ${\mathcal Q}$ is neighbour-transitive if its automorphism group acts
transitively on each of the sets $C$ and $C_1$. Our main results i) classify
all neighbour-transitive codes admitting an insoluble group of automorphisms in
thick classical generalised quadrangles that correspond to ovoids or spreads,
and ii) give two infinite families and six sporadic examples of
neighbour-transitive codes with minimum distance $\delta=4$ in the classical
generalised quadrangle ${\mathsf W}_3(q)$ that are not ovoids or spreads.
