neurotap API (v1)

Download OpenAPI specification:

Health

Rails health check

Responses

Application health check

Responses

[USERS] Consents

Accept Medicare program participation consent

Authorizations:
Bearer Token

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "birthdate": "2019-08-24",
  • "activated_at": "2019-08-24T14:15:22Z",
  • "registration_checkpoint": "phone_pending"
}

Submit care team updates consent

Authorizations:
Bearer Token
Request Body schema: application/json
accepted
required
boolean

Whether the user agrees to share data with their care team

Responses

Request samples

Content type
application/json
Example
{
  • "accepted": true
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "birthdate": "2019-08-24",
  • "activated_at": "2019-08-24T14:15:22Z",
  • "registration_checkpoint": "phone_pending"
}

[USERS] Referrals

Submit referral information

Authorizations:
Bearer Token
Request Body schema: application/json
referral_type
required
string
Enum: "primary_care_provider" "referred_by_clinician" "no_referral"

Type of referral. One record per type per user (upsert).

care_provider_name
required
string

Name of the care provider.

clinic_name
required
string

Name of the clinic.

phone_or_fax
required
string

Phone number or fax.

Responses

Request samples

Content type
application/json
Example
{
  • "referral_type": "primary_care_provider",
  • "care_provider_name": "Dr. John Smith",
  • "clinic_name": "Primary Clinic",
  • "phone_or_fax": "+12025551234"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "birthdate": "2019-08-24",
  • "activated_at": "2019-08-24T14:15:22Z",
  • "registration_checkpoint": "phone_pending"
}

[USERS] Profiles

Change password

Authorizations:
Bearer Token
Request Body schema: application/json
current_password
required
string
password
required
string

min. 8 characters, must contain uppercase letter, lowercase letter, digit and special character, no spaces allowed

password_confirmation
required
string

Responses

Request samples

Content type
application/json
{
  • "current_password": "OldPassword1!",
  • "password": "NewPassword1!",
  • "password_confirmation": "NewPassword1!"
}

Get current user profile

Authorizations:
Bearer Token

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "birthdate": "2019-08-24",
  • "activated_at": "2019-08-24T14:15:22Z",
  • "registration_checkpoint": "phone_pending"
}

[USERS] Registration

Sign Up

Request Body schema: application/json
email
required
string
password
required
string

min. 8 characters, must contain uppercase letter, lowercase letter, digit and special character

first_name
required
string
last_name
required
string
birthdate
required
string <date>
terms_accepted
required
boolean

Must be true to complete registration

Responses

Request samples

Content type
application/json
{
  • "email": "john.doe@example.com",
  • "password": "Password100!",
  • "first_name": "John",
  • "last_name": "Doe",
  • "birthdate": "1950-01-01",
  • "terms_accepted": true
}

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "token_type": "string",
  • "expires_in": 0,
  • "created_at": 0,
  • "refresh_token": "string",
  • "user": {
    }
}

Submit phone number

Authorizations:
Bearer Token
Request Body schema: application/json
phone_number
required
string

Phone number in E.164 format (e.g. +12025551234)

Responses

Request samples

Content type
application/json
{
  • "phone_number": "+12025551234"
}

Response samples

Content type
application/json
{ }

Verify phone with code

Authorizations:
Bearer Token
Request Body schema: application/json
code
required
string

6-digit verification code (use 000000 in non-production)

Responses

Request samples

Content type
application/json
{
  • "code": "000000"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "email": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "birthdate": "2019-08-24",
  • "activated_at": "2019-08-24T14:15:22Z",
  • "registration_checkpoint": "phone_pending"
}

[USERS] Sessions

Sign in / Refresh token

Request Body schema: application/json
email
string

only for grant_type=password

password
string

only for grant_type=password

refresh_token
string

only for grant_type=refresh_token

grant_type
required
string
Enum: "password" "refresh_token"
scope
required
string
Value: "mobile"

Responses

Request samples

Content type
application/json
Example
{
  • "email": "john.doe@example.com",
  • "password": "Password100!",
  • "grant_type": "password",
  • "scope": "mobile"
}

Response samples

Content type
application/json
{
  • "user_id": 0,
  • "access_token": "string",
  • "refresh_token": "string",
  • "scope": "string",
  • "created_at": 0,
  • "expires_in": 0,
  • "token_type": "string"
}

Logout

Request Body schema: application/json
token
required
string

Responses

Request samples

Content type
application/json
{
  • "token": "access_token_value"
}

Response samples

Content type
application/json
{ }