Get Profile
Retrieves the user's profile data.
Scope: profile
Request
GET | /1/user/[user-id]/profile.json |
URI Arguments
user-id | required | The encoded ID of the user. Use "-" (dash) for current logged-in user. |
Request Headers
authorization | required | Specify the token type and Fitbit user’s access token. Token type: Bearer |
accept | optional | Defines the media type of the response content the client is
expecting. Supported: application/json |
accept-language | optional | The measurement unit system to use for response values. See Localization. |
accept-locale | optional | The locale to use for response values. See Localization. |
Examples
GET https://api.fitbit.com/1/user/-/profile.json
GET https://api.fitbit.com/1/user/GGNJL9/profile.json
GET https
curl -X GET "https://api.fitbit.com/1/user/-/profile.json" \
-H "accept: application/json" \
-H "authorization: Bearer <access_token>"
-H "accept: application/json" \
-H "authorization: Bearer <access_token>"
Response
Element Name | Description |
user : aboutMe | The "About Me" information specified in the user's account settings. |
user : age | The age based on their specified birthday in the user's account settings. |
user : ambassador | Supported: true | false |
user : autoStrideEnabled | Supported: true | false |
user : avatar | The user's avatar picture displayed as 100 pixels square. |
user : avatar150 | The user's avatar picture displayed as 150 pixels square. |
user : avatar640 | The user's avatar picture displayed as 640 pixels square. |
user : averageDailySteps | Average daily steps calculated for the user. |
user : challengesBeta | Supported: true | false |
user : city | The city specified in the user's account settings. Location scope is required to see this value. |
user : clockTimeDisplayFormat | Supported: 12hour | 24hour |
user : country | The country specified in the user's account settings. Location scope is required to see this value. |
user : corporate | Supported: true | false |
user : corporateAdmin | Supported: true | false |
user : dateOfBirth | The birthday date specified in the user's account settings. |
user : displayName | The name shown when the user's friends look at their Fitbit profile, send a message, or other interactions within the Friends section of the Fitbit app or fitbit.com dashboard, such as challenges. |
user : displayNameSetting | Returns the displayName's attribute. Supported: name | username |
user : distanceUnit | The unit system defined in the user's account settings. See Localization. |
user : encodedId | The ID representing the Fitbit user. |
user : features : exerciseGoal | Supported: true | false |
user : firstName | The first name value specified in the user's account settings. |
user : foodsLocale | The locale defined in the user's account settings. See Localization. Nutrition scope is required to see this value. |
user : fullName | The full name value specified in the user's account settings. |
user : gender | The user's specified gender. Supported: MALE | FEMALE |
NA |
user : glucloseUnit | The unit system defined in the user's account settings. See Localization. |
user : height | The height value specified in the user's account settings. |
user : heightUnit | The unit system defined in the user's account settings. See Localization. |
user : isBugReportEnabled | Supported: true | false |
user : isChild | Supported: true | false |
user : isCoach | Supported: true | false |
user : languageLocale | The language locale defined in the user's account settings. See Localization. |
user : lastName | The last name value specified in the user's account settings. |
user : legalTermsAcceptRequired | Supported: true | false |
user : locale | The locale defined in the user's account settings. See Localization. |
user : memberSince | The date the user created their Fitbit account. |
user : mfaEnabled | Supported: true | false |
user : offsetFromUTCMillis | The timezone offset in milliseconds from UTC. |
user : phoneNumber | Multi-factor Authentication is required to see this value. |
user : sdkDeveloper | Supported: true | false |
user : sleepTracking | The sleep sensitivity defined in the user's account
settings. Supported: Normal | Sensitive |
user : startDayOfWeek | The day the week begins as defined in the user's account
settings. Supported: SUNDAY | MONDAY |
user : state | Location scope is required to see this value. |
user : strideLengthRunning | The stride length value specified in the unit system defined in the user's account settings. See Localization. |
user : strideLengthRunningType | Specifies if the user's stride length is determined
automatically (default) or manually as defined in the
user's account settings. Supported: default | manual |
user : strideLengthWalking | The stride length value specified in the unit system defined in the user's account settings. See Localization. |
user : strideLengthWalkingType | Specifies if the user's stride length is determined
automatically (default) or manually as defined in the
user's account settings. Supported: default | manual |
user : swimUnit | The unit system defined in the user's account settings. See Localization. |
user : temperatureUnit | The unit system defined in the user's account settings. See Localization. |
user : timezone | The timezone defined in the user's account settings. |
user : topBadges | An array listing the Fitbit badges currently earned by the user. |
user : waterUnit | The unit system defined in the user's account settings. See Localization. Nutrition scope is required to see this value. |
user : waterUnitName | The unit of measure defined by the waterUnit metric. See Localization. Nutrition scope is required to see this value. |
user : weight | The user's current weight defined by the weightUnit metric. Body scope is required to see this value. |
user : weightUnit | The unit system defined in the user's account settings. See Localization. |
{ "user": { "aboutMe": <value>, "age": <value>, "ambassador": <value>, "autoStrideEnabled": <value>, "avatar": "<value>", "avatar150": "<value>", "avatar640": "<value>", "averageDailySteps": <value>, "challengesBeta": <value>, "clockTimeDisplayFormat": <value>, "country": <value>, "corporate": <value>, "corporateAdmin": <value>, "dateOfBirth": <value>, "displayName": <value>, "displayNameSetting": <value>, "distanceUnit": <value>, "encodedId": <value>, "features": { "exerciseGoal": <value> }, "firstName": <value>, "foodsLocale": <value>, "fullName": <value>, "gender": <value>, "glucoseUnit": <value>, "height": <value>, "heightUnit": <value>, "isBugReportEnabled": <value>, "isChild": <value>, "isCoach": <value>, "languageLocale": <value>, "lastName": <value>, "legalTermsAcceptRequired": <value>, "locale": <value>, "memberSince": <value>, "mfaEnabled": <value>, "offsetFromUTCMillis": <value>, "sdkDeveloper": <value>, "sleepTracking": <value>, "startDayOfWeek": <value>, "state": <value>, "strideLengthRunning": <value>, "strideLengthRunningType": <value>, "strideLengthWalking": <value>, "strideLengthWalkingType": <value>, "swimUnit": <value>, "temperatureUnit": <value>, "timezone": <value>, "topBadges": [ <array of top badges received> ] "waterUnit": <value>, "waterUnitName": <value>, "weight": <value>, "weightUnit": <value> } }
Response Headers
content-type | The media type of the response content being sent to the client. Supported: application/json |
fitbit-rate-limit-limit | The quota number of calls. |
fitbit-rate-limit-remaining | The number of calls remaining before hitting the rate limit. |
fitbit-rate-limit-reset | The number of seconds until the rate limit resets. |
Note: The rate limit headers are approximate and asynchronously updated. This means that there may be a minor delay in the decrementing of remaining requests. This could result in your application receiving an unexpected 429 response if you don't track the total number of requests you make yourself.
Response Type
HTTP Status Code | HTTP response code. List of codes are found in the Troubleshooting Guide. |
Status Message | Description of the status code. |
Response Body | Contains the JSON response to the API call. When errors are returned by the API call, the errorType, fieldName and message text will provide more information to the cause of the failure. |
Response Codes
200 | A successful request. |
400 | The request had bad syntax or was inherently impossible to be satisfied. |
401 | The request requires user authentication. |
Note: For a complete list of response codes, please refer to the Troubleshooting Guide.
Additional Information
The authenticated owner receives all values in the response body. The authenticated user's access to other users' data is subject to those users' privacy settings. To retrieve the profile information of the authenticated owner's friends, use the Get Friends endpoint. Numerical values are returned in the unit system specified in the Accept-Language header.
Considerations
- The fullName field is present at all times. It contains one of the following:
- The user's fullName.
- A portion of user's email address before the at sign, "@". This is used in the case where the fullName field is empty.
- The Units fields (distanceUnit, glucoseUnit, etc.) represent the default unit settings configured for the user. These fields are used as the default for all other body measurements (such as neck, bicep, etc.).
- The locale field indicates the locale website version currently used (such as en_US, en_GB, etc.).