Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

WeFitter profile API

Profiles are containers for wearables data.The profiles can be seen as an extension of users in a different system.Profiles are anonymous objects which can participate in teams and challenges.Keep in mind, listing profiles and creating profiles need an administrative bearer token, all profile specific actionsneed a seperate bearer token that is returned after creating a profile. This bearer token is used in place of theadministrative bearer token. (see profile create action for more information)

WeFitter profile API is one of 9 APIs that WeFitter publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include profile. The published artifact set on APIs.io includes an OpenAPI specification and an API reference.

This API exposes 34 operations across 29 paths, and defines 33 schemas. It is described by OpenAPI 2.0, at version v1.3.

Requests are made against the base URL https://api.wefitter.com/api/v1.3.

34 operations 29 paths 33 schemas 1 DELETE29 GET1 PATCH2 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
v1.3
Base URL
https://api.wefitter.com/api/v1.3
Authentication
basic, API Key, API Key
License
BSD License
Terms of Service
Resource Areas
1

Authentication & Security 3

WeFitter profile API declares 3 security schemes for authenticating requests. It defines a basic scheme (Basic). An API key is passed in the header as Authorization (BearerProfile). An API key is passed in the header as Authorization (BearerAdmin). By default, every request must be authenticated.

  • Basic — Basic Authentication is used to create administrator bearer tokens. Once a bearer token has been made, remove this auth. ('logout' in Swagger')
  • BearerProfile — Bearer authentication for logged-in profiles. When using the GUI, please don't forget to prefix your bearer tokens with the text 'bearer', followed by a space.
  • BearerAdmin — Bearer authentication for administrators. When using the GUI, please don't forget to prefix your bearer tokens with the text 'bearer', followed by a space.

Paths & Operations 34

Across 29 paths, the API surfaces 34 operations — 1 DELETE, 29 GET, 1 PATCH, 2 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

profile 34

Profiles are containers for wearables data. The profiles can be seen as an extension of users in a different system. Profiles are anonymous objects which can participate in teams…

GET
/profile/
List Profiles
profile_list 4 params → 200
POST
/profile/
Create Profile
profile_create 1 param → 201
GET
/profile/{profile_public_id}/activity_file/
profile_activity_file_list 1 param → 200
GET
/profile/{profile_public_id}/activity_file/{activity_id}
profile_activity_file_read 2 params → 200
GET
/profile/{profile_public_id}/activity_segment/
Activity segment
profile_activity_segment_list 5 params → 200
GET
/profile/{profile_public_id}/biometric/
Bio Metric
profile_biometric_list 5 params → 200
GET
/profile/{profile_public_id}/biometric_measurement/
Biometric Measurement
profile_biometric_measurement_list 6 params → 200
GET
/profile/{profile_public_id}/bmi/
BMI
profile_bmi_list 5 params → 200
GET
/profile/{profile_public_id}/daily_detail/
Daily details
profile_daily_detail_list 5 params → 200
GET
/profile/{profile_public_id}/daily_summary/
Daily Summary
profile_daily_summary_list 6 params → 200
GET
/profile/{profile_public_id}/detail_sample/
Detail Sample
profile_detail_sample_list 5 params → 200
GET
/profile/{profile_public_id}/ecg_recordings/
Electrocardiograms
profile_ecg_recordings_list 5 params → 200
GET
/profile/{profile_public_id}/ecg_recordings/data/
Electrocardiogram data
profile_ecg_recordings_data_list 5 params → 200
GET
/profile/{profile_public_id}/ecg_recordings/pdf/
Electrocardiogram PDF
profile_ecg_recordings_pdf_list 3 params → 200
GET
/profile/{profile_public_id}/event/
Event
profile_event_list 5 params → 200
POST
/profile/{profile_public_id}/event/
Create Event
profile_event_create 2 params → 201
GET
/profile/{profile_public_id}/heartrate_sample/
Heart Rate Sample
profile_heartrate_sample_list 6 params → 200
GET
/profile/{profile_public_id}/heartrate_summary/
Heart Rate Summary
profile_heartrate_summary_list 5 params → 200
GET
/profile/{profile_public_id}/height/
Height
profile_height_list 5 params → 200
GET
/profile/{profile_public_id}/sleep_detail/
Sleep detail
profile_sleep_detail_list 5 params → 200
GET
/profile/{profile_public_id}/sleep_sample/
Sleep Sample
profile_sleep_sample_list 5 params → 200
GET
/profile/{profile_public_id}/sleep_summary/
Sleep Summary
profile_sleep_summary_list 6 params → 200
GET
/profile/{profile_public_id}/stress_samples/
Stress Sample
profile_stress_samples_list 5 params → 200
GET
/profile/{profile_public_id}/stress_summary/
Stress Summary
profile_stress_summary_list 5 params → 200
GET
/profile/{profile_public_id}/track_sample/
Track Sample
profile_track_sample_list 5 params → 200
GET
/profile/{profile_public_id}/weight/
Weight
profile_weight_list 5 params → 200
GET
/profile/{profile_public_id}/workout/
Workout
profile_workout_list 7 params → 200
GET
/profile/{public_id}/
Get Profile
profile_read 1 param → 200
PUT
/profile/{public_id}/
Update profile
profile_update 2 params → 200
PATCH
/profile/{public_id}/
Partial Update
profile_partial_update 2 params → 200
DELETE
/profile/{public_id}/
Delete Profile
profile_delete 1 param → 204
GET
/profile/{public_id}/challenge/
Challenge
profile_challenge 4 params → 200
GET
/profile/{public_id}/challenges/
This docstring is used by Django Rest Framework
profile_challenges 1 param → 200
GET
/profile/{public_id}/connections/
Connections
profile_connections 3 params → 200

Schemas 33

The contract defines 33 schemas that model the data the API accepts and returns. The most detailed are ProfileChallengeList (25 properties), ProfileDetail (22 properties), Activity (13 properties), Workout (13 properties). Each schema is shown below with its type and property counts.

Event
object
3 properties
HeartRateSummary
object
8 properties 2 required
Weight
object
4 properties 2 required
ECGRecordings
object
5 properties 2 required
BiometricMeasurement
object
8 properties 3 required
StressSample
object
3 properties 3 required
DailyDetail
object
6 properties 2 required
ECGRecording
object
6 properties 2 required
ProfileCreated
object
12 properties 1 required
Height
object
4 properties 2 required
StressSummary
object
11 properties 3 required
EnrollmentInformation
object
5 properties
DailySummary
object
10 properties 2 required
BioMetric
object
6 properties 2 required
Activity
object
13 properties 3 required
BMI
object
4 properties 2 required
Sample
object
1 property
SleepDetailMinimal
object
3 properties 2 required
SleepSample
object
7 properties 3 required
SleepSummary
object
12 properties 2 required
StressSummaryLinked
object
8 properties 1 required
ProfileAppConnectionList
object
7 properties
DetailSample
object
8 properties 2 required
ProfileDetail
object
22 properties
Workout
object
13 properties 3 required
TeamProfile
object
Team of which this profile is a member of
4 properties 1 required
TrackSample
object
7 properties 2 required
ProfileList
object
7 properties
SleepDetail
object
5 properties 3 required
HeartRateSummaryLinked
object
4 properties
HeartRateSample
object
7 properties 2 required
ChallengeActivityType
object
1 property 1 required
ProfileChallengeList
object
25 properties 7 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

wefitter-profile-api-openapi.yml Raw ↑

Other APIs WeFitter publishes across the network.

WeFitter app API
WeFitter challenge API
WeFitter connection API
WeFitter insights API
WeFitter loyalty API
WeFitter notification API
WeFitter team API
WeFitter token API