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

Internal

APIs intended for internal use by Tidepool.

Operations

Request

Internal only endpoint to enable new clinic experience for a legacy clinician account. Patients won't be migrated until the clinic details are populated and migration is explicitly kicked-off by blip.

Security
sessionToken
Path
userIdstringrequired
curl -i -X POST \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinicians/{userId}/migrate' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idstring(Clinic ID)= 24 characters^[a-f0-9]{24}$read-onlyrequired

Clinic identifier.

Example: "2fe2488217ee43e1b2e83c2f"
addressstring(Street Address)non-empty

Street address.

citystring(City)non-empty

City name.

Example: "Palo Alto"
postalCodestring(Postal Code)non-empty

Postal code. In the U.S., typically the zip code such as 94301 or 94301-1704.

Example: "94301"
statestring(State)non-empty

State or province. In the U.S., typically something like CA or California.

Example: "CA"
countrystring(Country)non-empty

Country name.

Example: "USA"
patientTagsArray of objects(Patient Tag)
sitesArray of objects(Site)
lastDeletedPatientTagobject(Patient Tag)
phoneNumbersArray of objects(Phone phoneNumbers)non-emptyunique

An array of phone numbers.

Example: [{"type":"main","number":"+1 (555) 555-1212"}]
clinicTypestringnon-empty
Enum"provider_practice""healthcare_system""veterinary_clinic""other""researcher"
clinicSizestring
Enum"0-249""250-499""500-999""1000+"
namestring(Clinic Name)non-emptyrequired

Name of the clinic.

shareCodestring(Clinic Share Code)^[ABCDEFGHJKLMNPQRSTUVWXYZ23456789]{4}-[ABCDE...read-onlyrequired

Globally unique share code for a clinic. The share code is 3 groups of 4 uppercase alphanumeric characters in each group. Ambiguous characters such as I and 1, or O and 0 are excluded.

canMigratebooleanread-onlyrequired
websitestring(uri)
createdTimestring(date-time)read-onlyrequired
updatedTimestring(date-time)read-onlyrequired
tierDescriptionstringnon-emptyread-onlyrequired
Example: "Free"
tierstringnon-emptyread-onlyrequired
Example: "tier0100"
preferredBgUnitsstringrequired
Enum"mg/dL""mmol/L"
suppressedNotificationsobject(Suppressed Notifications)
timezonestring(Clinic Timezone)
Enum"Africa/Abidjan""Africa/Accra""Africa/Addis_Ababa""Africa/Algiers""Africa/Asmara""Africa/Asmera""Africa/Bamako""Africa/Bangui""Africa/Banjul""Africa/Bissau"
Response
application/json
{ "id": "2fe2488217ee43e1b2e83c2f", "address": "string", "city": "Palo Alto", "postalCode": "94301", "state": "CA", "country": "USA", "patientTags": [ { … } ], "sites": [ { … } ], "lastDeletedPatientTag": { "id": "stringstringstringstring", "name": "string" }, "phoneNumbers": [ { … } ], "clinicType": "provider_practice", "clinicSize": "0-249", "name": "string", "shareCode": "string", "canMigrate": true, "website": "http://example.com", "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z", "tierDescription": "Free", "tier": "tier0100", "preferredBgUnits": "mg/dL", "suppressedNotifications": { "patientClinicInvitation": true }, "timezone": "Africa/Abidjan" }

Request

Trigger the initial migration

Security
sessionToken
Path
clinicIdstringrequired
Bodyapplication/json
attestationSubmittedboolean
curl -i -X POST \
  'https://tidepool.redocly.app/_mock/reference/clinic.v1/v1/clinics/{clinicId}/migrate' \
  -H 'Content-Type: application/json' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE' \
  -d '{
    "attestationSubmitted": true
  }'

Responses

OK

Bodyapplication/json
userIdstringnon-emptyrequired

The user id of the legacy clinician account that needs to be migrated.

statusstring(Migration Status)

The current status of the migration

Enum"PENDING""RUNNING""COMPLETED"
createdTimestring(date-time)read-onlyrequired
updatedTimestring(date-time)read-onlyrequired
attestationTimestring(date-time)read-only
Response
application/json
{ "userId": "string", "status": "PENDING", "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z", "attestationTime": "2019-08-24T14:15:22Z" }

Request

Get a migration by user id

Security
sessionToken
Path
clinicIdstring(Clinic ID)= 24 characters^[a-f0-9]{24}$read-onlyrequired

Clinic ID

Example: 2fe2488217ee43e1b2e83c2f
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/clinics/2fe2488217ee43e1b2e83c2f/migrations/{userId}' \
  -H 'x-tidepool-session-token: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
userIdstringnon-emptyrequired

The user id of the legacy clinician account that needs to be migrated.

statusstring(Migration Status)

The current status of the migration

Enum"PENDING""RUNNING""COMPLETED"
createdTimestring(date-time)read-onlyrequired
updatedTimestring(date-time)read-onlyrequired
attestationTimestring(date-time)read-only
Response
application/json
{ "userId": "string", "status": "PENDING", "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z", "attestationTime": "2019-08-24T14:15:22Z" }

Redox

Public endpoints invoked by Redox.

Operations