When building a client with AkeneoPimClientBuilder::buildAuthenticatedByPassword, the returned client has no access nor refresh tokens. Both corresponding getters will simply return null.
For the token to be set, one have to perform at least one API call, so the lower level AuthenticatedHttpClient::sendRequest() method tries to get the access token and authenticate if there is none.
From an integrator POV, this is confusing, as one would expect to get the tokens right away to store them for future usage.
This PR proposes to call the authentication API when building a client with username and password. This way, the returned client already contains an access token and a refresh token.
When building a client with
AkeneoPimClientBuilder::buildAuthenticatedByPassword
, the returned client has no access nor refresh tokens. Both corresponding getters will simply returnnull
. For the token to be set, one have to perform at least one API call, so the lower levelAuthenticatedHttpClient::sendRequest()
method tries to get the access token and authenticate if there is none.From an integrator POV, this is confusing, as one would expect to get the tokens right away to store them for future usage.
This PR proposes to call the authentication API when building a client with username and password. This way, the returned client already contains an access token and a refresh token.