True Fit Recommendation API

Retrieve True Fit powered size recommendations for a profile.

Operations 1

GET /profiles/{profileId}/fit-recommendations Get a Fit Recommendation for the given styles #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/true-fit-fit-recommendation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

true-fit-fit-recommendation-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: True Fit - Consumer Fit Recommendation API
  description: These APIs can be used to create a custom True Fit integration.
  version: '3.0'
servers:
- url: /profile/public/v3/{tla}
tags:
- name: Fit Recommendation
  description: Retrieve True Fit powered size recommendations for a profile.
paths:
  /profiles/{profileId}/fit-recommendations:
    get:
      tags:
      - Fit Recommendation
      summary: Get a Fit Recommendation for the given styles
      parameters:
      - name: X-TF-UserToken
        in: header
        description: The session token for the current user.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: profileId
        in: path
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: locale
        in: query
        description: 'Identifier specifying the locale to use when retrieving suggested brands or any type of sizes e.g. sizes, bra sizes, inseams or sleeve lengths. This attribute is only required when the store supports multiple locales. Use an ISO 639 language code followed by an ISO 3166 country code, e.g. en_US. '
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: integrationPlatform
        in: query
        description: Specifies whether the call is being made from inside the context of an app or the web.
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - App
          - Web
      - name: s
        in: query
        description: Store Style IDs to request Fit Recommendations for.
        required: true
        style: form
        explode: true
        schema:
          minItems: 1
          type: array
          items:
            type: string
      responses:
        '200':
          description: The Fit Recommendation results for the requested styles.
          headers:
            X-TF-UserToken:
              description: The updated token for the user. This updated token should be used on all following requests. This header is only present when the token has cycled.
              style: simple
              explode: false
              schema:
                type: string
            X-TF-UserTokenMaxAge:
              description: This will be most useful when storing the token as a cookie. The value is the suggested max age of the token (in seconds).
              style: simple
              explode: false
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FitDetailsResultSet'
      operationId: getProfilesByProfileIdFitRecommendations
      x-operation-id-source: derived
components:
  schemas:
    FitDetailsResultSet:
      required:
      - status
      - styleId
      type: object
      properties:
        styleId:
          type: string
          description: The store style ID that this result corresponds to.
        status:
          type: string
          description: If the status is success, render the fit details page. If the status is estimationinprogress, a refershAfter should also come back on the FitDetailsResultSet, and another call for a fit rec should be made after the refreshAfter delay. For any other status, don't render the fit details page.
          enum:
          - error
          - incompletegarment
          - incompleteprofile
          - invaliddepartment
          - success
          - estimationinprogress
          - sizenotavailable
          - unrecommendabledepartment
        bestSize:
          $ref: '#/components/schemas/FitDetails'
        sizeUp:
          $ref: '#/components/schemas/FitDetails'
        sizeDown:
          $ref: '#/components/schemas/FitDetails'
        refreshAfter:
          type: integer
          description: If we can't provide a recommendation at the moment, the amount of time in milliseconds to wait before trying to retrieve a recommendation again.
    FitMeasurementPoint:
      required:
      - measurementPoint
      - pomType
      - value
      type: object
      properties:
        measurementPoint:
          type: string
          enum:
          - Bust
          - Chest
          - FootLength
          - FootWidth
          - Inseam
          - LowHip
          - NaturalWaist
          - Neck
          - Shoulders
          - SleeveLength
          - Thigh
          - Waist
        pomType:
          type: string
          enum:
          - Girth
          - Length
          - Width
        value:
          maximum: 7
          minimum: 0
          type: number
          description: 'A value between 0 - 7 that represents how good of a fit an item is at a specific point. 0 represents snuggest, 3 or 4 represent an ideal fit, and 7 represents loosest.

            '
    FitDetails:
      required:
      - size
      type: object
      properties:
        size:
          type: string
        recommended:
          type: boolean
        score:
          maximum: 5
          minimum: 1
          type: number
          description: A value between 1.0 and 5.0 that determines how good the overall fit of an item is.
        overallFit:
          maximum: 7
          minimum: 0
          type: number
          description: A value between 0 - 7 that represents how good the overall fit of an item is. 0 represents snuggest, 3 or 4 represent an ideal fit, and 7 represents loosest. This should only come back if the list of poms are empty.
        poms:
          type: array
          items:
            $ref: '#/components/schemas/FitMeasurementPoint'
x-explorer-enabled: false