package com.dexels.oauth.api; /** * A RefreshToken is used to improve security for API access, to refresh * {@link AccessToken}s. * * The {@link AccessToken}s are exchanged at every API call. They are short * lived, so if they get compromised their use is limited. * * The RefreshToken on the other hand is long lived but is used with a much * lower frequency, thereby reducing the chance of getting compromised. With a * RefreshToken one cannot access an API directly, it can only be used to * retrieve a new - short lived - AccessToken. * * Once the RefreshToken is consumed to generate a new AccessToken, the previous * AccessToken will be deleted from the {@link AccessTokenStore}. * */ public interface RefreshToken extends Token { public String getAccessTokenCode(); }