Open
Description
For example the response for retrieveRefreshTokenById
and retrieveRefreshTokens
both return the RefreshTokenResponse
.
Currently the RefreshTokenResponse
is defined as:
RefreshTokenResponse:
description: API response for retrieving Refresh Tokens
type: object
properties:
refreshToken:
"$ref": "#/components/schemas/RefreshToken"
refreshTokens:
type: array
items:
"$ref": "#/components/schemas/RefreshToken"
This makes it harder to use the API clients. F.e. when using the typescript client:
const response = await this._fusionClient.retrieveRefreshTokens(userId);
typeof response.response.refreshTokens; // RefreshToken[] | undefined
typeof response.response.refreshToken; // RefreshToken | undefined
const refreshToken = await this._fusionClient.retrieveRefreshTokenById(ctx.params.id);
typeof refreshToken.response.refreshTokens; // RefreshToken[] | undefined
typeof refreshToken.response.refreshToken; // RefreshToken | undefined
It would be better if the OpenAPI specifies which property is included:
const response = await this._fusionClient.retrieveRefreshTokens(userId);
typeof response.response.refreshTokens; // RefreshToken[]
typeof response.response.refreshToken; // Property refreshToken does not exist on type RefreshTokenResponse.
const refreshToken = await this._fusionClient.retrieveRefreshTokenById(ctx.params.id);
typeof refreshToken.response.refreshTokens; // Property refreshTokens does not exist on type RefreshTokenResponse.
typeof refreshToken.response.refreshToken; // RefreshToken
This applies to other API calls like:
ApplicationResponse
ConnectorResponse
ConsentResponse
EmailTemplateResponse
EntityGrantResponse
FamilyResponse
FormResponse
FormFieldResponse
GroupResponse
IdentityProviderLinkResponse
IdentityProviderResponse
KeyResponse
LambdaResponse
MessengerResponse
TenantResponse
ThemeResponse
UserActionReasonResponse
UserActionResponse
UserConsentResponse
UserCommentResponse
WebAuthnCredentialResponse
WebhookResponse
The list is probably not complete.