# TryYourSize Docs > TryYourSize adds size recommendations to fashion stores. Shoppers measure once with a tape measure; the store receives their size in its own size labels, never their measurements. These docs cover the size guide element and web SDK, React, iOS, Android, React Native, Flutter, the Shopify app, and the server API (Node.js, Python, HTTP). Every page is listed below as Markdown. Use only the methods and endpoints documented here. - [Full documentation in one file](https://docs.tryyoursize.com/llms-full.txt) - [Web SDK SDK reference in one file](https://docs.tryyoursize.com/llms/web.txt) - [React SDK reference in one file](https://docs.tryyoursize.com/llms/react.txt) - [Node.js SDK reference in one file](https://docs.tryyoursize.com/llms/node.txt) - [Python SDK reference in one file](https://docs.tryyoursize.com/llms/python.txt) - [iOS SDK reference in one file](https://docs.tryyoursize.com/llms/ios.txt) - [Android SDK reference in one file](https://docs.tryyoursize.com/llms/android.txt) - [React Native SDK reference in one file](https://docs.tryyoursize.com/llms/react-native.txt) - [Flutter SDK reference in one file](https://docs.tryyoursize.com/llms/flutter.txt) - [OpenAPI spec](https://docs.tryyoursize.com/openapi.json) ## Docs - [TryYourSize developer docs](https://docs.tryyoursize.com/index.md): Add size recommendations to your store. Quickstarts for Shopify, the web, React, iOS, Android, React Native, Flutter and your server; SDK and HTTP API reference. ## Get started - [Going live](https://docs.tryyoursize.com/get-started/going-live.md): Verify your domain, complete the live activation checklist, and understand billing before you switch to live keys. - [Keys and modes](https://docs.tryyoursize.com/get-started/keys-and-modes.md): Publishable, secret and restricted keys; test and live mode; key scopes, origins, rolling keys and IP allow-lists. - [How TryYourSize works](https://docs.tryyoursize.com/get-started/overview.md): From a tape measure to a size in your store's labels. What happens, who sees what, and what your store receives. ## Quickstarts - [Android quickstart](https://docs.tryyoursize.com/quickstarts/android.md): The native Size guide button (Compose and Views), the shopper's recommended size, and the try-on window. - [Flutter quickstart](https://docs.tryyoursize.com/quickstarts/flutter.md): The tryyoursize plugin over the native SDKs. The Size guide button and the shopper's recommended size. - [iOS quickstart](https://docs.tryyoursize.com/quickstarts/ios.md): The native Size guide button (SwiftUI and UIKit), the shopper's recommended size, and the try-on window in a sheet. - [React Native quickstart](https://docs.tryyoursize.com/quickstarts/react-native.md): @tryyoursize/react-native: the native Size guide button and the recommended size, over the iOS and Android SDKs. - [React quickstart](https://docs.tryyoursize.com/quickstarts/react.md): @tryyoursize/react: a provider near the root and element components where you need them. SSR-safe. - [Server API quickstart](https://docs.tryyoursize.com/quickstarts/server.md): Call the TryYourSize server API from Node or Python. Catalog sync, orders and returns, server-side recommendations. - [Shopify app (no code)](https://docs.tryyoursize.com/quickstarts/shopify.md): Install the TryYourSize app, sync your catalog, and add the Size guide block in the theme editor. No code. - [Size guide button](https://docs.tryyoursize.com/quickstarts/size-guide.md): Replace your "Size guide" link with the TryYourSize size guide element, which shows "Your size: M" to connected shoppers. - [Web SDK quickstart](https://docs.tryyoursize.com/quickstarts/web.md): Add the TryYourSize element to any product page with a script tag or npm. Publishable keys, events, appearance. ## Products - [A/B and outcomes](https://docs.tryyoursize.com/products/ab-outcomes.md): Measure size-related returns with and without TryYourSize, with a holdout group and the orders and returns you send. - [Catalog API](https://docs.tryyoursize.com/products/catalog-api.md): Products, size maps, garment versions and fit groups from your PIM or ERP, with a secret or restricted key. - [Fit view](https://docs.tryyoursize.com/products/fit-view.md): The garment on the shopper's own 3D body, with ease in cm and contact pressure in kPa per zone, in our window. - [Recommendations API](https://docs.tryyoursize.com/products/recommendations-api.md): The shopper's size for up to 25 products from your server or a headless storefront, from a sealed handle the browser SDK issues. - [Size guide](https://docs.tryyoursize.com/products/size-guide.md): A "Size guide" link next to your size picker that becomes "Your size: M" for connected shoppers, on the web, in apps and on Shopify. - [Studio](https://docs.tryyoursize.com/products/studio.md): TryYourSize Studio, where your team describes garments, maps sizes, manages keys, origins and webhooks, and reads results. - [Webhooks](https://docs.tryyoursize.com/products/webhooks.md): Signed events to your server when a size is recommended, a garment is published or a shopper disconnects. ## Guides - [A/B holdout](https://docs.tryyoursize.com/guides/ab-holdout.md): Measure TryYourSize's effect on size-related returns. A share of visitors sees no element; the holdout is never metered. - [Use TryYourSize with AI tools](https://docs.tryyoursize.com/guides/ai-tools.md): Point Cursor, Claude Code, ChatGPT or Claude at our docs with llms.txt and Markdown pages, use ready-made integration prompts, and drop a rules file into your repo. - [Appearance and theming](https://docs.tryyoursize.com/guides/appearance.md): TryYourSize elements inherit your page's font and colours by default. Override them with appearance variables, live. - [Languages (i18n)](https://docs.tryyoursize.com/guides/i18n.md): The element, the measuring window and the mobile buttons in English, Spanish, French, German and Italian. Choose with the locale option or let your page's html lang decide. - [Idempotency and retries](https://docs.tryyoursize.com/guides/idempotency.md): Retry POST requests safely with an Idempotency-Key. Stored 24 hours per store and mode. - [Orders and returns (outcomes)](https://docs.tryyoursize.com/guides/outcomes.md): Send orders and returns so TryYourSize can report size-related returns per A/B arm. No customer data. - [Pagination](https://docs.tryyoursize.com/guides/pagination.md): Cursor pagination for lists. limit and cursor in, data, has_more and next_cursor out. - [Privacy: what your store receives](https://docs.tryyoursize.com/guides/privacy.md): Your store receives sizes only. Never measurements, body data, email or a shopper account. - [Rate limits](https://docs.tryyoursize.com/guides/rate-limits.md): X-RateLimit headers on every response, 429 with Retry-After when you go over. - [Preselect the recommended size](https://docs.tryyoursize.com/guides/recommendation-event.md): Get the connected shopper's size on page load, in your own size labels, and preselect your size picker. - [Server-side recommendations](https://docs.tryyoursize.com/guides/server-side-recommendations.md): Get the shopper's size on your server with a sealed handle from the browser. Sizes only; measurements never leave TryYourSize. - [Troubleshooting](https://docs.tryyoursize.com/guides/troubleshooting.md): Common symptoms and error codes when integrating TryYourSize, with their cause and fix. Search this page for the code you see. - [Versioning and migrating](https://docs.tryyoursize.com/guides/versioning.md): Date-based API versions in the TYS-Version header, SDK versions, and how to move to a new version safely. - [Webhooks](https://docs.tryyoursize.com/guides/webhooks.md): Receive signed events (fit.recommended, garment.published…) on your server. Signature verification in Node, Python and plain code; retries. ## SDK reference - [Mobile SDK errors](https://docs.tryyoursize.com/mobile/errors.md): Every error code of the iOS, Android, React Native and Flutter SDKs, what causes it and how to fix it. - [SDK reference](https://docs.tryyoursize.com/reference.md): Every public method, component and event of the TryYourSize SDKs: web, React, Node.js, Python, iOS, Android, React Native and Flutter. - [Web SDK errors](https://docs.tryyoursize.com/sdk/errors.md): Every TryYourSizeError code of TryYourSize.js and @tryyoursize/react, what causes it and how to fix it. ### Web SDK - [Web SDK reference (TryYourSize.js)](https://docs.tryyoursize.com/reference/web.md): TryYourSize.js for any storefront: the client, elements, events and web components. - [Appearance](https://docs.tryyoursize.com/reference/web/appearance.md): Look and feel of the elements and our windows, modelled on Stripe's Appearance API: a theme, a few variables, and web fonts. - [tys.elements()](https://docs.tryyoursize.com/reference/web/client-elements.md): Creates an elements group: the appearance and language shared by the elements you create from it. - [tys.experiment()](https://docs.tryyoursize.com/reference/web/client-experiment.md): The visitor's A/B holdout assignment when the store runs one (null otherwise). - [tys.recommendationHandle()](https://docs.tryyoursize.com/reference/web/client-recommendation-handle.md): A sealed handle for your server's POST /v1/recommendations (headless or server-rendered pages). - [tys.recommendation()](https://docs.tryyoursize.com/reference/web/client-recommendation.md): The shopper's recommended size for a product, in your size labels, without mounting anything (a hidden frame on our origin answers). - [tys.version](https://docs.tryyoursize.com/reference/web/client-version.md): The SDK version (semver) of the loaded TryYourSize.js. - [element.close()](https://docs.tryyoursize.com/reference/web/element-close.md): Closes the window if it is open. - [element.destroy()](https://docs.tryyoursize.com/reference/web/element-destroy.md): Unmounts the element and drops its handlers. - [element.elementType](https://docs.tryyoursize.com/reference/web/element-element-type.md): The element's type: "fit", "button" or "sizeGuide". - [element.getRecommendation()](https://docs.tryyoursize.com/reference/web/element-get-recommendation.md): The shopper's recommended size for this product once known (see the recommendation event). - [element.mount()](https://docs.tryyoursize.com/reference/web/element-mount.md): Shows the element inside a container of your page. - [element.off()](https://docs.tryyoursize.com/reference/web/element-off.md): Removes a handler, or every handler of the event when you pass none. - [element.on()](https://docs.tryyoursize.com/reference/web/element-on.md): Listens to an element event. - [element.once()](https://docs.tryyoursize.com/reference/web/element-once.md): Like on(), for the next event only. - [element.open()](https://docs.tryyoursize.com/reference/web/element-open.md): Opens the TryYourSize window for this element's product, as the element itself does on click. - [element.unmount()](https://docs.tryyoursize.com/reference/web/element-unmount.md): Removes the element from the page and closes its window. - [element.update()](https://docs.tryyoursize.com/reference/web/element-update.md): Changes the element's options in place. - [elements.create()](https://docs.tryyoursize.com/reference/web/elements-create.md): Creates an element for one product. - [elements.getElement()](https://docs.tryyoursize.com/reference/web/elements-get-element.md): The most recently created element of a type that is still alive, or null. - [elements.update()](https://docs.tryyoursize.com/reference/web/elements-update.md): Live update, e.g. - ["close" event](https://docs.tryyoursize.com/reference/web/event-close.md): Our window closed. - ["loaderror" event](https://docs.tryyoursize.com/reference/web/event-loaderror.md): Our window could not be loaded or reached (network, Content Security Policy, an origin not registered for the key). - ["open" event](https://docs.tryyoursize.com/reference/web/event-open.md): Our window opened. - ["ready" event](https://docs.tryyoursize.com/reference/web/event-ready.md): The element is on the page (the size guide and button at once; the inline element once our window is connected). - ["recommendation" event](https://docs.tryyoursize.com/reference/web/event-recommendation.md): The shopper's recommended size for this product, in your size labels: on mount when the shopper is already connected, and on every change. - ["size" event](https://docs.tryyoursize.com/reference/web/event-size.md): The shopper chose a size in our window ("Use this size"): preselect that variant. - [isPublishableKey()](https://docs.tryyoursize.com/reference/web/is-publishable-key.md): A publishable key is the only key allowed in a browser. - [loadTryYourSize()](https://docs.tryyoursize.com/reference/web/load-tryyoursize.md): Loads TryYourSize.js from our CDN once (the latest compatible v1 build) and creates a client, like loadStripe(). - [Recommendation](https://docs.tryyoursize.com/reference/web/recommendation.md): Recommendation - [resolveAppearance()](https://docs.tryyoursize.com/reference/web/resolve-appearance.md): Resolves what the windows receive: for "inherit", the font, text colour and background where the element is mounted (buttons use the text colour, the way most stores style their primary button); expli - [TryYourSizeError](https://docs.tryyoursize.com/reference/web/tryyoursize-error.md): Every error the SDK throws or emits: a stable type and code to branch on, a message, and a link to its explanation. - [TryYourSize()](https://docs.tryyoursize.com/reference/web/tryyoursize.md): Creates a client for your publishable key. - [](https://docs.tryyoursize.com/reference/web/tys-fit-button.md): The compact "Find my size" button as a tag. - [](https://docs.tryyoursize.com/reference/web/tys-fit.md): The inline element as a tag: sign-in and "your body is ready" in your page. - [](https://docs.tryyoursize.com/reference/web/tys-size-guide.md): The size guide element as a tag: "Size guide" with the TryYourSize mark, then "Your size: M" once the shopper is connected. - [VERSION](https://docs.tryyoursize.com/reference/web/version.md): The SDK version (semver), also sent to our windows. ### React - [React reference (@tryyoursize/react)](https://docs.tryyoursize.com/reference/react.md): A provider, hooks and element components for TryYourSize.js, shaped like @stripe/react-stripe-js. - [ElementHandle](https://docs.tryyoursize.com/reference/react/element-handle.md): What a ref on , or gives you. - [](https://docs.tryyoursize.com/reference/react/fit-button.md): A compact "Find my size" button that opens the measuring window. - [](https://docs.tryyoursize.com/reference/react/fit-element.md): The inline element (sign-in and "your body is ready" in your page). - [](https://docs.tryyoursize.com/reference/react/size-guide.md): A link-sized "Size guide" with the TryYourSize mark, for the spot next to your size picker. - [](https://docs.tryyoursize.com/reference/react/tryyoursize-provider.md): Creates (or adopts) the TryYourSize client and its elements group for the components inside it. - [useElements()](https://docs.tryyoursize.com/reference/react/use-elements.md): The provider's Elements group, or null until the client has loaded. - [useTryYourSize()](https://docs.tryyoursize.com/reference/react/use-tryyoursize.md): The TryYourSize client, or null until it has loaded. ### Node.js - [Node.js reference (@tryyoursize/node)](https://docs.tryyoursize.com/reference/node.md): The server SDK for Node.js 18+: recommendations, catalog, orders and returns, audit log, webhooks. - [tys.auditEvents.list()](https://docs.tryyoursize.com/reference/node/audit-events-list.md): tys.auditEvents.list() - [new TryYourSize()](https://docs.tryyoursize.com/reference/node/client.md): Creates a client for one secret or restricted key. - [Errors](https://docs.tryyoursize.com/reference/node/errors.md): Every error of an API call is a TryYourSizeError subclass, by HTTP status: InvalidRequestError (400, 422), AuthenticationError (401), PermissionError (403), NotFoundError (404), ConflictError (409), R - [tys.fitGroups.create()](https://docs.tryyoursize.com/reference/node/fit-groups-create.md): tys.fitGroups.create() - [tys.fitGroups.linkProducts()](https://docs.tryyoursize.com/reference/node/fit-groups-link-products.md): Moves products into the group (they then use its garment). - [tys.fitGroups.list()](https://docs.tryyoursize.com/reference/node/fit-groups-list.md): tys.fitGroups.list() - [tys.fitGroups.retrieve()](https://docs.tryyoursize.com/reference/node/fit-groups-retrieve.md): tys.fitGroups.retrieve() - [tys.garments.publish()](https://docs.tryyoursize.com/reference/node/garments-publish.md): Publishes a complete draft. - [tys.garments.retrieve()](https://docs.tryyoursize.com/reference/node/garments-retrieve.md): tys.garments.retrieve() - [tys.garments.updateDraft()](https://docs.tryyoursize.com/reference/node/garments-update-draft.md): Replaces a draft's content (published versions never change: 409). - [tys.lastResponse](https://docs.tryyoursize.com/reference/node/last-response.md): Meta of the last answered request (success or API error). - [tys.mode](https://docs.tryyoursize.com/reference/node/mode.md): "test" or "live", from the key prefix. - [tys.orders.create()](https://docs.tryyoursize.com/reference/node/orders-create.md): tys.orders.create() - [PagePromise](https://docs.tryyoursize.com/reference/node/page-promise.md): What every list() returns: await it for one page ({ data, has_more, next_cursor }), or iterate it with for await to walk every item of every page. - [tys.products.create()](https://docs.tryyoursize.com/reference/node/products-create.md): tys.products.create() - [tys.products.garments.createDraft()](https://docs.tryyoursize.com/reference/node/products-garments-create-draft.md): Starts a new draft version (sizes, POMs in mm, grading, fabric). - [tys.products.garments.list()](https://docs.tryyoursize.com/reference/node/products-garments-list.md): Garment versions, newest first (a single page: has_more is always false). - [tys.products.list()](https://docs.tryyoursize.com/reference/node/products-list.md): Newest first. - [tys.products.retrieve()](https://docs.tryyoursize.com/reference/node/products-retrieve.md): tys.products.retrieve() - [tys.products.sizeMap.retrieve()](https://docs.tryyoursize.com/reference/node/products-size-map-retrieve.md): tys.products.sizeMap.retrieve() - [tys.products.sizeMap.save()](https://docs.tryyoursize.com/reference/node/products-size-map-save.md): Replaces the size map. - [tys.products.update()](https://docs.tryyoursize.com/reference/node/products-update.md): Replaces the SKU, name and category (all three required). - [tys.recommendations.create()](https://docs.tryyoursize.com/reference/node/recommendations-create.md): handle comes from the browser SDK (await tys.recommendationHandle()), products are your SKUs / style IDs. - [RequestOptions](https://docs.tryyoursize.com/reference/node/request-options.md): Options of one call: the last argument of every method. - [tys.returns.create()](https://docs.tryyoursize.com/reference/node/returns-create.md): tys.returns.create() - [tys.webhooks.constructEvent()](https://docs.tryyoursize.com/reference/node/webhooks-construct-event.md): Verifies a delivery's TYS-Signature header against the raw request body and returns the parsed event. - [tys.webhooks.generateTestHeader()](https://docs.tryyoursize.com/reference/node/webhooks-generate-test-header.md): Builds a valid TYS-Signature header for a payload, to test your webhook handler. - [tys.webhooks.verifySignature()](https://docs.tryyoursize.com/reference/node/webhooks-verify-signature.md): Checks the signature only (throws when it does not verify). ### Python - [Python reference (tryyoursize)](https://docs.tryyoursize.com/reference/python.md): The server SDK for Python 3.9+, standard library only: recommendations, catalog, orders and returns, audit log, webhooks. - [tys.audit_events.list()](https://docs.tryyoursize.com/reference/python/audit-events-list.md): The audit log of the key's organization, newest first. - [TryYourSize()](https://docs.tryyoursize.com/reference/python/client.md): Creates a client for one secret or restricted key. - [Errors](https://docs.tryyoursize.com/reference/python/errors.md): Every exception is a TryYourSizeError. - [tys.fit_groups.create()](https://docs.tryyoursize.com/reference/python/fit-groups-create.md): Create a fit group: one garment shared by several products (colourways, prints). - [tys.fit_groups.link_products()](https://docs.tryyoursize.com/reference/python/fit-groups-link-products.md): Move products into the fit group; they then use its garment. - [tys.fit_groups.list()](https://docs.tryyoursize.com/reference/python/fit-groups-list.md): Fit groups, cursor-paginated. - [tys.fit_groups.retrieve()](https://docs.tryyoursize.com/reference/python/fit-groups-retrieve.md): A fit group. - [tys.garments.publish()](https://docs.tryyoursize.com/reference/python/garments-publish.md): Publish a complete draft (same checks as Studio; 422 lists what is missing). - [tys.garments.retrieve()](https://docs.tryyoursize.com/reference/python/garments-retrieve.md): A garment version. - [tys.garments.update_draft()](https://docs.tryyoursize.com/reference/python/garments-update-draft.md): Replace a draft's content. - [ListPage](https://docs.tryyoursize.com/reference/python/list-page.md): One page of a list. - [tys.mode](https://docs.tryyoursize.com/reference/python/mode.md): "test" or "live", from the key prefix ("unknown" for other formats). - [tys.orders.create()](https://docs.tryyoursize.com/reference/python/orders-create.md): Record an order (idempotent by order id; re-sending updates it). - [tys.products.create()](https://docs.tryyoursize.com/reference/python/products-create.md): Create a product. - [tys.products.garments.create_draft()](https://docs.tryyoursize.com/reference/python/products-garments-create-draft.md): Start a draft version: sizes, points of measure (mm) per size, grading, fabric. - [tys.products.garments.list()](https://docs.tryyoursize.com/reference/python/products-garments-list.md): Garment versions of a product, newest first (has_more is always false). - [tys.products.list()](https://docs.tryyoursize.com/reference/python/products-list.md): The store's products, newest first. - [tys.products.retrieve()](https://docs.tryyoursize.com/reference/python/products-retrieve.md): A product by its TryYourSize ID or its SKU. - [tys.products.size_map.retrieve()](https://docs.tryyoursize.com/reference/python/products-size-map-retrieve.md): A product's size map (Studio size → your size label). - [tys.products.size_map.save()](https://docs.tryyoursize.com/reference/python/products-size-map-save.md): Replace the size map, e.g. - [tys.products.update()](https://docs.tryyoursize.com/reference/python/products-update.md): Replace the SKU, name and category (all three required). - [tys.recommendations.create()](https://docs.tryyoursize.com/reference/python/recommendations-create.md): The shopper's size for up to 25 products (SKUs), from a browser SDK handle. - [tys.returns.create()](https://docs.tryyoursize.com/reference/python/returns-create.md): Record a return of an order line (idempotent by return id and line). - [Webhook.construct_event()](https://docs.tryyoursize.com/reference/python/webhook-construct-event.md): Verify the signature, then return the parsed event envelope. - [Webhook.generate_test_header()](https://docs.tryyoursize.com/reference/python/webhook-generate-test-header.md): A valid TYS-Signature value, for your own tests. - [Webhook.verify_signature()](https://docs.tryyoursize.com/reference/python/webhook-verify-signature.md): Return True or raise SignatureVerificationError. ### iOS - [iOS reference (TryYourSize for Swift)](https://docs.tryyoursize.com/reference/ios.md): The native Size guide button (SwiftUI and UIKit), the shopper's recommended size, and the TryYourSize window in a sheet. - [appOrigin](https://docs.tryyoursize.com/reference/ios/app-origin.md): ios-app://: what the store registers as an allowed origin. - [appearance](https://docs.tryyoursize.com/reference/ios/appearance-property.md): Live restyle (e.g. - [Appearance](https://docs.tryyoursize.com/reference/ios/appearance.md): Colours, font and corner radius for the button and the window. - [TryYourSize.Configuration](https://docs.tryyoursize.com/reference/ios/configuration.md): Options of the client. - [TryYourSizeError](https://docs.tryyoursize.com/reference/ios/errors.md): Every error the SDK raises: a stable code, a message and a doc link (like the web SDK). - [TryYourSize(publishableKey:configuration:)](https://docs.tryyoursize.com/reference/ios/init.md): Creates the client for your publishable key. - [onRecommendation(for:onError:_:)](https://docs.tryyoursize.com/reference/ios/on-recommendation.md): Calls handler now (once known) and on every change: signing in, a new body, a simulation finishing. - [on(_:)](https://docs.tryyoursize.com/reference/ios/on.md): Window events: ready, open, close, size, loadError. - [present(product:step:from:)](https://docs.tryyoursize.com/reference/ios/present.md): Opens the measuring / try-on window for a product, as a sheet over presenter (default: the app's top-most view controller). - [Recommendation](https://docs.tryyoursize.com/reference/ios/recommendation-type.md): The shopper's recommended size for one product, in the store's own size labels. - [recommendation(for:)](https://docs.tryyoursize.com/reference/ios/recommendation.md): The shopper's recommended size for a product, in your size labels. - [SizeGuideButton (UIKit)](https://docs.tryyoursize.com/reference/ios/size-guide-button.md): The same button as a UIView. - [SizeGuide (SwiftUI)](https://docs.tryyoursize.com/reference/ios/size-guide.md): The "Size guide" button: "Size guide" → "Calculating your size…" → "Your size: M". ### Android - [Android reference (TryYourSize for Kotlin)](https://docs.tryyoursize.com/reference/android.md): The native Size guide button (Compose and Views), the shopper's recommended size, and the TryYourSize window. - [appOrigin](https://docs.tryyoursize.com/reference/android/app-origin.md): android-app://: what the store registers as an allowed origin. - [appearance](https://docs.tryyoursize.com/reference/android/appearance-property.md): Live restyle (e.g. - [Appearance](https://docs.tryyoursize.com/reference/android/appearance.md): Colours (ARGB ints), font and corner radius for the button and the window. - [TryYourSize.Configuration](https://docs.tryyoursize.com/reference/android/configuration.md): TryYourSize.Configuration - [TryYourSize(context, publishableKey, configuration)](https://docs.tryyoursize.com/reference/android/constructor.md): Creates the client for your publishable key. - [TryYourSizeException](https://docs.tryyoursize.com/reference/android/errors.md): Every error the SDK raises: a stable code, a message and a doc link (like the web SDK). - [getRecommendation()](https://docs.tryyoursize.com/reference/android/get-recommendation.md): The same, with a callback (Java). - [onRecommendation()](https://docs.tryyoursize.com/reference/android/on-recommendation.md): Calls handler now (once known) and on every change: signing in, a new body, a simulation finishing. - [on()](https://docs.tryyoursize.com/reference/android/on.md): Window events: Ready, Open, Close, Size, LoadError. - [present()](https://docs.tryyoursize.com/reference/android/present.md): Opens the measuring / try-on window for a product, full screen over activity. - [Recommendation](https://docs.tryyoursize.com/reference/android/recommendation-type.md): The shopper's recommended size for one product, in the store's own size labels. - [recommendation()](https://docs.tryyoursize.com/reference/android/recommendation.md): The shopper's recommended size for a product, in your size labels. - [SizeGuideView (Views)](https://docs.tryyoursize.com/reference/android/size-guide-view.md): The same button as an Android View: set client and product. - [SizeGuide (Compose)](https://docs.tryyoursize.com/reference/android/size-guide.md): The "Size guide" button: "Size guide" → "Calculating your size…" → "Your size: M". ### React Native - [React Native reference (@tryyoursize/react-native)](https://docs.tryyoursize.com/reference/react-native.md): The native Size guide button and the shopper's recommended size in React Native, over the iOS and Android SDKs. - [addEventListener()](https://docs.tryyoursize.com/reference/react-native/add-event-listener.md): Window events: ready, open, close, size (preselect it), loaderror. - [addRecommendationListener()](https://docs.tryyoursize.com/reference/react-native/add-recommendation-listener.md): Calls listener now (once known) and on every change. - [Appearance](https://docs.tryyoursize.com/reference/react-native/appearance.md): Appearance - [configure()](https://docs.tryyoursize.com/reference/react-native/configure.md): Call once at startup with your publishable key. - [getRecommendation()](https://docs.tryyoursize.com/reference/react-native/get-recommendation.md): The shopper's recommended size for a product, in your size labels. - [present()](https://docs.tryyoursize.com/reference/react-native/present.md): Opens the measuring / try-on window for a product. - [Recommendation](https://docs.tryyoursize.com/reference/react-native/recommendation.md): Recommendation - [setAppearance()](https://docs.tryyoursize.com/reference/react-native/set-appearance.md): Live restyle (e.g. - [](https://docs.tryyoursize.com/reference/react-native/size-guide.md): The native "Size guide" button: "Size guide" → "Calculating your size…" → "Your size: M". - [TysEvent](https://docs.tryyoursize.com/reference/react-native/tys-event.md): A window event, by type. ### Flutter - [Flutter reference (package:tryyoursize)](https://docs.tryyoursize.com/reference/flutter.md): The native Size guide button and the shopper's recommended size in Flutter, over the iOS and Android SDKs. - [Appearance](https://docs.tryyoursize.com/reference/flutter/appearance.md): Like the web SDK's (and Stripe's) Appearance API. - [TryYourSize.create()](https://docs.tryyoursize.com/reference/flutter/create.md): Creates the client. - [TryYourSizeException](https://docs.tryyoursize.com/reference/flutter/errors.md): Every error the SDK raises: a stable code (e.g. - [events](https://docs.tryyoursize.com/reference/flutter/events.md): Window events: ready, open, close, size, loadError. - [onRecommendation()](https://docs.tryyoursize.com/reference/flutter/on-recommendation.md): The recommendation now (once known) and on every change: signing in, a new body, a simulation finishing. - [present()](https://docs.tryyoursize.com/reference/flutter/present.md): Opens the measuring / try-on window for a product. - [Recommendation](https://docs.tryyoursize.com/reference/flutter/recommendation-type.md): The shopper's recommended size for one product, in the store's own size labels. - [recommendation()](https://docs.tryyoursize.com/reference/flutter/recommendation.md): The shopper's recommended size for a product, in your size labels. - [setAppearance()](https://docs.tryyoursize.com/reference/flutter/set-appearance.md): Live restyle (e.g. - [SizeGuide](https://docs.tryyoursize.com/reference/flutter/size-guide.md): The compact "Size guide" button, drawn natively: "Size guide" → "Calculating your size…" → "Your size: M". ## HTTP API reference - [HTTP API reference](https://docs.tryyoursize.com/api/reference.md): Every public endpoint of the TryYourSize API, generated from the OpenAPI spec. - [Create a fit group](https://docs.tryyoursize.com/api/reference/operations/createcatalogfitgroup.md): POST /v1/fit_groups - [Start a new draft garment version](https://docs.tryyoursize.com/api/reference/operations/createcataloggarmentdraft.md): POST /v1/products/{product}/garments - [Create a product](https://docs.tryyoursize.com/api/reference/operations/createcatalogproduct.md): POST /v1/products - [Record an order (idempotent by order ID)](https://docs.tryyoursize.com/api/reference/operations/createoutcomeorder.md): POST /v1/orders - [Record a return of an order line (idempotent by return ID and line)](https://docs.tryyoursize.com/api/reference/operations/createoutcomereturn.md): POST /v1/returns - [Seal the signed-in shopper's body into a handle for the brand's server](https://docs.tryyoursize.com/api/reference/operations/createrecommendationhandle.md): POST /v1/recommendation_handles - [The shopper's recommended size for up to 25 products](https://docs.tryyoursize.com/api/reference/operations/createrecommendations.md): POST /v1/recommendations - [A fit group](https://docs.tryyoursize.com/api/reference/operations/getcatalogfitgroup.md): GET /v1/fit_groups/{fit_group_id} - [A garment version](https://docs.tryyoursize.com/api/reference/operations/getcataloggarment.md): GET /v1/garments/{garment_id} - [A product](https://docs.tryyoursize.com/api/reference/operations/getcatalogproduct.md): GET /v1/products/{product} - [A product's size map (Studio size → your size label)](https://docs.tryyoursize.com/api/reference/operations/getcatalogsizemap.md): GET /v1/products/{product}/size_map - [Is "See it on you" available for a product?](https://docs.tryyoursize.com/api/reference/operations/getproducttryon.md): GET /v1/products/{product}/tryon - [The colourways the window draws on the simulated garment](https://docs.tryyoursize.com/api/reference/operations/getpublicproductappearance.md): GET /v1/products/{product}/appearance - [A try-on's status, progress and result](https://docs.tryyoursize.com/api/reference/operations/gettryon.md): GET /v1/tryon/{tryon_id} - [Bootstrap the measurement window](https://docs.tryyoursize.com/api/reference/operations/initembed.md): POST /v1/embed/init - [Move products into a fit group](https://docs.tryyoursize.com/api/reference/operations/linkcatalogfitgroupproducts.md): POST /v1/fit_groups/{fit_group_id}/products - [Audit log of the key's organization (server API)](https://docs.tryyoursize.com/api/reference/operations/listauditeventswithkey.md): GET /v1/audit_events - [List fit groups](https://docs.tryyoursize.com/api/reference/operations/listcatalogfitgroups.md): GET /v1/fit_groups - [Garment versions of a product, newest first](https://docs.tryyoursize.com/api/reference/operations/listcataloggarments.md): GET /v1/products/{product}/garments - [List the store's products](https://docs.tryyoursize.com/api/reference/operations/listcatalogproducts.md): GET /v1/products - [Publish a complete draft](https://docs.tryyoursize.com/api/reference/operations/publishcataloggarment.md): POST /v1/garments/{garment_id}/publish - [Count a shopper funnel step (measuring window)](https://docs.tryyoursize.com/api/reference/operations/recordfunnelevent.md): POST /v1/funnel_events - [Replace a product's size map](https://docs.tryyoursize.com/api/reference/operations/savecatalogsizemap.md): PUT /v1/products/{product}/size_map - [See a product on the shopper's body](https://docs.tryyoursize.com/api/reference/operations/starttryon.md): POST /v1/tryon - [Audit (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/audit.md): Your organization's audit log, read with a restricted key holding `audit:read`. - [Catalog API (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/catalog-api.md): Products, size maps, fit groups and garment drafts, with a secret key or a restricted key holding the listed scopes. The catalog is shared by test and live mode: test answers drafts, live answers published versions. - [Embed (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/embed.md): Called by TryYourSize.js and the measuring window from your page (publishable key). You do not call these yourself; they are listed so you can read your request logs and CSP reports. - [Outcomes (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/outcomes.md): Orders and returns from your server, for the A/B results and size-related return rates. No customer data is accepted. - [Recommendations (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/recommendations.md): The shopper's recommended size for your server or a headless storefront, from a handle the browser SDK issues. Sizes only, never measurements. - [TryOn (HTTP API)](https://docs.tryyoursize.com/api/reference/operations/tags/tryon.md): The try-on window's routes (publishable key, from our window's origin). Shown for reference. - [Replace a draft's content](https://docs.tryyoursize.com/api/reference/operations/updatecataloggarmentdraft.md): PUT /v1/garments/{garment_id} - [Update a product](https://docs.tryyoursize.com/api/reference/operations/updatecatalogproduct.md): PATCH /v1/products/{product} ## Resources - [API changelog](https://docs.tryyoursize.com/api/changelog.md): Dated versions of the TryYourSize server API (TYS-Version header), newest first. - [Errors](https://docs.tryyoursize.com/api/errors.md): Every error code the TryYourSize API returns, with its HTTP status and what to do. Each error's doc_url links here. ## Español - [Documentación para desarrolladores de TryYourSize](https://docs.tryyoursize.com/es/index.md): Añade recomendaciones de talla a tu tienda. Guías rápidas para Shopify, la web, React, iOS, Android, React Native, Flutter y tu servidor; referencia de los SDK y de la API HTTP. - [Pasar a modo real](https://docs.tryyoursize.com/es/get-started/going-live.md): Verifica tu dominio, completa la lista de activación del modo real y entiende la facturación antes de cambiar a claves de modo real. - [Claves y modos](https://docs.tryyoursize.com/es/get-started/keys-and-modes.md): Claves publicables, secretas y restringidas; modo de prueba y modo real; permisos, orígenes, rotación de claves y listas de IP permitidas. - [Cómo funciona TryYourSize](https://docs.tryyoursize.com/es/get-started/overview.md): De una cinta métrica a una talla con las etiquetas de tu tienda. Qué ocurre, quién ve qué y qué recibe tu tienda. - [Grupo de control A/B](https://docs.tryyoursize.com/es/guides/ab-holdout.md): Mide el efecto de TryYourSize en las devoluciones por talla. Una parte de las visitas no ve ningún elemento; el grupo de control nunca se mide. - [Usar TryYourSize con herramientas de IA](https://docs.tryyoursize.com/es/guides/ai-tools.md): Conecta Cursor, Claude Code, ChatGPT o Claude a nuestra documentación con llms.txt y páginas en Markdown, usa prompts de integración listos y añade un archivo de reglas a tu repositorio. - [Apariencia y temas](https://docs.tryyoursize.com/es/guides/appearance.md): Los elementos de TryYourSize heredan por defecto la fuente y los colores de tu página. Cámbialos con variables de apariencia, en directo. - [Idiomas (i18n)](https://docs.tryyoursize.com/es/guides/i18n.md): El elemento, la ventana de medición y los botones móviles en inglés, español, francés, alemán e italiano. Elige con la opción locale o deja que decida el html lang de tu página. - [Pedidos y devoluciones (outcomes)](https://docs.tryyoursize.com/es/guides/outcomes.md): Envía pedidos y devoluciones para que TryYourSize informe de las devoluciones por talla en cada grupo de la prueba A/B. Sin datos de clientes. - [Privacidad: qué recibe tu tienda](https://docs.tryyoursize.com/es/guides/privacy.md): Tu tienda solo recibe tallas. Nunca medidas, datos corporales, correo electrónico ni la cuenta de quien compra. - [Preseleccionar la talla recomendada](https://docs.tryyoursize.com/es/guides/recommendation-event.md): Obtén la talla de quien compra al cargar la página, con tus propias etiquetas de talla, y preselecciónala en tu selector de talla. - [Recomendaciones desde el servidor](https://docs.tryyoursize.com/es/guides/server-side-recommendations.md): Obtén la talla de quien compra en tu servidor con un handle sellado desde el navegador. Solo tallas; las medidas nunca salen de TryYourSize. - [Solución de problemas](https://docs.tryyoursize.com/es/guides/troubleshooting.md): Síntomas y códigos de error habituales al integrar TryYourSize, con su causa y su solución. Busca en esta página el código que ves. - [Webhooks](https://docs.tryyoursize.com/es/guides/webhooks.md): Recibe eventos firmados (fit.recommended, garment.published…) en tu servidor. Verificación de la firma en Node, Python y sin SDK; reintentos. - [Inicio rápido de Android](https://docs.tryyoursize.com/es/quickstarts/android.md): El botón nativo Guía de tallas (Compose y Views), la talla recomendada del cliente y la ventana de prueba virtual. - [Inicio rápido de Flutter](https://docs.tryyoursize.com/es/quickstarts/flutter.md): El plugin tryyoursize sobre los SDK nativos. El botón Guía de tallas y la talla recomendada del cliente. - [Inicio rápido de iOS](https://docs.tryyoursize.com/es/quickstarts/ios.md): El botón nativo Guía de tallas (SwiftUI y UIKit), la talla recomendada del cliente y la ventana de prueba virtual en una hoja. - [Inicio rápido de React Native](https://docs.tryyoursize.com/es/quickstarts/react-native.md): @tryyoursize/react-native: el botón nativo Guía de tallas y la talla recomendada, sobre los SDK de iOS y Android. - [Inicio rápido de React](https://docs.tryyoursize.com/es/quickstarts/react.md): @tryyoursize/react: un provider cerca de la raíz y componentes de elemento donde los necesites. Compatible con SSR. - [Inicio rápido de la API de servidor](https://docs.tryyoursize.com/es/quickstarts/server.md): Llama a la API de servidor de TryYourSize desde Node o Python. Sincronización del catálogo, pedidos y devoluciones, recomendaciones en el servidor. - [App de Shopify (sin código)](https://docs.tryyoursize.com/es/quickstarts/shopify.md): Instala la app de TryYourSize, sincroniza tu catálogo y añade el bloque Guía de tallas en el editor de temas. Sin código. - [Botón de guía de tallas](https://docs.tryyoursize.com/es/quickstarts/size-guide.md): Sustituye tu enlace «Guía de tallas» por el elemento de guía de tallas de TryYourSize, que muestra «Tu talla: M» a la clientela con sesión iniciada. - [Inicio rápido del SDK web](https://docs.tryyoursize.com/es/quickstarts/web.md): Añade el elemento de TryYourSize a cualquier página de producto con una etiqueta script o con npm. Claves publicables, eventos y apariencia.