galeone / galeone/fitbit

Create* API

Open
#3 0 comments 0 reactions 0 assignees View on GitHub
help wanted
Dominant language
Go
Stars
10
Forks
2
PR merge metrics
No merged PRs in 30d

Description

Right now the [fitbit/client](https://github.com/galeone/fitbit/tree/main/client) package only allows to GET data from the Fitbit API.

All the other methods haven't been implemented.

The implementation should be trivial. for example for implementing the [Create Activity Goal](https://dev.fitbit.com/build/reference/web-api/activity/create-activity-goals/) one should:

1. Analyze the endpoint: there are 2 possible "periods", thus we can have 2 separate methods.
2. Is a "user" method (works on the authorized user).
3. It's an activity.
4. Therefore, in the fitbit/client folder we already have the `user_activities.go` file containing all the GET implementations, and this is the correct location for adding this method.
5. The convention to use is `Create` + `User` + `$what`. For example: `CreateUserActivityDailyGoal` and `CreateUserActivityWeeklyGoal` are the 2 methods to implement. NOTE: there are already the corresponding GET methods, therefore the naming should match (e.g. we have `UserActivityDailyGoal` for GET, therefore for the POST we must have `CreateUserActivityDailyGoal`
6. If the Response matches one of the already existing types (it should), then return this type. Otherwise, create a new one.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.