Str::random(20) бери ). Имхо если у тебя всего один клиент для апи, тогда скорее всего у него есть уникальный ip, который и можно проверять при запросе к апи.
За ip нормально, кст. А вот рандом я сделаю, его подпишу, отправлю. На апишке мне ж надо как-то этот рандом тоже знать, что проверить токен который пришёл )