Вообще, второе приложение (API) должно уметь по данному токену получать пользователя.
По сути, JWT-токен состоит из трех частей:
- Заголовок с алгоритмом
- Тело
- Подпись
В теле, обычно лежит информация вида:
- Когда выдан
- Срок действия
- Кто выдал
- Публичные метки (роли, идентификатор пользователя и т.п.)
API декодирует токен, в зависимости от алгоритма (может быть понадобится p12 - сертификат, все зависит от настроек) и на основание этой информации получает пользователя. Как только у вас истекает время жизни токена, приложение бросает 401 и вам нужно заново получить токен.
Валидация - проверка соответствия тела токена подписи, она происходит посредством механизма подписи, который определяется из первого заголовка. Тут может быть и хэширование ключом, а может и достаточно парольной фразы.
Есть другой вариант, когда сервер авторизации дает два токена, второй - то что называется refresh_token. При такой ситуации, API может запросить новый токен для этого пользователя и дальше общаться через новый токен.
Важно понимать, что использует клиент в качестве библиотеки для JWT-аутентификации (а API - это клиент), как она (библиотека) может работать.