Skip to main content

Progress

Nutrition

The food your clients logged each day, against their daily targets.

A nutrition log is one day of food a client logged in HubFit, with the meals, foods, photos and note they recorded and the day's target. A day appears only once the client logs something. A client's nutrition target is the daily goal set for each weekday, by the coach or by the client in the app. Clients who track in Cronometer instead have no logs here. To compare clients' nutrition over a period, use GET /client-summaries with include=nutrition.

Clients log food against their daily targets.
In the HubFit appClients log food against their daily targets.

Attributes

Nutrition log object
{
  "id": "6ad6af7dba37657cba35d27b",
  "client": {
    "id": "6ad6af41d3199442d31b2743",
    "name": "Jordan Miller"
  },
  "date": "2026-10-26",
  "totals": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "fiberGrams": 32,
    "sugarGrams": 45,
    "saturatedFatGrams": 22,
    "monounsaturatedFatGrams": 28,
    "polyunsaturatedFatGrams": 14
  },
  "target": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70
  },
  "foodCount": 12,
  "photoCount": 2,
  "note": "Felt strong. Added 5 lb on bench.",
  "meals": [
    {
      "name": "Breakfast",
      "foods": [
        {
          "name": "Greek yogurt, plain",
          "servingDescription": "1 cup (245 g)",
          "servings": 1,
          "nutrients": {
            "calories": 2350,
            "proteinGrams": 180,
            "carbsGrams": 240,
            "fatGrams": 70,
            "fiberGrams": 32,
            "sugarGrams": 45,
            "saturatedFatGrams": 22,
            "monounsaturatedFatGrams": 28,
            "polyunsaturatedFatGrams": 14
          }
        }
      ],
      "photoCount": 2
    }
  ]
}

Attributes

  • mondayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • tuesdayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • wednesdayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • thursdayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • fridayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • saturdayobject

    Each value is null if it was left empty.

    Show 5 child attributes
  • sundayobject

    Each value is null if it was left empty.

    Show 5 child attributes
Nutrition target object
{
  "monday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "tuesday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "wednesday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "thursday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "friday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "saturday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  },
  "sunday": {
    "calories": 2350,
    "proteinGrams": 180,
    "carbsGrams": 240,
    "fatGrams": 70,
    "isRestDay": true
  }
}
GET/v1/clients/{clientId}/nutrition-target

The client's current daily target for calories and macros, for each day of the week, set by the coach or by the client in the app. A weekday marked as a rest day has the rest-day target. data is null if no target is set. Requires clients:read.

Path parameters

Returns

The client's target for each weekday.

GET /v1/clients/{clientId}/nutrition-target
curl https://api.hubfit.com/v1/clients/6ad6af41d3199442d31b2743/nutrition-target \
  -H "Authorization: Bearer $HUBFIT_API_KEY"
Response200 OK
{
  "data": {
    "monday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "tuesday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "wednesday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "thursday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "friday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "saturday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    },
    "sunday": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "isRestDay": true
    }
  }
}
GET/v1/nutrition-logs

The days your clients logged food, newest first, with each day's totals and target but not its meals. Across every client you can reach (team members with the Standard role only see their assigned clients), or one client's with clientId. Requires clients:read.

Query parameters

  • clientIdstring

    Only this client's logs.

  • Only days from this date, included, as YYYY-MM-DD. Days are the client's own calendar days.

  • Only days up to this date, included, as YYYY-MM-DD.

  • limitinteger

    How many results to return, from 1 to 100.

    Default 25
  • cursorstring

    The nextCursor from the previous page.

Returns

A page of nutrition logs.

GET /v1/nutrition-logs
curl -G https://api.hubfit.com/v1/nutrition-logs \
  -H "Authorization: Bearer $HUBFIT_API_KEY" \
  -d clientId=6ad6af41d3199442d31b2743 \
  -d startDate=2026-10-20
Response200 OK
{
  "data": [
    {
      "id": "6ad6af7dba37657cba35d27b",
      "client": {
        "id": "6ad6af41d3199442d31b2743",
        "name": "Jordan Miller"
      },
      "date": "2026-10-26",
      "totals": {
        "calories": 2350,
        "proteinGrams": 180,
        "carbsGrams": 240,
        "fatGrams": 70,
        "fiberGrams": 32,
        "sugarGrams": 45,
        "saturatedFatGrams": 22,
        "monounsaturatedFatGrams": 28,
        "polyunsaturatedFatGrams": 14
      },
      "target": {
        "calories": 2350,
        "proteinGrams": 180,
        "carbsGrams": 240,
        "fatGrams": 70
      },
      "foodCount": 12,
      "photoCount": 2,
      "note": "Felt strong. Added 5 lb on bench."
    }
  ],
  "nextCursor": "eyJpZCI6IjZhZDZhZjNmMjljNTk3ZjE1In0",
  "totalCount": 48
}
GET/v1/nutrition-logs/{logId}

One day a client logged, with every meal (in the order of the client's Daily Meals) and the foods in it. Requires clients:read.

Path parameters

  • logIdstringRequired

    The log's id.

Returns

The nutrition log.

GET /v1/nutrition-logs/{logId}
curl https://api.hubfit.com/v1/nutrition-logs/6ad6af7dba37657cba35d27b \
  -H "Authorization: Bearer $HUBFIT_API_KEY"
Response200 OK
{
  "data": {
    "id": "6ad6af7dba37657cba35d27b",
    "client": {
      "id": "6ad6af41d3199442d31b2743",
      "name": "Jordan Miller"
    },
    "date": "2026-10-26",
    "totals": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70,
      "fiberGrams": 32,
      "sugarGrams": 45,
      "saturatedFatGrams": 22,
      "monounsaturatedFatGrams": 28,
      "polyunsaturatedFatGrams": 14
    },
    "target": {
      "calories": 2350,
      "proteinGrams": 180,
      "carbsGrams": 240,
      "fatGrams": 70
    },
    "foodCount": 12,
    "photoCount": 2,
    "note": "Felt strong. Added 5 lb on bench.",
    "meals": [
      {
        "name": "Breakfast",
        "foods": [
          {
            "name": "Greek yogurt, plain",
            "servingDescription": "1 cup (245 g)",
            "servings": 1,
            "nutrients": {
              "calories": 2350,
              "proteinGrams": 180,
              "carbsGrams": 240,
              "fatGrams": 70,
              "fiberGrams": 32,
              "sugarGrams": 45,
              "saturatedFatGrams": 22,
              "monounsaturatedFatGrams": 28,
              "polyunsaturatedFatGrams": 14
            }
          }
        ],
        "photoCount": 2
      }
    ]
  }
}