{% extends "page.html" %} {% block main %}
These are tokens with access to the JupyterHub API. Permissions for each token may be viewed via the JupyterHub tokens API. Revoking the API token for a running server will require restarting that server.
Note | Permissions | Last used | Created | Expires | |
---|---|---|---|---|---|
{{ token.note }} |
scopes{% for scope in token.scopes %}{{ scope }}{% endfor %} |
{%- if token.last_activity -%} {{ token.last_activity.isoformat() + 'Z' }} {%- else -%} Never {%- endif -%} | {%- if token.created -%} {{ token.created.isoformat() + 'Z' }} {%- else -%} N/A {%- endif -%} | {%- if token.expires_at -%} {{ token.expires_at.isoformat() + 'Z' }} {%- else -%} Never {%- endif -%} | {% endblock token_row %} |
These are applications that use OAuth with JupyterHub to identify users (mostly notebook servers). OAuth tokens can generally only be used to identify you, not take actions on your behalf.
Application | Permissions | Last used | First authorized | |
---|---|---|---|---|
{{ client['description'] }} |
scopes{# create set of scopes on all tokens -#} {# sum concatenates all token.scopes into a single list -#} {# then filter to unique set and sort -#} {% for scope in client.tokens | sum(attribute="scopes", start=[]) | unique | sort %}{{ scope }}{% endfor %} |
{%- if client['last_activity'] -%} {{ client['last_activity'].isoformat() + 'Z' }} {%- else -%} Never {%- endif -%} | {%- if client['created'] -%} {{ client['created'].isoformat() + 'Z' }} {%- else -%} N/A {%- endif -%} | {% endblock client_row %} |