LogMeal Body Measures API
Endpoints to manage body measures.⚡ Monitor plan or above ⚡
Endpoints to manage body measures.⚡ Monitor plan or above ⚡
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/logmeal:logmeal-body-measures-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 2.1.0
title: Food AI Engine API Documentation Body Measures API
description: Please, refer to https://docs.logmeal.com to find the most up-to-date version of the Food AI Engine API documentation.
contact:
email: support@logmeal.com
servers:
- url: https://api.logmeal.com
description: Production
tags:
- name: Body Measures
description: 'Endpoints to manage body measures.
⚡ Monitor plan or above ⚡'
externalDocs:
url: https://docs.logmeal.com/docs/guides-features-body-measurements#/
paths:
/v2/measure:
get:
tags:
- Body Measures
summary: ⚫🔴🔵 Get all the existent body measures from a company
description: Retrieve the previously created body measures.
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
result:
type: array
description: List of body measures and their units.
items:
type: object
properties:
name:
type: string
description: The name of the body measure.
unit:
type: string
description: The unit of measurement for the body measure.
examples:
GetBodyMeasureExampleResponse:
value:
result:
- name: weight
unit: kg
- name: waist
unit: cm
- name: height
unit: cm
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
security:
- Bearer: []
operationId: getV2Measure
x-operation-id-source: derived
post:
tags:
- Body Measures
summary: ⚫🔵 Create a body measure for a company
description: 'Create a body measure for a company.
A body measure consists of a name and its unit.
The company has a series of measures that are necessary for the correct functioning of the application. If you try to create any of them with the reserved name, an error will be shown to the user along with a list of the reserved measures.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: height
description: Name of the body measure to be created
unit:
type: string
example: cm
description: Unit of the body measure to be created
required:
- name
- unit
description: Parameters to create the body measure.
required: true
responses:
'200':
description: Body measure created successfully!
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: 'height already exists. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: postV2Measure
x-operation-id-source: derived
patch:
tags:
- Body Measures
summary: ⚫🔵 Update a body measure for a company
description: 'Create a body measure for a company.
Provide at least one of the two values to update.
The company has a series of measures that are necessary for the correct functioning of the application. If an attempt is made to modify any of them with values that are not allowed, an error will be displayed to the user informing them of the fields allowed in this modification. For example ''weight'' has two possible units ''kg'' or ''lb''.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: height
description: Name of the body measure to be updated
new_name:
type: string
example: height
description: New name for the body measure
new_unit:
type: string
example: cm
description: New unit for the body measure
required:
- name
description: Parameters to update the body measure.
required: true
responses:
'200':
description: Body measure updated successfully!
'400':
description: 'The unit ''gr'' is not available for the measure ''weight''. Available measures for ''weight'' are: [''kg'', ''lb'']'
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: patchV2Measure
x-operation-id-source: derived
delete:
tags:
- Body Measures
summary: ⚫🔵 Delete an existent body measure
description: 'Delete a previously created body measure. **NOTE**: If the deleted goal was associated with a nutrition plan, the plan will also be deleted.
The company has a series of measures that are necessary for the correct functioning of the application. If you try to delete any of them, an error will be displayed to the user, preventing the loss of information. For example ''weight''.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: height
description: Name of the body measure to be deleted
required:
- name
description: Parameters to delete the body measure.
required: true
responses:
'200':
description: Body measure deleted successfully!
'400':
description: The measurement you are trying to delete cannot be deleted as it is necessary for the correct functioning of the application.
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: deleteV2Measure
x-operation-id-source: derived
/v2/user_measure:
get:
tags:
- Body Measures
summary: 🔴🔵 Get user body measures values
description: Retrieve the previously created user body measures.
parameters:
- in: query
name: user_id
schema:
type: integer
required: false
description: Parameter only required to APIUserManagers.
- in: query
name: measure_name
example: weight
schema:
type: string
required: false
description: Optional parameter. If provided, the response will be filtered and only results for this specific measure will be returned.
- in: query
name: fromDate
example: 2000/01/01
schema:
type: string
format: date
required: false
description: Optional parameter. If provided, the response will be filtered and only results logged after this date will be returned.
- in: query
name: toDate
example: 2000/12/12
schema:
type: string
format: date
required: false
description: Optional parameter. If provided, the response will be filtered and only results that have been recorded prior to this date will be returned.
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
result:
type: array
description: List of user body measures and their units.
items:
type: object
properties:
measure:
type: string
description: The name of the body measure.
unit:
type: string
description: The unit of measurement for the body measure.
date:
type: string
description: Date of the measurement insertion.
value:
type: number
format: float
description: Value inserted for the body measure.
examples:
GetUserBodyMeasuresExampleResponse:
value:
result:
- measure: waist
date: 2023/05/10
unit: cm
value: 150
active: true
- measure: weight
date: 2023/05/12
unit: kg
value: 80
active: false
- measure: weight
date: 2023/05/29
unit: kg
value: 75
active: true
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
security:
- Bearer: []
operationId: getV2UserMeasure
x-operation-id-source: derived
post:
tags:
- Body Measures
summary: 🔴🔵 Insert a value for a user measurement
description: 'Insert a body measure for a user.
A user body measure consists of a name for the measure, a value and a date (optional). If the date is not provided the actual date will be used.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: height
description: Name of the user body measure to be inserted
value:
type: number
format: float
example: 185
description: Value of the user body measure to be inserted
date:
type: string
example: 2023/01/20
description: Date of the user body measurement being inserted
required:
- measure_name
- value
description: Parameters to insert the user body measure.
required: true
responses:
'200':
description: User body measure inserted successfully!
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
oneOf:
- type: object
properties:
message:
type: string
example: The date must be formatted as '%Y/%m/%d, %H:%M:%S'
code:
type: integer
example: 100
- type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: postV2UserMeasure
x-operation-id-source: derived
delete:
tags:
- Body Measures
summary: 🔴🔵 Delete an existent user body measure
description: 'Delete a previously created user body measure.
If timestamp is not provided all the measures with the passed name will be deleted.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: weight
description: Name of the user body measure to be deleted
date:
type: string
example: 2023/01/20
description: Date of the user body measurement being deleted
required:
- measure_name
description: Parameters to delete the user body measure.
required: true
responses:
'200':
description: User body measure deleted successfully!
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
oneOf:
- type: object
properties:
message:
type: string
example: The date must be formatted as '%Y/%m/%d, %H:%M:%S'
code:
type: integer
example: 100
- type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: deleteV2UserMeasure
x-operation-id-source: derived
/v2/user_measure_goal:
get:
tags:
- Body Measures
summary: 🔴🔵 Get user body measure goals values
description: Retrieve the previously created user body measure goals.
parameters:
- in: query
name: user_id
schema:
type: integer
required: false
description: Parameter only required to APIUserManagers.
- in: query
name: measure_name
example: weight
schema:
type: string
required: false
description: Optional parameter. If provided, the response will be filtered and only results for this specific measure will be returned.
- in: query
name: fromDate
example: 2000/01/01
schema:
type: string
format: date
required: false
description: Optional parameter. If provided, the response will be filtered and only results logged after this date will be returned.
- in: query
name: toDate
example: 2000/12/12
schema:
type: string
format: date
required: false
description: Optional parameter. If provided, the response will be filtered and only results that have been recorded prior to this date will be returned.
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
result:
type: array
description: List of user body measure goals and their respective units.
items:
type: object
properties:
active:
type: boolean
description: Either if the user_measure_goal is currently active or not. This way we can differentiate which goal the user is currently working on.
date:
type: string
description: Date by which the user wants to meet the body measure goal.
id:
type: number
format: integer
description: ID of the user measure goal.
measure:
type: string
description: The name of the body measure.
unit:
type: string
description: The unit of measurement for the body measure goal.
value:
type: number
format: float
description: Value inserted for the body measure.
examples:
GetUserBodyMeasuresExampleResponse:
value:
result:
- measure: waist
date: 2023/05/10
unit: cm
value: 150
active: true
- measure: weight
date: 2023/05/12
unit: kg
value: 80
active: false
- measure: weight
date: 2023/05/29
unit: kg
value: 75
active: true
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
security:
- Bearer: []
operationId: getV2UserMeasureGoal
x-operation-id-source: derived
post:
tags:
- Body Measures
summary: 🔴🔵 Insert a value for a user measurement goal
description: 'Insert a body measure for a user.
A user body measure goal consists of a name for the measure, a value and a date.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: height
description: Name of the user body measure goal to be inserted
value:
type: number
format: float
example: 185
description: Value of the user body measure goal to be inserted
date:
type: string
example: 2023/01/20
description: Date by which the user wants to meet the body measure goal
required:
- measure_name
- value
- date
description: Parameters to insert the user body measure goal.
required: true
responses:
'200':
description: User body measure goal inserted successfully!
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
oneOf:
- type: object
properties:
message:
type: string
example: The date must be formatted as '%Y/%m/%d, %H:%M:%S'
code:
type: integer
example: 100
- type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: postV2UserMeasureGoal
x-operation-id-source: derived
delete:
tags:
- Body Measures
summary: 🔴🔵 Delete an existent user body measure goal
description: 'Delete a previously created user body measure goal.
If timestamp is not provided all the measure goals with the passed name will be deleted.'
requestBody:
content:
application/json:
schema:
type: object
properties:
measure_name:
type: string
example: weight
description: Name of the user body measure to be deleted
date:
type: string
example: 2023/01/20
description: Date of the user body measurement being deleted
required:
- measure_name
description: Parameters to delete the user body measure goal.
required: true
responses:
'200':
description: User body measure goal deleted successfully!
'400':
description: Bad request
'401':
description: Unauthorized, invalid token.
'403':
description: Forbidden
'404':
description: Not found
content:
application/json:
schema:
type: object
oneOf:
- type: object
properties:
message:
type: string
example: The date must be formatted as '%Y/%m/%d, %H:%M:%S'
code:
type: integer
example: 100
- type: object
properties:
message:
type: string
example: 'waist does not exist. Existing measures: [u''weight'', u''height'']'
code:
type: integer
example: 1645
security:
- Bearer: []
operationId: deleteV2UserMeasureGoal
x-operation-id-source: derived
components:
securitySchemes:
Bearer:
type: http
scheme: bearer
bearerFormat: JWT
x-build:
time: '2026-10-19T02:02:11.433999Z'
x-provenance:
method: harvested
publisher: LogMeal
source: https://docs.logmeal.com/openapi/logmeal_openapi.yaml
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)