Python wrapper for US Dept. of Labor API
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 3 commits ahead, 6 commits behind mattdeboard:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


DOL Python Wrapper for SummerJobs+ data access


check, need to undo hardcoded query in SummerJobsConnection


Python wrapper for the US Dept. of Labor's developer API.


Usage is straightforward.

import python_usdol

conn = python_usdol.Connection(token='mytoken', secret='mysharedsecret')

data = conn.fetch_data('FAQ', 'Topic')

Where 'FAQ' and 'Topic' are the names of the targeted dataset and table within the dataset, respectively. For a full list of datasets and tables, please consult the Dept. of Labor's developer website, linked above.

In the above example, data will be a list of Datum instances. Each Datum instance provides access to all of the data from the dictionary object it represents, as well as some metadata about itself, using attribute syntax.

e.g. from the example: data[0].TopicID == 1, data[0].TopicValue == u'Wages & Work Hours'

Some datasets have "multipart" names, e.g. the Consumer Expenditure Survey Dataset. In this case, since the base url is, vice e.g. .../V1/FORMS, for the first argument to fetch data, you would pass the "multipart" Agency name:

data = conn.fetch_data('Statistics/ConsumerExpenditure', '<desired table name>')


Python-USDOL has support for all the request methods outlined in the DOL's API Access Guide:







Using the filter method goes thusly:

data = conn.fetch_data("FAQ", "Topic", filter_="TopicID eq 5")

Since filter is a keyword in Python, Python-USDOL uses filter_ in its place.


Please help make this API better for everyone by reporting bugs, forking and submitting patches.