Skip to content

Clinics API (1.0)

Web service that stores information about clinics, clinicians and their patients

Download OpenAPI description
Languages
Servers
Mock server

https://tidepool.redocly.app/_mock/reference/clinic.v1/

integration

https://external.integration.tidepool.org/

production

https://api.tidepool.org/

dev1

https://dev1.dev.tidepool.org/

qa1

https://qa1.development.tidepool.org/

qa2

https://qa2.development.tidepool.org/

Clinics

Manage clinics, clinians and patients.

Operations

Confirmations

Manage confirmations for account creation, sharing invites, etc.

Operations

Request

Send an invite to clinician's email address to join a clinic.

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
Bodyapplication/json
emailstring(email)(Email Address)>= 6 charactersrequired

An email address, as specified by RFC 5322.

Example: "example@tidepool.org"
rolesArray of strings(Clinician Permissions)non-emptyuniquerequired
Items Enum"CLINIC_ADMIN""CLINIC_MEMBER""PRESCRIBER"
curl -i -X POST \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/clinicians' \
  -H 'Content-Type: application/json' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE' \
  -d '{
    "email": "example@tidepool.org",
    "roles": [
      "CLINIC_ADMIN"
    ]
  }'

Responses

OK

Bodyapplication/json
idstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

inviteIdstring

The id of the invite if it hasn't been accepted

emailstring(email)required
namestringnon-empty

The name of the clinician

rolesArray of strings(Clinician Permissions)non-emptyuniquerequired
Items Enum"CLINIC_ADMIN""CLINIC_MEMBER""PRESCRIBER"
createdTimestring(date-time)read-onlyrequired
updatedTimestring(date-time)read-onlyrequired
Response
application/json
{ "id": "string", "inviteId": "string", "email": "user@example.com", "name": "string", "roles": [ "CLINIC_ADMIN" ], "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z" }

Request

Resend invite to the email address of the clinician.

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
inviteIdstringnon-emptyrequired
curl -i -X PATCH \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/clinicians/{inviteId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
keystring(Confirmation key that uniquely identifies each confirmation)= 32 charactersrequired
Example: "Sds2PHMALZrmt++JyD5mIjLkZruJldiM"
typestring(Confirmation Type)required
Enum"password_reset""careteam_invitation""clinician_invitation""signup_confirmation""no_account"
statusstring(Confirmation Status)required
Enum"pending""completed""canceled""declined"
emailstring(email)(Email Address)>= 6 charactersrequired

An email address, as specified by RFC 5322.

Example: "example@tidepool.org"
creatorIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-onlyrequired

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

createdstring(date-time)(Date/Time)required

RFC 3339 / ISO 8601 timestamp with timezone information

Example: "2017-02-06T02:37:46Z"
modifiedstring(date-time)(Date/Time)

RFC 3339 / ISO 8601 timestamp with timezone information

Example: "2017-02-06T02:37:46Z"
creatorobject(Creator)
contextstring
restrictionsobject(Acceptance restrictions)
expiresAtstring(date-time)(Expiration Time)

If specified, the invitation will expire at the given date and time.

Example: "2024-01-30T08:11:00Z"
Response
application/json
{ "key": "Sds2PHMALZrmt++JyD5mIjLkZruJldiM", "type": "password_reset", "status": "pending", "email": "example@tidepool.org", "creatorId": "string", "created": "2017-02-06T02:37:46Z", "modified": "2017-02-06T02:37:46Z", "creator": { "userid": "string", "profile": { … } }, "context": "string", "restrictions": { "canAccept": true, "requiredIdp": "string" }, "expiresAt": "2024-01-30T08:11:00Z" }

Request

Deletes unaccepted invite

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
inviteIdstringnon-emptyrequired
curl -i -X DELETE \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/clinicians/{inviteId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Request

Retrieve an invitation sent to clinician to join the clinic

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
inviteIdstringnon-emptyrequired
curl -i -X GET \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/clinicians/{inviteId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
keystring(Confirmation key that uniquely identifies each confirmation)= 32 charactersrequired
Example: "Sds2PHMALZrmt++JyD5mIjLkZruJldiM"
typestring(Confirmation Type)required
Enum"password_reset""careteam_invitation""clinician_invitation""signup_confirmation""no_account"
statusstring(Confirmation Status)required
Enum"pending""completed""canceled""declined"
emailstring(email)(Email Address)>= 6 charactersrequired

An email address, as specified by RFC 5322.

Example: "example@tidepool.org"
creatorIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-onlyrequired

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

createdstring(date-time)(Date/Time)required

RFC 3339 / ISO 8601 timestamp with timezone information

Example: "2017-02-06T02:37:46Z"
modifiedstring(date-time)(Date/Time)

RFC 3339 / ISO 8601 timestamp with timezone information

Example: "2017-02-06T02:37:46Z"
creatorobject(Creator)
contextstring
restrictionsobject(Acceptance restrictions)
expiresAtstring(date-time)(Expiration Time)

If specified, the invitation will expire at the given date and time.

Example: "2024-01-30T08:11:00Z"
Response
application/json
{ "key": "Sds2PHMALZrmt++JyD5mIjLkZruJldiM", "type": "password_reset", "status": "pending", "email": "example@tidepool.org", "creatorId": "string", "created": "2017-02-06T02:37:46Z", "modified": "2017-02-06T02:37:46Z", "creator": { "userid": "string", "profile": { … } }, "context": "string", "restrictions": { "canAccept": true, "requiredIdp": "string" }, "expiresAt": "2024-01-30T08:11:00Z" }

Request

Retrieve the list of all pending invites from users who would like to share their accounts with the clinic and become patients.

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
curl -i -X GET \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/patients' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Request

Accept a pending invite from a user who would like to share their account with the clinic and become a patient.

Security
sessionToken
Path
clinicIdstring^[a-f0-9]{24}$required
inviteIdstringnon-emptyrequired
Bodyapplication/json
fullNamestringnon-empty

The full name of the patient

birthDatestring(date)
Example: "2012-08-30"
mrnstringnon-empty

The medical record number of the patient

tagsArray of strings or null(Patient Tag ID List)unique
sitesArray of objects(Site)
curl -i -X PUT \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/invites/patients/{inviteId}' \
  -H 'Content-Type: application/json' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE' \
  -d '{
    "fullName": "string",
    "birthDate": "2012-08-30",
    "mrn": "string",
    "tags": [
      "stringstringstringstring"
    ],
    "sites": [
      {
        "name": "string"
      }
    ]
  }'

Responses

OK

Request

Retrieve a list of the outstanding invites to join a clinic

Security
sessionToken
Path
userIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-onlyrequired

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

curl -i -X GET \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinicians/{userId}/invites' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Request

Dismisses an invite sent from a clinic to clinician

Security
sessionToken
Path
userIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-onlyrequired

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

inviteIdstringnon-emptyrequired
curl -i -X DELETE \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinicians/{userId}/invites/{inviteId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Request

Accept an invite to join a clinic as clinician. The clinician will be associated to the currently authenticated user if the email in their profile matches the email of the invite.

Security
sessionToken
Path
userIdstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-onlyrequired

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

inviteIdstringnon-emptyrequired
curl -i -X PUT \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinicians/{userId}/invites/{inviteId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idstring(Tidepool User ID)^([0-9a-f]{10}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-...read-only

String representation of a Tidepool User ID. Old style IDs are 10-digit strings consisting of only hexadeximcal digits. New style IDs are 36-digit UUID v4

inviteIdstring

The id of the invite if it hasn't been accepted

emailstring(email)required
namestringnon-empty

The name of the clinician

rolesArray of strings(Clinician Permissions)non-emptyuniquerequired
Items Enum"CLINIC_ADMIN""CLINIC_MEMBER""PRESCRIBER"
createdTimestring(date-time)read-onlyrequired
updatedTimestring(date-time)read-onlyrequired
Response
application/json
{ "id": "string", "inviteId": "string", "email": "user@example.com", "name": "string", "roles": [ "CLINIC_ADMIN" ], "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z" }

Internal

APIs intended for internal use by Tidepool.

Operations

Redox

Public endpoints invoked by Redox.

Operations