{{ 'XP.PersonalApiKeys.Title' | translate }}

{{ 'XP.PersonalApiKeys.AccessHint' | translate }}

@if (created(); as result) {

{{ 'XP.PersonalApiKeys.SaveTitle' | translate }}

{{ 'XP.PersonalApiKeys.SaveHint' | translate }}

{{ result.token }}
}
@if (loading()) {

{{ 'XP.PersonalApiKeys.Loading' | translate }}

} @else if (failed()) { } @else if (!filteredKeys().length) {

{{ (keys().length ? 'XP.PersonalApiKeys.NoMatches' : 'XP.PersonalApiKeys.Empty') | translate }}

} @else {
@for (key of filteredKeys(); track key.id) { }
{{ 'XP.PersonalApiKeys.Name' | translate }} {{ 'XP.PersonalApiKeys.Status' | translate }} {{ 'XP.PersonalApiKeys.CreatedAt' | translate }} {{ 'XP.PersonalApiKeys.ExpiresAt' | translate }} {{ 'XP.PersonalApiKeys.LastUsedAt' | translate }} {{ 'XP.PersonalApiKeys.Revoke' | translate }}
{{ key.name }}{{ key.prefix }}… {{ 'XP.PersonalApiKeys.' + status(key) | translate }} {{ key.createdAt | date: 'mediumDate' }} {{ key.expiresAt ? (key.expiresAt | date: 'medium') : ('XP.PersonalApiKeys.Never' | translate) }} {{ key.lastUsedAt ? (key.lastUsedAt | date: 'medium') : ('XP.PersonalApiKeys.NotUsed' | translate) }} @if (!key.revokedAt) { }
}
{{ 'XP.PersonalApiKeys.Usage' | translate }}

{{ 'XP.PersonalApiKeys.UsageHint' | translate }}

{{ example }}

{{ 'XP.PersonalApiKeys.OrganizationHint' | translate }}