from flask_restful import fields from libs.helper import TimestampField class HiddenAPIKey(fields.Raw): def output(self, key, obj): api_key = obj.api_key # If the length of the api_key is less than 8 characters, show the first and last characters if len(api_key) <= 8: return api_key[0] + '******' + api_key[-1] # If the api_key is greater than 8 characters, show the first three and the last three characters else: return api_key[:3] + '******' + api_key[-3:] api_based_extension_fields = { 'id': fields.String, 'name': fields.String, 'api_endpoint': fields.String, 'api_key': HiddenAPIKey, 'created_at': TimestampField }