add token.api_id

id key used in rest api
This commit is contained in:
Min RK
2018-04-13 16:08:43 +02:00
parent f7f0b72776
commit 30280cc6a4
2 changed files with 9 additions and 3 deletions

View File

@@ -108,13 +108,11 @@ class APIHandler(BaseHandler):
extra = {
'note': token.note,
}
id = 'a%i' % token.id
elif isinstance(token, orm.OAuthAccessToken):
kind = 'oauth'
extra = {
'oauth_client': token.client.description or token.client.client_id,
}
id = 'o%i' % token.id
else:
raise TypeError(
"token must be an APIToken or OAuthAccessToken, not %s"
@@ -130,7 +128,7 @@ class APIHandler(BaseHandler):
model = {
owner_key: owner,
'id': id,
'id': token.api_id,
'kind': kind,
'created': isoformat(token.created),
'last_activity': isoformat(token.last_activity),

View File

@@ -342,6 +342,10 @@ class APIToken(Hashed, Base):
hashed = Column(Unicode(255), unique=True)
prefix = Column(Unicode(16), index=True)
@property
def api_id(self):
return 'a%i' % self.id
# token metadata for bookkeeping
created = Column(DateTime, default=datetime.utcnow)
last_activity = Column(DateTime)
@@ -431,6 +435,10 @@ class OAuthAccessToken(Hashed, Base):
__tablename__ = 'oauth_access_tokens'
id = Column(Integer, primary_key=True, autoincrement=True)
@property
def api_id(self):
return 'o%i' % self.id
client_id = Column(Unicode(255), ForeignKey('oauth_clients.identifier', ondelete='CASCADE'))
grant_type = Column(Enum(GrantType), nullable=False)
expires_at = Column(Integer)