Skip to content
Pass parameters to Jupyter notebooks via URL arguments
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Send parameters/arguments to notebooks via URL query string parameters.


If you want to prepopulate parameters like foo=bar and baz=1 in a notebook, you can simply encode them in the URL:


In the notebook, just include the following:

import ipyparams

The values are now accessible in the ipyparams.params dictionary.

ipyparams.params['foo']  # returns "bar"
ipyparams.params['baz']  # returns "1"

Duplicate parameters

URL query strings can contain multiple parameters with the same name, such as https://your.jupyter.server/awsome_notebook.ipynb?foo=bar&foo=baz. The ipyparams.params dictionary only contains the last value for each name, but you can still access all the "raw" parameters using ipyparams.raw_params dictionary.

import ipyparams
ipyparams.params['foo']      # returns 'baz'
ipyparams.raw_params['foo']  # returns ['bar', 'baz']

Missing parameters

If you try to access a parameter that does not exist, you will simply get None back.

import ipyparams
ipyparams.params['unicorn']      # returns None
ipyparams.raw_params['unicorn']  # returns None

Get the notebook name

import ipyparams
ipyparams.notebook_name  # returns 'awesome_notebook.ipynb'

Get the full, raw URL of the notebook

import ipyparams
# returns https://your.jupyter.server/awsome_notebook.ipynb?foo=bar&baz=1
You can’t perform that action at this time.