JupyterHub Servers API

Single-user server lifecycle.

OpenAPI Specification

jupyterhub-servers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: JupyterHub REST Activity Servers API
  description: REST API for JupyterHub, the multi-user server for Jupyter notebooks. Provides endpoints for managing users, groups, services, shared servers, OAuth2 authorization, the proxy, and the hub itself. JupyterHub spawns, manages, and proxies multiple instances of the single-user Jupyter notebook server.
  version: 5.2.0
  license:
    name: BSD-3-Clause
    url: https://opensource.org/licenses/BSD-3-Clause
  contact:
    name: Jupyter Project
    url: https://jupyterhub.readthedocs.io
    email: jupyter@googlegroups.com
servers:
- url: http://localhost:8000/hub/api
  description: Local JupyterHub server
security:
- token: []
tags:
- name: Servers
  description: Single-user server lifecycle.
paths:
  /users/{name}/server:
    post:
      operationId: startUserServer
      summary: JupyterHub Start user server
      description: Starts the default single-user server for the named user.
      tags:
      - Servers
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Server starting (synchronous).
        '202':
          description: Server starting (asynchronous).
    delete:
      operationId: stopUserServer
      summary: JupyterHub Stop user server
      description: Stops the default single-user server for the named user.
      tags:
      - Servers
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Server stopped.
        '202':
          description: Server stopping (asynchronous).
  /users/{name}/servers/{server_name}:
    post:
      operationId: startNamedServer
      summary: JupyterHub Start named server
      description: Starts a named single-user server for the named user.
      tags:
      - Servers
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      - name: server_name
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Named server starting.
        '202':
          description: Named server starting (asynchronous).
    delete:
      operationId: stopNamedServer
      summary: JupyterHub Stop named server
      description: Stops the named single-user server for the named user.
      tags:
      - Servers
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
      - name: server_name
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Named server stopped.
        '202':
          description: Named server stopping (asynchronous).
components:
  securitySchemes:
    token:
      type: apiKey
      in: header
      name: Authorization
      description: 'Token-based authentication. Use the form: Authorization: token <token>'
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: /hub/api/oauth2/authorize
          tokenUrl: /hub/api/oauth2/token
          scopes:
            self: Access to the current user.
            admin:users: Administer users.
            admin:servers: Administer single-user servers.
            read:users: Read user information.
            list:users: List users.
            read:groups: Read group information.
            admin:groups: Administer groups.
            read:services: Read service information.
            proxy: Manage the proxy.
externalDocs:
  description: JupyterHub REST API documentation
  url: https://jupyterhub.readthedocs.io/en/stable/reference/rest-api.html