OAuth2 features

When is an "OAuth2" project appropriate?

"OAuth2 authorization" may be appropriate if...

  • You're running an accounts-based website or phone app.
  • You have a pre-existing project.
  • You're technically inclined.


Here's a summary of main features:

  • Works immediately.
    You can immediately use all these features, but your project is limited to a maximum of 20 users. You'll need to apply for project approval to remove this cap. Once approved, Open Humans will invite members to join your project.

  • Access to private data.
    Select which data sources you want to request access to. If a member authorizes sharing with your project, you'll immediately have access to any of their data from those sources via our API.

    If you wish to only access public data for a member, you should instead request username access (see below).

  • Username information is optional.
    Each member's data comes via a random project-specific member ID. You will not receive username access unless you request it.

    Not receiving username access can improve security and facilitate IRB review – if data is anonymous, the review might be expedited.

    On the other hand, if you only want to work with public data, you can request username access (and no data sources). You'll be able to retrieve the member's public data using the Public Data API.

  • Send messages to project members.
    You can request authorization to send messages to your project members. This messaging does not reveal their email or username to you.

    Messages can target specific project member IDs and can contain the project member ID within the message. That means you can use embed the ID in a custom URL for a survey, to collect additiional information from a member.

  • Consent occurs on your app or website.
    We expect you to handle consent or terms for your users, before sending them to Open Humans for project authorization.

  • Upload data to member accounts.
    Projects can be data sources: you can upload data for a member to their account. This data will be private, accessible only by your project and the member. The member can download the data and manage its sharing within Open Humans.

  • Use existing Python packages to interface with Open Humans
    If you are using Python for your programming we have you covered: You can use either our reusable application for the Django web framework to interact with Open Humans or use our API library, which conveniently wraps all of our API methods for you.