Weight update API


I made a flow to update my weight from my bluetooth scale through the API to intervals.icu
The flow is working and I see the correct Weight in the settings page after I weighed myself. However none of the graphs update after I did this. If i just click on the weight and close it again by clicking save in the settings (the weight is correct so I don’t touch that just open and save) then my graphs do update. I am using a /api/v1/athlete/{id} PUT command.

Dont know for sure if this is a bug or that I am maybe missing an update command in the API.

kind regards


I haven’t tested that endpoint, but I’m using the weight field from /api/v1/athlete/{id}/wellness/{day}. Maybe try using that one?


As @YP30 says it will work if you use the wellness endpoint.

Thank you for the help!

But now im stuck on the wellness endpoint. Its asking for my ID alltough I send it too my ID endpoint. And if I add my id in the JSON i’m sending then I get the error

“{“status”:422,“error”:“Invalid id: java.time.format.DateTimeParseException: Text ‘i******’ could not be parsed at index 0”}”

maybe if someone has a working payload I can see where mine differs?

kind regards

This should be a working Python snippet.

import requests

def send_data(day):
    username = 'API_KEY'
    password = '<api key here>'
    id = '<id here, format: ixxxxx>'
    url = f'https://intervals.icu/api/v1/athlete/{id}/wellness/{day}'

    response = requests.put(url, auth=(username, password), json={'weight':72.8})


If this doesn’t solve your issues, you can always DM me!


Got it to work, thank you very much!