Skip to main content
Once a user has uploaded a base photo, Souldi estimates their body measurements in the background. This endpoint reads those measurements back — mass, height, chest, waist, and hips — so you can recommend a size, pre-select a fit, or simply show the user their profile.
This endpoint is user-scoped. Each request needs both headers:
  • x-api-key: <your_publishable_key> — identifies your store.
  • Authorization: Bearer <access_token> — the signed-in user’s session token from Authentication.
See the authentication model.
Measurements are computed by an asynchronous sizing pipeline that runs after the user uploads their base image (see User & Image). Until it finishes, this endpoint returns a 200 with every field null — that’s the “not ready yet” state, not an error.

GET /user/sizes

Fetch the authenticated user’s body measurements. Use it to drive size recommendations, or to check whether sizing has finished by testing for non-null fields. Required headers: x-api-key, Authorization: Bearer <access_token> This endpoint takes no path parameters, query parameters, or body.

Response fields

All measurements use the metric system and are null until the sizing pipeline has produced a result.
number | null
Estimated body mass in kilograms (kg). null until measurements are ready.
number | null
Estimated height in centimeters (cm). null until measurements are ready.
number | null
Estimated chest circumference in centimeters (cm). null until measurements are ready.
number | null
Estimated waist circumference in centimeters (cm). null until measurements are ready.
number | null
Estimated hip circumference in centimeters (cm). null until measurements are ready.
200 OK — measurements ready
200 OK — not computed yet
Always handle the all-null response. A 200 with null fields means the sizing pipeline hasn’t finished — don’t treat it as an error or assume a value of zero. Check that the fields you need are non-null before showing sizes to the user, and re-fetch later if they aren’t ready yet.

Errors

Next steps

User & Image

Upload the base photo that kicks off the sizing pipeline, and poll the profile until the image is ready.

Generate a try-on

Send garment URLs to render a try-on on the user’s base image.