Bom dia @linhares,
Primeiramente, somente para esclarecer, existe uma diferença de escopo de acesso entre os tokens utilizados para autenticação para endpoints de experience e endpoints de APIs da plataforma. No caso, quando é gerado um “Application Token”, ele irá servir somente para autenticar requisições feitas as APIs REST da plataforma.
Nesse caso, para um Experience Endpoint, somente são aceitos JWT tokens gerados a partir de credenciais de Experience User.
No caso, ao se utilizar o Service Credentials, não é possível gerar dinamicamente o JWT Token, pois são aceitos somente valores fixos, e a forma que você fez está correta, com o único problema de ter que ser gerado um token que não expira. Como é uma comunicação interna entre aplicações, onde não há a exposição desse token em um client, não haveria uma vulnerabilidade direta. E caso fosse necessário invalidar esse token, seria necessário invalidar todos os tokens gerados para esse usuário de experience, ou então via console, invalidar os tokens de todos os usuários de experience
Outras formas de se fazer, seria utilizar um endpoint que permitisse gerar tokens a apartir das credenciais do usuário, assim como funciona o fluxo de login, porém ao invés de retornar uma página, seria retornado somente o JWT Token. E esse token poderia ser salvo no storage enquanto ainda for válido, sendo necessário requisitar um novo token, quando o mesmo expirar. Esse fluxo seria um pouco mais complexo, pois há a necessidade de gerenciar o token, para não ter que gerar um novo a cada nova requisição a API.
E também poderiam ser utilizados Webhooks, que suportam basic authetication, permitindo utilizar o método de autenticação Basic do Service Credentials.
Espero ter ajudado.