Would it be possible for the API documentation to include a better writeup of how roadall
works, and in particular, how the timestamps work?
I was using Postman to try to manually crank up the road for the next few days for a new goal, and honestly, the process was extremely frustrating. I couldn’t seem to get anything to match up (you can see what I was actually dealing with below).
There were a few thing in particular that didn’t seem to make sense:
-
It’s unclear why all of the datapoints are dated at 16:00 GMT on any particular day. When I originally tried to use a timestamp that was after the time that I was submitting it but before 16:00 GMT, it derailed my goal, so the significance of this timestamp is confusing.
-
When submitting timestamps, I kept ending up with very unexpected results. I created the goal with no buffer time and it said I had 2 days and some hours before derailment. I retroratched to 0 days, and that put my goal for today on the “Amounts Due by Day” to -2 for today. As I increased the amount that was due in subsequent days, the amount that was due by today actually decreased.
-
Why doesn’t the
delta_text
field returned by the GET endpoint match up with what’s in the “Amounts Due by Day” box? According to this box, the deltas for today and the following two days are+0, +8, +15
, yet the delta text field states+0, +8, +16
. -
What’s the cut off for rate changes? “Take a Break” states that the rate should increase by 3 “Until 2016-04-02,” but the amount due on 2016-04-02 is 18 and on 2016-04-02 it is 21. It seems that the rate changes on the day following the end date of the rate.
-
In addition to the previous point, there is something that is completely baffling to me:
fullroad
shows the list[1459612800, 21, 3]
(timestamp: Sat, 02 Apr 2016 16:00:00 GMT)- “Take a Break” shows
Until 2016-04-02 increase at rate 3
- “Amount Due by Day” shows
Sun(3rd) +21 21
- This means that there is a datapoint which explicitly states that at Sat, 02 Apr 2016 16:00:00 GMT, the amount due should be 21 and the rate at that time should be 3. However, elsewhere the interface is showing that 21 are due on the 3rd, which is 3 more than the amount due on the previous day, the day that the rate should have stopped increasing.
I have to be missing something there… how is the road actually calculated? Why does it seem like none of the numbers are lining up?
tl;dr: help
Under “Take a Break” I have this:
By 2016-03-31 reach value 15
Until 2016-04-02 increase at rate 3
Until 2026-09-28 increase at rate 2
If I get
the goal, my roadall
reads:
"roadall": [
[
1459353600, //Wed, 30 Mar 2016 16:00:00 GMT
0,
null
],
[
1459353600, //Wed, 30 Mar 2016 16:00:00 GMT
8,
null
],
[
1459440000, //Thu, 31 Mar 2016 16:00:00 GMT
15,
null
],
[
1459612800, //Sat, 02 Apr 2016 16:00:00 GMT
null,
3
],
[
1790611200, //Mon, 28 Sep 2026 16:00:00 GMT
null,
2
]
]
If I look at the “Amounts Due by Day” I see:
DAY DELTA TOTAL
Today ✔ 0
Tomorrow +8 8
Fri (1st) +15 15
Sat (2nd) +18 18
Sun (3rd) +21 21
Mon (4th) +23 23
Tue (5th) +25 25
And the get GOAL
API endpoint returns:
"delta_text": "+0 +8 +16",