Não tenho certeza se é o seu caso, mas eu normalmente usaria autenticação com JWT (Json web token).

O JWT consistem em gerar um token assinado (é diferente de criptografado), enviar o token com a requisição pelo header e validar esse token no backend.

Tem muito material na internet ensinando a trabalhar com JWT. Valhe a pena dar uma olhada pra ver se é o seu caso de uso.

E se eu usasse uma APIKEY para autenticação? recomenda? estou desenvolvendo uma API que contém um endpoint, essa API será acessada exatamente por uma único "cliente", e para autenticação estava pensando em usar uma APIKey

É mais simples, mas funciona. Nessa situação eu particularmente ainda usaria as ideias do JWT, mesmo sendo só pra 1 cliente/usuário. Como é pra apenas 1 usuário, usar "Basic Auth" tbm funciona. Uma coisa importante tbm, mas aí talvez não seja da sua responsabilidade é entender como seu cliente vai fazer essas requisições. Se ele fizer requisição do lado do frontend (por um site), qualquer um com mais conhecimento vai conseguir ver e talvez usar o token.