Revoke an API key.
(self, key_id: str)
| 893 | ) |
| 894 | |
| 895 | async def revoke_api_key(self, key_id: str) -> bool: |
| 896 | """Revoke an API key.""" |
| 897 | async with self.get_db() as session: |
| 898 | session: AsyncSession |
| 899 | async with session.begin(): |
| 900 | query = ( |
| 901 | update(ApiKey) |
| 902 | .where(col(ApiKey.key_id) == key_id) |
| 903 | .values(revoked_at=datetime.now(timezone.utc)) |
| 904 | ) |
| 905 | result = T.cast(CursorResult, await session.execute(query)) |
| 906 | return result.rowcount > 0 |
| 907 | |
| 908 | async def delete_api_key(self, key_id: str) -> bool: |
| 909 | """Delete an API key.""" |